From 40a0ec43ccb3f8cd92490a69b5f55829cf369acf Mon Sep 17 00:00:00 2001 From: OCI DEX Release Bot Automation Date: Tue, 9 Jun 2026 13:49:35 +0000 Subject: [PATCH 01/11] Releasing version 2.178.0 Co-authored-by: Harsh Kumar --- CHANGELOG.rst | 36 + docs/api/database.rst | 7 + ....models.ManagedSoftwareUpdateDayOfWeek.rst | 11 + ...se.models.ManagedSoftwareUpdateDetails.rst | 11 + ...dels.ManagedSoftwareUpdateInputDetails.rst | 11 + ...anagedSoftwareUpdateMaintenanceDetails.rst | 11 + ...ManagedSoftwareUpdatePreferenceDetails.rst | 11 + ...i.database.models.VersionSchemeDetails.rst | 11 + ....VersionSchemeFromVersionSeriesDetails.rst | 11 + docs/api/identity_domains.rst | 2 + ...ls.IdentityPropagationTrustCaCertChain.rst | 11 + ...entityPropagationTrustClaimValidations.rst | 11 + docs/api/managed_kafka.rst | 10 + ...i.managed_kafka.models.AddonCollection.rst | 11 + ...ged_kafka.models.AddonOptionCollection.rst | 11 + ...anaged_kafka.models.AddonOptionSummary.rst | 11 + .../oci.managed_kafka.models.AddonSummary.rst | 11 + ...naged_kafka.models.InstallAddonDetails.rst | 11 + ....InstallPublicConnectivityAddonDetails.rst | 11 + ...managed_kafka.models.KafkaClusterAddon.rst | 11 + ...d_kafka.models.PublicConnectivityAddon.rst | 11 + ...anaged_kafka.models.UpdateAddonDetails.rst | 11 + ...s.UpdatePublicConnectivityAddonDetails.rst | 11 + docs/api/mysql.rst | 1 + ...s.Ipv6AddressIpv6SubnetCidrPairDetails.rst | 11 + pyproject.toml | 12 +- requirements.txt | 16 +- setup.py | 9 +- src/oci/_vendor/requests/adapters.py | 2 +- src/oci/core/blockstorage_client.py | 3 +- src/oci/core/compute_client.py | 8 +- .../compute_client_composite_operations.py | 138 ++- src/oci/core/compute_management_client.py | 3 +- src/oci/core/models/bulk_create_ipv6s_item.py | 31 + src/oci/core/models/bulk_update_ipv6s_item.py | 35 +- .../compute_gpu_memory_cluster_summary.py | 66 ++ .../core/models/compute_gpu_memory_fabric.py | 31 + src/oci/core/models/create_ipv6_details.py | 35 +- src/oci/core/models/instance_configuration.py | 4 - src/oci/core/models/ipv6.py | 35 +- .../launch_instance_licensing_config.py | 12 +- ...aunch_instance_windows_licensing_config.py | 2 +- src/oci/core/models/licensing_config.py | 12 +- src/oci/core/models/subnet.py | 4 +- .../update_instance_licensing_config.py | 12 +- ...pdate_instance_windows_licensing_config.py | 2 +- src/oci/core/models/update_ipv6_details.py | 31 + src/oci/core/virtual_network_client.py | 3 +- src/oci/database/database_client.py | 122 +++ .../database_client_composite_operations.py | 82 ++ src/oci/database/models/__init__.py | 14 + .../database/models/create_database_base.py | 2 +- .../models/create_database_details.py | 66 +- ..._database_from_another_database_details.py | 27 + .../create_database_from_backup_details.py | 62 ++ src/oci/database/models/database.py | 74 ++ src/oci/database/models/database_summary.py | 74 ++ src/oci/database/models/db_home.py | 51 +- .../models/db_home_from_agent_resource_id.py | 51 +- src/oci/database/models/db_home_summary.py | 51 +- .../managed_software_update_day_of_week.py | 106 +++ .../models/managed_software_update_details.py | 124 +++ .../managed_software_update_input_details.py | 97 ++ ...ged_software_update_maintenance_details.py | 308 +++++++ ...aged_software_update_preference_details.py | 177 ++++ .../models/update_database_details.py | 27 + .../database/models/version_scheme_details.py | 99 ++ ...sion_scheme_from_version_series_details.py | 154 ++++ .../delegate_access_control_client.py | 22 +- .../create_delegation_control_details.py | 18 +- .../create_delegation_subscription_details.py | 14 +- .../delegated_resource_access_request.py | 55 +- ...esource_access_request_approval_details.py | 39 +- ...legated_resource_access_request_summary.py | 10 +- .../models/delegation_control.py | 18 +- .../models/delegation_control_summary.py | 10 +- .../models/delegation_subscription.py | 10 +- .../models/delegation_subscription_summary.py | 10 +- .../models/service_provider.py | 24 +- .../models/service_provider_action.py | 82 +- .../models/service_provider_action_summary.py | 82 +- .../models/service_provider_summary.py | 24 +- .../models/work_request_error.py | 8 +- .../work_request_client.py | 4 +- .../create_dedicated_ai_cluster_details.py | 18 + .../models/dedicated_ai_cluster.py | 42 +- src/oci/generative_ai/models/schema_item.py | 4 + .../identity_domains_client.py | 2 +- src/oci/identity_domains/models/__init__.py | 4 + .../models/identity_propagation_trust.py | 210 ++++- ...dentity_propagation_trust_ca_cert_chain.py | 156 ++++ ...ity_propagation_trust_claim_validations.py | 149 ++++ src/oci/managed_kafka/kafka_cluster_client.py | 843 +++++++++++++++++- ...fka_cluster_client_composite_operations.py | 91 ++ src/oci/managed_kafka/models/__init__.py | 20 + .../managed_kafka/models/addon_collection.py | 70 ++ .../models/addon_option_collection.py | 70 ++ .../models/addon_option_summary.py | 117 +++ src/oci/managed_kafka/models/addon_summary.py | 247 +++++ .../models/install_addon_details.py | 149 ++++ ...stall_public_connectivity_addon_details.py | 124 +++ .../models/kafka_cluster_addon.py | 286 ++++++ .../models/public_connectivity_addon.py | 178 ++++ .../models/update_addon_details.py | 118 +++ ...pdate_public_connectivity_addon_details.py | 86 ++ src/oci/managed_kafka/models/work_request.py | 18 +- .../models/work_request_summary.py | 18 +- src/oci/mysql/models/__init__.py | 2 + src/oci/mysql/models/channel_source_mysql.py | 37 +- ...reate_channel_source_from_mysql_details.py | 37 +- .../mysql/models/create_db_system_details.py | 66 ++ .../models/create_read_endpoint_details.py | 27 + src/oci/mysql/models/db_system.py | 60 ++ src/oci/mysql/models/db_system_endpoint.py | 47 + src/oci/mysql/models/db_system_snapshot.py | 31 + .../mysql/models/initialization_variables.py | 4 - ...6_address_ipv6_subnet_cidr_pair_details.py | 101 +++ src/oci/mysql/models/read_endpoint_details.py | 27 + src/oci/mysql/models/replica.py | 31 + src/oci/mysql/models/replica_summary.py | 31 + ...pdate_channel_source_from_mysql_details.py | 37 +- .../mysql/models/update_db_system_details.py | 66 ++ .../models/update_read_endpoint_details.py | 27 + src/oci/version.py | 2 +- tests/test_config_container.py | 3 +- tox.ini | 9 +- 126 files changed, 6404 insertions(+), 241 deletions(-) create mode 100644 docs/api/database/models/oci.database.models.ManagedSoftwareUpdateDayOfWeek.rst create mode 100644 docs/api/database/models/oci.database.models.ManagedSoftwareUpdateDetails.rst create mode 100644 docs/api/database/models/oci.database.models.ManagedSoftwareUpdateInputDetails.rst create mode 100644 docs/api/database/models/oci.database.models.ManagedSoftwareUpdateMaintenanceDetails.rst create mode 100644 docs/api/database/models/oci.database.models.ManagedSoftwareUpdatePreferenceDetails.rst create mode 100644 docs/api/database/models/oci.database.models.VersionSchemeDetails.rst create mode 100644 docs/api/database/models/oci.database.models.VersionSchemeFromVersionSeriesDetails.rst create mode 100644 docs/api/identity_domains/models/oci.identity_domains.models.IdentityPropagationTrustCaCertChain.rst create mode 100644 docs/api/identity_domains/models/oci.identity_domains.models.IdentityPropagationTrustClaimValidations.rst create mode 100644 docs/api/managed_kafka/models/oci.managed_kafka.models.AddonCollection.rst create mode 100644 docs/api/managed_kafka/models/oci.managed_kafka.models.AddonOptionCollection.rst create mode 100644 docs/api/managed_kafka/models/oci.managed_kafka.models.AddonOptionSummary.rst create mode 100644 docs/api/managed_kafka/models/oci.managed_kafka.models.AddonSummary.rst create mode 100644 docs/api/managed_kafka/models/oci.managed_kafka.models.InstallAddonDetails.rst create mode 100644 docs/api/managed_kafka/models/oci.managed_kafka.models.InstallPublicConnectivityAddonDetails.rst create mode 100644 docs/api/managed_kafka/models/oci.managed_kafka.models.KafkaClusterAddon.rst create mode 100644 docs/api/managed_kafka/models/oci.managed_kafka.models.PublicConnectivityAddon.rst create mode 100644 docs/api/managed_kafka/models/oci.managed_kafka.models.UpdateAddonDetails.rst create mode 100644 docs/api/managed_kafka/models/oci.managed_kafka.models.UpdatePublicConnectivityAddonDetails.rst create mode 100644 docs/api/mysql/models/oci.mysql.models.Ipv6AddressIpv6SubnetCidrPairDetails.rst create mode 100644 src/oci/database/models/managed_software_update_day_of_week.py create mode 100644 src/oci/database/models/managed_software_update_details.py create mode 100644 src/oci/database/models/managed_software_update_input_details.py create mode 100644 src/oci/database/models/managed_software_update_maintenance_details.py create mode 100644 src/oci/database/models/managed_software_update_preference_details.py create mode 100644 src/oci/database/models/version_scheme_details.py create mode 100644 src/oci/database/models/version_scheme_from_version_series_details.py create mode 100644 src/oci/identity_domains/models/identity_propagation_trust_ca_cert_chain.py create mode 100644 src/oci/identity_domains/models/identity_propagation_trust_claim_validations.py create mode 100644 src/oci/managed_kafka/models/addon_collection.py create mode 100644 src/oci/managed_kafka/models/addon_option_collection.py create mode 100644 src/oci/managed_kafka/models/addon_option_summary.py create mode 100644 src/oci/managed_kafka/models/addon_summary.py create mode 100644 src/oci/managed_kafka/models/install_addon_details.py create mode 100644 src/oci/managed_kafka/models/install_public_connectivity_addon_details.py create mode 100644 src/oci/managed_kafka/models/kafka_cluster_addon.py create mode 100644 src/oci/managed_kafka/models/public_connectivity_addon.py create mode 100644 src/oci/managed_kafka/models/update_addon_details.py create mode 100644 src/oci/managed_kafka/models/update_public_connectivity_addon_details.py create mode 100644 src/oci/mysql/models/ipv6_address_ipv6_subnet_cidr_pair_details.py diff --git a/CHANGELOG.rst b/CHANGELOG.rst index a17cf4e807..8d589b6bc4 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -4,6 +4,42 @@ All notable changes to this project will be documented in this file. The format is based on `Keep a Changelog `_. +==================== +2.178.0 - 2026-06-08 +==================== + +Added +----- +* Support for B200 shapes in dedicated AI clusters in the Generative AI service +* Support for Oracle Managed Database Software Updates in the Database service +* Support for scheduling preferences, version series selection, and readiness details in Oracle Managed Database Software Updates in the Database service +* Support for rescheduling Oracle Managed Database Software Updates in the Database service +* Support for Oracle-managed and customer-managed database home types in the Database service +* Support for specifying VM cluster IDs when creating databases in the Database service +* Support for Oracle Managed Software Updates delegation controls in the Delegate Access Control service +* Support for Exadata Database VM Clusters in delegation controls in the Delegate Access Control service +* Support for database IDs in delegated resource access requests in the Delegate Access Control service +* Support for approval action timestamps and SSH access indicators in the Delegate Access Control service +* Support for public connectivity add-ons in the OCI Streaming with Apache Kafka service +* Support for listing, installing, updating, getting, and uninstalling Kafka cluster add-ons in the OCI Streaming with Apache Kafka service +* Support for SASL and mTLS authentication mechanisms in public connectivity add-ons in the OCI Streaming with Apache Kafka service +* Support for GPU memory fabric IDs and size details in GPU memory cluster summaries in the Compute service +* Support for filtering GPU memory clusters by GPU memory fabric in the Compute service +* Support for associated GPU memory cluster IDs in GPU memory fabric resources in the Compute service +* Support for partner-provided OS licenses when launching and updating instances in the Compute service +* Support for work request IDs and waiters when attaching volumes, detaching volumes, and terminating instances in the Compute service +* Support for single-stack IPv6 in the Virtual Cloud Network service +* Support for hostnames on IPv6 addresses during create, update, and bulk operations in the Virtual Cloud Network service +* Support for IPv6 addresses on DB systems, read endpoints, read replicas, and snapshots in the MySQL HeatWave service +* Support for IPv6 selection in replication channels on dual-stack DB systems in the MySQL HeatWave service +* Support for X.509 identity propagation trusts and CA certificate chains in the Identity Domains service +* Support for resource subject type, impersonating resources, claim validations, and claim propagation in identity propagation trusts in the Identity Domains service + +Breaking +-------- +* Method `detach_volume_and_wait_for_state` was renamed to `detach_volume_and_wait_for_work_request` in the Compute service +* Method `terminate_instance_and_wait_for_state` was renamed to `terminate_instance_and_wait_for_work_request` in the Compute service + ==================== 2.177.0 - 2026-06-02 ==================== diff --git a/docs/api/database.rst b/docs/api/database.rst index aee4968562..07f3f3c988 100644 --- a/docs/api/database.rst +++ b/docs/api/database.rst @@ -408,6 +408,11 @@ Database oci.database.models.MaintenanceRunSummary oci.database.models.MaintenanceVersionPreferenceDetails oci.database.models.MaintenanceWindow + oci.database.models.ManagedSoftwareUpdateDayOfWeek + oci.database.models.ManagedSoftwareUpdateDetails + oci.database.models.ManagedSoftwareUpdateInputDetails + oci.database.models.ManagedSoftwareUpdateMaintenanceDetails + oci.database.models.ManagedSoftwareUpdatePreferenceDetails oci.database.models.MigrateVaultKeyDetails oci.database.models.ModifyDatabaseManagementDetails oci.database.models.ModifyPluggableDatabaseManagementDetails @@ -556,6 +561,8 @@ Database oci.database.models.UpgradeDatabaseDetails oci.database.models.UpgradeDbSystemDetails oci.database.models.VanityUrlDetails + oci.database.models.VersionSchemeDetails + oci.database.models.VersionSchemeFromVersionSeriesDetails oci.database.models.VmCluster oci.database.models.VmClusterNetwork oci.database.models.VmClusterNetworkDetails diff --git a/docs/api/database/models/oci.database.models.ManagedSoftwareUpdateDayOfWeek.rst b/docs/api/database/models/oci.database.models.ManagedSoftwareUpdateDayOfWeek.rst new file mode 100644 index 0000000000..e793cf407e --- /dev/null +++ b/docs/api/database/models/oci.database.models.ManagedSoftwareUpdateDayOfWeek.rst @@ -0,0 +1,11 @@ +ManagedSoftwareUpdateDayOfWeek +============================== + +.. currentmodule:: oci.database.models + +.. autoclass:: ManagedSoftwareUpdateDayOfWeek + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/database/models/oci.database.models.ManagedSoftwareUpdateDetails.rst b/docs/api/database/models/oci.database.models.ManagedSoftwareUpdateDetails.rst new file mode 100644 index 0000000000..51048e6994 --- /dev/null +++ b/docs/api/database/models/oci.database.models.ManagedSoftwareUpdateDetails.rst @@ -0,0 +1,11 @@ +ManagedSoftwareUpdateDetails +============================ + +.. currentmodule:: oci.database.models + +.. autoclass:: ManagedSoftwareUpdateDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/database/models/oci.database.models.ManagedSoftwareUpdateInputDetails.rst b/docs/api/database/models/oci.database.models.ManagedSoftwareUpdateInputDetails.rst new file mode 100644 index 0000000000..a1304001a1 --- /dev/null +++ b/docs/api/database/models/oci.database.models.ManagedSoftwareUpdateInputDetails.rst @@ -0,0 +1,11 @@ +ManagedSoftwareUpdateInputDetails +================================= + +.. currentmodule:: oci.database.models + +.. autoclass:: ManagedSoftwareUpdateInputDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/database/models/oci.database.models.ManagedSoftwareUpdateMaintenanceDetails.rst b/docs/api/database/models/oci.database.models.ManagedSoftwareUpdateMaintenanceDetails.rst new file mode 100644 index 0000000000..184bac5406 --- /dev/null +++ b/docs/api/database/models/oci.database.models.ManagedSoftwareUpdateMaintenanceDetails.rst @@ -0,0 +1,11 @@ +ManagedSoftwareUpdateMaintenanceDetails +======================================= + +.. currentmodule:: oci.database.models + +.. autoclass:: ManagedSoftwareUpdateMaintenanceDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/database/models/oci.database.models.ManagedSoftwareUpdatePreferenceDetails.rst b/docs/api/database/models/oci.database.models.ManagedSoftwareUpdatePreferenceDetails.rst new file mode 100644 index 0000000000..c52f02b0e3 --- /dev/null +++ b/docs/api/database/models/oci.database.models.ManagedSoftwareUpdatePreferenceDetails.rst @@ -0,0 +1,11 @@ +ManagedSoftwareUpdatePreferenceDetails +====================================== + +.. currentmodule:: oci.database.models + +.. autoclass:: ManagedSoftwareUpdatePreferenceDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/database/models/oci.database.models.VersionSchemeDetails.rst b/docs/api/database/models/oci.database.models.VersionSchemeDetails.rst new file mode 100644 index 0000000000..c0a93c1221 --- /dev/null +++ b/docs/api/database/models/oci.database.models.VersionSchemeDetails.rst @@ -0,0 +1,11 @@ +VersionSchemeDetails +==================== + +.. currentmodule:: oci.database.models + +.. autoclass:: VersionSchemeDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/database/models/oci.database.models.VersionSchemeFromVersionSeriesDetails.rst b/docs/api/database/models/oci.database.models.VersionSchemeFromVersionSeriesDetails.rst new file mode 100644 index 0000000000..9a1b7edc24 --- /dev/null +++ b/docs/api/database/models/oci.database.models.VersionSchemeFromVersionSeriesDetails.rst @@ -0,0 +1,11 @@ +VersionSchemeFromVersionSeriesDetails +===================================== + +.. currentmodule:: oci.database.models + +.. autoclass:: VersionSchemeFromVersionSeriesDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/identity_domains.rst b/docs/api/identity_domains.rst index 6625ea42e3..d74a43b57c 100644 --- a/docs/api/identity_domains.rst +++ b/docs/api/identity_domains.rst @@ -234,6 +234,8 @@ Identity Domains oci.identity_domains.models.IdentityProofingProviderTemplates oci.identity_domains.models.IdentityProofingProviders oci.identity_domains.models.IdentityPropagationTrust + oci.identity_domains.models.IdentityPropagationTrustCaCertChain + oci.identity_domains.models.IdentityPropagationTrustClaimValidations oci.identity_domains.models.IdentityPropagationTrustImpersonationServiceUsers oci.identity_domains.models.IdentityPropagationTrustKeytab oci.identity_domains.models.IdentityPropagationTrusts diff --git a/docs/api/identity_domains/models/oci.identity_domains.models.IdentityPropagationTrustCaCertChain.rst b/docs/api/identity_domains/models/oci.identity_domains.models.IdentityPropagationTrustCaCertChain.rst new file mode 100644 index 0000000000..175d6604d1 --- /dev/null +++ b/docs/api/identity_domains/models/oci.identity_domains.models.IdentityPropagationTrustCaCertChain.rst @@ -0,0 +1,11 @@ +IdentityPropagationTrustCaCertChain +=================================== + +.. currentmodule:: oci.identity_domains.models + +.. autoclass:: IdentityPropagationTrustCaCertChain + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/identity_domains/models/oci.identity_domains.models.IdentityPropagationTrustClaimValidations.rst b/docs/api/identity_domains/models/oci.identity_domains.models.IdentityPropagationTrustClaimValidations.rst new file mode 100644 index 0000000000..f23889ce7b --- /dev/null +++ b/docs/api/identity_domains/models/oci.identity_domains.models.IdentityPropagationTrustClaimValidations.rst @@ -0,0 +1,11 @@ +IdentityPropagationTrustClaimValidations +======================================== + +.. currentmodule:: oci.identity_domains.models + +.. autoclass:: IdentityPropagationTrustClaimValidations + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/managed_kafka.rst b/docs/api/managed_kafka.rst index 928c6fd8d2..4f2429bdbd 100644 --- a/docs/api/managed_kafka.rst +++ b/docs/api/managed_kafka.rst @@ -18,6 +18,10 @@ Managed Kafka :nosignatures: :template: autosummary/model_class.rst + oci.managed_kafka.models.AddonCollection + oci.managed_kafka.models.AddonOptionCollection + oci.managed_kafka.models.AddonOptionSummary + oci.managed_kafka.models.AddonSummary oci.managed_kafka.models.BootstrapUrl oci.managed_kafka.models.BrokerShape oci.managed_kafka.models.ChangeKafkaClusterCompartmentDetails @@ -25,7 +29,10 @@ Managed Kafka oci.managed_kafka.models.CreateKafkaClusterConfigDetails oci.managed_kafka.models.CreateKafkaClusterDetails oci.managed_kafka.models.EnableSuperuserDetails + oci.managed_kafka.models.InstallAddonDetails + oci.managed_kafka.models.InstallPublicConnectivityAddonDetails oci.managed_kafka.models.KafkaCluster + oci.managed_kafka.models.KafkaClusterAddon oci.managed_kafka.models.KafkaClusterCollection oci.managed_kafka.models.KafkaClusterConfig oci.managed_kafka.models.KafkaClusterConfigCollection @@ -36,9 +43,12 @@ Managed Kafka oci.managed_kafka.models.KafkaClusterSummary oci.managed_kafka.models.NodeShapeCollection oci.managed_kafka.models.NodeShapeSummary + oci.managed_kafka.models.PublicConnectivityAddon oci.managed_kafka.models.SubnetSet + oci.managed_kafka.models.UpdateAddonDetails oci.managed_kafka.models.UpdateKafkaClusterConfigDetails oci.managed_kafka.models.UpdateKafkaClusterDetails + oci.managed_kafka.models.UpdatePublicConnectivityAddonDetails oci.managed_kafka.models.WorkRequest oci.managed_kafka.models.WorkRequestError oci.managed_kafka.models.WorkRequestErrorCollection diff --git a/docs/api/managed_kafka/models/oci.managed_kafka.models.AddonCollection.rst b/docs/api/managed_kafka/models/oci.managed_kafka.models.AddonCollection.rst new file mode 100644 index 0000000000..c348557cf3 --- /dev/null +++ b/docs/api/managed_kafka/models/oci.managed_kafka.models.AddonCollection.rst @@ -0,0 +1,11 @@ +AddonCollection +=============== + +.. currentmodule:: oci.managed_kafka.models + +.. autoclass:: AddonCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/managed_kafka/models/oci.managed_kafka.models.AddonOptionCollection.rst b/docs/api/managed_kafka/models/oci.managed_kafka.models.AddonOptionCollection.rst new file mode 100644 index 0000000000..2d65bbad91 --- /dev/null +++ b/docs/api/managed_kafka/models/oci.managed_kafka.models.AddonOptionCollection.rst @@ -0,0 +1,11 @@ +AddonOptionCollection +===================== + +.. currentmodule:: oci.managed_kafka.models + +.. autoclass:: AddonOptionCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/managed_kafka/models/oci.managed_kafka.models.AddonOptionSummary.rst b/docs/api/managed_kafka/models/oci.managed_kafka.models.AddonOptionSummary.rst new file mode 100644 index 0000000000..4388a481fd --- /dev/null +++ b/docs/api/managed_kafka/models/oci.managed_kafka.models.AddonOptionSummary.rst @@ -0,0 +1,11 @@ +AddonOptionSummary +================== + +.. currentmodule:: oci.managed_kafka.models + +.. autoclass:: AddonOptionSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/managed_kafka/models/oci.managed_kafka.models.AddonSummary.rst b/docs/api/managed_kafka/models/oci.managed_kafka.models.AddonSummary.rst new file mode 100644 index 0000000000..5f0284ad69 --- /dev/null +++ b/docs/api/managed_kafka/models/oci.managed_kafka.models.AddonSummary.rst @@ -0,0 +1,11 @@ +AddonSummary +============ + +.. currentmodule:: oci.managed_kafka.models + +.. autoclass:: AddonSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/managed_kafka/models/oci.managed_kafka.models.InstallAddonDetails.rst b/docs/api/managed_kafka/models/oci.managed_kafka.models.InstallAddonDetails.rst new file mode 100644 index 0000000000..e3efba4c64 --- /dev/null +++ b/docs/api/managed_kafka/models/oci.managed_kafka.models.InstallAddonDetails.rst @@ -0,0 +1,11 @@ +InstallAddonDetails +=================== + +.. currentmodule:: oci.managed_kafka.models + +.. autoclass:: InstallAddonDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/managed_kafka/models/oci.managed_kafka.models.InstallPublicConnectivityAddonDetails.rst b/docs/api/managed_kafka/models/oci.managed_kafka.models.InstallPublicConnectivityAddonDetails.rst new file mode 100644 index 0000000000..a22538281d --- /dev/null +++ b/docs/api/managed_kafka/models/oci.managed_kafka.models.InstallPublicConnectivityAddonDetails.rst @@ -0,0 +1,11 @@ +InstallPublicConnectivityAddonDetails +===================================== + +.. currentmodule:: oci.managed_kafka.models + +.. autoclass:: InstallPublicConnectivityAddonDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/managed_kafka/models/oci.managed_kafka.models.KafkaClusterAddon.rst b/docs/api/managed_kafka/models/oci.managed_kafka.models.KafkaClusterAddon.rst new file mode 100644 index 0000000000..de910a1fb4 --- /dev/null +++ b/docs/api/managed_kafka/models/oci.managed_kafka.models.KafkaClusterAddon.rst @@ -0,0 +1,11 @@ +KafkaClusterAddon +================= + +.. currentmodule:: oci.managed_kafka.models + +.. autoclass:: KafkaClusterAddon + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/managed_kafka/models/oci.managed_kafka.models.PublicConnectivityAddon.rst b/docs/api/managed_kafka/models/oci.managed_kafka.models.PublicConnectivityAddon.rst new file mode 100644 index 0000000000..bba03d2697 --- /dev/null +++ b/docs/api/managed_kafka/models/oci.managed_kafka.models.PublicConnectivityAddon.rst @@ -0,0 +1,11 @@ +PublicConnectivityAddon +======================= + +.. currentmodule:: oci.managed_kafka.models + +.. autoclass:: PublicConnectivityAddon + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/managed_kafka/models/oci.managed_kafka.models.UpdateAddonDetails.rst b/docs/api/managed_kafka/models/oci.managed_kafka.models.UpdateAddonDetails.rst new file mode 100644 index 0000000000..60ad9d6691 --- /dev/null +++ b/docs/api/managed_kafka/models/oci.managed_kafka.models.UpdateAddonDetails.rst @@ -0,0 +1,11 @@ +UpdateAddonDetails +================== + +.. currentmodule:: oci.managed_kafka.models + +.. autoclass:: UpdateAddonDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/managed_kafka/models/oci.managed_kafka.models.UpdatePublicConnectivityAddonDetails.rst b/docs/api/managed_kafka/models/oci.managed_kafka.models.UpdatePublicConnectivityAddonDetails.rst new file mode 100644 index 0000000000..21dd5b5176 --- /dev/null +++ b/docs/api/managed_kafka/models/oci.managed_kafka.models.UpdatePublicConnectivityAddonDetails.rst @@ -0,0 +1,11 @@ +UpdatePublicConnectivityAddonDetails +==================================== + +.. currentmodule:: oci.managed_kafka.models + +.. autoclass:: UpdatePublicConnectivityAddonDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/mysql.rst b/docs/api/mysql.rst index ab3931fa84..926bac2dcb 100644 --- a/docs/api/mysql.rst +++ b/docs/api/mysql.rst @@ -110,6 +110,7 @@ Mysql oci.mysql.models.HeatWaveClusterTableMemoryEstimate oci.mysql.models.HeatWaveNode oci.mysql.models.InitializationVariables + oci.mysql.models.Ipv6AddressIpv6SubnetCidrPairDetails oci.mysql.models.LoggingDestinationConfiguration oci.mysql.models.MaintenanceDetails oci.mysql.models.MaintenanceDisabledWindow diff --git a/docs/api/mysql/models/oci.mysql.models.Ipv6AddressIpv6SubnetCidrPairDetails.rst b/docs/api/mysql/models/oci.mysql.models.Ipv6AddressIpv6SubnetCidrPairDetails.rst new file mode 100644 index 0000000000..99397b68db --- /dev/null +++ b/docs/api/mysql/models/oci.mysql.models.Ipv6AddressIpv6SubnetCidrPairDetails.rst @@ -0,0 +1,11 @@ +Ipv6AddressIpv6SubnetCidrPairDetails +==================================== + +.. currentmodule:: oci.mysql.models + +.. autoclass:: Ipv6AddressIpv6SubnetCidrPairDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml index 8c203faf51..1dc9fdf119 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -7,7 +7,7 @@ requires = [ "setuptools==59.6.0; python_version == '3.6'", "setuptools==68.0.0; python_version == '3.7'", "setuptools==75.3.2; python_version == '3.8'", - "setuptools==78.1.1; python_version >= '3.9'", + "setuptools==78.1.1,<81; python_version >= '3.9'", "wheel" ] build-backend = "setuptools.build_meta" @@ -18,7 +18,11 @@ dynamic = ["version"] description = "Oracle Cloud Infrastructure Python SDK" readme = "README.rst" authors = [ - {name = "Oracle", email = "joe.levy@oracle.com"}, + {name = "Oracle", email = "jyoti.s.saini@oracle.com"}, + {name = "Vidhi Bhansali", email = "vidhi.bhansali@oracle.com"}, + {name = "Nishan Poojary", email = "nishan.poojary@oracle.com"}, + {name = "Nivedita Parihar", email = "nivedita.parihar@oracle.com"}, + {name = "Kalpana Ramasamy", email = "kalpana.ramasamy@oracle.com"}, ] license = {file = "LICENSE.txt"} requires-python = ">=3.6" @@ -31,6 +35,10 @@ classifiers=[ "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", + "Programming Language :: Python :: 3.10", + "Programming Language :: Python :: 3.11", + "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", ] dependencies = [ "certifi", diff --git a/requirements.txt b/requirements.txt index 6b9050f27b..8506afae0f 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,25 +5,29 @@ cryptography>=3.2.1,<47.0.0; python_full_version != '3.9.0' and python_full_vers flake8>=3.6.0,<6 mock==2.0.0 pyOpenSSL>=17.5.0,<27.0.0 -pytest==4.1.0 +pytest==4.6.10; python_version <= '3.9' +pytest==7.1.2; python_version >= '3.10' pytest-cov==2.6.1 -attrs==19.1.0 +attrs==19.2.0 python-dateutil>=2.5.3,<=2.7.3 pytz>=2016.10 -tox==3.14.3 +tox==3.14.3; python_version < '3.12' +tox==4.0.0; python_version >= '3.12' virtualenv==20.0.6; python_version < '3.8' virtualenv==20.17.1; python_version == '3.8' virtualenv==20.36.1; python_version >= '3.9' -vcrpy==2.0.1 +vcrpy==2.0.1; python_version < '3.9' +vcrpy==7.0.0; python_version >= '3.9' wheel<=0.39.0 setuptools==59.6.0; python_version == '3.6' setuptools==68.0.0; python_version == '3.7' setuptools==75.3.2; python_version == '3.8' -setuptools==78.1.1; python_version >= '3.9' +setuptools>=78.1.1,<81; python_version >= '3.9' circuitbreaker>=1.3.1,<2.0.0; python_version <= '3.6' circuitbreaker>=1.3.1,<3.0.0; python_version >= '3.7' urllib3==1.26.20; python_version < '3.10.0' urllib3>=2.6.3; python_version >= '3.10.0' Jinja2<3.0.0; python_version == '3.6' Jinja2>=3.1.5,<4.0.0; python_version >= '3.7' -crc32c \ No newline at end of file +crc32c==2.5; python_version == '3.6' +crc32c==2.7.1; python_version >= '3.7' \ No newline at end of file diff --git a/setup.py b/setup.py index c71b90f7e5..30ebab4d4b 100644 --- a/setup.py +++ b/setup.py @@ -40,7 +40,8 @@ def open_relative(*path): "circuitbreaker>=1.3.1,<3.0.0; python_version >= '3.7'", "urllib3==1.26.20; python_version < '3.10.0'", "urllib3>=2.6.3; python_version >= '3.10.0'", - "crc32c" + "crc32c==2.5; python_version == '3.6'", + "crc32c==2.7.1; python_version >= '3.7'", ] extras_require = { @@ -59,7 +60,7 @@ def open_relative(*path): description="Oracle Cloud Infrastructure Python SDK", long_description=readme, author="Oracle", - author_email="joe.levy@oracle.com", + author_email="jyoti.s.saini@oracle.com", packages=find_packages(where="src"), package_dir={"": "src"}, include_package_data=True, @@ -74,6 +75,10 @@ def open_relative(*path): "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", + "Programming Language :: Python :: 3.10", + "Programming Language :: Python :: 3.11", + "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", ], extras_require = extras_require ) diff --git a/src/oci/_vendor/requests/adapters.py b/src/oci/_vendor/requests/adapters.py index 56bd3cb040..5f22c44e3f 100644 --- a/src/oci/_vendor/requests/adapters.py +++ b/src/oci/_vendor/requests/adapters.py @@ -167,7 +167,7 @@ def init_poolmanager(self, connections, maxsize, block=DEFAULT_POOLBLOCK, **pool self._pool_block = block self.poolmanager = PoolManager(num_pools=connections, maxsize=maxsize, - block=block, strict=True, **pool_kwargs) + block=block, **pool_kwargs) def proxy_manager_for(self, proxy, **proxy_kwargs): """Return urllib3 ProxyManager for the given proxy. diff --git a/src/oci/core/blockstorage_client.py b/src/oci/core/blockstorage_client.py index f25e5a19c4..cd4b6b4f29 100644 --- a/src/oci/core/blockstorage_client.py +++ b/src/oci/core/blockstorage_client.py @@ -110,7 +110,8 @@ def __init__(self, config, **kwargs): 'regional_client': True, 'service_endpoint': kwargs.get('service_endpoint'), 'base_path': '/20160918', - 'service_endpoint_template': 'https://iaas.{region}.{secondLevelDomain}', + 'service_endpoint_template': 'https://iaas.{region}.{dualStack?ds.oci.:}{secondLevelDomain}', + 'endpoint_service_name': 'iaas', 'service_endpoint_template_per_realm': { }, # noqa: E201 E202 'service_uses_dualstack_endpoints_by_default': False, 'skip_deserialization': kwargs.get('skip_deserialization', False), diff --git a/src/oci/core/compute_client.py b/src/oci/core/compute_client.py index 6b081c6b03..659a8f7eae 100644 --- a/src/oci/core/compute_client.py +++ b/src/oci/core/compute_client.py @@ -110,7 +110,8 @@ def __init__(self, config, **kwargs): 'regional_client': True, 'service_endpoint': kwargs.get('service_endpoint'), 'base_path': '/20160918', - 'service_endpoint_template': 'https://iaas.{region}.{secondLevelDomain}', + 'service_endpoint_template': 'https://iaas.{region}.{dualStack?ds.oci.:}{secondLevelDomain}', + 'endpoint_service_name': 'iaas', 'service_endpoint_template_per_realm': { }, # noqa: E201 E202 'service_uses_dualstack_endpoints_by_default': False, 'skip_deserialization': kwargs.get('skip_deserialization', False), @@ -11293,6 +11294,9 @@ def list_compute_gpu_memory_clusters(self, compartment_id, **kwargs): :param str compute_gpu_memory_cluster_id: (optional) A filter to return only the listings that matches the given GPU memory cluster id. + :param str compute_gpu_memory_fabric_id: (optional) + A filter to return only the listings that matches the given GPU memory fabric id. + :param str availability_domain: (optional) The name of the availability domain. @@ -11379,6 +11383,7 @@ def list_compute_gpu_memory_clusters(self, compartment_id, **kwargs): "retry_strategy", "opc_request_id", "compute_gpu_memory_cluster_id", + "compute_gpu_memory_fabric_id", "availability_domain", "display_name", "compute_cluster_id", @@ -11408,6 +11413,7 @@ def list_compute_gpu_memory_clusters(self, compartment_id, **kwargs): query_params = { "computeGpuMemoryClusterId": kwargs.get("compute_gpu_memory_cluster_id", missing), + "computeGpuMemoryFabricId": kwargs.get("compute_gpu_memory_fabric_id", missing), "availabilityDomain": kwargs.get("availability_domain", missing), "compartmentId": compartment_id, "displayName": kwargs.get("display_name", missing), diff --git a/src/oci/core/compute_client_composite_operations.py b/src/oci/core/compute_client_composite_operations.py index ded0a06e8a..15ae9f69e2 100644 --- a/src/oci/core/compute_client_composite_operations.py +++ b/src/oci/core/compute_client_composite_operations.py @@ -287,6 +287,42 @@ def attach_vnic_and_wait_for_state(self, attach_vnic_details, wait_for_states=[] except Exception as e: raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def attach_volume_and_wait_for_work_request(self, attach_volume_details, work_request_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.core.ComputeClient.attach_volume` and waits for the oci.work_requests.models.WorkRequest + to enter the given state(s). + + :param oci.core.models.AttachVolumeDetails attach_volume_details: (required) + Attach volume request + + :param list[str] work_request_states: (optional) + An array of work requests states to wait on. These should be valid values for :py:attr:`~oci.work_requests.models.WorkRequest.status` + Default values are termination states: [STATUS_SUCCEEDED, STATUS_FAILED, STATUS_CANCELED] + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.core.ComputeClient.attach_volume` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.attach_volume(attach_volume_details, **operation_kwargs) + work_request_states = work_request_states if work_request_states else oci.waiter._WORK_REQUEST_TERMINATION_STATES + lowered_work_request_states = [w.lower() for w in work_request_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + work_request_id = operation_result.headers['opc-work-request-id'] + try: + waiter_result = oci.wait_until( + self._work_request_client, + self._work_request_client.get_work_request(work_request_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_work_request_states, + **waiter_kwargs + ) + return waiter_result + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def attach_volume_and_wait_for_state(self, attach_volume_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): """ Calls :py:func:`~oci.core.ComputeClient.attach_volume` and waits for the :py:class:`~oci.core.models.VolumeAttachment` acted upon @@ -1937,16 +1973,17 @@ def detach_vnic_and_wait_for_state(self, vnic_attachment_id, wait_for_states=[], except Exception as e: raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) - def detach_volume_and_wait_for_state(self, volume_attachment_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + def detach_volume_and_wait_for_work_request(self, volume_attachment_id, work_request_states=[], operation_kwargs={}, waiter_kwargs={}): """ - Calls :py:func:`~oci.core.ComputeClient.detach_volume` and waits for the :py:class:`~oci.core.models.VolumeAttachment` acted upon + Calls :py:func:`~oci.core.ComputeClient.detach_volume` and waits for the oci.work_requests.models.WorkRequest to enter the given state(s). :param str volume_attachment_id: (required) The OCID of the volume attachment. - :param list[str] wait_for_states: - An array of states to wait on. These should be valid values for :py:attr:`~oci.core.models.VolumeAttachment.lifecycle_state` + :param list[str] work_request_states: (optional) + An array of work requests states to wait on. These should be valid values for :py:attr:`~oci.work_requests.models.WorkRequest.status` + Default values are termination states: [STATUS_SUCCEEDED, STATUS_FAILED, STATUS_CANCELED] :param dict operation_kwargs: A dictionary of keyword arguments to pass to :py:func:`~oci.core.ComputeClient.detach_volume` @@ -1955,44 +1992,20 @@ def detach_volume_and_wait_for_state(self, volume_attachment_id, wait_for_states A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait """ - initial_get_result = self.client.get_volume_attachment(volume_attachment_id) - operation_result = None - try: - operation_result = self.client.detach_volume(volume_attachment_id, **operation_kwargs) - except oci.exceptions.ServiceError as e: - if e.status == 404: - return WAIT_RESOURCE_NOT_FOUND - else: - raise e - - if not wait_for_states: + operation_result = self.client.detach_volume(volume_attachment_id, **operation_kwargs) + work_request_states = work_request_states if work_request_states else oci.waiter._WORK_REQUEST_TERMINATION_STATES + lowered_work_request_states = [w.lower() for w in work_request_states] + if 'opc-work-request-id' not in operation_result.headers: return operation_result - lowered_wait_for_states = [w.lower() for w in wait_for_states] - + work_request_id = operation_result.headers['opc-work-request-id'] try: - if ("succeed_on_not_found" in waiter_kwargs) and (waiter_kwargs["succeed_on_not_found"] is False): - self.client.base_client.logger.warning("The waiter kwarg succeed_on_not_found was passed as False for the delete composite operation detach_volume, this would result in the operation to fail if the resource is not found! Please, do not pass this kwarg if this was not intended") - else: - """ - If the user does not send in this value, we set it to True by default. - We are doing this because during a delete resource scenario and waiting on its state, the service can - return a 404 NOT FOUND exception as the resource was deleted and a get on its state would fail - """ - waiter_kwargs["succeed_on_not_found"] = True waiter_result = oci.wait_until( - self.client, - initial_get_result, # noqa: F821 - evaluate_response=lambda r: getattr(r.data, 'lifecycle_state') and getattr(r.data, 'lifecycle_state').lower() in lowered_wait_for_states, + self._work_request_client, + self._work_request_client.get_work_request(work_request_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_work_request_states, **waiter_kwargs ) - result_to_return = waiter_result - - return result_to_return - except (NameError, TypeError) as e: - if not e.args: - e.args = ('',) - e.args = e.args + ('This composite operation is currently not supported in the SDK. Please use the operation from the service client and use waiters as an alternative. For more information on waiters, visit: "https://docs.oracle.com/en-us/iaas/tools/python/latest/api/waiters.html"', ) - raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + return waiter_result except Exception as e: raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) @@ -2211,9 +2224,9 @@ def launch_instance_and_wait_for_state(self, launch_instance_details, wait_for_s except Exception as e: raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) - def terminate_instance_and_wait_for_state(self, instance_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + def terminate_instance_and_wait_for_work_request(self, instance_id, work_request_states=[], operation_kwargs={}, waiter_kwargs={}): """ - Calls :py:func:`~oci.core.ComputeClient.terminate_instance` and waits for the :py:class:`~oci.core.models.Instance` acted upon + Calls :py:func:`~oci.core.ComputeClient.terminate_instance` and waits for the oci.work_requests.models.WorkRequest to enter the given state(s). :param str instance_id: (required) @@ -2221,8 +2234,9 @@ def terminate_instance_and_wait_for_state(self, instance_id, wait_for_states=[], __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm - :param list[str] wait_for_states: - An array of states to wait on. These should be valid values for :py:attr:`~oci.core.models.Instance.lifecycle_state` + :param list[str] work_request_states: (optional) + An array of work requests states to wait on. These should be valid values for :py:attr:`~oci.work_requests.models.WorkRequest.status` + Default values are termination states: [STATUS_SUCCEEDED, STATUS_FAILED, STATUS_CANCELED] :param dict operation_kwargs: A dictionary of keyword arguments to pass to :py:func:`~oci.core.ComputeClient.terminate_instance` @@ -2231,44 +2245,20 @@ def terminate_instance_and_wait_for_state(self, instance_id, wait_for_states=[], A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait """ - initial_get_result = self.client.get_instance(instance_id) - operation_result = None - try: - operation_result = self.client.terminate_instance(instance_id, **operation_kwargs) - except oci.exceptions.ServiceError as e: - if e.status == 404: - return WAIT_RESOURCE_NOT_FOUND - else: - raise e - - if not wait_for_states: + operation_result = self.client.terminate_instance(instance_id, **operation_kwargs) + work_request_states = work_request_states if work_request_states else oci.waiter._WORK_REQUEST_TERMINATION_STATES + lowered_work_request_states = [w.lower() for w in work_request_states] + if 'opc-work-request-id' not in operation_result.headers: return operation_result - lowered_wait_for_states = [w.lower() for w in wait_for_states] - + work_request_id = operation_result.headers['opc-work-request-id'] try: - if ("succeed_on_not_found" in waiter_kwargs) and (waiter_kwargs["succeed_on_not_found"] is False): - self.client.base_client.logger.warning("The waiter kwarg succeed_on_not_found was passed as False for the delete composite operation terminate_instance, this would result in the operation to fail if the resource is not found! Please, do not pass this kwarg if this was not intended") - else: - """ - If the user does not send in this value, we set it to True by default. - We are doing this because during a delete resource scenario and waiting on its state, the service can - return a 404 NOT FOUND exception as the resource was deleted and a get on its state would fail - """ - waiter_kwargs["succeed_on_not_found"] = True waiter_result = oci.wait_until( - self.client, - initial_get_result, # noqa: F821 - evaluate_response=lambda r: getattr(r.data, 'lifecycle_state') and getattr(r.data, 'lifecycle_state').lower() in lowered_wait_for_states, + self._work_request_client, + self._work_request_client.get_work_request(work_request_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_work_request_states, **waiter_kwargs ) - result_to_return = waiter_result - - return result_to_return - except (NameError, TypeError) as e: - if not e.args: - e.args = ('',) - e.args = e.args + ('This composite operation is currently not supported in the SDK. Please use the operation from the service client and use waiters as an alternative. For more information on waiters, visit: "https://docs.oracle.com/en-us/iaas/tools/python/latest/api/waiters.html"', ) - raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + return waiter_result except Exception as e: raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) diff --git a/src/oci/core/compute_management_client.py b/src/oci/core/compute_management_client.py index 9cf77284e3..1686baecd6 100644 --- a/src/oci/core/compute_management_client.py +++ b/src/oci/core/compute_management_client.py @@ -110,7 +110,8 @@ def __init__(self, config, **kwargs): 'regional_client': True, 'service_endpoint': kwargs.get('service_endpoint'), 'base_path': '/20160918', - 'service_endpoint_template': 'https://iaas.{region}.{secondLevelDomain}', + 'service_endpoint_template': 'https://iaas.{region}.{dualStack?ds.oci.:}{secondLevelDomain}', + 'endpoint_service_name': 'iaas', 'service_endpoint_template_per_realm': { }, # noqa: E201 E202 'service_uses_dualstack_endpoints_by_default': False, 'skip_deserialization': kwargs.get('skip_deserialization', False), diff --git a/src/oci/core/models/bulk_create_ipv6s_item.py b/src/oci/core/models/bulk_create_ipv6s_item.py index 814853687e..fb1470e1b4 100644 --- a/src/oci/core/models/bulk_create_ipv6s_item.py +++ b/src/oci/core/models/bulk_create_ipv6s_item.py @@ -57,6 +57,10 @@ def __init__(self, **kwargs): The value to assign to the ipv6_subnet_cidr property of this BulkCreateIpv6sItem. :type ipv6_subnet_cidr: str + :param hostname: + The value to assign to the hostname property of this BulkCreateIpv6sItem. + :type hostname: str + :param cidr_prefix_length: The value to assign to the cidr_prefix_length property of this BulkCreateIpv6sItem. :type cidr_prefix_length: int @@ -70,6 +74,7 @@ def __init__(self, **kwargs): 'lifetime': 'str', 'route_table_id': 'str', 'ipv6_subnet_cidr': 'str', + 'hostname': 'str', 'cidr_prefix_length': 'int' } self.attribute_map = { @@ -80,6 +85,7 @@ def __init__(self, **kwargs): 'lifetime': 'lifetime', 'route_table_id': 'routeTableId', 'ipv6_subnet_cidr': 'ipv6SubnetCidr', + 'hostname': 'hostname', 'cidr_prefix_length': 'cidrPrefixLength' } self._defined_tags = None @@ -89,6 +95,7 @@ def __init__(self, **kwargs): self._lifetime = None self._route_table_id = None self._ipv6_subnet_cidr = None + self._hostname = None self._cidr_prefix_length = None @property @@ -312,6 +319,30 @@ def ipv6_subnet_cidr(self, ipv6_subnet_cidr): """ self._ipv6_subnet_cidr = ipv6_subnet_cidr + @property + def hostname(self): + """ + Gets the hostname of this BulkCreateIpv6sItem. + The hostname associated with the IPv6 address. Only the hostname label, not the FQDN. + + + :return: The hostname of this BulkCreateIpv6sItem. + :rtype: str + """ + return self._hostname + + @hostname.setter + def hostname(self, hostname): + """ + Sets the hostname of this BulkCreateIpv6sItem. + The hostname associated with the IPv6 address. Only the hostname label, not the FQDN. + + + :param hostname: The hostname of this BulkCreateIpv6sItem. + :type: str + """ + self._hostname = hostname + @property def cidr_prefix_length(self): """ diff --git a/src/oci/core/models/bulk_update_ipv6s_item.py b/src/oci/core/models/bulk_update_ipv6s_item.py index 801a72211e..686b81bb2c 100644 --- a/src/oci/core/models/bulk_update_ipv6s_item.py +++ b/src/oci/core/models/bulk_update_ipv6s_item.py @@ -53,6 +53,10 @@ def __init__(self, **kwargs): The value to assign to the route_table_id property of this BulkUpdateIpv6sItem. :type route_table_id: str + :param hostname: + The value to assign to the hostname property of this BulkUpdateIpv6sItem. + :type hostname: str + """ self.swagger_types = { 'defined_tags': 'dict(str, dict(str, object))', @@ -60,7 +64,8 @@ def __init__(self, **kwargs): 'freeform_tags': 'dict(str, str)', 'ipv6_id': 'str', 'lifetime': 'str', - 'route_table_id': 'str' + 'route_table_id': 'str', + 'hostname': 'str' } self.attribute_map = { 'defined_tags': 'definedTags', @@ -68,7 +73,8 @@ def __init__(self, **kwargs): 'freeform_tags': 'freeformTags', 'ipv6_id': 'ipv6Id', 'lifetime': 'lifetime', - 'route_table_id': 'routeTableId' + 'route_table_id': 'routeTableId', + 'hostname': 'hostname' } self._defined_tags = None self._display_name = None @@ -76,6 +82,7 @@ def __init__(self, **kwargs): self._ipv6_id = None self._lifetime = None self._route_table_id = None + self._hostname = None @property def defined_tags(self): @@ -268,6 +275,30 @@ def route_table_id(self, route_table_id): """ self._route_table_id = route_table_id + @property + def hostname(self): + """ + Gets the hostname of this BulkUpdateIpv6sItem. + The hostname associated with the IPv6 address. Only the hostname label, not the FQDN. + + + :return: The hostname of this BulkUpdateIpv6sItem. + :rtype: str + """ + return self._hostname + + @hostname.setter + def hostname(self, hostname): + """ + Sets the hostname of this BulkUpdateIpv6sItem. + The hostname associated with the IPv6 address. Only the hostname label, not the FQDN. + + + :param hostname: The hostname of this BulkUpdateIpv6sItem. + :type: str + """ + self._hostname = hostname + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/core/models/compute_gpu_memory_cluster_summary.py b/src/oci/core/models/compute_gpu_memory_cluster_summary.py index 2db8f05288..4d4db330dd 100644 --- a/src/oci/core/models/compute_gpu_memory_cluster_summary.py +++ b/src/oci/core/models/compute_gpu_memory_cluster_summary.py @@ -32,6 +32,14 @@ def __init__(self, **kwargs): The value to assign to the availability_domain property of this ComputeGpuMemoryClusterSummary. :type availability_domain: str + :param gpu_memory_fabric_id: + The value to assign to the gpu_memory_fabric_id property of this ComputeGpuMemoryClusterSummary. + :type gpu_memory_fabric_id: str + + :param size: + The value to assign to the size property of this ComputeGpuMemoryClusterSummary. + :type size: int + :param lifecycle_state: The value to assign to the lifecycle_state property of this ComputeGpuMemoryClusterSummary. :type lifecycle_state: str @@ -61,6 +69,8 @@ def __init__(self, **kwargs): 'id': 'str', 'compartment_id': 'str', 'availability_domain': 'str', + 'gpu_memory_fabric_id': 'str', + 'size': 'int', 'lifecycle_state': 'str', 'time_created': 'datetime', 'defined_tags': 'dict(str, dict(str, object))', @@ -72,6 +82,8 @@ def __init__(self, **kwargs): 'id': 'id', 'compartment_id': 'compartmentId', 'availability_domain': 'availabilityDomain', + 'gpu_memory_fabric_id': 'gpuMemoryFabricId', + 'size': 'size', 'lifecycle_state': 'lifecycleState', 'time_created': 'timeCreated', 'defined_tags': 'definedTags', @@ -82,6 +94,8 @@ def __init__(self, **kwargs): self._id = None self._compartment_id = None self._availability_domain = None + self._gpu_memory_fabric_id = None + self._size = None self._lifecycle_state = None self._time_created = None self._defined_tags = None @@ -175,6 +189,58 @@ def availability_domain(self, availability_domain): """ self._availability_domain = availability_domain + @property + def gpu_memory_fabric_id(self): + """ + Gets the gpu_memory_fabric_id of this ComputeGpuMemoryClusterSummary. + The `OCID`__ of the GPU memory fabric. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The gpu_memory_fabric_id of this ComputeGpuMemoryClusterSummary. + :rtype: str + """ + return self._gpu_memory_fabric_id + + @gpu_memory_fabric_id.setter + def gpu_memory_fabric_id(self, gpu_memory_fabric_id): + """ + Sets the gpu_memory_fabric_id of this ComputeGpuMemoryClusterSummary. + The `OCID`__ of the GPU memory fabric. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param gpu_memory_fabric_id: The gpu_memory_fabric_id of this ComputeGpuMemoryClusterSummary. + :type: str + """ + self._gpu_memory_fabric_id = gpu_memory_fabric_id + + @property + def size(self): + """ + Gets the size of this ComputeGpuMemoryClusterSummary. + The size represents the total number of instances in the GPU Memory Cluster, including both running instances and those still in the process of launching. + + + :return: The size of this ComputeGpuMemoryClusterSummary. + :rtype: int + """ + return self._size + + @size.setter + def size(self, size): + """ + Sets the size of this ComputeGpuMemoryClusterSummary. + The size represents the total number of instances in the GPU Memory Cluster, including both running instances and those still in the process of launching. + + + :param size: The size of this ComputeGpuMemoryClusterSummary. + :type: int + """ + self._size = size + @property def lifecycle_state(self): """ diff --git a/src/oci/core/models/compute_gpu_memory_fabric.py b/src/oci/core/models/compute_gpu_memory_fabric.py index 8fa9e36367..83c0b69bb5 100644 --- a/src/oci/core/models/compute_gpu_memory_fabric.py +++ b/src/oci/core/models/compute_gpu_memory_fabric.py @@ -92,6 +92,10 @@ def __init__(self, **kwargs): Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type fabric_health: str + :param compute_gpu_memory_clusters: + The value to assign to the compute_gpu_memory_clusters property of this ComputeGpuMemoryFabric. + :type compute_gpu_memory_clusters: list[str] + :param additional_data: The value to assign to the additional_data property of this ComputeGpuMemoryFabric. :type additional_data: dict(str, object) @@ -167,6 +171,7 @@ def __init__(self, **kwargs): 'compute_local_block_id': 'str', 'lifecycle_state': 'str', 'fabric_health': 'str', + 'compute_gpu_memory_clusters': 'list[str]', 'additional_data': 'dict(str, object)', 'healthy_host_count': 'int', 'available_host_count': 'int', @@ -192,6 +197,7 @@ def __init__(self, **kwargs): 'compute_local_block_id': 'computeLocalBlockId', 'lifecycle_state': 'lifecycleState', 'fabric_health': 'fabricHealth', + 'compute_gpu_memory_clusters': 'computeGpuMemoryClusters', 'additional_data': 'additionalData', 'healthy_host_count': 'healthyHostCount', 'available_host_count': 'availableHostCount', @@ -216,6 +222,7 @@ def __init__(self, **kwargs): self._compute_local_block_id = None self._lifecycle_state = None self._fabric_health = None + self._compute_gpu_memory_clusters = None self._additional_data = None self._healthy_host_count = None self._available_host_count = None @@ -435,6 +442,30 @@ def fabric_health(self, fabric_health): fabric_health = 'UNKNOWN_ENUM_VALUE' self._fabric_health = fabric_health + @property + def compute_gpu_memory_clusters(self): + """ + Gets the compute_gpu_memory_clusters of this ComputeGpuMemoryFabric. + List of GPU memory clusters within this GPU memory fabric. + + + :return: The compute_gpu_memory_clusters of this ComputeGpuMemoryFabric. + :rtype: list[str] + """ + return self._compute_gpu_memory_clusters + + @compute_gpu_memory_clusters.setter + def compute_gpu_memory_clusters(self, compute_gpu_memory_clusters): + """ + Sets the compute_gpu_memory_clusters of this ComputeGpuMemoryFabric. + List of GPU memory clusters within this GPU memory fabric. + + + :param compute_gpu_memory_clusters: The compute_gpu_memory_clusters of this ComputeGpuMemoryFabric. + :type: list[str] + """ + self._compute_gpu_memory_clusters = compute_gpu_memory_clusters + @property def additional_data(self): """ diff --git a/src/oci/core/models/create_ipv6_details.py b/src/oci/core/models/create_ipv6_details.py index 483c9051db..d7b24bf650 100644 --- a/src/oci/core/models/create_ipv6_details.py +++ b/src/oci/core/models/create_ipv6_details.py @@ -69,6 +69,10 @@ def __init__(self, **kwargs): The value to assign to the ipv6_subnet_cidr property of this CreateIpv6Details. :type ipv6_subnet_cidr: str + :param hostname: + The value to assign to the hostname property of this CreateIpv6Details. + :type hostname: str + """ self.swagger_types = { 'defined_tags': 'dict(str, dict(str, object))', @@ -80,7 +84,8 @@ def __init__(self, **kwargs): 'subnet_id': 'str', 'lifetime': 'str', 'route_table_id': 'str', - 'ipv6_subnet_cidr': 'str' + 'ipv6_subnet_cidr': 'str', + 'hostname': 'str' } self.attribute_map = { 'defined_tags': 'definedTags', @@ -92,7 +97,8 @@ def __init__(self, **kwargs): 'subnet_id': 'subnetId', 'lifetime': 'lifetime', 'route_table_id': 'routeTableId', - 'ipv6_subnet_cidr': 'ipv6SubnetCidr' + 'ipv6_subnet_cidr': 'ipv6SubnetCidr', + 'hostname': 'hostname' } self._defined_tags = None self._display_name = None @@ -104,6 +110,7 @@ def __init__(self, **kwargs): self._lifetime = None self._route_table_id = None self._ipv6_subnet_cidr = None + self._hostname = None @property def defined_tags(self): @@ -410,6 +417,30 @@ def ipv6_subnet_cidr(self, ipv6_subnet_cidr): """ self._ipv6_subnet_cidr = ipv6_subnet_cidr + @property + def hostname(self): + """ + Gets the hostname of this CreateIpv6Details. + The hostname associated with the IPv6 address. Only the hostname label, not the FQDN. + + + :return: The hostname of this CreateIpv6Details. + :rtype: str + """ + return self._hostname + + @hostname.setter + def hostname(self, hostname): + """ + Sets the hostname of this CreateIpv6Details. + The hostname associated with the IPv6 address. Only the hostname label, not the FQDN. + + + :param hostname: The hostname of this CreateIpv6Details. + :type: str + """ + self._hostname = hostname + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/core/models/instance_configuration.py b/src/oci/core/models/instance_configuration.py index a72352babb..103816a59e 100644 --- a/src/oci/core/models/instance_configuration.py +++ b/src/oci/core/models/instance_configuration.py @@ -13,10 +13,6 @@ class InstanceConfiguration(object): """ An instance configuration is a template that defines the settings to use when creating Compute instances. - For more information about instance configurations, see - `Managing Compute Instances`__. - - __ https://docs.oracle.com/iaas/Content/Compute/Concepts/instancemanagement.htm """ def __init__(self, **kwargs): diff --git a/src/oci/core/models/ipv6.py b/src/oci/core/models/ipv6.py index ae8459e116..810fe698b2 100644 --- a/src/oci/core/models/ipv6.py +++ b/src/oci/core/models/ipv6.py @@ -123,6 +123,10 @@ def __init__(self, **kwargs): The value to assign to the route_table_id property of this Ipv6. :type route_table_id: str + :param hostname: + The value to assign to the hostname property of this Ipv6. + :type hostname: str + """ self.swagger_types = { 'compartment_id': 'str', @@ -138,7 +142,8 @@ def __init__(self, **kwargs): 'vnic_id': 'str', 'ip_state': 'str', 'lifetime': 'str', - 'route_table_id': 'str' + 'route_table_id': 'str', + 'hostname': 'str' } self.attribute_map = { 'compartment_id': 'compartmentId', @@ -154,7 +159,8 @@ def __init__(self, **kwargs): 'vnic_id': 'vnicId', 'ip_state': 'ipState', 'lifetime': 'lifetime', - 'route_table_id': 'routeTableId' + 'route_table_id': 'routeTableId', + 'hostname': 'hostname' } self._compartment_id = None self._defined_tags = None @@ -170,6 +176,7 @@ def __init__(self, **kwargs): self._ip_state = None self._lifetime = None self._route_table_id = None + self._hostname = None @property def compartment_id(self): @@ -595,6 +602,30 @@ def route_table_id(self, route_table_id): """ self._route_table_id = route_table_id + @property + def hostname(self): + """ + Gets the hostname of this Ipv6. + The hostname associated with the IPv6 address. Only the hostname label, not the FQDN. + + + :return: The hostname of this Ipv6. + :rtype: str + """ + return self._hostname + + @hostname.setter + def hostname(self, hostname): + """ + Sets the hostname of this Ipv6. + The hostname associated with the IPv6 address. Only the hostname label, not the FQDN. + + + :param hostname: The hostname of this Ipv6. + :type: str + """ + self._hostname = hostname + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/core/models/launch_instance_licensing_config.py b/src/oci/core/models/launch_instance_licensing_config.py index 6907a1d7f1..68ce72ef11 100644 --- a/src/oci/core/models/launch_instance_licensing_config.py +++ b/src/oci/core/models/launch_instance_licensing_config.py @@ -27,6 +27,10 @@ class LaunchInstanceLicensingConfig(object): #: This constant has a value of "BRING_YOUR_OWN_LICENSE" LICENSE_TYPE_BRING_YOUR_OWN_LICENSE = "BRING_YOUR_OWN_LICENSE" + #: A constant which can be used with the license_type property of a LaunchInstanceLicensingConfig. + #: This constant has a value of "PARTNER_PROVIDED" + LICENSE_TYPE_PARTNER_PROVIDED = "PARTNER_PROVIDED" + def __init__(self, **kwargs): """ Initializes a new LaunchInstanceLicensingConfig object with values from keyword arguments. This class has the following subclasses and if you are using this class as input @@ -44,7 +48,7 @@ def __init__(self, **kwargs): :param license_type: The value to assign to the license_type property of this LaunchInstanceLicensingConfig. - Allowed values for this property are: "OCI_PROVIDED", "BRING_YOUR_OWN_LICENSE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "OCI_PROVIDED", "BRING_YOUR_OWN_LICENSE", "PARTNER_PROVIDED", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type license_type: str @@ -110,8 +114,9 @@ def license_type(self): License Type for the OS license. * `OCI_PROVIDED` - OCI provided license (e.g. metered $/OCPU-hour). * `BRING_YOUR_OWN_LICENSE` - Bring your own license. + * `PARTNER_PROVIDED` - Partner provided license. - Allowed values for this property are: "OCI_PROVIDED", "BRING_YOUR_OWN_LICENSE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "OCI_PROVIDED", "BRING_YOUR_OWN_LICENSE", "PARTNER_PROVIDED", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -127,12 +132,13 @@ def license_type(self, license_type): License Type for the OS license. * `OCI_PROVIDED` - OCI provided license (e.g. metered $/OCPU-hour). * `BRING_YOUR_OWN_LICENSE` - Bring your own license. + * `PARTNER_PROVIDED` - Partner provided license. :param license_type: The license_type of this LaunchInstanceLicensingConfig. :type: str """ - allowed_values = ["OCI_PROVIDED", "BRING_YOUR_OWN_LICENSE"] + allowed_values = ["OCI_PROVIDED", "BRING_YOUR_OWN_LICENSE", "PARTNER_PROVIDED"] if not value_allowed_none_or_none_sentinel(license_type, allowed_values): license_type = 'UNKNOWN_ENUM_VALUE' self._license_type = license_type diff --git a/src/oci/core/models/launch_instance_windows_licensing_config.py b/src/oci/core/models/launch_instance_windows_licensing_config.py index 0a2505a725..a5070833a8 100644 --- a/src/oci/core/models/launch_instance_windows_licensing_config.py +++ b/src/oci/core/models/launch_instance_windows_licensing_config.py @@ -28,7 +28,7 @@ def __init__(self, **kwargs): :param license_type: The value to assign to the license_type property of this LaunchInstanceWindowsLicensingConfig. - Allowed values for this property are: "OCI_PROVIDED", "BRING_YOUR_OWN_LICENSE" + Allowed values for this property are: "OCI_PROVIDED", "BRING_YOUR_OWN_LICENSE", "PARTNER_PROVIDED" :type license_type: str """ diff --git a/src/oci/core/models/licensing_config.py b/src/oci/core/models/licensing_config.py index 332275fb78..f53a1ab247 100644 --- a/src/oci/core/models/licensing_config.py +++ b/src/oci/core/models/licensing_config.py @@ -27,6 +27,10 @@ class LicensingConfig(object): #: This constant has a value of "BRING_YOUR_OWN_LICENSE" LICENSE_TYPE_BRING_YOUR_OWN_LICENSE = "BRING_YOUR_OWN_LICENSE" + #: A constant which can be used with the license_type property of a LicensingConfig. + #: This constant has a value of "PARTNER_PROVIDED" + LICENSE_TYPE_PARTNER_PROVIDED = "PARTNER_PROVIDED" + def __init__(self, **kwargs): """ Initializes a new LicensingConfig object with values from keyword arguments. @@ -40,7 +44,7 @@ def __init__(self, **kwargs): :param license_type: The value to assign to the license_type property of this LicensingConfig. - Allowed values for this property are: "OCI_PROVIDED", "BRING_YOUR_OWN_LICENSE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "OCI_PROVIDED", "BRING_YOUR_OWN_LICENSE", "PARTNER_PROVIDED", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type license_type: str @@ -100,8 +104,9 @@ def license_type(self): License Type for the OS license. * `OCI_PROVIDED` - OCI provided license (e.g. metered $/OCPU-hour). * `BRING_YOUR_OWN_LICENSE` - Bring your own license. + * `PARTNER_PROVIDED` - Partner provided license. - Allowed values for this property are: "OCI_PROVIDED", "BRING_YOUR_OWN_LICENSE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "OCI_PROVIDED", "BRING_YOUR_OWN_LICENSE", "PARTNER_PROVIDED", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -117,12 +122,13 @@ def license_type(self, license_type): License Type for the OS license. * `OCI_PROVIDED` - OCI provided license (e.g. metered $/OCPU-hour). * `BRING_YOUR_OWN_LICENSE` - Bring your own license. + * `PARTNER_PROVIDED` - Partner provided license. :param license_type: The license_type of this LicensingConfig. :type: str """ - allowed_values = ["OCI_PROVIDED", "BRING_YOUR_OWN_LICENSE"] + allowed_values = ["OCI_PROVIDED", "BRING_YOUR_OWN_LICENSE", "PARTNER_PROVIDED"] if not value_allowed_none_or_none_sentinel(license_type, allowed_values): license_type = 'UNKNOWN_ENUM_VALUE' self._license_type = license_type diff --git a/src/oci/core/models/subnet.py b/src/oci/core/models/subnet.py index da33db4c18..880023c766 100644 --- a/src/oci/core/models/subnet.py +++ b/src/oci/core/models/subnet.py @@ -254,7 +254,7 @@ def availability_domain(self, availability_domain): @property def cidr_block(self): """ - **[Required]** Gets the cidr_block of this Subnet. + Gets the cidr_block of this Subnet. The subnet's CIDR block. Example: `10.0.1.0/24` @@ -906,7 +906,7 @@ def vcn_id(self, vcn_id): @property def virtual_router_ip(self): """ - **[Required]** Gets the virtual_router_ip of this Subnet. + Gets the virtual_router_ip of this Subnet. The IP address of the virtual router. Example: `10.0.14.1` diff --git a/src/oci/core/models/update_instance_licensing_config.py b/src/oci/core/models/update_instance_licensing_config.py index 7b4c64d9fb..f2b2086e8a 100644 --- a/src/oci/core/models/update_instance_licensing_config.py +++ b/src/oci/core/models/update_instance_licensing_config.py @@ -27,6 +27,10 @@ class UpdateInstanceLicensingConfig(object): #: This constant has a value of "BRING_YOUR_OWN_LICENSE" LICENSE_TYPE_BRING_YOUR_OWN_LICENSE = "BRING_YOUR_OWN_LICENSE" + #: A constant which can be used with the license_type property of a UpdateInstanceLicensingConfig. + #: This constant has a value of "PARTNER_PROVIDED" + LICENSE_TYPE_PARTNER_PROVIDED = "PARTNER_PROVIDED" + def __init__(self, **kwargs): """ Initializes a new UpdateInstanceLicensingConfig object with values from keyword arguments. This class has the following subclasses and if you are using this class as input @@ -43,7 +47,7 @@ def __init__(self, **kwargs): :param license_type: The value to assign to the license_type property of this UpdateInstanceLicensingConfig. - Allowed values for this property are: "OCI_PROVIDED", "BRING_YOUR_OWN_LICENSE" + Allowed values for this property are: "OCI_PROVIDED", "BRING_YOUR_OWN_LICENSE", "PARTNER_PROVIDED" :type license_type: str """ @@ -109,8 +113,9 @@ def license_type(self): License Type for the OS license. * `OCI_PROVIDED` - OCI provided license (e.g. metered $/OCPU-hour). * `BRING_YOUR_OWN_LICENSE` - Bring your own license. + * `PARTNER_PROVIDED` - Partner provided license. - Allowed values for this property are: "OCI_PROVIDED", "BRING_YOUR_OWN_LICENSE" + Allowed values for this property are: "OCI_PROVIDED", "BRING_YOUR_OWN_LICENSE", "PARTNER_PROVIDED" :return: The license_type of this UpdateInstanceLicensingConfig. @@ -125,12 +130,13 @@ def license_type(self, license_type): License Type for the OS license. * `OCI_PROVIDED` - OCI provided license (e.g. metered $/OCPU-hour). * `BRING_YOUR_OWN_LICENSE` - Bring your own license. + * `PARTNER_PROVIDED` - Partner provided license. :param license_type: The license_type of this UpdateInstanceLicensingConfig. :type: str """ - allowed_values = ["OCI_PROVIDED", "BRING_YOUR_OWN_LICENSE"] + allowed_values = ["OCI_PROVIDED", "BRING_YOUR_OWN_LICENSE", "PARTNER_PROVIDED"] if not value_allowed_none_or_none_sentinel(license_type, allowed_values): raise ValueError( f"Invalid value for `license_type`, must be None or one of {allowed_values}" diff --git a/src/oci/core/models/update_instance_windows_licensing_config.py b/src/oci/core/models/update_instance_windows_licensing_config.py index 9b4b806410..d744f4c1c1 100644 --- a/src/oci/core/models/update_instance_windows_licensing_config.py +++ b/src/oci/core/models/update_instance_windows_licensing_config.py @@ -28,7 +28,7 @@ def __init__(self, **kwargs): :param license_type: The value to assign to the license_type property of this UpdateInstanceWindowsLicensingConfig. - Allowed values for this property are: "OCI_PROVIDED", "BRING_YOUR_OWN_LICENSE" + Allowed values for this property are: "OCI_PROVIDED", "BRING_YOUR_OWN_LICENSE", "PARTNER_PROVIDED" :type license_type: str """ diff --git a/src/oci/core/models/update_ipv6_details.py b/src/oci/core/models/update_ipv6_details.py index 8cf0d28c9a..43ae9d9394 100644 --- a/src/oci/core/models/update_ipv6_details.py +++ b/src/oci/core/models/update_ipv6_details.py @@ -44,6 +44,10 @@ def __init__(self, **kwargs): The value to assign to the vnic_id property of this UpdateIpv6Details. :type vnic_id: str + :param hostname: + The value to assign to the hostname property of this UpdateIpv6Details. + :type hostname: str + :param route_table_id: The value to assign to the route_table_id property of this UpdateIpv6Details. :type route_table_id: str @@ -59,6 +63,7 @@ def __init__(self, **kwargs): 'display_name': 'str', 'freeform_tags': 'dict(str, str)', 'vnic_id': 'str', + 'hostname': 'str', 'route_table_id': 'str', 'lifetime': 'str' } @@ -67,6 +72,7 @@ def __init__(self, **kwargs): 'display_name': 'displayName', 'freeform_tags': 'freeformTags', 'vnic_id': 'vnicId', + 'hostname': 'hostname', 'route_table_id': 'routeTableId', 'lifetime': 'lifetime' } @@ -74,6 +80,7 @@ def __init__(self, **kwargs): self._display_name = None self._freeform_tags = None self._vnic_id = None + self._hostname = None self._route_table_id = None self._lifetime = None @@ -201,6 +208,30 @@ def vnic_id(self, vnic_id): """ self._vnic_id = vnic_id + @property + def hostname(self): + """ + Gets the hostname of this UpdateIpv6Details. + The hostname associated with the IPv6 address. Only the hostname label, not the FQDN. + + + :return: The hostname of this UpdateIpv6Details. + :rtype: str + """ + return self._hostname + + @hostname.setter + def hostname(self, hostname): + """ + Sets the hostname of this UpdateIpv6Details. + The hostname associated with the IPv6 address. Only the hostname label, not the FQDN. + + + :param hostname: The hostname of this UpdateIpv6Details. + :type: str + """ + self._hostname = hostname + @property def route_table_id(self): """ diff --git a/src/oci/core/virtual_network_client.py b/src/oci/core/virtual_network_client.py index ee43f14778..1b79d12ee9 100644 --- a/src/oci/core/virtual_network_client.py +++ b/src/oci/core/virtual_network_client.py @@ -110,7 +110,8 @@ def __init__(self, config, **kwargs): 'regional_client': True, 'service_endpoint': kwargs.get('service_endpoint'), 'base_path': '/20160918', - 'service_endpoint_template': 'https://iaas.{region}.{secondLevelDomain}', + 'service_endpoint_template': 'https://iaas.{region}.{dualStack?ds.oci.:}{secondLevelDomain}', + 'endpoint_service_name': 'iaas', 'service_endpoint_template_per_realm': { }, # noqa: E201 E202 'service_uses_dualstack_endpoints_by_default': False, 'skip_deserialization': kwargs.get('skip_deserialization', False), diff --git a/src/oci/database/database_client.py b/src/oci/database/database_client.py index 22ab418fae..4776ca2dff 100644 --- a/src/oci/database/database_client.py +++ b/src/oci/database/database_client.py @@ -45753,6 +45753,128 @@ def reorder_scheduled_actions(self, reorder_scheduled_actions_details, schedulin api_reference_link=api_reference_link, required_arguments=required_arguments) + def reschedule_managed_db_software_update(self, database_id, **kwargs): + """ + Reschedule the Managed Database Software Update + + + :param str database_id: (required) + The database `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` + parameter to the value of the etag from a previous GET or POST response for that resource. The resource + will be updated or deleted only if the etag you provide matches the resource's current etag value. + + :param str opc_request_id: (optional) + Unique identifier for the request. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations (for example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + may be rejected). + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.database.models.Database` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use reschedule_managed_db_software_update API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['databaseId'] + resource_path = "/databases/{databaseId}/actions/rescheduleManagedDbSoftwareUpdate" + method = "POST" + operation_name = "reschedule_managed_db_software_update" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/Database/RescheduleManagedDbSoftwareUpdate" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id", + "opc_retry_token" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"reschedule_managed_db_software_update got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "databaseId": database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="Database", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="Database", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + def resize_vm_cluster_network(self, exadata_infrastructure_id, vm_cluster_network_id, resize_vm_cluster_network_details, **kwargs): """ Adds or removes Db server network nodes to extend or shrink the existing VM cluster network. Applies to Exadata diff --git a/src/oci/database/database_client_composite_operations.py b/src/oci/database/database_client_composite_operations.py index 85186f9458..a8e4635be6 100644 --- a/src/oci/database/database_client_composite_operations.py +++ b/src/oci/database/database_client_composite_operations.py @@ -11724,6 +11724,88 @@ def reorder_scheduled_actions_and_wait_for_state(self, reorder_scheduled_actions except Exception as e: raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def reschedule_managed_db_software_update_and_wait_for_work_request(self, database_id, work_request_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.database.DatabaseClient.reschedule_managed_db_software_update` and waits for the oci.work_requests.models.WorkRequest + to enter the given state(s). + + :param str database_id: (required) + The database `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param list[str] work_request_states: (optional) + An array of work requests states to wait on. These should be valid values for :py:attr:`~oci.work_requests.models.WorkRequest.status` + Default values are termination states: [STATUS_SUCCEEDED, STATUS_FAILED, STATUS_CANCELED] + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.database.DatabaseClient.reschedule_managed_db_software_update` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.reschedule_managed_db_software_update(database_id, **operation_kwargs) + work_request_states = work_request_states if work_request_states else oci.waiter._WORK_REQUEST_TERMINATION_STATES + lowered_work_request_states = [w.lower() for w in work_request_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + work_request_id = operation_result.headers['opc-work-request-id'] + try: + waiter_result = oci.wait_until( + self._work_request_client, + self._work_request_client.get_work_request(work_request_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_work_request_states, + **waiter_kwargs + ) + return waiter_result + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def reschedule_managed_db_software_update_and_wait_for_state(self, database_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.database.DatabaseClient.reschedule_managed_db_software_update` and waits for the :py:class:`~oci.database.models.Database` acted upon + to enter the given state(s). + + :param str database_id: (required) + The database `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.database.models.Database.lifecycle_state` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.database.DatabaseClient.reschedule_managed_db_software_update` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.reschedule_managed_db_software_update(database_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + database_id = operation_result.data.id + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_database(database_id), # noqa: F821 + evaluate_response=lambda r: getattr(r.data, 'lifecycle_state') and getattr(r.data, 'lifecycle_state').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except (NameError, TypeError) as e: + if not e.args: + e.args = ('',) + e.args = e.args + ('This composite operation is currently not supported in the SDK. Please use the operation from the service client and use waiters as an alternative. For more information on waiters, visit: "https://docs.oracle.com/en-us/iaas/tools/python/latest/api/waiters.html"', ) + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def resize_vm_cluster_network_and_wait_for_work_request(self, exadata_infrastructure_id, vm_cluster_network_id, resize_vm_cluster_network_details, work_request_states=[], operation_kwargs={}, waiter_kwargs={}): """ Calls :py:func:`~oci.database.DatabaseClient.resize_vm_cluster_network` and waits for the oci.work_requests.models.WorkRequest diff --git a/src/oci/database/models/__init__.py b/src/oci/database/models/__init__.py index 5d774647f5..3c501da1e5 100644 --- a/src/oci/database/models/__init__.py +++ b/src/oci/database/models/__init__.py @@ -396,6 +396,11 @@ from .maintenance_run_summary import MaintenanceRunSummary from .maintenance_version_preference_details import MaintenanceVersionPreferenceDetails from .maintenance_window import MaintenanceWindow +from .managed_software_update_day_of_week import ManagedSoftwareUpdateDayOfWeek +from .managed_software_update_details import ManagedSoftwareUpdateDetails +from .managed_software_update_input_details import ManagedSoftwareUpdateInputDetails +from .managed_software_update_maintenance_details import ManagedSoftwareUpdateMaintenanceDetails +from .managed_software_update_preference_details import ManagedSoftwareUpdatePreferenceDetails from .migrate_vault_key_details import MigrateVaultKeyDetails from .modify_database_management_details import ModifyDatabaseManagementDetails from .modify_pluggable_database_management_details import ModifyPluggableDatabaseManagementDetails @@ -544,6 +549,8 @@ from .upgrade_database_details import UpgradeDatabaseDetails from .upgrade_db_system_details import UpgradeDbSystemDetails from .vanity_url_details import VanityUrlDetails +from .version_scheme_details import VersionSchemeDetails +from .version_scheme_from_version_series_details import VersionSchemeFromVersionSeriesDetails from .vm_cluster import VmCluster from .vm_cluster_network import VmClusterNetwork from .vm_cluster_network_details import VmClusterNetworkDetails @@ -952,6 +959,11 @@ "MaintenanceRunSummary": MaintenanceRunSummary, "MaintenanceVersionPreferenceDetails": MaintenanceVersionPreferenceDetails, "MaintenanceWindow": MaintenanceWindow, + "ManagedSoftwareUpdateDayOfWeek": ManagedSoftwareUpdateDayOfWeek, + "ManagedSoftwareUpdateDetails": ManagedSoftwareUpdateDetails, + "ManagedSoftwareUpdateInputDetails": ManagedSoftwareUpdateInputDetails, + "ManagedSoftwareUpdateMaintenanceDetails": ManagedSoftwareUpdateMaintenanceDetails, + "ManagedSoftwareUpdatePreferenceDetails": ManagedSoftwareUpdatePreferenceDetails, "MigrateVaultKeyDetails": MigrateVaultKeyDetails, "ModifyDatabaseManagementDetails": ModifyDatabaseManagementDetails, "ModifyPluggableDatabaseManagementDetails": ModifyPluggableDatabaseManagementDetails, @@ -1100,6 +1112,8 @@ "UpgradeDatabaseDetails": UpgradeDatabaseDetails, "UpgradeDbSystemDetails": UpgradeDbSystemDetails, "VanityUrlDetails": VanityUrlDetails, + "VersionSchemeDetails": VersionSchemeDetails, + "VersionSchemeFromVersionSeriesDetails": VersionSchemeFromVersionSeriesDetails, "VmCluster": VmCluster, "VmClusterNetwork": VmClusterNetwork, "VmClusterNetworkDetails": VmClusterNetworkDetails, diff --git a/src/oci/database/models/create_database_base.py b/src/oci/database/models/create_database_base.py index a3be24bc11..1364ddd025 100644 --- a/src/oci/database/models/create_database_base.py +++ b/src/oci/database/models/create_database_base.py @@ -112,7 +112,7 @@ def get_subtype(object_dictionary): @property def db_home_id(self): """ - **[Required]** Gets the db_home_id of this CreateDatabaseBase. + Gets the db_home_id of this CreateDatabaseBase. The `OCID`__ of the Database Home. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm diff --git a/src/oci/database/models/create_database_details.py b/src/oci/database/models/create_database_details.py index c9a6b35dc4..8f7291bb98 100644 --- a/src/oci/database/models/create_database_details.py +++ b/src/oci/database/models/create_database_details.py @@ -107,6 +107,14 @@ def __init__(self, **kwargs): The value to assign to the storage_size_details property of this CreateDatabaseDetails. :type storage_size_details: oci.database.models.DatabaseStorageSizeDetails + :param managed_software_update_details: + The value to assign to the managed_software_update_details property of this CreateDatabaseDetails. + :type managed_software_update_details: oci.database.models.ManagedSoftwareUpdateInputDetails + + :param vm_cluster_id: + The value to assign to the vm_cluster_id property of this CreateDatabaseDetails. + :type vm_cluster_id: str + """ self.swagger_types = { 'db_name': 'str', @@ -127,7 +135,9 @@ def __init__(self, **kwargs): 'sid_prefix': 'str', 'key_store_id': 'str', 'encryption_key_location_details': 'EncryptionKeyLocationDetails', - 'storage_size_details': 'DatabaseStorageSizeDetails' + 'storage_size_details': 'DatabaseStorageSizeDetails', + 'managed_software_update_details': 'ManagedSoftwareUpdateInputDetails', + 'vm_cluster_id': 'str' } self.attribute_map = { 'db_name': 'dbName', @@ -148,7 +158,9 @@ def __init__(self, **kwargs): 'sid_prefix': 'sidPrefix', 'key_store_id': 'keyStoreId', 'encryption_key_location_details': 'encryptionKeyLocationDetails', - 'storage_size_details': 'storageSizeDetails' + 'storage_size_details': 'storageSizeDetails', + 'managed_software_update_details': 'managedSoftwareUpdateDetails', + 'vm_cluster_id': 'vmClusterId' } self._db_name = None self._db_unique_name = None @@ -169,6 +181,8 @@ def __init__(self, **kwargs): self._key_store_id = None self._encryption_key_location_details = None self._storage_size_details = None + self._managed_software_update_details = None + self._vm_cluster_id = None @property def db_name(self): @@ -663,6 +677,54 @@ def storage_size_details(self, storage_size_details): """ self._storage_size_details = storage_size_details + @property + def managed_software_update_details(self): + """ + Gets the managed_software_update_details of this CreateDatabaseDetails. + + :return: The managed_software_update_details of this CreateDatabaseDetails. + :rtype: oci.database.models.ManagedSoftwareUpdateInputDetails + """ + return self._managed_software_update_details + + @managed_software_update_details.setter + def managed_software_update_details(self, managed_software_update_details): + """ + Sets the managed_software_update_details of this CreateDatabaseDetails. + + :param managed_software_update_details: The managed_software_update_details of this CreateDatabaseDetails. + :type: oci.database.models.ManagedSoftwareUpdateInputDetails + """ + self._managed_software_update_details = managed_software_update_details + + @property + def vm_cluster_id(self): + """ + Gets the vm_cluster_id of this CreateDatabaseDetails. + The `OCID`__ of the VM cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The vm_cluster_id of this CreateDatabaseDetails. + :rtype: str + """ + return self._vm_cluster_id + + @vm_cluster_id.setter + def vm_cluster_id(self, vm_cluster_id): + """ + Sets the vm_cluster_id of this CreateDatabaseDetails. + The `OCID`__ of the VM cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param vm_cluster_id: The vm_cluster_id of this CreateDatabaseDetails. + :type: str + """ + self._vm_cluster_id = vm_cluster_id + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/database/models/create_database_from_another_database_details.py b/src/oci/database/models/create_database_from_another_database_details.py index bc075e79c7..42acdd7955 100644 --- a/src/oci/database/models/create_database_from_another_database_details.py +++ b/src/oci/database/models/create_database_from_another_database_details.py @@ -68,6 +68,10 @@ def __init__(self, **kwargs): The value to assign to the storage_size_details property of this CreateDatabaseFromAnotherDatabaseDetails. :type storage_size_details: oci.database.models.DatabaseStorageSizeDetails + :param managed_software_update_details: + The value to assign to the managed_software_update_details property of this CreateDatabaseFromAnotherDatabaseDetails. + :type managed_software_update_details: oci.database.models.ManagedSoftwareUpdateInputDetails + :param vm_cluster_id: The value to assign to the vm_cluster_id property of this CreateDatabaseFromAnotherDatabaseDetails. :type vm_cluster_id: str @@ -86,6 +90,7 @@ def __init__(self, **kwargs): 'sid_prefix': 'str', 'source_encryption_key_location_details': 'EncryptionKeyLocationDetails', 'storage_size_details': 'DatabaseStorageSizeDetails', + 'managed_software_update_details': 'ManagedSoftwareUpdateInputDetails', 'vm_cluster_id': 'str' } self.attribute_map = { @@ -101,6 +106,7 @@ def __init__(self, **kwargs): 'sid_prefix': 'sidPrefix', 'source_encryption_key_location_details': 'sourceEncryptionKeyLocationDetails', 'storage_size_details': 'storageSizeDetails', + 'managed_software_update_details': 'managedSoftwareUpdateDetails', 'vm_cluster_id': 'vmClusterId' } self._database_id = None @@ -115,6 +121,7 @@ def __init__(self, **kwargs): self._sid_prefix = None self._source_encryption_key_location_details = None self._storage_size_details = None + self._managed_software_update_details = None self._vm_cluster_id = None @property @@ -417,6 +424,26 @@ def storage_size_details(self, storage_size_details): """ self._storage_size_details = storage_size_details + @property + def managed_software_update_details(self): + """ + Gets the managed_software_update_details of this CreateDatabaseFromAnotherDatabaseDetails. + + :return: The managed_software_update_details of this CreateDatabaseFromAnotherDatabaseDetails. + :rtype: oci.database.models.ManagedSoftwareUpdateInputDetails + """ + return self._managed_software_update_details + + @managed_software_update_details.setter + def managed_software_update_details(self, managed_software_update_details): + """ + Sets the managed_software_update_details of this CreateDatabaseFromAnotherDatabaseDetails. + + :param managed_software_update_details: The managed_software_update_details of this CreateDatabaseFromAnotherDatabaseDetails. + :type: oci.database.models.ManagedSoftwareUpdateInputDetails + """ + self._managed_software_update_details = managed_software_update_details + @property def vm_cluster_id(self): """ diff --git a/src/oci/database/models/create_database_from_backup_details.py b/src/oci/database/models/create_database_from_backup_details.py index ebb3bcd916..3b1f36f967 100644 --- a/src/oci/database/models/create_database_from_backup_details.py +++ b/src/oci/database/models/create_database_from_backup_details.py @@ -56,6 +56,14 @@ def __init__(self, **kwargs): The value to assign to the storage_size_details property of this CreateDatabaseFromBackupDetails. :type storage_size_details: oci.database.models.DatabaseStorageSizeDetails + :param managed_software_update_details: + The value to assign to the managed_software_update_details property of this CreateDatabaseFromBackupDetails. + :type managed_software_update_details: oci.database.models.ManagedSoftwareUpdateInputDetails + + :param vm_cluster_id: + The value to assign to the vm_cluster_id property of this CreateDatabaseFromBackupDetails. + :type vm_cluster_id: str + :param freeform_tags: The value to assign to the freeform_tags property of this CreateDatabaseFromBackupDetails. :type freeform_tags: dict(str, str) @@ -75,6 +83,8 @@ def __init__(self, **kwargs): 'sid_prefix': 'str', 'pluggable_databases': 'list[str]', 'storage_size_details': 'DatabaseStorageSizeDetails', + 'managed_software_update_details': 'ManagedSoftwareUpdateInputDetails', + 'vm_cluster_id': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))' } @@ -88,6 +98,8 @@ def __init__(self, **kwargs): 'sid_prefix': 'sidPrefix', 'pluggable_databases': 'pluggableDatabases', 'storage_size_details': 'storageSizeDetails', + 'managed_software_update_details': 'managedSoftwareUpdateDetails', + 'vm_cluster_id': 'vmClusterId', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags' } @@ -100,6 +112,8 @@ def __init__(self, **kwargs): self._sid_prefix = None self._pluggable_databases = None self._storage_size_details = None + self._managed_software_update_details = None + self._vm_cluster_id = None self._freeform_tags = None self._defined_tags = None @@ -315,6 +329,54 @@ def storage_size_details(self, storage_size_details): """ self._storage_size_details = storage_size_details + @property + def managed_software_update_details(self): + """ + Gets the managed_software_update_details of this CreateDatabaseFromBackupDetails. + + :return: The managed_software_update_details of this CreateDatabaseFromBackupDetails. + :rtype: oci.database.models.ManagedSoftwareUpdateInputDetails + """ + return self._managed_software_update_details + + @managed_software_update_details.setter + def managed_software_update_details(self, managed_software_update_details): + """ + Sets the managed_software_update_details of this CreateDatabaseFromBackupDetails. + + :param managed_software_update_details: The managed_software_update_details of this CreateDatabaseFromBackupDetails. + :type: oci.database.models.ManagedSoftwareUpdateInputDetails + """ + self._managed_software_update_details = managed_software_update_details + + @property + def vm_cluster_id(self): + """ + Gets the vm_cluster_id of this CreateDatabaseFromBackupDetails. + The `OCID`__ of the VM cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The vm_cluster_id of this CreateDatabaseFromBackupDetails. + :rtype: str + """ + return self._vm_cluster_id + + @vm_cluster_id.setter + def vm_cluster_id(self, vm_cluster_id): + """ + Sets the vm_cluster_id of this CreateDatabaseFromBackupDetails. + The `OCID`__ of the VM cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param vm_cluster_id: The vm_cluster_id of this CreateDatabaseFromBackupDetails. + :type: str + """ + self._vm_cluster_id = vm_cluster_id + @property def freeform_tags(self): """ diff --git a/src/oci/database/models/database.py b/src/oci/database/models/database.py index 6867507692..594dbe5ea7 100644 --- a/src/oci/database/models/database.py +++ b/src/oci/database/models/database.py @@ -55,6 +55,14 @@ class Database(object): #: This constant has a value of "FAILED" LIFECYCLE_STATE_FAILED = "FAILED" + #: A constant which can be used with the home_type property of a Database. + #: This constant has a value of "ORACLE_MANAGED" + HOME_TYPE_ORACLE_MANAGED = "ORACLE_MANAGED" + + #: A constant which can be used with the home_type property of a Database. + #: This constant has a value of "CUSTOMER_MANAGED" + HOME_TYPE_CUSTOMER_MANAGED = "CUSTOMER_MANAGED" + def __init__(self, **kwargs): """ Initializes a new Database object with values from keyword arguments. @@ -202,6 +210,16 @@ def __init__(self, **kwargs): The value to assign to the storage_size_details property of this Database. :type storage_size_details: oci.database.models.DatabaseStorageSizeResponseDetails + :param managed_software_update_details: + The value to assign to the managed_software_update_details property of this Database. + :type managed_software_update_details: oci.database.models.ManagedSoftwareUpdateDetails + + :param home_type: + The value to assign to the home_type property of this Database. + Allowed values for this property are: "ORACLE_MANAGED", "CUSTOMER_MANAGED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type home_type: str + :param patch_version: The value to assign to the patch_version property of this Database. :type patch_version: str @@ -243,6 +261,8 @@ def __init__(self, **kwargs): 'data_guard_group': 'DataGuardGroup', 'encryption_key_location_details': 'EncryptionKeyLocationDetails', 'storage_size_details': 'DatabaseStorageSizeResponseDetails', + 'managed_software_update_details': 'ManagedSoftwareUpdateDetails', + 'home_type': 'str', 'patch_version': 'str' } self.attribute_map = { @@ -281,6 +301,8 @@ def __init__(self, **kwargs): 'data_guard_group': 'dataGuardGroup', 'encryption_key_location_details': 'encryptionKeyLocationDetails', 'storage_size_details': 'storageSizeDetails', + 'managed_software_update_details': 'managedSoftwareUpdateDetails', + 'home_type': 'homeType', 'patch_version': 'patchVersion' } self._id = None @@ -318,6 +340,8 @@ def __init__(self, **kwargs): self._data_guard_group = None self._encryption_key_location_details = None self._storage_size_details = None + self._managed_software_update_details = None + self._home_type = None self._patch_version = None @property @@ -1212,6 +1236,56 @@ def storage_size_details(self, storage_size_details): """ self._storage_size_details = storage_size_details + @property + def managed_software_update_details(self): + """ + Gets the managed_software_update_details of this Database. + + :return: The managed_software_update_details of this Database. + :rtype: oci.database.models.ManagedSoftwareUpdateDetails + """ + return self._managed_software_update_details + + @managed_software_update_details.setter + def managed_software_update_details(self, managed_software_update_details): + """ + Sets the managed_software_update_details of this Database. + + :param managed_software_update_details: The managed_software_update_details of this Database. + :type: oci.database.models.ManagedSoftwareUpdateDetails + """ + self._managed_software_update_details = managed_software_update_details + + @property + def home_type(self): + """ + Gets the home_type of this Database. + Represents database will be under oracle managed home or customer managed home + + Allowed values for this property are: "ORACLE_MANAGED", "CUSTOMER_MANAGED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The home_type of this Database. + :rtype: str + """ + return self._home_type + + @home_type.setter + def home_type(self, home_type): + """ + Sets the home_type of this Database. + Represents database will be under oracle managed home or customer managed home + + + :param home_type: The home_type of this Database. + :type: str + """ + allowed_values = ["ORACLE_MANAGED", "CUSTOMER_MANAGED"] + if not value_allowed_none_or_none_sentinel(home_type, allowed_values): + home_type = 'UNKNOWN_ENUM_VALUE' + self._home_type = home_type + @property def patch_version(self): """ diff --git a/src/oci/database/models/database_summary.py b/src/oci/database/models/database_summary.py index ae7ea02645..dc80788c4d 100644 --- a/src/oci/database/models/database_summary.py +++ b/src/oci/database/models/database_summary.py @@ -62,6 +62,14 @@ class DatabaseSummary(object): #: This constant has a value of "FAILED" LIFECYCLE_STATE_FAILED = "FAILED" + #: A constant which can be used with the home_type property of a DatabaseSummary. + #: This constant has a value of "ORACLE_MANAGED" + HOME_TYPE_ORACLE_MANAGED = "ORACLE_MANAGED" + + #: A constant which can be used with the home_type property of a DatabaseSummary. + #: This constant has a value of "CUSTOMER_MANAGED" + HOME_TYPE_CUSTOMER_MANAGED = "CUSTOMER_MANAGED" + def __init__(self, **kwargs): """ Initializes a new DatabaseSummary object with values from keyword arguments. @@ -209,6 +217,16 @@ def __init__(self, **kwargs): The value to assign to the storage_size_details property of this DatabaseSummary. :type storage_size_details: oci.database.models.DatabaseStorageSizeResponseDetails + :param managed_software_update_details: + The value to assign to the managed_software_update_details property of this DatabaseSummary. + :type managed_software_update_details: oci.database.models.ManagedSoftwareUpdateDetails + + :param home_type: + The value to assign to the home_type property of this DatabaseSummary. + Allowed values for this property are: "ORACLE_MANAGED", "CUSTOMER_MANAGED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type home_type: str + :param patch_version: The value to assign to the patch_version property of this DatabaseSummary. :type patch_version: str @@ -250,6 +268,8 @@ def __init__(self, **kwargs): 'data_guard_group': 'DataGuardGroup', 'encryption_key_location_details': 'EncryptionKeyLocationDetails', 'storage_size_details': 'DatabaseStorageSizeResponseDetails', + 'managed_software_update_details': 'ManagedSoftwareUpdateDetails', + 'home_type': 'str', 'patch_version': 'str' } self.attribute_map = { @@ -288,6 +308,8 @@ def __init__(self, **kwargs): 'data_guard_group': 'dataGuardGroup', 'encryption_key_location_details': 'encryptionKeyLocationDetails', 'storage_size_details': 'storageSizeDetails', + 'managed_software_update_details': 'managedSoftwareUpdateDetails', + 'home_type': 'homeType', 'patch_version': 'patchVersion' } self._id = None @@ -325,6 +347,8 @@ def __init__(self, **kwargs): self._data_guard_group = None self._encryption_key_location_details = None self._storage_size_details = None + self._managed_software_update_details = None + self._home_type = None self._patch_version = None @property @@ -1219,6 +1243,56 @@ def storage_size_details(self, storage_size_details): """ self._storage_size_details = storage_size_details + @property + def managed_software_update_details(self): + """ + Gets the managed_software_update_details of this DatabaseSummary. + + :return: The managed_software_update_details of this DatabaseSummary. + :rtype: oci.database.models.ManagedSoftwareUpdateDetails + """ + return self._managed_software_update_details + + @managed_software_update_details.setter + def managed_software_update_details(self, managed_software_update_details): + """ + Sets the managed_software_update_details of this DatabaseSummary. + + :param managed_software_update_details: The managed_software_update_details of this DatabaseSummary. + :type: oci.database.models.ManagedSoftwareUpdateDetails + """ + self._managed_software_update_details = managed_software_update_details + + @property + def home_type(self): + """ + Gets the home_type of this DatabaseSummary. + Represents database will be under oracle managed home or customer managed home + + Allowed values for this property are: "ORACLE_MANAGED", "CUSTOMER_MANAGED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The home_type of this DatabaseSummary. + :rtype: str + """ + return self._home_type + + @home_type.setter + def home_type(self, home_type): + """ + Sets the home_type of this DatabaseSummary. + Represents database will be under oracle managed home or customer managed home + + + :param home_type: The home_type of this DatabaseSummary. + :type: str + """ + allowed_values = ["ORACLE_MANAGED", "CUSTOMER_MANAGED"] + if not value_allowed_none_or_none_sentinel(home_type, allowed_values): + home_type = 'UNKNOWN_ENUM_VALUE' + self._home_type = home_type + @property def patch_version(self): """ diff --git a/src/oci/database/models/db_home.py b/src/oci/database/models/db_home.py index 4f956badc5..ac22d4cf3b 100644 --- a/src/oci/database/models/db_home.py +++ b/src/oci/database/models/db_home.py @@ -39,6 +39,14 @@ class DbHome(object): #: This constant has a value of "FAILED" LIFECYCLE_STATE_FAILED = "FAILED" + #: A constant which can be used with the home_type property of a DbHome. + #: This constant has a value of "ORACLE_MANAGED" + HOME_TYPE_ORACLE_MANAGED = "ORACLE_MANAGED" + + #: A constant which can be used with the home_type property of a DbHome. + #: This constant has a value of "CUSTOMER_MANAGED" + HOME_TYPE_CUSTOMER_MANAGED = "CUSTOMER_MANAGED" + def __init__(self, **kwargs): """ Initializes a new DbHome object with values from keyword arguments. @@ -118,6 +126,12 @@ def __init__(self, **kwargs): The value to assign to the is_unified_auditing_enabled property of this DbHome. :type is_unified_auditing_enabled: bool + :param home_type: + The value to assign to the home_type property of this DbHome. + Allowed values for this property are: "ORACLE_MANAGED", "CUSTOMER_MANAGED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type home_type: str + """ self.swagger_types = { 'id': 'str', @@ -137,7 +151,8 @@ def __init__(self, **kwargs): 'defined_tags': 'dict(str, dict(str, object))', 'system_tags': 'dict(str, dict(str, object))', 'database_software_image_id': 'str', - 'is_unified_auditing_enabled': 'bool' + 'is_unified_auditing_enabled': 'bool', + 'home_type': 'str' } self.attribute_map = { 'id': 'id', @@ -157,7 +172,8 @@ def __init__(self, **kwargs): 'defined_tags': 'definedTags', 'system_tags': 'systemTags', 'database_software_image_id': 'databaseSoftwareImageId', - 'is_unified_auditing_enabled': 'isUnifiedAuditingEnabled' + 'is_unified_auditing_enabled': 'isUnifiedAuditingEnabled', + 'home_type': 'homeType' } self._id = None self._compartment_id = None @@ -177,6 +193,7 @@ def __init__(self, **kwargs): self._system_tags = None self._database_software_image_id = None self._is_unified_auditing_enabled = None + self._home_type = None @property def id(self): @@ -662,6 +679,36 @@ def is_unified_auditing_enabled(self, is_unified_auditing_enabled): """ self._is_unified_auditing_enabled = is_unified_auditing_enabled + @property + def home_type(self): + """ + Gets the home_type of this DbHome. + Represents database home will be managed by oracle or customer + + Allowed values for this property are: "ORACLE_MANAGED", "CUSTOMER_MANAGED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The home_type of this DbHome. + :rtype: str + """ + return self._home_type + + @home_type.setter + def home_type(self, home_type): + """ + Sets the home_type of this DbHome. + Represents database home will be managed by oracle or customer + + + :param home_type: The home_type of this DbHome. + :type: str + """ + allowed_values = ["ORACLE_MANAGED", "CUSTOMER_MANAGED"] + if not value_allowed_none_or_none_sentinel(home_type, allowed_values): + home_type = 'UNKNOWN_ENUM_VALUE' + self._home_type = home_type + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/database/models/db_home_from_agent_resource_id.py b/src/oci/database/models/db_home_from_agent_resource_id.py index 2a55cd9d5c..6412224129 100644 --- a/src/oci/database/models/db_home_from_agent_resource_id.py +++ b/src/oci/database/models/db_home_from_agent_resource_id.py @@ -39,6 +39,14 @@ class DbHomeFromAgentResourceId(object): #: This constant has a value of "FAILED" LIFECYCLE_STATE_FAILED = "FAILED" + #: A constant which can be used with the home_type property of a DbHomeFromAgentResourceId. + #: This constant has a value of "ORACLE_MANAGED" + HOME_TYPE_ORACLE_MANAGED = "ORACLE_MANAGED" + + #: A constant which can be used with the home_type property of a DbHomeFromAgentResourceId. + #: This constant has a value of "CUSTOMER_MANAGED" + HOME_TYPE_CUSTOMER_MANAGED = "CUSTOMER_MANAGED" + def __init__(self, **kwargs): """ Initializes a new DbHomeFromAgentResourceId object with values from keyword arguments. @@ -117,6 +125,11 @@ def __init__(self, **kwargs): The value to assign to the is_unified_auditing_enabled property of this DbHomeFromAgentResourceId. :type is_unified_auditing_enabled: bool + :param home_type: + The value to assign to the home_type property of this DbHomeFromAgentResourceId. + Allowed values for this property are: "ORACLE_MANAGED", "CUSTOMER_MANAGED" + :type home_type: str + """ self.swagger_types = { 'id': 'str', @@ -136,7 +149,8 @@ def __init__(self, **kwargs): 'defined_tags': 'dict(str, dict(str, object))', 'system_tags': 'dict(str, dict(str, object))', 'database_software_image_id': 'str', - 'is_unified_auditing_enabled': 'bool' + 'is_unified_auditing_enabled': 'bool', + 'home_type': 'str' } self.attribute_map = { 'id': 'id', @@ -156,7 +170,8 @@ def __init__(self, **kwargs): 'defined_tags': 'definedTags', 'system_tags': 'systemTags', 'database_software_image_id': 'databaseSoftwareImageId', - 'is_unified_auditing_enabled': 'isUnifiedAuditingEnabled' + 'is_unified_auditing_enabled': 'isUnifiedAuditingEnabled', + 'home_type': 'homeType' } self._id = None self._compartment_id = None @@ -176,6 +191,7 @@ def __init__(self, **kwargs): self._system_tags = None self._database_software_image_id = None self._is_unified_auditing_enabled = None + self._home_type = None @property def id(self): @@ -662,6 +678,37 @@ def is_unified_auditing_enabled(self, is_unified_auditing_enabled): """ self._is_unified_auditing_enabled = is_unified_auditing_enabled + @property + def home_type(self): + """ + Gets the home_type of this DbHomeFromAgentResourceId. + Represents database home will be managed by oracle or customer + + Allowed values for this property are: "ORACLE_MANAGED", "CUSTOMER_MANAGED" + + + :return: The home_type of this DbHomeFromAgentResourceId. + :rtype: str + """ + return self._home_type + + @home_type.setter + def home_type(self, home_type): + """ + Sets the home_type of this DbHomeFromAgentResourceId. + Represents database home will be managed by oracle or customer + + + :param home_type: The home_type of this DbHomeFromAgentResourceId. + :type: str + """ + allowed_values = ["ORACLE_MANAGED", "CUSTOMER_MANAGED"] + if not value_allowed_none_or_none_sentinel(home_type, allowed_values): + raise ValueError( + f"Invalid value for `home_type`, must be None or one of {allowed_values}" + ) + self._home_type = home_type + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/database/models/db_home_summary.py b/src/oci/database/models/db_home_summary.py index fc5b0310ca..6c01fe83d1 100644 --- a/src/oci/database/models/db_home_summary.py +++ b/src/oci/database/models/db_home_summary.py @@ -51,6 +51,14 @@ class DbHomeSummary(object): #: This constant has a value of "FAILED" LIFECYCLE_STATE_FAILED = "FAILED" + #: A constant which can be used with the home_type property of a DbHomeSummary. + #: This constant has a value of "ORACLE_MANAGED" + HOME_TYPE_ORACLE_MANAGED = "ORACLE_MANAGED" + + #: A constant which can be used with the home_type property of a DbHomeSummary. + #: This constant has a value of "CUSTOMER_MANAGED" + HOME_TYPE_CUSTOMER_MANAGED = "CUSTOMER_MANAGED" + def __init__(self, **kwargs): """ Initializes a new DbHomeSummary object with values from keyword arguments. @@ -130,6 +138,12 @@ def __init__(self, **kwargs): The value to assign to the is_unified_auditing_enabled property of this DbHomeSummary. :type is_unified_auditing_enabled: bool + :param home_type: + The value to assign to the home_type property of this DbHomeSummary. + Allowed values for this property are: "ORACLE_MANAGED", "CUSTOMER_MANAGED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type home_type: str + """ self.swagger_types = { 'id': 'str', @@ -149,7 +163,8 @@ def __init__(self, **kwargs): 'defined_tags': 'dict(str, dict(str, object))', 'system_tags': 'dict(str, dict(str, object))', 'database_software_image_id': 'str', - 'is_unified_auditing_enabled': 'bool' + 'is_unified_auditing_enabled': 'bool', + 'home_type': 'str' } self.attribute_map = { 'id': 'id', @@ -169,7 +184,8 @@ def __init__(self, **kwargs): 'defined_tags': 'definedTags', 'system_tags': 'systemTags', 'database_software_image_id': 'databaseSoftwareImageId', - 'is_unified_auditing_enabled': 'isUnifiedAuditingEnabled' + 'is_unified_auditing_enabled': 'isUnifiedAuditingEnabled', + 'home_type': 'homeType' } self._id = None self._compartment_id = None @@ -189,6 +205,7 @@ def __init__(self, **kwargs): self._system_tags = None self._database_software_image_id = None self._is_unified_auditing_enabled = None + self._home_type = None @property def id(self): @@ -674,6 +691,36 @@ def is_unified_auditing_enabled(self, is_unified_auditing_enabled): """ self._is_unified_auditing_enabled = is_unified_auditing_enabled + @property + def home_type(self): + """ + Gets the home_type of this DbHomeSummary. + Represents database home will be managed by oracle or customer + + Allowed values for this property are: "ORACLE_MANAGED", "CUSTOMER_MANAGED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The home_type of this DbHomeSummary. + :rtype: str + """ + return self._home_type + + @home_type.setter + def home_type(self, home_type): + """ + Sets the home_type of this DbHomeSummary. + Represents database home will be managed by oracle or customer + + + :param home_type: The home_type of this DbHomeSummary. + :type: str + """ + allowed_values = ["ORACLE_MANAGED", "CUSTOMER_MANAGED"] + if not value_allowed_none_or_none_sentinel(home_type, allowed_values): + home_type = 'UNKNOWN_ENUM_VALUE' + self._home_type = home_type + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/database/models/managed_software_update_day_of_week.py b/src/oci/database/models/managed_software_update_day_of_week.py new file mode 100644 index 0000000000..a69f486ccd --- /dev/null +++ b/src/oci/database/models/managed_software_update_day_of_week.py @@ -0,0 +1,106 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ManagedSoftwareUpdateDayOfWeek(object): + """ + Day of the week. + """ + + #: A constant which can be used with the day_of_week property of a ManagedSoftwareUpdateDayOfWeek. + #: This constant has a value of "SUNDAY" + DAY_OF_WEEK_SUNDAY = "SUNDAY" + + #: A constant which can be used with the day_of_week property of a ManagedSoftwareUpdateDayOfWeek. + #: This constant has a value of "MONDAY" + DAY_OF_WEEK_MONDAY = "MONDAY" + + #: A constant which can be used with the day_of_week property of a ManagedSoftwareUpdateDayOfWeek. + #: This constant has a value of "TUESDAY" + DAY_OF_WEEK_TUESDAY = "TUESDAY" + + #: A constant which can be used with the day_of_week property of a ManagedSoftwareUpdateDayOfWeek. + #: This constant has a value of "WEDNESDAY" + DAY_OF_WEEK_WEDNESDAY = "WEDNESDAY" + + #: A constant which can be used with the day_of_week property of a ManagedSoftwareUpdateDayOfWeek. + #: This constant has a value of "THURSDAY" + DAY_OF_WEEK_THURSDAY = "THURSDAY" + + #: A constant which can be used with the day_of_week property of a ManagedSoftwareUpdateDayOfWeek. + #: This constant has a value of "FRIDAY" + DAY_OF_WEEK_FRIDAY = "FRIDAY" + + #: A constant which can be used with the day_of_week property of a ManagedSoftwareUpdateDayOfWeek. + #: This constant has a value of "SATURDAY" + DAY_OF_WEEK_SATURDAY = "SATURDAY" + + def __init__(self, **kwargs): + """ + Initializes a new ManagedSoftwareUpdateDayOfWeek object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param day_of_week: + The value to assign to the day_of_week property of this ManagedSoftwareUpdateDayOfWeek. + Allowed values for this property are: "SUNDAY", "MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type day_of_week: str + + """ + self.swagger_types = { + 'day_of_week': 'str' + } + self.attribute_map = { + 'day_of_week': 'dayOfWeek' + } + self._day_of_week = None + + @property + def day_of_week(self): + """ + **[Required]** Gets the day_of_week of this ManagedSoftwareUpdateDayOfWeek. + Day of the week. + + Allowed values for this property are: "SUNDAY", "MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The day_of_week of this ManagedSoftwareUpdateDayOfWeek. + :rtype: str + """ + return self._day_of_week + + @day_of_week.setter + def day_of_week(self, day_of_week): + """ + Sets the day_of_week of this ManagedSoftwareUpdateDayOfWeek. + Day of the week. + + + :param day_of_week: The day_of_week of this ManagedSoftwareUpdateDayOfWeek. + :type: str + """ + allowed_values = ["SUNDAY", "MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY"] + if not value_allowed_none_or_none_sentinel(day_of_week, allowed_values): + day_of_week = 'UNKNOWN_ENUM_VALUE' + self._day_of_week = day_of_week + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/database/models/managed_software_update_details.py b/src/oci/database/models/managed_software_update_details.py new file mode 100644 index 0000000000..36d6d537db --- /dev/null +++ b/src/oci/database/models/managed_software_update_details.py @@ -0,0 +1,124 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ManagedSoftwareUpdateDetails(object): + """ + The database registered for Oracle Managed Database Software Updates. + """ + + def __init__(self, **kwargs): + """ + Initializes a new ManagedSoftwareUpdateDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param is_enrolled: + The value to assign to the is_enrolled property of this ManagedSoftwareUpdateDetails. + :type is_enrolled: bool + + :param preference_details: + The value to assign to the preference_details property of this ManagedSoftwareUpdateDetails. + :type preference_details: oci.database.models.ManagedSoftwareUpdatePreferenceDetails + + :param maintenance_details: + The value to assign to the maintenance_details property of this ManagedSoftwareUpdateDetails. + :type maintenance_details: oci.database.models.ManagedSoftwareUpdateMaintenanceDetails + + """ + self.swagger_types = { + 'is_enrolled': 'bool', + 'preference_details': 'ManagedSoftwareUpdatePreferenceDetails', + 'maintenance_details': 'ManagedSoftwareUpdateMaintenanceDetails' + } + self.attribute_map = { + 'is_enrolled': 'isEnrolled', + 'preference_details': 'preferenceDetails', + 'maintenance_details': 'maintenanceDetails' + } + self._is_enrolled = None + self._preference_details = None + self._maintenance_details = None + + @property + def is_enrolled(self): + """ + **[Required]** Gets the is_enrolled of this ManagedSoftwareUpdateDetails. + If true, database is registered for Oracle Managed Database Software Updates otherwise database is not registered for Oracle Managed Database Software Updates + + + :return: The is_enrolled of this ManagedSoftwareUpdateDetails. + :rtype: bool + """ + return self._is_enrolled + + @is_enrolled.setter + def is_enrolled(self, is_enrolled): + """ + Sets the is_enrolled of this ManagedSoftwareUpdateDetails. + If true, database is registered for Oracle Managed Database Software Updates otherwise database is not registered for Oracle Managed Database Software Updates + + + :param is_enrolled: The is_enrolled of this ManagedSoftwareUpdateDetails. + :type: bool + """ + self._is_enrolled = is_enrolled + + @property + def preference_details(self): + """ + Gets the preference_details of this ManagedSoftwareUpdateDetails. + + :return: The preference_details of this ManagedSoftwareUpdateDetails. + :rtype: oci.database.models.ManagedSoftwareUpdatePreferenceDetails + """ + return self._preference_details + + @preference_details.setter + def preference_details(self, preference_details): + """ + Sets the preference_details of this ManagedSoftwareUpdateDetails. + + :param preference_details: The preference_details of this ManagedSoftwareUpdateDetails. + :type: oci.database.models.ManagedSoftwareUpdatePreferenceDetails + """ + self._preference_details = preference_details + + @property + def maintenance_details(self): + """ + Gets the maintenance_details of this ManagedSoftwareUpdateDetails. + + :return: The maintenance_details of this ManagedSoftwareUpdateDetails. + :rtype: oci.database.models.ManagedSoftwareUpdateMaintenanceDetails + """ + return self._maintenance_details + + @maintenance_details.setter + def maintenance_details(self, maintenance_details): + """ + Sets the maintenance_details of this ManagedSoftwareUpdateDetails. + + :param maintenance_details: The maintenance_details of this ManagedSoftwareUpdateDetails. + :type: oci.database.models.ManagedSoftwareUpdateMaintenanceDetails + """ + self._maintenance_details = maintenance_details + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/database/models/managed_software_update_input_details.py b/src/oci/database/models/managed_software_update_input_details.py new file mode 100644 index 0000000000..2c3fcee062 --- /dev/null +++ b/src/oci/database/models/managed_software_update_input_details.py @@ -0,0 +1,97 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ManagedSoftwareUpdateInputDetails(object): + """ + The database registered for Oracle Managed Database Software Updates. + """ + + def __init__(self, **kwargs): + """ + Initializes a new ManagedSoftwareUpdateInputDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param is_enrolled: + The value to assign to the is_enrolled property of this ManagedSoftwareUpdateInputDetails. + :type is_enrolled: bool + + :param preference_details: + The value to assign to the preference_details property of this ManagedSoftwareUpdateInputDetails. + :type preference_details: oci.database.models.ManagedSoftwareUpdatePreferenceDetails + + """ + self.swagger_types = { + 'is_enrolled': 'bool', + 'preference_details': 'ManagedSoftwareUpdatePreferenceDetails' + } + self.attribute_map = { + 'is_enrolled': 'isEnrolled', + 'preference_details': 'preferenceDetails' + } + self._is_enrolled = None + self._preference_details = None + + @property + def is_enrolled(self): + """ + **[Required]** Gets the is_enrolled of this ManagedSoftwareUpdateInputDetails. + If true, database is registered for Oracle Managed Database Software Updates otherwise database is not registered for Oracle Managed Database Software Updates + + + :return: The is_enrolled of this ManagedSoftwareUpdateInputDetails. + :rtype: bool + """ + return self._is_enrolled + + @is_enrolled.setter + def is_enrolled(self, is_enrolled): + """ + Sets the is_enrolled of this ManagedSoftwareUpdateInputDetails. + If true, database is registered for Oracle Managed Database Software Updates otherwise database is not registered for Oracle Managed Database Software Updates + + + :param is_enrolled: The is_enrolled of this ManagedSoftwareUpdateInputDetails. + :type: bool + """ + self._is_enrolled = is_enrolled + + @property + def preference_details(self): + """ + Gets the preference_details of this ManagedSoftwareUpdateInputDetails. + + :return: The preference_details of this ManagedSoftwareUpdateInputDetails. + :rtype: oci.database.models.ManagedSoftwareUpdatePreferenceDetails + """ + return self._preference_details + + @preference_details.setter + def preference_details(self, preference_details): + """ + Sets the preference_details of this ManagedSoftwareUpdateInputDetails. + + :param preference_details: The preference_details of this ManagedSoftwareUpdateInputDetails. + :type: oci.database.models.ManagedSoftwareUpdatePreferenceDetails + """ + self._preference_details = preference_details + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/database/models/managed_software_update_maintenance_details.py b/src/oci/database/models/managed_software_update_maintenance_details.py new file mode 100644 index 0000000000..0eeb482486 --- /dev/null +++ b/src/oci/database/models/managed_software_update_maintenance_details.py @@ -0,0 +1,308 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ManagedSoftwareUpdateMaintenanceDetails(object): + """ + Provides details about actual Oracle Managed Database Software Updates scheduled time and version. + """ + + #: A constant which can be used with the update_readiness_status property of a ManagedSoftwareUpdateMaintenanceDetails. + #: This constant has a value of "SCHEDULED" + UPDATE_READINESS_STATUS_SCHEDULED = "SCHEDULED" + + #: A constant which can be used with the update_readiness_status property of a ManagedSoftwareUpdateMaintenanceDetails. + #: This constant has a value of "SUCCEEDED" + UPDATE_READINESS_STATUS_SUCCEEDED = "SUCCEEDED" + + #: A constant which can be used with the update_readiness_status property of a ManagedSoftwareUpdateMaintenanceDetails. + #: This constant has a value of "READY_FOR_MANAGED_UPDATE" + UPDATE_READINESS_STATUS_READY_FOR_MANAGED_UPDATE = "READY_FOR_MANAGED_UPDATE" + + #: A constant which can be used with the update_readiness_status property of a ManagedSoftwareUpdateMaintenanceDetails. + #: This constant has a value of "NOT_READY_FOR_MANAGED_UPDATE" + UPDATE_READINESS_STATUS_NOT_READY_FOR_MANAGED_UPDATE = "NOT_READY_FOR_MANAGED_UPDATE" + + #: A constant which can be used with the update_readiness_status property of a ManagedSoftwareUpdateMaintenanceDetails. + #: This constant has a value of "IN_PROGRESS" + UPDATE_READINESS_STATUS_IN_PROGRESS = "IN_PROGRESS" + + #: A constant which can be used with the update_readiness_status property of a ManagedSoftwareUpdateMaintenanceDetails. + #: This constant has a value of "NEEDS_ATTENTION" + UPDATE_READINESS_STATUS_NEEDS_ATTENTION = "NEEDS_ATTENTION" + + #: A constant which can be used with the update_readiness_status property of a ManagedSoftwareUpdateMaintenanceDetails. + #: This constant has a value of "AWAITING_RESOLUTION" + UPDATE_READINESS_STATUS_AWAITING_RESOLUTION = "AWAITING_RESOLUTION" + + #: A constant which can be used with the update_mode property of a ManagedSoftwareUpdateMaintenanceDetails. + #: This constant has a value of "ROLLING" + UPDATE_MODE_ROLLING = "ROLLING" + + #: A constant which can be used with the update_mode property of a ManagedSoftwareUpdateMaintenanceDetails. + #: This constant has a value of "NONROLLING" + UPDATE_MODE_NONROLLING = "NONROLLING" + + def __init__(self, **kwargs): + """ + Initializes a new ManagedSoftwareUpdateMaintenanceDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param time_scheduled: + The value to assign to the time_scheduled property of this ManagedSoftwareUpdateMaintenanceDetails. + :type time_scheduled: datetime + + :param update_readiness_status: + The value to assign to the update_readiness_status property of this ManagedSoftwareUpdateMaintenanceDetails. + Allowed values for this property are: "SCHEDULED", "SUCCEEDED", "READY_FOR_MANAGED_UPDATE", "NOT_READY_FOR_MANAGED_UPDATE", "IN_PROGRESS", "NEEDS_ATTENTION", "AWAITING_RESOLUTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type update_readiness_status: str + + :param update_readiness_status_details: + The value to assign to the update_readiness_status_details property of this ManagedSoftwareUpdateMaintenanceDetails. + :type update_readiness_status_details: str + + :param time_of_status_update: + The value to assign to the time_of_status_update property of this ManagedSoftwareUpdateMaintenanceDetails. + :type time_of_status_update: datetime + + :param update_mode: + The value to assign to the update_mode property of this ManagedSoftwareUpdateMaintenanceDetails. + Allowed values for this property are: "ROLLING", "NONROLLING", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type update_mode: str + + :param version: + The value to assign to the version property of this ManagedSoftwareUpdateMaintenanceDetails. + :type version: str + + :param time_of_last_readiness_check: + The value to assign to the time_of_last_readiness_check property of this ManagedSoftwareUpdateMaintenanceDetails. + :type time_of_last_readiness_check: datetime + + """ + self.swagger_types = { + 'time_scheduled': 'datetime', + 'update_readiness_status': 'str', + 'update_readiness_status_details': 'str', + 'time_of_status_update': 'datetime', + 'update_mode': 'str', + 'version': 'str', + 'time_of_last_readiness_check': 'datetime' + } + self.attribute_map = { + 'time_scheduled': 'timeScheduled', + 'update_readiness_status': 'updateReadinessStatus', + 'update_readiness_status_details': 'updateReadinessStatusDetails', + 'time_of_status_update': 'timeOfStatusUpdate', + 'update_mode': 'updateMode', + 'version': 'version', + 'time_of_last_readiness_check': 'timeOfLastReadinessCheck' + } + self._time_scheduled = None + self._update_readiness_status = None + self._update_readiness_status_details = None + self._time_of_status_update = None + self._update_mode = None + self._version = None + self._time_of_last_readiness_check = None + + @property + def time_scheduled(self): + """ + **[Required]** Gets the time_scheduled of this ManagedSoftwareUpdateMaintenanceDetails. + The date and time of the database was scheduled for update. + + + :return: The time_scheduled of this ManagedSoftwareUpdateMaintenanceDetails. + :rtype: datetime + """ + return self._time_scheduled + + @time_scheduled.setter + def time_scheduled(self, time_scheduled): + """ + Sets the time_scheduled of this ManagedSoftwareUpdateMaintenanceDetails. + The date and time of the database was scheduled for update. + + + :param time_scheduled: The time_scheduled of this ManagedSoftwareUpdateMaintenanceDetails. + :type: datetime + """ + self._time_scheduled = time_scheduled + + @property + def update_readiness_status(self): + """ + Gets the update_readiness_status of this ManagedSoftwareUpdateMaintenanceDetails. + The managed software update readiness status + + Allowed values for this property are: "SCHEDULED", "SUCCEEDED", "READY_FOR_MANAGED_UPDATE", "NOT_READY_FOR_MANAGED_UPDATE", "IN_PROGRESS", "NEEDS_ATTENTION", "AWAITING_RESOLUTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The update_readiness_status of this ManagedSoftwareUpdateMaintenanceDetails. + :rtype: str + """ + return self._update_readiness_status + + @update_readiness_status.setter + def update_readiness_status(self, update_readiness_status): + """ + Sets the update_readiness_status of this ManagedSoftwareUpdateMaintenanceDetails. + The managed software update readiness status + + + :param update_readiness_status: The update_readiness_status of this ManagedSoftwareUpdateMaintenanceDetails. + :type: str + """ + allowed_values = ["SCHEDULED", "SUCCEEDED", "READY_FOR_MANAGED_UPDATE", "NOT_READY_FOR_MANAGED_UPDATE", "IN_PROGRESS", "NEEDS_ATTENTION", "AWAITING_RESOLUTION"] + if not value_allowed_none_or_none_sentinel(update_readiness_status, allowed_values): + update_readiness_status = 'UNKNOWN_ENUM_VALUE' + self._update_readiness_status = update_readiness_status + + @property + def update_readiness_status_details(self): + """ + Gets the update_readiness_status_details of this ManagedSoftwareUpdateMaintenanceDetails. + This field will contain actual cause of update readiness state. + + + :return: The update_readiness_status_details of this ManagedSoftwareUpdateMaintenanceDetails. + :rtype: str + """ + return self._update_readiness_status_details + + @update_readiness_status_details.setter + def update_readiness_status_details(self, update_readiness_status_details): + """ + Sets the update_readiness_status_details of this ManagedSoftwareUpdateMaintenanceDetails. + This field will contain actual cause of update readiness state. + + + :param update_readiness_status_details: The update_readiness_status_details of this ManagedSoftwareUpdateMaintenanceDetails. + :type: str + """ + self._update_readiness_status_details = update_readiness_status_details + + @property + def time_of_status_update(self): + """ + Gets the time_of_status_update of this ManagedSoftwareUpdateMaintenanceDetails. + The date and time of when the status was updated. + + + :return: The time_of_status_update of this ManagedSoftwareUpdateMaintenanceDetails. + :rtype: datetime + """ + return self._time_of_status_update + + @time_of_status_update.setter + def time_of_status_update(self, time_of_status_update): + """ + Sets the time_of_status_update of this ManagedSoftwareUpdateMaintenanceDetails. + The date and time of when the status was updated. + + + :param time_of_status_update: The time_of_status_update of this ManagedSoftwareUpdateMaintenanceDetails. + :type: datetime + """ + self._time_of_status_update = time_of_status_update + + @property + def update_mode(self): + """ + Gets the update_mode of this ManagedSoftwareUpdateMaintenanceDetails. + Oracle Managed Database Software update method, either \"ROLLING\" or \"NONROLLING\" + + Allowed values for this property are: "ROLLING", "NONROLLING", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The update_mode of this ManagedSoftwareUpdateMaintenanceDetails. + :rtype: str + """ + return self._update_mode + + @update_mode.setter + def update_mode(self, update_mode): + """ + Sets the update_mode of this ManagedSoftwareUpdateMaintenanceDetails. + Oracle Managed Database Software update method, either \"ROLLING\" or \"NONROLLING\" + + + :param update_mode: The update_mode of this ManagedSoftwareUpdateMaintenanceDetails. + :type: str + """ + allowed_values = ["ROLLING", "NONROLLING"] + if not value_allowed_none_or_none_sentinel(update_mode, allowed_values): + update_mode = 'UNKNOWN_ENUM_VALUE' + self._update_mode = update_mode + + @property + def version(self): + """ + **[Required]** Gets the version of this ManagedSoftwareUpdateMaintenanceDetails. + The version of the database was scheduled for update. + + + :return: The version of this ManagedSoftwareUpdateMaintenanceDetails. + :rtype: str + """ + return self._version + + @version.setter + def version(self, version): + """ + Sets the version of this ManagedSoftwareUpdateMaintenanceDetails. + The version of the database was scheduled for update. + + + :param version: The version of this ManagedSoftwareUpdateMaintenanceDetails. + :type: str + """ + self._version = version + + @property + def time_of_last_readiness_check(self): + """ + Gets the time_of_last_readiness_check of this ManagedSoftwareUpdateMaintenanceDetails. + The date and time of the last readiness check. + + + :return: The time_of_last_readiness_check of this ManagedSoftwareUpdateMaintenanceDetails. + :rtype: datetime + """ + return self._time_of_last_readiness_check + + @time_of_last_readiness_check.setter + def time_of_last_readiness_check(self, time_of_last_readiness_check): + """ + Sets the time_of_last_readiness_check of this ManagedSoftwareUpdateMaintenanceDetails. + The date and time of the last readiness check. + + + :param time_of_last_readiness_check: The time_of_last_readiness_check of this ManagedSoftwareUpdateMaintenanceDetails. + :type: datetime + """ + self._time_of_last_readiness_check = time_of_last_readiness_check + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/database/models/managed_software_update_preference_details.py b/src/oci/database/models/managed_software_update_preference_details.py new file mode 100644 index 0000000000..000a0df0e4 --- /dev/null +++ b/src/oci/database/models/managed_software_update_preference_details.py @@ -0,0 +1,177 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ManagedSoftwareUpdatePreferenceDetails(object): + """ + Oracle Managed Database Software Updates schedule will be created based on the provided update preferences + """ + + #: A constant which can be used with the update_mode property of a ManagedSoftwareUpdatePreferenceDetails. + #: This constant has a value of "ROLLING" + UPDATE_MODE_ROLLING = "ROLLING" + + #: A constant which can be used with the update_mode property of a ManagedSoftwareUpdatePreferenceDetails. + #: This constant has a value of "NONROLLING" + UPDATE_MODE_NONROLLING = "NONROLLING" + + def __init__(self, **kwargs): + """ + Initializes a new ManagedSoftwareUpdatePreferenceDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param days_of_week: + The value to assign to the days_of_week property of this ManagedSoftwareUpdatePreferenceDetails. + :type days_of_week: list[oci.database.models.ManagedSoftwareUpdateDayOfWeek] + + :param hour_of_day: + The value to assign to the hour_of_day property of this ManagedSoftwareUpdatePreferenceDetails. + :type hour_of_day: int + + :param update_mode: + The value to assign to the update_mode property of this ManagedSoftwareUpdatePreferenceDetails. + Allowed values for this property are: "ROLLING", "NONROLLING", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type update_mode: str + + :param version_scheme_details: + The value to assign to the version_scheme_details property of this ManagedSoftwareUpdatePreferenceDetails. + :type version_scheme_details: oci.database.models.VersionSchemeDetails + + """ + self.swagger_types = { + 'days_of_week': 'list[ManagedSoftwareUpdateDayOfWeek]', + 'hour_of_day': 'int', + 'update_mode': 'str', + 'version_scheme_details': 'VersionSchemeDetails' + } + self.attribute_map = { + 'days_of_week': 'daysOfWeek', + 'hour_of_day': 'hourOfDay', + 'update_mode': 'updateMode', + 'version_scheme_details': 'versionSchemeDetails' + } + self._days_of_week = None + self._hour_of_day = None + self._update_mode = None + self._version_scheme_details = None + + @property + def days_of_week(self): + """ + **[Required]** Gets the days_of_week of this ManagedSoftwareUpdatePreferenceDetails. + The update should be applied on the database for the selected days of the week. + + + :return: The days_of_week of this ManagedSoftwareUpdatePreferenceDetails. + :rtype: list[oci.database.models.ManagedSoftwareUpdateDayOfWeek] + """ + return self._days_of_week + + @days_of_week.setter + def days_of_week(self, days_of_week): + """ + Sets the days_of_week of this ManagedSoftwareUpdatePreferenceDetails. + The update should be applied on the database for the selected days of the week. + + + :param days_of_week: The days_of_week of this ManagedSoftwareUpdatePreferenceDetails. + :type: list[oci.database.models.ManagedSoftwareUpdateDayOfWeek] + """ + self._days_of_week = days_of_week + + @property + def hour_of_day(self): + """ + **[Required]** Gets the hour_of_day of this ManagedSoftwareUpdatePreferenceDetails. + The update should be applied on the database for the selected hour of the day. + + + :return: The hour_of_day of this ManagedSoftwareUpdatePreferenceDetails. + :rtype: int + """ + return self._hour_of_day + + @hour_of_day.setter + def hour_of_day(self, hour_of_day): + """ + Sets the hour_of_day of this ManagedSoftwareUpdatePreferenceDetails. + The update should be applied on the database for the selected hour of the day. + + + :param hour_of_day: The hour_of_day of this ManagedSoftwareUpdatePreferenceDetails. + :type: int + """ + self._hour_of_day = hour_of_day + + @property + def update_mode(self): + """ + Gets the update_mode of this ManagedSoftwareUpdatePreferenceDetails. + Oracle Managed Database Software update method, either \"ROLLING\" or \"NONROLLING\". Default value is ROLLING. + *IMPORTANT*: Non-rolling Database Software update update involves system down time. + + Allowed values for this property are: "ROLLING", "NONROLLING", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The update_mode of this ManagedSoftwareUpdatePreferenceDetails. + :rtype: str + """ + return self._update_mode + + @update_mode.setter + def update_mode(self, update_mode): + """ + Sets the update_mode of this ManagedSoftwareUpdatePreferenceDetails. + Oracle Managed Database Software update method, either \"ROLLING\" or \"NONROLLING\". Default value is ROLLING. + *IMPORTANT*: Non-rolling Database Software update update involves system down time. + + + :param update_mode: The update_mode of this ManagedSoftwareUpdatePreferenceDetails. + :type: str + """ + allowed_values = ["ROLLING", "NONROLLING"] + if not value_allowed_none_or_none_sentinel(update_mode, allowed_values): + update_mode = 'UNKNOWN_ENUM_VALUE' + self._update_mode = update_mode + + @property + def version_scheme_details(self): + """ + **[Required]** Gets the version_scheme_details of this ManagedSoftwareUpdatePreferenceDetails. + + :return: The version_scheme_details of this ManagedSoftwareUpdatePreferenceDetails. + :rtype: oci.database.models.VersionSchemeDetails + """ + return self._version_scheme_details + + @version_scheme_details.setter + def version_scheme_details(self, version_scheme_details): + """ + Sets the version_scheme_details of this ManagedSoftwareUpdatePreferenceDetails. + + :param version_scheme_details: The version_scheme_details of this ManagedSoftwareUpdatePreferenceDetails. + :type: oci.database.models.VersionSchemeDetails + """ + self._version_scheme_details = version_scheme_details + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/database/models/update_database_details.py b/src/oci/database/models/update_database_details.py index cb59aa5752..f859ad7fdb 100644 --- a/src/oci/database/models/update_database_details.py +++ b/src/oci/database/models/update_database_details.py @@ -54,6 +54,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this UpdateDatabaseDetails. :type defined_tags: dict(str, dict(str, object)) + :param managed_software_update_details: + The value to assign to the managed_software_update_details property of this UpdateDatabaseDetails. + :type managed_software_update_details: oci.database.models.ManagedSoftwareUpdateInputDetails + :param patch_options: The value to assign to the patch_options property of this UpdateDatabaseDetails. :type patch_options: oci.database.models.PatchOptions @@ -68,6 +72,7 @@ def __init__(self, **kwargs): 'storage_size_details': 'DatabaseStorageSizeDetails', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'managed_software_update_details': 'ManagedSoftwareUpdateInputDetails', 'patch_options': 'PatchOptions' } self.attribute_map = { @@ -79,6 +84,7 @@ def __init__(self, **kwargs): 'storage_size_details': 'storageSizeDetails', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'managed_software_update_details': 'managedSoftwareUpdateDetails', 'patch_options': 'patchOptions' } self._db_backup_config = None @@ -89,6 +95,7 @@ def __init__(self, **kwargs): self._storage_size_details = None self._freeform_tags = None self._defined_tags = None + self._managed_software_update_details = None self._patch_options = None @property @@ -295,6 +302,26 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def managed_software_update_details(self): + """ + Gets the managed_software_update_details of this UpdateDatabaseDetails. + + :return: The managed_software_update_details of this UpdateDatabaseDetails. + :rtype: oci.database.models.ManagedSoftwareUpdateInputDetails + """ + return self._managed_software_update_details + + @managed_software_update_details.setter + def managed_software_update_details(self, managed_software_update_details): + """ + Sets the managed_software_update_details of this UpdateDatabaseDetails. + + :param managed_software_update_details: The managed_software_update_details of this UpdateDatabaseDetails. + :type: oci.database.models.ManagedSoftwareUpdateInputDetails + """ + self._managed_software_update_details = managed_software_update_details + @property def patch_options(self): """ diff --git a/src/oci/database/models/version_scheme_details.py b/src/oci/database/models/version_scheme_details.py new file mode 100644 index 0000000000..0d45bc2f14 --- /dev/null +++ b/src/oci/database/models/version_scheme_details.py @@ -0,0 +1,99 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class VersionSchemeDetails(object): + """ + The update should be applied on the database for the selected version scheme. + """ + + #: A constant which can be used with the source property of a VersionSchemeDetails. + #: This constant has a value of "VERSION_SERIES" + SOURCE_VERSION_SERIES = "VERSION_SERIES" + + def __init__(self, **kwargs): + """ + Initializes a new VersionSchemeDetails object with values from keyword arguments. This class has the following subclasses and if you are using this class as input + to a service operations then you should favor using a subclass over the base class: + + * :class:`~oci.database.models.VersionSchemeFromVersionSeriesDetails` + + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source: + The value to assign to the source property of this VersionSchemeDetails. + Allowed values for this property are: "VERSION_SERIES", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type source: str + + """ + self.swagger_types = { + 'source': 'str' + } + self.attribute_map = { + 'source': 'source' + } + self._source = None + + @staticmethod + def get_subtype(object_dictionary): + """ + Given the hash representation of a subtype of this class, + use the info in the hash to return the class of the subtype. + """ + type = object_dictionary['source'] + + if type == 'VERSION_SERIES': + return 'VersionSchemeFromVersionSeriesDetails' + else: + return 'VersionSchemeDetails' + + @property + def source(self): + """ + **[Required]** Gets the source of this VersionSchemeDetails. + The update should be applied on the database for the selected version scheme. + + Allowed values for this property are: "VERSION_SERIES", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The source of this VersionSchemeDetails. + :rtype: str + """ + return self._source + + @source.setter + def source(self, source): + """ + Sets the source of this VersionSchemeDetails. + The update should be applied on the database for the selected version scheme. + + + :param source: The source of this VersionSchemeDetails. + :type: str + """ + allowed_values = ["VERSION_SERIES"] + if not value_allowed_none_or_none_sentinel(source, allowed_values): + source = 'UNKNOWN_ENUM_VALUE' + self._source = source + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/database/models/version_scheme_from_version_series_details.py b/src/oci/database/models/version_scheme_from_version_series_details.py new file mode 100644 index 0000000000..c1edeadd87 --- /dev/null +++ b/src/oci/database/models/version_scheme_from_version_series_details.py @@ -0,0 +1,154 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + +from .version_scheme_details import VersionSchemeDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class VersionSchemeFromVersionSeriesDetails(VersionSchemeDetails): + """ + The update should be applied on the database for the selected version series and preference. + """ + + #: A constant which can be used with the version_preference property of a VersionSchemeFromVersionSeriesDetails. + #: This constant has a value of "ORACLE_DB_N" + VERSION_PREFERENCE_ORACLE_DB_N = "ORACLE_DB_N" + + #: A constant which can be used with the version_preference property of a VersionSchemeFromVersionSeriesDetails. + #: This constant has a value of "ORACLE_DB_N_1" + VERSION_PREFERENCE_ORACLE_DB_N_1 = "ORACLE_DB_N_1" + + #: A constant which can be used with the version_preference property of a VersionSchemeFromVersionSeriesDetails. + #: This constant has a value of "ORACLE_DB_N_2" + VERSION_PREFERENCE_ORACLE_DB_N_2 = "ORACLE_DB_N_2" + + #: A constant which can be used with the version_preference property of a VersionSchemeFromVersionSeriesDetails. + #: This constant has a value of "ORACLE_DB_N_3" + VERSION_PREFERENCE_ORACLE_DB_N_3 = "ORACLE_DB_N_3" + + def __init__(self, **kwargs): + """ + Initializes a new VersionSchemeFromVersionSeriesDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.database.models.VersionSchemeFromVersionSeriesDetails.source` attribute + of this class is ``VERSION_SERIES`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source: + The value to assign to the source property of this VersionSchemeFromVersionSeriesDetails. + Allowed values for this property are: "VERSION_SERIES", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type source: str + + :param major_version: + The value to assign to the major_version property of this VersionSchemeFromVersionSeriesDetails. + :type major_version: str + + :param version_preference: + The value to assign to the version_preference property of this VersionSchemeFromVersionSeriesDetails. + Allowed values for this property are: "ORACLE_DB_N", "ORACLE_DB_N_1", "ORACLE_DB_N_2", "ORACLE_DB_N_3", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type version_preference: str + + """ + self.swagger_types = { + 'source': 'str', + 'major_version': 'str', + 'version_preference': 'str' + } + self.attribute_map = { + 'source': 'source', + 'major_version': 'majorVersion', + 'version_preference': 'versionPreference' + } + self._source = None + self._major_version = None + self._version_preference = None + self._source = 'VERSION_SERIES' + + @property + def major_version(self): + """ + **[Required]** Gets the major_version of this VersionSchemeFromVersionSeriesDetails. + The update should be applied on the database for the selected major version series. + The value can be provided as 23.X.X.X then 23 major version series will be considered. + + The list of supported versions can be obtained using the API for the provided shape + /20160918/dbVersions?compartmentId=&dbSystemShape=ExaDbXS + + + :return: The major_version of this VersionSchemeFromVersionSeriesDetails. + :rtype: str + """ + return self._major_version + + @major_version.setter + def major_version(self, major_version): + """ + Sets the major_version of this VersionSchemeFromVersionSeriesDetails. + The update should be applied on the database for the selected major version series. + The value can be provided as 23.X.X.X then 23 major version series will be considered. + + The list of supported versions can be obtained using the API for the provided shape + /20160918/dbVersions?compartmentId=&dbSystemShape=ExaDbXS + + + :param major_version: The major_version of this VersionSchemeFromVersionSeriesDetails. + :type: str + """ + self._major_version = major_version + + @property + def version_preference(self): + """ + **[Required]** Gets the version_preference of this VersionSchemeFromVersionSeriesDetails. + The update should be applied on the database for the selected version preference. *_N represents the LATEST version + + For Ex: The current latest version is 23.7.0.0.0, + If versionPreference selects option as ORACLE_DB_N then oracle applies the db update with LATEST version (i.e. 23.7.0.0.0) + If versionPreference selects option as ORACLE_DB_N_1 then oracle applies the db update with LATEST-1 version (i.e. 23.6.0.0.0) + If versionPreference selects option as ORACLE_DB_N_2 then oracle applies the db update with LATEST-2 version (i.e. 23.5.0.0.0) + + Allowed values for this property are: "ORACLE_DB_N", "ORACLE_DB_N_1", "ORACLE_DB_N_2", "ORACLE_DB_N_3", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The version_preference of this VersionSchemeFromVersionSeriesDetails. + :rtype: str + """ + return self._version_preference + + @version_preference.setter + def version_preference(self, version_preference): + """ + Sets the version_preference of this VersionSchemeFromVersionSeriesDetails. + The update should be applied on the database for the selected version preference. *_N represents the LATEST version + + For Ex: The current latest version is 23.7.0.0.0, + If versionPreference selects option as ORACLE_DB_N then oracle applies the db update with LATEST version (i.e. 23.7.0.0.0) + If versionPreference selects option as ORACLE_DB_N_1 then oracle applies the db update with LATEST-1 version (i.e. 23.6.0.0.0) + If versionPreference selects option as ORACLE_DB_N_2 then oracle applies the db update with LATEST-2 version (i.e. 23.5.0.0.0) + + + :param version_preference: The version_preference of this VersionSchemeFromVersionSeriesDetails. + :type: str + """ + allowed_values = ["ORACLE_DB_N", "ORACLE_DB_N_1", "ORACLE_DB_N_2", "ORACLE_DB_N_3"] + if not value_allowed_none_or_none_sentinel(version_preference, allowed_values): + version_preference = 'UNKNOWN_ENUM_VALUE' + self._version_preference = version_preference + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/delegate_access_control/delegate_access_control_client.py b/src/oci/delegate_access_control/delegate_access_control_client.py index 47d9363ce8..9b1226399d 100644 --- a/src/oci/delegate_access_control/delegate_access_control_client.py +++ b/src/oci/delegate_access_control/delegate_access_control_client.py @@ -22,8 +22,8 @@ class DelegateAccessControlClient(object): """ - Oracle Delegate Access Control allows ExaCC and ExaCS customers to delegate management of their Exadata resources operators outside their tenancies. - With Delegate Access Control, Support Providers can deliver managed services using comprehensive and robust tooling built on the OCI platform. + Oracle Delegate Access Control allows customers of Oracle Exadata Database Service on Cloud@Customer (ExaDB-C@C), Oracle Exadata Database Service on Dedicated Infrastructure (ExaDB-D), and Oracle Exadata Database Service on Exascale Infrastructure (ExaDB-XS) to delegate management of their Exadata resources operators outside their tenancies. + With Delegate Access Control, Service Providers can deliver managed services using comprehensive and robust tooling built on the OCI platform. Customers maintain control over who has access to the delegated resources in their tenancy and what actions can be taken. Enterprises managing resources across multiple tenants can use Delegate Access Control to streamline management tasks. Using logging service, customers can view a near real-time audit report of all actions performed by a Service Provider operator. @@ -848,7 +848,7 @@ def delete_delegation_control(self, delegation_control_id, **kwargs): def delete_delegation_subscription(self, delegation_subscription_id, **kwargs): """ - eletes an Delegation Subscription in Delegation Control. + Deletes an Delegation Subscription in Delegation Control. :param str delegation_subscription_id: (required) @@ -2082,7 +2082,7 @@ def list_delegation_controls(self, compartment_id, **kwargs): :param str resource_type: (optional) A filter to return only resources that match the given resource type. - Allowed values are: "VMCLUSTER", "CLOUDVMCLUSTER" + Allowed values are: "VMCLUSTER", "CLOUDVMCLUSTER", "EXADBVMCLUSTER" :param str resource_id: (optional) A filter to return Delegation Control resources that match the given resource ID. @@ -2163,7 +2163,7 @@ def list_delegation_controls(self, compartment_id, **kwargs): ) if 'resource_type' in kwargs: - resource_type_allowed_values = ["VMCLUSTER", "CLOUDVMCLUSTER"] + resource_type_allowed_values = ["VMCLUSTER", "CLOUDVMCLUSTER", "EXADBVMCLUSTER"] if kwargs['resource_type'] not in resource_type_allowed_values: raise ValueError( f"Invalid value for `resource_type`, must be one of { resource_type_allowed_values }" @@ -2414,12 +2414,12 @@ def list_service_provider_actions(self, compartment_id, **kwargs): :param str resource_type: (optional) A filter to return only resources that match the given resource type. - Allowed values are: "VMCLUSTER", "CLOUDVMCLUSTER" + Allowed values are: "VMCLUSTER", "CLOUDVMCLUSTER", "EXADBVMCLUSTER" :param list[str] service_provider_service_type: (optional) A filter to return only resources that match the given Service Provider service type. - Allowed values are: "TROUBLESHOOTING", "ASSISTED_PATCHING" + Allowed values are: "TROUBLESHOOTING", "ASSISTED_PATCHING", "MANAGED_SOFTWARE_UPDATES" :param str lifecycle_state: (optional) A filter to return only resources whose lifecycleState matches the given Service Provider Action lifecycleState. @@ -2495,14 +2495,14 @@ def list_service_provider_actions(self, compartment_id, **kwargs): f"list_service_provider_actions got unknown kwargs: {extra_kwargs!r}") if 'resource_type' in kwargs: - resource_type_allowed_values = ["VMCLUSTER", "CLOUDVMCLUSTER"] + resource_type_allowed_values = ["VMCLUSTER", "CLOUDVMCLUSTER", "EXADBVMCLUSTER"] if kwargs['resource_type'] not in resource_type_allowed_values: raise ValueError( f"Invalid value for `resource_type`, must be one of { resource_type_allowed_values }" ) if 'service_provider_service_type' in kwargs: - service_provider_service_type_allowed_values = ["TROUBLESHOOTING", "ASSISTED_PATCHING"] + service_provider_service_type_allowed_values = ["TROUBLESHOOTING", "ASSISTED_PATCHING", "MANAGED_SOFTWARE_UPDATES"] for service_provider_service_type_item in kwargs['service_provider_service_type']: if service_provider_service_type_item not in service_provider_service_type_allowed_values: raise ValueError( @@ -2728,7 +2728,7 @@ def list_service_providers(self, compartment_id, **kwargs): :param str supported_resource_type: (optional) A filter to return only Service Provider resources whose supported resource type matches the given resource type. - Allowed values are: "VMCLUSTER", "CLOUDVMCLUSTER" + Allowed values are: "VMCLUSTER", "CLOUDVMCLUSTER", "EXADBVMCLUSTER" :param str service_provider_type: (optional) A filter to return only Service Provider resources whose provider type matches the given provider type. @@ -2811,7 +2811,7 @@ def list_service_providers(self, compartment_id, **kwargs): ) if 'supported_resource_type' in kwargs: - supported_resource_type_allowed_values = ["VMCLUSTER", "CLOUDVMCLUSTER"] + supported_resource_type_allowed_values = ["VMCLUSTER", "CLOUDVMCLUSTER", "EXADBVMCLUSTER"] if kwargs['supported_resource_type'] not in supported_resource_type_allowed_values: raise ValueError( f"Invalid value for `supported_resource_type`, must be one of { supported_resource_type_allowed_values }" diff --git a/src/oci/delegate_access_control/models/create_delegation_control_details.py b/src/oci/delegate_access_control/models/create_delegation_control_details.py index 0afa73972b..74d0df5edf 100644 --- a/src/oci/delegate_access_control/models/create_delegation_control_details.py +++ b/src/oci/delegate_access_control/models/create_delegation_control_details.py @@ -27,6 +27,10 @@ class CreateDelegationControlDetails(object): #: This constant has a value of "CLOUDVMCLUSTER" RESOURCE_TYPE_CLOUDVMCLUSTER = "CLOUDVMCLUSTER" + #: A constant which can be used with the resource_type property of a CreateDelegationControlDetails. + #: This constant has a value of "EXADBVMCLUSTER" + RESOURCE_TYPE_EXADBVMCLUSTER = "EXADBVMCLUSTER" + def __init__(self, **kwargs): """ Initializes a new CreateDelegationControlDetails object with values from keyword arguments. @@ -66,7 +70,7 @@ def __init__(self, **kwargs): :param resource_type: The value to assign to the resource_type property of this CreateDelegationControlDetails. - Allowed values for this property are: "VMCLUSTER", "CLOUDVMCLUSTER" + Allowed values for this property are: "VMCLUSTER", "CLOUDVMCLUSTER", "EXADBVMCLUSTER" :type resource_type: str :param notification_topic_id: @@ -344,7 +348,7 @@ def resource_type(self): **[Required]** Gets the resource_type of this CreateDelegationControlDetails. Resource type for which the Delegation Control is applicable to. - Allowed values for this property are: "VMCLUSTER", "CLOUDVMCLUSTER" + Allowed values for this property are: "VMCLUSTER", "CLOUDVMCLUSTER", "EXADBVMCLUSTER" :return: The resource_type of this CreateDelegationControlDetails. @@ -362,7 +366,7 @@ def resource_type(self, resource_type): :param resource_type: The resource_type of this CreateDelegationControlDetails. :type: str """ - allowed_values = ["VMCLUSTER", "CLOUDVMCLUSTER"] + allowed_values = ["VMCLUSTER", "CLOUDVMCLUSTER", "EXADBVMCLUSTER"] if not value_allowed_none_or_none_sentinel(resource_type, allowed_values): raise ValueError( f"Invalid value for `resource_type`, must be None or one of {allowed_values}" @@ -421,7 +425,7 @@ def notification_message_format(self, notification_message_format): def vault_id(self): """ Gets the vault_id of this CreateDelegationControlDetails. - The OCID of the OCI Vault that will store the secrets containing the SSH keys to access the resource governed by this Delegation Control by Delegate Access Control Service. This property is required when resourceType is CLOUDVMCLUSTER. Delegate Access Control Service will generate the SSH keys and store them as secrets in the OCI Vault. + The OCID of the OCI Vault that will store the secrets containing the SSH keys to access the resource governed by this Delegation Control by Delegate Access Control Service. Delegate Access Control Service will generate the SSH keys and store them as secrets in the OCI Vault. This property is optional when the Delegation Control is created for Oracle Managed Software Updates. Otherwise, it is required when resourceType is CLOUDVMCLUSTER or EXADBVMCLUSTER. :return: The vault_id of this CreateDelegationControlDetails. @@ -433,7 +437,7 @@ def vault_id(self): def vault_id(self, vault_id): """ Sets the vault_id of this CreateDelegationControlDetails. - The OCID of the OCI Vault that will store the secrets containing the SSH keys to access the resource governed by this Delegation Control by Delegate Access Control Service. This property is required when resourceType is CLOUDVMCLUSTER. Delegate Access Control Service will generate the SSH keys and store them as secrets in the OCI Vault. + The OCID of the OCI Vault that will store the secrets containing the SSH keys to access the resource governed by this Delegation Control by Delegate Access Control Service. Delegate Access Control Service will generate the SSH keys and store them as secrets in the OCI Vault. This property is optional when the Delegation Control is created for Oracle Managed Software Updates. Otherwise, it is required when resourceType is CLOUDVMCLUSTER or EXADBVMCLUSTER. :param vault_id: The vault_id of this CreateDelegationControlDetails. @@ -445,7 +449,7 @@ def vault_id(self, vault_id): def vault_key_id(self): """ Gets the vault_key_id of this CreateDelegationControlDetails. - The OCID of the Master Encryption Key in the OCI Vault specified by vaultId. This key will be used to encrypt the SSH keys to access the resource governed by this Delegation Control by Delegate Access Control Service. This property is required when resourceType is CLOUDVMCLUSTER. + The OCID of the Master Encryption Key in the OCI Vault specified by vaultId. This key will be used to encrypt the SSH keys to access the resource governed by this Delegation Control by Delegate Access Control Service. This property is optional when the Delegation Control is created for Oracle Managed Software Updates. Otherwise, it is required when resourceType is CLOUDVMCLUSTER or EXADBVMCLUSTER. :return: The vault_key_id of this CreateDelegationControlDetails. @@ -457,7 +461,7 @@ def vault_key_id(self): def vault_key_id(self, vault_key_id): """ Sets the vault_key_id of this CreateDelegationControlDetails. - The OCID of the Master Encryption Key in the OCI Vault specified by vaultId. This key will be used to encrypt the SSH keys to access the resource governed by this Delegation Control by Delegate Access Control Service. This property is required when resourceType is CLOUDVMCLUSTER. + The OCID of the Master Encryption Key in the OCI Vault specified by vaultId. This key will be used to encrypt the SSH keys to access the resource governed by this Delegation Control by Delegate Access Control Service. This property is optional when the Delegation Control is created for Oracle Managed Software Updates. Otherwise, it is required when resourceType is CLOUDVMCLUSTER or EXADBVMCLUSTER. :param vault_key_id: The vault_key_id of this CreateDelegationControlDetails. diff --git a/src/oci/delegate_access_control/models/create_delegation_subscription_details.py b/src/oci/delegate_access_control/models/create_delegation_subscription_details.py index 9894591b4c..faa38f0f4f 100644 --- a/src/oci/delegate_access_control/models/create_delegation_subscription_details.py +++ b/src/oci/delegate_access_control/models/create_delegation_subscription_details.py @@ -23,6 +23,10 @@ class CreateDelegationSubscriptionDetails(object): #: This constant has a value of "ASSISTED_PATCHING" SUBSCRIBED_SERVICE_TYPE_ASSISTED_PATCHING = "ASSISTED_PATCHING" + #: A constant which can be used with the subscribed_service_type property of a CreateDelegationSubscriptionDetails. + #: This constant has a value of "MANAGED_SOFTWARE_UPDATES" + SUBSCRIBED_SERVICE_TYPE_MANAGED_SOFTWARE_UPDATES = "MANAGED_SOFTWARE_UPDATES" + def __init__(self, **kwargs): """ Initializes a new CreateDelegationSubscriptionDetails object with values from keyword arguments. @@ -42,7 +46,7 @@ def __init__(self, **kwargs): :param subscribed_service_type: The value to assign to the subscribed_service_type property of this CreateDelegationSubscriptionDetails. - Allowed values for this property are: "TROUBLESHOOTING", "ASSISTED_PATCHING" + Allowed values for this property are: "TROUBLESHOOTING", "ASSISTED_PATCHING", "MANAGED_SOFTWARE_UPDATES" :type subscribed_service_type: str :param freeform_tags: @@ -81,7 +85,7 @@ def __init__(self, **kwargs): def compartment_id(self): """ **[Required]** Gets the compartment_id of this CreateDelegationSubscriptionDetails. - The OCID of the compartment that contains the Delegation Control. + The OCID of the compartment that contains the Delegation Subscription. :return: The compartment_id of this CreateDelegationSubscriptionDetails. @@ -93,7 +97,7 @@ def compartment_id(self): def compartment_id(self, compartment_id): """ Sets the compartment_id of this CreateDelegationSubscriptionDetails. - The OCID of the compartment that contains the Delegation Control. + The OCID of the compartment that contains the Delegation Subscription. :param compartment_id: The compartment_id of this CreateDelegationSubscriptionDetails. @@ -155,7 +159,7 @@ def subscribed_service_type(self): **[Required]** Gets the subscribed_service_type of this CreateDelegationSubscriptionDetails. Subscribed Service Provider Service Type. - Allowed values for this property are: "TROUBLESHOOTING", "ASSISTED_PATCHING" + Allowed values for this property are: "TROUBLESHOOTING", "ASSISTED_PATCHING", "MANAGED_SOFTWARE_UPDATES" :return: The subscribed_service_type of this CreateDelegationSubscriptionDetails. @@ -173,7 +177,7 @@ def subscribed_service_type(self, subscribed_service_type): :param subscribed_service_type: The subscribed_service_type of this CreateDelegationSubscriptionDetails. :type: str """ - allowed_values = ["TROUBLESHOOTING", "ASSISTED_PATCHING"] + allowed_values = ["TROUBLESHOOTING", "ASSISTED_PATCHING", "MANAGED_SOFTWARE_UPDATES"] if not value_allowed_none_or_none_sentinel(subscribed_service_type, allowed_values): raise ValueError( f"Invalid value for `subscribed_service_type`, must be None or one of {allowed_values}" diff --git a/src/oci/delegate_access_control/models/delegated_resource_access_request.py b/src/oci/delegate_access_control/models/delegated_resource_access_request.py index c7361f028a..a6fbf26246 100644 --- a/src/oci/delegate_access_control/models/delegated_resource_access_request.py +++ b/src/oci/delegate_access_control/models/delegated_resource_access_request.py @@ -31,6 +31,10 @@ class DelegatedResourceAccessRequest(object): #: This constant has a value of "CLOUDVMCLUSTER" RESOURCE_TYPE_CLOUDVMCLUSTER = "CLOUDVMCLUSTER" + #: A constant which can be used with the resource_type property of a DelegatedResourceAccessRequest. + #: This constant has a value of "EXADBVMCLUSTER" + RESOURCE_TYPE_EXADBVMCLUSTER = "EXADBVMCLUSTER" + #: A constant which can be used with the requester_type property of a DelegatedResourceAccessRequest. #: This constant has a value of "OPERATOR" REQUESTER_TYPE_OPERATOR = "OPERATOR" @@ -51,6 +55,10 @@ class DelegatedResourceAccessRequest(object): #: This constant has a value of "ASSISTED_PATCHING" PROVIDED_SERVICE_TYPES_ASSISTED_PATCHING = "ASSISTED_PATCHING" + #: A constant which can be used with the provided_service_types property of a DelegatedResourceAccessRequest. + #: This constant has a value of "MANAGED_SOFTWARE_UPDATES" + PROVIDED_SERVICE_TYPES_MANAGED_SOFTWARE_UPDATES = "MANAGED_SOFTWARE_UPDATES" + #: A constant which can be used with the severity property of a DelegatedResourceAccessRequest. #: This constant has a value of "S1" SEVERITY_S1 = "S1" @@ -242,7 +250,7 @@ def __init__(self, **kwargs): :param resource_type: The value to assign to the resource_type property of this DelegatedResourceAccessRequest. - Allowed values for this property are: "VMCLUSTER", "CLOUDVMCLUSTER", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "VMCLUSTER", "CLOUDVMCLUSTER", "EXADBVMCLUSTER", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type resource_type: str @@ -260,9 +268,13 @@ def __init__(self, **kwargs): The value to assign to the database_name_list property of this DelegatedResourceAccessRequest. :type database_name_list: list[str] + :param database_id_list: + The value to assign to the database_id_list property of this DelegatedResourceAccessRequest. + :type database_id_list: list[str] + :param provided_service_types: The value to assign to the provided_service_types property of this DelegatedResourceAccessRequest. - Allowed values for items in this list are: "TROUBLESHOOTING", "ASSISTED_PATCHING", 'UNKNOWN_ENUM_VALUE'. + Allowed values for items in this list are: "TROUBLESHOOTING", "ASSISTED_PATCHING", "MANAGED_SOFTWARE_UPDATES", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type provided_service_types: list[str] @@ -369,6 +381,7 @@ def __init__(self, **kwargs): 'requester_type': 'str', 'requested_action_names': 'list[str]', 'database_name_list': 'list[str]', + 'database_id_list': 'list[str]', 'provided_service_types': 'list[str]', 'delegation_subscription_ids': 'list[str]', 'severity': 'str', @@ -405,6 +418,7 @@ def __init__(self, **kwargs): 'requester_type': 'requesterType', 'requested_action_names': 'requestedActionNames', 'database_name_list': 'databaseNameList', + 'database_id_list': 'databaseIdList', 'provided_service_types': 'providedServiceTypes', 'delegation_subscription_ids': 'delegationSubscriptionIds', 'severity': 'severity', @@ -440,6 +454,7 @@ def __init__(self, **kwargs): self._requester_type = None self._requested_action_names = None self._database_name_list = None + self._database_id_list = None self._provided_service_types = None self._delegation_subscription_ids = None self._severity = None @@ -688,7 +703,7 @@ def resource_type(self): Gets the resource_type of this DelegatedResourceAccessRequest. Resource type for which the associated Delegation Control is applicable to. - Allowed values for this property are: "VMCLUSTER", "CLOUDVMCLUSTER", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "VMCLUSTER", "CLOUDVMCLUSTER", "EXADBVMCLUSTER", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -707,7 +722,7 @@ def resource_type(self, resource_type): :param resource_type: The resource_type of this DelegatedResourceAccessRequest. :type: str """ - allowed_values = ["VMCLUSTER", "CLOUDVMCLUSTER"] + allowed_values = ["VMCLUSTER", "CLOUDVMCLUSTER", "EXADBVMCLUSTER"] if not value_allowed_none_or_none_sentinel(resource_type, allowed_values): resource_type = 'UNKNOWN_ENUM_VALUE' self._resource_type = resource_type @@ -770,7 +785,7 @@ def requested_action_names(self, requested_action_names): def database_name_list(self): """ Gets the database_name_list of this DelegatedResourceAccessRequest. - List of Database unique names for which access is requested. This parameter is required for DLGT_MGMT_SYS_MAINT_ACCESS cage when database access in needed. + List of Database unique names for which access is requested. This parameter is required when database access in needed. :return: The database_name_list of this DelegatedResourceAccessRequest. @@ -782,7 +797,7 @@ def database_name_list(self): def database_name_list(self, database_name_list): """ Sets the database_name_list of this DelegatedResourceAccessRequest. - List of Database unique names for which access is requested. This parameter is required for DLGT_MGMT_SYS_MAINT_ACCESS cage when database access in needed. + List of Database unique names for which access is requested. This parameter is required when database access in needed. :param database_name_list: The database_name_list of this DelegatedResourceAccessRequest. @@ -790,13 +805,37 @@ def database_name_list(self, database_name_list): """ self._database_name_list = database_name_list + @property + def database_id_list(self): + """ + Gets the database_id_list of this DelegatedResourceAccessRequest. + List of Database ID for which access is requested. This parameter is required when database access is needed. + + + :return: The database_id_list of this DelegatedResourceAccessRequest. + :rtype: list[str] + """ + return self._database_id_list + + @database_id_list.setter + def database_id_list(self, database_id_list): + """ + Sets the database_id_list of this DelegatedResourceAccessRequest. + List of Database ID for which access is requested. This parameter is required when database access is needed. + + + :param database_id_list: The database_id_list of this DelegatedResourceAccessRequest. + :type: list[str] + """ + self._database_id_list = database_id_list + @property def provided_service_types(self): """ Gets the provided_service_types of this DelegatedResourceAccessRequest. List of Service Provider Service Types being provided by the support operator user. - Allowed values for items in this list are: "TROUBLESHOOTING", "ASSISTED_PATCHING", 'UNKNOWN_ENUM_VALUE'. + Allowed values for items in this list are: "TROUBLESHOOTING", "ASSISTED_PATCHING", "MANAGED_SOFTWARE_UPDATES", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -815,7 +854,7 @@ def provided_service_types(self, provided_service_types): :param provided_service_types: The provided_service_types of this DelegatedResourceAccessRequest. :type: list[str] """ - allowed_values = ["TROUBLESHOOTING", "ASSISTED_PATCHING"] + allowed_values = ["TROUBLESHOOTING", "ASSISTED_PATCHING", "MANAGED_SOFTWARE_UPDATES"] if provided_service_types: provided_service_types[:] = ['UNKNOWN_ENUM_VALUE' if not value_allowed_none_or_none_sentinel(x, allowed_values) else x for x in provided_service_types] self._provided_service_types = provided_service_types diff --git a/src/oci/delegate_access_control/models/delegated_resource_access_request_approval_details.py b/src/oci/delegate_access_control/models/delegated_resource_access_request_approval_details.py index ba6ef4dae0..9ee292b9cb 100644 --- a/src/oci/delegate_access_control/models/delegated_resource_access_request_approval_details.py +++ b/src/oci/delegate_access_control/models/delegated_resource_access_request_approval_details.py @@ -64,6 +64,10 @@ def __init__(self, **kwargs): The value to assign to the approver_additional_message property of this DelegatedResourceAccessRequestApprovalDetails. :type approver_additional_message: str + :param time_of_action: + The value to assign to the time_of_action property of this DelegatedResourceAccessRequestApprovalDetails. + :type time_of_action: datetime + """ self.swagger_types = { 'approval_action': 'str', @@ -71,7 +75,8 @@ def __init__(self, **kwargs): 'approval_type': 'str', 'approver_comment': 'str', 'approver_id': 'str', - 'approver_additional_message': 'str' + 'approver_additional_message': 'str', + 'time_of_action': 'datetime' } self.attribute_map = { 'approval_action': 'approvalAction', @@ -79,7 +84,8 @@ def __init__(self, **kwargs): 'approval_type': 'approvalType', 'approver_comment': 'approverComment', 'approver_id': 'approverId', - 'approver_additional_message': 'approverAdditionalMessage' + 'approver_additional_message': 'approverAdditionalMessage', + 'time_of_action': 'timeOfAction' } self._approval_action = None self._time_approved_for_access = None @@ -87,6 +93,7 @@ def __init__(self, **kwargs): self._approver_comment = None self._approver_id = None self._approver_additional_message = None + self._time_of_action = None @property def approval_action(self): @@ -248,6 +255,34 @@ def approver_additional_message(self, approver_additional_message): """ self._approver_additional_message = approver_additional_message + @property + def time_of_action(self): + """ + Gets the time_of_action of this DelegatedResourceAccessRequestApprovalDetails. + Time when the access request was approved or rejected by the customer in `RFC 3339`__ timestamp format, e.g. '2020-05-22T21:10:29.600Z'. + + __ https://tools.ietf.org/html/rfc3339 + + + :return: The time_of_action of this DelegatedResourceAccessRequestApprovalDetails. + :rtype: datetime + """ + return self._time_of_action + + @time_of_action.setter + def time_of_action(self, time_of_action): + """ + Sets the time_of_action of this DelegatedResourceAccessRequestApprovalDetails. + Time when the access request was approved or rejected by the customer in `RFC 3339`__ timestamp format, e.g. '2020-05-22T21:10:29.600Z'. + + __ https://tools.ietf.org/html/rfc3339 + + + :param time_of_action: The time_of_action of this DelegatedResourceAccessRequestApprovalDetails. + :type: datetime + """ + self._time_of_action = time_of_action + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/delegate_access_control/models/delegated_resource_access_request_summary.py b/src/oci/delegate_access_control/models/delegated_resource_access_request_summary.py index 471ea9257c..146215d92b 100644 --- a/src/oci/delegate_access_control/models/delegated_resource_access_request_summary.py +++ b/src/oci/delegate_access_control/models/delegated_resource_access_request_summary.py @@ -23,6 +23,10 @@ class DelegatedResourceAccessRequestSummary(object): #: This constant has a value of "CLOUDVMCLUSTER" RESOURCE_TYPE_CLOUDVMCLUSTER = "CLOUDVMCLUSTER" + #: A constant which can be used with the resource_type property of a DelegatedResourceAccessRequestSummary. + #: This constant has a value of "EXADBVMCLUSTER" + RESOURCE_TYPE_EXADBVMCLUSTER = "EXADBVMCLUSTER" + #: A constant which can be used with the requester_type property of a DelegatedResourceAccessRequestSummary. #: This constant has a value of "OPERATOR" REQUESTER_TYPE_OPERATOR = "OPERATOR" @@ -182,7 +186,7 @@ def __init__(self, **kwargs): :param resource_type: The value to assign to the resource_type property of this DelegatedResourceAccessRequestSummary. - Allowed values for this property are: "VMCLUSTER", "CLOUDVMCLUSTER", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "VMCLUSTER", "CLOUDVMCLUSTER", "EXADBVMCLUSTER", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type resource_type: str @@ -532,7 +536,7 @@ def resource_type(self): Gets the resource_type of this DelegatedResourceAccessRequestSummary. Resource type for which the associated Delegation Control is applicable to. - Allowed values for this property are: "VMCLUSTER", "CLOUDVMCLUSTER", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "VMCLUSTER", "CLOUDVMCLUSTER", "EXADBVMCLUSTER", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -551,7 +555,7 @@ def resource_type(self, resource_type): :param resource_type: The resource_type of this DelegatedResourceAccessRequestSummary. :type: str """ - allowed_values = ["VMCLUSTER", "CLOUDVMCLUSTER"] + allowed_values = ["VMCLUSTER", "CLOUDVMCLUSTER", "EXADBVMCLUSTER"] if not value_allowed_none_or_none_sentinel(resource_type, allowed_values): resource_type = 'UNKNOWN_ENUM_VALUE' self._resource_type = resource_type diff --git a/src/oci/delegate_access_control/models/delegation_control.py b/src/oci/delegate_access_control/models/delegation_control.py index ac1f9a69bc..2fa8b33e95 100644 --- a/src/oci/delegate_access_control/models/delegation_control.py +++ b/src/oci/delegate_access_control/models/delegation_control.py @@ -23,6 +23,10 @@ class DelegationControl(object): #: This constant has a value of "CLOUDVMCLUSTER" RESOURCE_TYPE_CLOUDVMCLUSTER = "CLOUDVMCLUSTER" + #: A constant which can be used with the resource_type property of a DelegationControl. + #: This constant has a value of "EXADBVMCLUSTER" + RESOURCE_TYPE_EXADBVMCLUSTER = "EXADBVMCLUSTER" + #: A constant which can be used with the notification_message_format property of a DelegationControl. #: This constant has a value of "JSON" NOTIFICATION_MESSAGE_FORMAT_JSON = "JSON" @@ -102,7 +106,7 @@ def __init__(self, **kwargs): :param resource_type: The value to assign to the resource_type property of this DelegationControl. - Allowed values for this property are: "VMCLUSTER", "CLOUDVMCLUSTER", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "VMCLUSTER", "CLOUDVMCLUSTER", "EXADBVMCLUSTER", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type resource_type: str @@ -454,7 +458,7 @@ def resource_type(self): **[Required]** Gets the resource_type of this DelegationControl. Resource type for which the Delegation Control is applicable to. - Allowed values for this property are: "VMCLUSTER", "CLOUDVMCLUSTER", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "VMCLUSTER", "CLOUDVMCLUSTER", "EXADBVMCLUSTER", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -473,7 +477,7 @@ def resource_type(self, resource_type): :param resource_type: The resource_type of this DelegationControl. :type: str """ - allowed_values = ["VMCLUSTER", "CLOUDVMCLUSTER"] + allowed_values = ["VMCLUSTER", "CLOUDVMCLUSTER", "EXADBVMCLUSTER"] if not value_allowed_none_or_none_sentinel(resource_type, allowed_values): resource_type = 'UNKNOWN_ENUM_VALUE' self._resource_type = resource_type @@ -536,7 +540,7 @@ def notification_message_format(self, notification_message_format): def vault_id(self): """ Gets the vault_id of this DelegationControl. - The OCID of the OCI Vault that will store the secrets containing the SSH keys to access the resource governed by this Delegation Control by Delegate Access Control Service. This property is required when resourceType is CLOUDVMCLUSTER. Delegate Access Control Service will generate the SSH keys and store them as secrets in the OCI Vault. + The OCID of the OCI Vault that will store the secrets containing the SSH keys to access the resource governed by this Delegation Control by Delegate Access Control Service. Delegate Access Control Service will generate the SSH keys and store them as secrets in the OCI Vault. This property is optional when the Delegation Control is created for Oracle Managed Software Updates. Otherwise, it is required when resourceType is CLOUDVMCLUSTER or EXADBVMCLUSTER. :return: The vault_id of this DelegationControl. @@ -548,7 +552,7 @@ def vault_id(self): def vault_id(self, vault_id): """ Sets the vault_id of this DelegationControl. - The OCID of the OCI Vault that will store the secrets containing the SSH keys to access the resource governed by this Delegation Control by Delegate Access Control Service. This property is required when resourceType is CLOUDVMCLUSTER. Delegate Access Control Service will generate the SSH keys and store them as secrets in the OCI Vault. + The OCID of the OCI Vault that will store the secrets containing the SSH keys to access the resource governed by this Delegation Control by Delegate Access Control Service. Delegate Access Control Service will generate the SSH keys and store them as secrets in the OCI Vault. This property is optional when the Delegation Control is created for Oracle Managed Software Updates. Otherwise, it is required when resourceType is CLOUDVMCLUSTER or EXADBVMCLUSTER. :param vault_id: The vault_id of this DelegationControl. @@ -560,7 +564,7 @@ def vault_id(self, vault_id): def vault_key_id(self): """ Gets the vault_key_id of this DelegationControl. - The OCID of the Master Encryption Key in the OCI Vault specified by vaultId. This key will be used to encrypt the SSH keys to access the resource governed by this Delegation Control by Delegate Access Control Service. This property is required when resourceType is CLOUDVMCLUSTER. + The OCID of the Master Encryption Key in the OCI Vault specified by vaultId. This key will be used to encrypt the SSH keys to access the resource governed by this Delegation Control by Delegate Access Control Service. This property is optional when the Delegation Control is created for Oracle Managed Software Updates. Otherwise, it is required when resourceType is CLOUDVMCLUSTER or EXADBVMCLUSTER. :return: The vault_key_id of this DelegationControl. @@ -572,7 +576,7 @@ def vault_key_id(self): def vault_key_id(self, vault_key_id): """ Sets the vault_key_id of this DelegationControl. - The OCID of the Master Encryption Key in the OCI Vault specified by vaultId. This key will be used to encrypt the SSH keys to access the resource governed by this Delegation Control by Delegate Access Control Service. This property is required when resourceType is CLOUDVMCLUSTER. + The OCID of the Master Encryption Key in the OCI Vault specified by vaultId. This key will be used to encrypt the SSH keys to access the resource governed by this Delegation Control by Delegate Access Control Service. This property is optional when the Delegation Control is created for Oracle Managed Software Updates. Otherwise, it is required when resourceType is CLOUDVMCLUSTER or EXADBVMCLUSTER. :param vault_key_id: The vault_key_id of this DelegationControl. diff --git a/src/oci/delegate_access_control/models/delegation_control_summary.py b/src/oci/delegate_access_control/models/delegation_control_summary.py index 8327aa8a04..b3ed667a13 100644 --- a/src/oci/delegate_access_control/models/delegation_control_summary.py +++ b/src/oci/delegate_access_control/models/delegation_control_summary.py @@ -23,6 +23,10 @@ class DelegationControlSummary(object): #: This constant has a value of "CLOUDVMCLUSTER" RESOURCE_TYPE_CLOUDVMCLUSTER = "CLOUDVMCLUSTER" + #: A constant which can be used with the resource_type property of a DelegationControlSummary. + #: This constant has a value of "EXADBVMCLUSTER" + RESOURCE_TYPE_EXADBVMCLUSTER = "EXADBVMCLUSTER" + def __init__(self, **kwargs): """ Initializes a new DelegationControlSummary object with values from keyword arguments. @@ -42,7 +46,7 @@ def __init__(self, **kwargs): :param resource_type: The value to assign to the resource_type property of this DelegationControlSummary. - Allowed values for this property are: "VMCLUSTER", "CLOUDVMCLUSTER", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "VMCLUSTER", "CLOUDVMCLUSTER", "EXADBVMCLUSTER", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type resource_type: str @@ -198,7 +202,7 @@ def resource_type(self): **[Required]** Gets the resource_type of this DelegationControlSummary. resourceType for which the Delegation Control is applicable - Allowed values for this property are: "VMCLUSTER", "CLOUDVMCLUSTER", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "VMCLUSTER", "CLOUDVMCLUSTER", "EXADBVMCLUSTER", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -217,7 +221,7 @@ def resource_type(self, resource_type): :param resource_type: The resource_type of this DelegationControlSummary. :type: str """ - allowed_values = ["VMCLUSTER", "CLOUDVMCLUSTER"] + allowed_values = ["VMCLUSTER", "CLOUDVMCLUSTER", "EXADBVMCLUSTER"] if not value_allowed_none_or_none_sentinel(resource_type, allowed_values): resource_type = 'UNKNOWN_ENUM_VALUE' self._resource_type = resource_type diff --git a/src/oci/delegate_access_control/models/delegation_subscription.py b/src/oci/delegate_access_control/models/delegation_subscription.py index de14961ca5..0142ac38b6 100644 --- a/src/oci/delegate_access_control/models/delegation_subscription.py +++ b/src/oci/delegate_access_control/models/delegation_subscription.py @@ -23,6 +23,10 @@ class DelegationSubscription(object): #: This constant has a value of "ASSISTED_PATCHING" SUBSCRIBED_SERVICE_TYPE_ASSISTED_PATCHING = "ASSISTED_PATCHING" + #: A constant which can be used with the subscribed_service_type property of a DelegationSubscription. + #: This constant has a value of "MANAGED_SOFTWARE_UPDATES" + SUBSCRIBED_SERVICE_TYPE_MANAGED_SOFTWARE_UPDATES = "MANAGED_SOFTWARE_UPDATES" + #: A constant which can be used with the lifecycle_state property of a DelegationSubscription. #: This constant has a value of "CREATING" LIFECYCLE_STATE_CREATING = "CREATING" @@ -74,7 +78,7 @@ def __init__(self, **kwargs): :param subscribed_service_type: The value to assign to the subscribed_service_type property of this DelegationSubscription. - Allowed values for this property are: "TROUBLESHOOTING", "ASSISTED_PATCHING", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "TROUBLESHOOTING", "ASSISTED_PATCHING", "MANAGED_SOFTWARE_UPDATES", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type subscribed_service_type: str @@ -279,7 +283,7 @@ def subscribed_service_type(self): **[Required]** Gets the subscribed_service_type of this DelegationSubscription. Subscribed Service Provider Service Type. - Allowed values for this property are: "TROUBLESHOOTING", "ASSISTED_PATCHING", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "TROUBLESHOOTING", "ASSISTED_PATCHING", "MANAGED_SOFTWARE_UPDATES", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -298,7 +302,7 @@ def subscribed_service_type(self, subscribed_service_type): :param subscribed_service_type: The subscribed_service_type of this DelegationSubscription. :type: str """ - allowed_values = ["TROUBLESHOOTING", "ASSISTED_PATCHING"] + allowed_values = ["TROUBLESHOOTING", "ASSISTED_PATCHING", "MANAGED_SOFTWARE_UPDATES"] if not value_allowed_none_or_none_sentinel(subscribed_service_type, allowed_values): subscribed_service_type = 'UNKNOWN_ENUM_VALUE' self._subscribed_service_type = subscribed_service_type diff --git a/src/oci/delegate_access_control/models/delegation_subscription_summary.py b/src/oci/delegate_access_control/models/delegation_subscription_summary.py index a14d7ddc1b..66795ea59e 100644 --- a/src/oci/delegate_access_control/models/delegation_subscription_summary.py +++ b/src/oci/delegate_access_control/models/delegation_subscription_summary.py @@ -23,6 +23,10 @@ class DelegationSubscriptionSummary(object): #: This constant has a value of "ASSISTED_PATCHING" SUBSCRIBED_SERVICE_TYPE_ASSISTED_PATCHING = "ASSISTED_PATCHING" + #: A constant which can be used with the subscribed_service_type property of a DelegationSubscriptionSummary. + #: This constant has a value of "MANAGED_SOFTWARE_UPDATES" + SUBSCRIBED_SERVICE_TYPE_MANAGED_SOFTWARE_UPDATES = "MANAGED_SOFTWARE_UPDATES" + def __init__(self, **kwargs): """ Initializes a new DelegationSubscriptionSummary object with values from keyword arguments. @@ -46,7 +50,7 @@ def __init__(self, **kwargs): :param subscribed_service_type: The value to assign to the subscribed_service_type property of this DelegationSubscriptionSummary. - Allowed values for this property are: "TROUBLESHOOTING", "ASSISTED_PATCHING", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "TROUBLESHOOTING", "ASSISTED_PATCHING", "MANAGED_SOFTWARE_UPDATES", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type subscribed_service_type: str @@ -222,7 +226,7 @@ def subscribed_service_type(self): **[Required]** Gets the subscribed_service_type of this DelegationSubscriptionSummary. Subscribed Service Provider Service Type. - Allowed values for this property are: "TROUBLESHOOTING", "ASSISTED_PATCHING", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "TROUBLESHOOTING", "ASSISTED_PATCHING", "MANAGED_SOFTWARE_UPDATES", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -241,7 +245,7 @@ def subscribed_service_type(self, subscribed_service_type): :param subscribed_service_type: The subscribed_service_type of this DelegationSubscriptionSummary. :type: str """ - allowed_values = ["TROUBLESHOOTING", "ASSISTED_PATCHING"] + allowed_values = ["TROUBLESHOOTING", "ASSISTED_PATCHING", "MANAGED_SOFTWARE_UPDATES"] if not value_allowed_none_or_none_sentinel(subscribed_service_type, allowed_values): subscribed_service_type = 'UNKNOWN_ENUM_VALUE' self._subscribed_service_type = subscribed_service_type diff --git a/src/oci/delegate_access_control/models/service_provider.py b/src/oci/delegate_access_control/models/service_provider.py index 7d12eb5aeb..3a21fba447 100644 --- a/src/oci/delegate_access_control/models/service_provider.py +++ b/src/oci/delegate_access_control/models/service_provider.py @@ -27,6 +27,10 @@ class ServiceProvider(object): #: This constant has a value of "ASSISTED_PATCHING" SERVICE_TYPES_ASSISTED_PATCHING = "ASSISTED_PATCHING" + #: A constant which can be used with the service_types property of a ServiceProvider. + #: This constant has a value of "MANAGED_SOFTWARE_UPDATES" + SERVICE_TYPES_MANAGED_SOFTWARE_UPDATES = "MANAGED_SOFTWARE_UPDATES" + #: A constant which can be used with the supported_resource_types property of a ServiceProvider. #: This constant has a value of "VMCLUSTER" SUPPORTED_RESOURCE_TYPES_VMCLUSTER = "VMCLUSTER" @@ -35,6 +39,10 @@ class ServiceProvider(object): #: This constant has a value of "CLOUDVMCLUSTER" SUPPORTED_RESOURCE_TYPES_CLOUDVMCLUSTER = "CLOUDVMCLUSTER" + #: A constant which can be used with the supported_resource_types property of a ServiceProvider. + #: This constant has a value of "EXADBVMCLUSTER" + SUPPORTED_RESOURCE_TYPES_EXADBVMCLUSTER = "EXADBVMCLUSTER" + #: A constant which can be used with the lifecycle_state property of a ServiceProvider. #: This constant has a value of "CREATING" LIFECYCLE_STATE_CREATING = "CREATING" @@ -88,13 +96,13 @@ def __init__(self, **kwargs): :param service_types: The value to assign to the service_types property of this ServiceProvider. - Allowed values for items in this list are: "TROUBLESHOOTING", "ASSISTED_PATCHING", 'UNKNOWN_ENUM_VALUE'. + Allowed values for items in this list are: "TROUBLESHOOTING", "ASSISTED_PATCHING", "MANAGED_SOFTWARE_UPDATES", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type service_types: list[str] :param supported_resource_types: The value to assign to the supported_resource_types property of this ServiceProvider. - Allowed values for items in this list are: "VMCLUSTER", "CLOUDVMCLUSTER", 'UNKNOWN_ENUM_VALUE'. + Allowed values for items in this list are: "VMCLUSTER", "CLOUDVMCLUSTER", "EXADBVMCLUSTER", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type supported_resource_types: list[str] @@ -204,7 +212,7 @@ def id(self, id): def compartment_id(self): """ Gets the compartment_id of this ServiceProvider. - The OCID of the compartment that contains the Delegation Control. + The OCID of the compartment that contains the Service Provider. :return: The compartment_id of this ServiceProvider. @@ -216,7 +224,7 @@ def compartment_id(self): def compartment_id(self, compartment_id): """ Sets the compartment_id of this ServiceProvider. - The OCID of the compartment that contains the Delegation Control. + The OCID of the compartment that contains the Service Provider. :param compartment_id: The compartment_id of this ServiceProvider. @@ -308,7 +316,7 @@ def service_types(self): **[Required]** Gets the service_types of this ServiceProvider. Types of services offered by this provider. - Allowed values for items in this list are: "TROUBLESHOOTING", "ASSISTED_PATCHING", 'UNKNOWN_ENUM_VALUE'. + Allowed values for items in this list are: "TROUBLESHOOTING", "ASSISTED_PATCHING", "MANAGED_SOFTWARE_UPDATES", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -327,7 +335,7 @@ def service_types(self, service_types): :param service_types: The service_types of this ServiceProvider. :type: list[str] """ - allowed_values = ["TROUBLESHOOTING", "ASSISTED_PATCHING"] + allowed_values = ["TROUBLESHOOTING", "ASSISTED_PATCHING", "MANAGED_SOFTWARE_UPDATES"] if service_types: service_types[:] = ['UNKNOWN_ENUM_VALUE' if not value_allowed_none_or_none_sentinel(x, allowed_values) else x for x in service_types] self._service_types = service_types @@ -338,7 +346,7 @@ def supported_resource_types(self): **[Required]** Gets the supported_resource_types of this ServiceProvider. Resource types for which this provider will provide service. Default to all if not specified. - Allowed values for items in this list are: "VMCLUSTER", "CLOUDVMCLUSTER", 'UNKNOWN_ENUM_VALUE'. + Allowed values for items in this list are: "VMCLUSTER", "CLOUDVMCLUSTER", "EXADBVMCLUSTER", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -357,7 +365,7 @@ def supported_resource_types(self, supported_resource_types): :param supported_resource_types: The supported_resource_types of this ServiceProvider. :type: list[str] """ - allowed_values = ["VMCLUSTER", "CLOUDVMCLUSTER"] + allowed_values = ["VMCLUSTER", "CLOUDVMCLUSTER", "EXADBVMCLUSTER"] if supported_resource_types: supported_resource_types[:] = ['UNKNOWN_ENUM_VALUE' if not value_allowed_none_or_none_sentinel(x, allowed_values) else x for x in supported_resource_types] self._supported_resource_types = supported_resource_types diff --git a/src/oci/delegate_access_control/models/service_provider_action.py b/src/oci/delegate_access_control/models/service_provider_action.py index 2ca86853a6..a5fe5f370d 100644 --- a/src/oci/delegate_access_control/models/service_provider_action.py +++ b/src/oci/delegate_access_control/models/service_provider_action.py @@ -24,6 +24,10 @@ class ServiceProviderAction(object): #: This constant has a value of "CLOUDVMCLUSTER" RESOURCE_TYPE_CLOUDVMCLUSTER = "CLOUDVMCLUSTER" + #: A constant which can be used with the resource_type property of a ServiceProviderAction. + #: This constant has a value of "EXADBVMCLUSTER" + RESOURCE_TYPE_EXADBVMCLUSTER = "EXADBVMCLUSTER" + #: A constant which can be used with the service_provider_service_types property of a ServiceProviderAction. #: This constant has a value of "TROUBLESHOOTING" SERVICE_PROVIDER_SERVICE_TYPES_TROUBLESHOOTING = "TROUBLESHOOTING" @@ -32,6 +36,10 @@ class ServiceProviderAction(object): #: This constant has a value of "ASSISTED_PATCHING" SERVICE_PROVIDER_SERVICE_TYPES_ASSISTED_PATCHING = "ASSISTED_PATCHING" + #: A constant which can be used with the service_provider_service_types property of a ServiceProviderAction. + #: This constant has a value of "MANAGED_SOFTWARE_UPDATES" + SERVICE_PROVIDER_SERVICE_TYPES_MANAGED_SOFTWARE_UPDATES = "MANAGED_SOFTWARE_UPDATES" + #: A constant which can be used with the lifecycle_state property of a ServiceProviderAction. #: This constant has a value of "ACTIVE" LIFECYCLE_STATE_ACTIVE = "ACTIVE" @@ -49,6 +57,10 @@ def __init__(self, **kwargs): The value to assign to the id property of this ServiceProviderAction. :type id: str + :param compartment_id: + The value to assign to the compartment_id property of this ServiceProviderAction. + :type compartment_id: str + :param name: The value to assign to the name property of this ServiceProviderAction. :type name: str @@ -63,13 +75,17 @@ def __init__(self, **kwargs): :param resource_type: The value to assign to the resource_type property of this ServiceProviderAction. - Allowed values for this property are: "VMCLUSTER", "CLOUDVMCLUSTER", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "VMCLUSTER", "CLOUDVMCLUSTER", "EXADBVMCLUSTER", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type resource_type: str + :param is_ssh_access_allowed: + The value to assign to the is_ssh_access_allowed property of this ServiceProviderAction. + :type is_ssh_access_allowed: bool + :param service_provider_service_types: The value to assign to the service_provider_service_types property of this ServiceProviderAction. - Allowed values for items in this list are: "TROUBLESHOOTING", "ASSISTED_PATCHING", 'UNKNOWN_ENUM_VALUE'. + Allowed values for items in this list are: "TROUBLESHOOTING", "ASSISTED_PATCHING", "MANAGED_SOFTWARE_UPDATES", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type service_provider_service_types: list[str] @@ -90,10 +106,12 @@ def __init__(self, **kwargs): """ self.swagger_types = { 'id': 'str', + 'compartment_id': 'str', 'name': 'str', 'customer_display_name': 'str', 'component': 'str', 'resource_type': 'str', + 'is_ssh_access_allowed': 'bool', 'service_provider_service_types': 'list[str]', 'lifecycle_state': 'str', 'description': 'str', @@ -101,20 +119,24 @@ def __init__(self, **kwargs): } self.attribute_map = { 'id': 'id', + 'compartment_id': 'compartmentId', 'name': 'name', 'customer_display_name': 'customerDisplayName', 'component': 'component', 'resource_type': 'resourceType', + 'is_ssh_access_allowed': 'isSshAccessAllowed', 'service_provider_service_types': 'serviceProviderServiceTypes', 'lifecycle_state': 'lifecycleState', 'description': 'description', 'properties': 'properties' } self._id = None + self._compartment_id = None self._name = None self._customer_display_name = None self._component = None self._resource_type = None + self._is_ssh_access_allowed = None self._service_provider_service_types = None self._lifecycle_state = None self._description = None @@ -144,6 +166,30 @@ def id(self, id): """ self._id = id + @property + def compartment_id(self): + """ + Gets the compartment_id of this ServiceProviderAction. + The OCID of the compartment that contains the Service Provider Action. + + + :return: The compartment_id of this ServiceProviderAction. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this ServiceProviderAction. + The OCID of the compartment that contains the Service Provider Action. + + + :param compartment_id: The compartment_id of this ServiceProviderAction. + :type: str + """ + self._compartment_id = compartment_id + @property def name(self): """ @@ -222,7 +268,7 @@ def resource_type(self): Gets the resource_type of this ServiceProviderAction. resourceType for which the ServiceProviderAction is applicable - Allowed values for this property are: "VMCLUSTER", "CLOUDVMCLUSTER", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "VMCLUSTER", "CLOUDVMCLUSTER", "EXADBVMCLUSTER", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -241,18 +287,42 @@ def resource_type(self, resource_type): :param resource_type: The resource_type of this ServiceProviderAction. :type: str """ - allowed_values = ["VMCLUSTER", "CLOUDVMCLUSTER"] + allowed_values = ["VMCLUSTER", "CLOUDVMCLUSTER", "EXADBVMCLUSTER"] if not value_allowed_none_or_none_sentinel(resource_type, allowed_values): resource_type = 'UNKNOWN_ENUM_VALUE' self._resource_type = resource_type + @property + def is_ssh_access_allowed(self): + """ + Gets the is_ssh_access_allowed of this ServiceProviderAction. + Indicates whether the service provider action allows SSH access. + + + :return: The is_ssh_access_allowed of this ServiceProviderAction. + :rtype: bool + """ + return self._is_ssh_access_allowed + + @is_ssh_access_allowed.setter + def is_ssh_access_allowed(self, is_ssh_access_allowed): + """ + Sets the is_ssh_access_allowed of this ServiceProviderAction. + Indicates whether the service provider action allows SSH access. + + + :param is_ssh_access_allowed: The is_ssh_access_allowed of this ServiceProviderAction. + :type: bool + """ + self._is_ssh_access_allowed = is_ssh_access_allowed + @property def service_provider_service_types(self): """ Gets the service_provider_service_types of this ServiceProviderAction. List of Service Provider Service Types that this Service Provider Action is applicable to. - Allowed values for items in this list are: "TROUBLESHOOTING", "ASSISTED_PATCHING", 'UNKNOWN_ENUM_VALUE'. + Allowed values for items in this list are: "TROUBLESHOOTING", "ASSISTED_PATCHING", "MANAGED_SOFTWARE_UPDATES", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -271,7 +341,7 @@ def service_provider_service_types(self, service_provider_service_types): :param service_provider_service_types: The service_provider_service_types of this ServiceProviderAction. :type: list[str] """ - allowed_values = ["TROUBLESHOOTING", "ASSISTED_PATCHING"] + allowed_values = ["TROUBLESHOOTING", "ASSISTED_PATCHING", "MANAGED_SOFTWARE_UPDATES"] if service_provider_service_types: service_provider_service_types[:] = ['UNKNOWN_ENUM_VALUE' if not value_allowed_none_or_none_sentinel(x, allowed_values) else x for x in service_provider_service_types] self._service_provider_service_types = service_provider_service_types diff --git a/src/oci/delegate_access_control/models/service_provider_action_summary.py b/src/oci/delegate_access_control/models/service_provider_action_summary.py index 6a97494273..d27d344230 100644 --- a/src/oci/delegate_access_control/models/service_provider_action_summary.py +++ b/src/oci/delegate_access_control/models/service_provider_action_summary.py @@ -23,6 +23,10 @@ class ServiceProviderActionSummary(object): #: This constant has a value of "CLOUDVMCLUSTER" RESOURCE_TYPE_CLOUDVMCLUSTER = "CLOUDVMCLUSTER" + #: A constant which can be used with the resource_type property of a ServiceProviderActionSummary. + #: This constant has a value of "EXADBVMCLUSTER" + RESOURCE_TYPE_EXADBVMCLUSTER = "EXADBVMCLUSTER" + #: A constant which can be used with the service_provider_service_types property of a ServiceProviderActionSummary. #: This constant has a value of "TROUBLESHOOTING" SERVICE_PROVIDER_SERVICE_TYPES_TROUBLESHOOTING = "TROUBLESHOOTING" @@ -31,6 +35,10 @@ class ServiceProviderActionSummary(object): #: This constant has a value of "ASSISTED_PATCHING" SERVICE_PROVIDER_SERVICE_TYPES_ASSISTED_PATCHING = "ASSISTED_PATCHING" + #: A constant which can be used with the service_provider_service_types property of a ServiceProviderActionSummary. + #: This constant has a value of "MANAGED_SOFTWARE_UPDATES" + SERVICE_PROVIDER_SERVICE_TYPES_MANAGED_SOFTWARE_UPDATES = "MANAGED_SOFTWARE_UPDATES" + def __init__(self, **kwargs): """ Initializes a new ServiceProviderActionSummary object with values from keyword arguments. @@ -40,6 +48,10 @@ def __init__(self, **kwargs): The value to assign to the id property of this ServiceProviderActionSummary. :type id: str + :param compartment_id: + The value to assign to the compartment_id property of this ServiceProviderActionSummary. + :type compartment_id: str + :param name: The value to assign to the name property of this ServiceProviderActionSummary. :type name: str @@ -54,13 +66,17 @@ def __init__(self, **kwargs): :param resource_type: The value to assign to the resource_type property of this ServiceProviderActionSummary. - Allowed values for this property are: "VMCLUSTER", "CLOUDVMCLUSTER", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "VMCLUSTER", "CLOUDVMCLUSTER", "EXADBVMCLUSTER", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type resource_type: str + :param is_ssh_access_allowed: + The value to assign to the is_ssh_access_allowed property of this ServiceProviderActionSummary. + :type is_ssh_access_allowed: bool + :param service_provider_service_types: The value to assign to the service_provider_service_types property of this ServiceProviderActionSummary. - Allowed values for items in this list are: "TROUBLESHOOTING", "ASSISTED_PATCHING", 'UNKNOWN_ENUM_VALUE'. + Allowed values for items in this list are: "TROUBLESHOOTING", "ASSISTED_PATCHING", "MANAGED_SOFTWARE_UPDATES", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type service_provider_service_types: list[str] @@ -75,29 +91,35 @@ def __init__(self, **kwargs): """ self.swagger_types = { 'id': 'str', + 'compartment_id': 'str', 'name': 'str', 'customer_display_name': 'str', 'component': 'str', 'resource_type': 'str', + 'is_ssh_access_allowed': 'bool', 'service_provider_service_types': 'list[str]', 'lifecycle_state': 'str', 'description': 'str' } self.attribute_map = { 'id': 'id', + 'compartment_id': 'compartmentId', 'name': 'name', 'customer_display_name': 'customerDisplayName', 'component': 'component', 'resource_type': 'resourceType', + 'is_ssh_access_allowed': 'isSshAccessAllowed', 'service_provider_service_types': 'serviceProviderServiceTypes', 'lifecycle_state': 'lifecycleState', 'description': 'description' } self._id = None + self._compartment_id = None self._name = None self._customer_display_name = None self._component = None self._resource_type = None + self._is_ssh_access_allowed = None self._service_provider_service_types = None self._lifecycle_state = None self._description = None @@ -126,6 +148,30 @@ def id(self, id): """ self._id = id + @property + def compartment_id(self): + """ + Gets the compartment_id of this ServiceProviderActionSummary. + The OCID of the compartment that contains the Service Provider Action. + + + :return: The compartment_id of this ServiceProviderActionSummary. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this ServiceProviderActionSummary. + The OCID of the compartment that contains the Service Provider Action. + + + :param compartment_id: The compartment_id of this ServiceProviderActionSummary. + :type: str + """ + self._compartment_id = compartment_id + @property def name(self): """ @@ -204,7 +250,7 @@ def resource_type(self): Gets the resource_type of this ServiceProviderActionSummary. resourceType for which the ServiceProviderAction is applicable - Allowed values for this property are: "VMCLUSTER", "CLOUDVMCLUSTER", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "VMCLUSTER", "CLOUDVMCLUSTER", "EXADBVMCLUSTER", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -223,18 +269,42 @@ def resource_type(self, resource_type): :param resource_type: The resource_type of this ServiceProviderActionSummary. :type: str """ - allowed_values = ["VMCLUSTER", "CLOUDVMCLUSTER"] + allowed_values = ["VMCLUSTER", "CLOUDVMCLUSTER", "EXADBVMCLUSTER"] if not value_allowed_none_or_none_sentinel(resource_type, allowed_values): resource_type = 'UNKNOWN_ENUM_VALUE' self._resource_type = resource_type + @property + def is_ssh_access_allowed(self): + """ + Gets the is_ssh_access_allowed of this ServiceProviderActionSummary. + Indicates whether the service provider action allows SSH access. + + + :return: The is_ssh_access_allowed of this ServiceProviderActionSummary. + :rtype: bool + """ + return self._is_ssh_access_allowed + + @is_ssh_access_allowed.setter + def is_ssh_access_allowed(self, is_ssh_access_allowed): + """ + Sets the is_ssh_access_allowed of this ServiceProviderActionSummary. + Indicates whether the service provider action allows SSH access. + + + :param is_ssh_access_allowed: The is_ssh_access_allowed of this ServiceProviderActionSummary. + :type: bool + """ + self._is_ssh_access_allowed = is_ssh_access_allowed + @property def service_provider_service_types(self): """ Gets the service_provider_service_types of this ServiceProviderActionSummary. List of Service Provider Service Types that this Service Provider Action is applicable to. - Allowed values for items in this list are: "TROUBLESHOOTING", "ASSISTED_PATCHING", 'UNKNOWN_ENUM_VALUE'. + Allowed values for items in this list are: "TROUBLESHOOTING", "ASSISTED_PATCHING", "MANAGED_SOFTWARE_UPDATES", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -253,7 +323,7 @@ def service_provider_service_types(self, service_provider_service_types): :param service_provider_service_types: The service_provider_service_types of this ServiceProviderActionSummary. :type: list[str] """ - allowed_values = ["TROUBLESHOOTING", "ASSISTED_PATCHING"] + allowed_values = ["TROUBLESHOOTING", "ASSISTED_PATCHING", "MANAGED_SOFTWARE_UPDATES"] if service_provider_service_types: service_provider_service_types[:] = ['UNKNOWN_ENUM_VALUE' if not value_allowed_none_or_none_sentinel(x, allowed_values) else x for x in service_provider_service_types] self._service_provider_service_types = service_provider_service_types diff --git a/src/oci/delegate_access_control/models/service_provider_summary.py b/src/oci/delegate_access_control/models/service_provider_summary.py index 2bd9062fc7..7f61ddd39a 100644 --- a/src/oci/delegate_access_control/models/service_provider_summary.py +++ b/src/oci/delegate_access_control/models/service_provider_summary.py @@ -23,6 +23,10 @@ class ServiceProviderSummary(object): #: This constant has a value of "ASSISTED_PATCHING" SERVICE_TYPES_ASSISTED_PATCHING = "ASSISTED_PATCHING" + #: A constant which can be used with the service_types property of a ServiceProviderSummary. + #: This constant has a value of "MANAGED_SOFTWARE_UPDATES" + SERVICE_TYPES_MANAGED_SOFTWARE_UPDATES = "MANAGED_SOFTWARE_UPDATES" + #: A constant which can be used with the supported_resource_types property of a ServiceProviderSummary. #: This constant has a value of "VMCLUSTER" SUPPORTED_RESOURCE_TYPES_VMCLUSTER = "VMCLUSTER" @@ -31,6 +35,10 @@ class ServiceProviderSummary(object): #: This constant has a value of "CLOUDVMCLUSTER" SUPPORTED_RESOURCE_TYPES_CLOUDVMCLUSTER = "CLOUDVMCLUSTER" + #: A constant which can be used with the supported_resource_types property of a ServiceProviderSummary. + #: This constant has a value of "EXADBVMCLUSTER" + SUPPORTED_RESOURCE_TYPES_EXADBVMCLUSTER = "EXADBVMCLUSTER" + def __init__(self, **kwargs): """ Initializes a new ServiceProviderSummary object with values from keyword arguments. @@ -54,13 +62,13 @@ def __init__(self, **kwargs): :param service_types: The value to assign to the service_types property of this ServiceProviderSummary. - Allowed values for items in this list are: "TROUBLESHOOTING", "ASSISTED_PATCHING", 'UNKNOWN_ENUM_VALUE'. + Allowed values for items in this list are: "TROUBLESHOOTING", "ASSISTED_PATCHING", "MANAGED_SOFTWARE_UPDATES", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type service_types: list[str] :param supported_resource_types: The value to assign to the supported_resource_types property of this ServiceProviderSummary. - Allowed values for items in this list are: "VMCLUSTER", "CLOUDVMCLUSTER", 'UNKNOWN_ENUM_VALUE'. + Allowed values for items in this list are: "VMCLUSTER", "CLOUDVMCLUSTER", "EXADBVMCLUSTER", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type supported_resource_types: list[str] @@ -165,7 +173,7 @@ def id(self, id): def compartment_id(self): """ Gets the compartment_id of this ServiceProviderSummary. - The OCID of the compartment that contains the Delegation Control. + The OCID of the compartment that contains the Service Provider. :return: The compartment_id of this ServiceProviderSummary. @@ -177,7 +185,7 @@ def compartment_id(self): def compartment_id(self, compartment_id): """ Sets the compartment_id of this ServiceProviderSummary. - The OCID of the compartment that contains the Delegation Control. + The OCID of the compartment that contains the Service Provider. :param compartment_id: The compartment_id of this ServiceProviderSummary. @@ -239,7 +247,7 @@ def service_types(self): Gets the service_types of this ServiceProviderSummary. Types of services offered by this provider. - Allowed values for items in this list are: "TROUBLESHOOTING", "ASSISTED_PATCHING", 'UNKNOWN_ENUM_VALUE'. + Allowed values for items in this list are: "TROUBLESHOOTING", "ASSISTED_PATCHING", "MANAGED_SOFTWARE_UPDATES", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -258,7 +266,7 @@ def service_types(self, service_types): :param service_types: The service_types of this ServiceProviderSummary. :type: list[str] """ - allowed_values = ["TROUBLESHOOTING", "ASSISTED_PATCHING"] + allowed_values = ["TROUBLESHOOTING", "ASSISTED_PATCHING", "MANAGED_SOFTWARE_UPDATES"] if service_types: service_types[:] = ['UNKNOWN_ENUM_VALUE' if not value_allowed_none_or_none_sentinel(x, allowed_values) else x for x in service_types] self._service_types = service_types @@ -269,7 +277,7 @@ def supported_resource_types(self): Gets the supported_resource_types of this ServiceProviderSummary. Resource types for which this provider will provide service. Default to all if not specified. - Allowed values for items in this list are: "VMCLUSTER", "CLOUDVMCLUSTER", 'UNKNOWN_ENUM_VALUE'. + Allowed values for items in this list are: "VMCLUSTER", "CLOUDVMCLUSTER", "EXADBVMCLUSTER", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -288,7 +296,7 @@ def supported_resource_types(self, supported_resource_types): :param supported_resource_types: The supported_resource_types of this ServiceProviderSummary. :type: list[str] """ - allowed_values = ["VMCLUSTER", "CLOUDVMCLUSTER"] + allowed_values = ["VMCLUSTER", "CLOUDVMCLUSTER", "EXADBVMCLUSTER"] if supported_resource_types: supported_resource_types[:] = ['UNKNOWN_ENUM_VALUE' if not value_allowed_none_or_none_sentinel(x, allowed_values) else x for x in supported_resource_types] self._supported_resource_types = supported_resource_types diff --git a/src/oci/delegate_access_control/models/work_request_error.py b/src/oci/delegate_access_control/models/work_request_error.py index 105f9a4347..296faf6f0e 100644 --- a/src/oci/delegate_access_control/models/work_request_error.py +++ b/src/oci/delegate_access_control/models/work_request_error.py @@ -51,7 +51,7 @@ def __init__(self, **kwargs): def code(self): """ **[Required]** Gets the code of this WorkRequestError. - A machine-usable code for the error that occured. Error codes are listed on + A machine-usable code for the error that occurred. Error codes are listed on (https://docs.oracle.com/iaas/Content/API/References/apierrors.htm) @@ -64,7 +64,7 @@ def code(self): def code(self, code): """ Sets the code of this WorkRequestError. - A machine-usable code for the error that occured. Error codes are listed on + A machine-usable code for the error that occurred. Error codes are listed on (https://docs.oracle.com/iaas/Content/API/References/apierrors.htm) @@ -101,7 +101,7 @@ def message(self, message): def timestamp(self): """ **[Required]** Gets the timestamp of this WorkRequestError. - The time the error occured. An RFC3339 formatted datetime string. + The time the error occurred. An RFC3339 formatted datetime string. :return: The timestamp of this WorkRequestError. @@ -113,7 +113,7 @@ def timestamp(self): def timestamp(self, timestamp): """ Sets the timestamp of this WorkRequestError. - The time the error occured. An RFC3339 formatted datetime string. + The time the error occurred. An RFC3339 formatted datetime string. :param timestamp: The timestamp of this WorkRequestError. diff --git a/src/oci/delegate_access_control/work_request_client.py b/src/oci/delegate_access_control/work_request_client.py index 7ced5c5389..6d8fc099b1 100644 --- a/src/oci/delegate_access_control/work_request_client.py +++ b/src/oci/delegate_access_control/work_request_client.py @@ -22,8 +22,8 @@ class WorkRequestClient(object): """ - Oracle Delegate Access Control allows ExaCC and ExaCS customers to delegate management of their Exadata resources operators outside their tenancies. - With Delegate Access Control, Support Providers can deliver managed services using comprehensive and robust tooling built on the OCI platform. + Oracle Delegate Access Control allows customers of Oracle Exadata Database Service on Cloud@Customer (ExaDB-C@C), Oracle Exadata Database Service on Dedicated Infrastructure (ExaDB-D), and Oracle Exadata Database Service on Exascale Infrastructure (ExaDB-XS) to delegate management of their Exadata resources operators outside their tenancies. + With Delegate Access Control, Service Providers can deliver managed services using comprehensive and robust tooling built on the OCI platform. Customers maintain control over who has access to the delegated resources in their tenancy and what actions can be taken. Enterprises managing resources across multiple tenants can use Delegate Access Control to streamline management tasks. Using logging service, customers can view a near real-time audit report of all actions performed by a Service Provider operator. diff --git a/src/oci/generative_ai/models/create_dedicated_ai_cluster_details.py b/src/oci/generative_ai/models/create_dedicated_ai_cluster_details.py index 58d6649dff..7ac09799f5 100644 --- a/src/oci/generative_ai/models/create_dedicated_ai_cluster_details.py +++ b/src/oci/generative_ai/models/create_dedicated_ai_cluster_details.py @@ -269,6 +269,15 @@ def unit_shape(self): - OAI_A100_80G_X2 - OAI_A100_40G_X1 - OAI_A100_40G_X4 + - B200_X1 + - B200_X2 + - B200_X4 + - B200_X8 + - OAI_B200_X1 + - OAI_B200_X2 + - OAI_B200_X4 + - OAI_B200_X8 + - SB_B200_X1 :return: The unit_shape of this CreateDedicatedAiClusterDetails. @@ -335,6 +344,15 @@ def unit_shape(self, unit_shape): - OAI_A100_80G_X2 - OAI_A100_40G_X1 - OAI_A100_40G_X4 + - B200_X1 + - B200_X2 + - B200_X4 + - B200_X8 + - OAI_B200_X1 + - OAI_B200_X2 + - OAI_B200_X4 + - OAI_B200_X8 + - SB_B200_X1 :param unit_shape: The unit_shape of this CreateDedicatedAiClusterDetails. diff --git a/src/oci/generative_ai/models/dedicated_ai_cluster.py b/src/oci/generative_ai/models/dedicated_ai_cluster.py index ac90c51e4a..23d7acdc1d 100644 --- a/src/oci/generative_ai/models/dedicated_ai_cluster.py +++ b/src/oci/generative_ai/models/dedicated_ai_cluster.py @@ -265,6 +265,42 @@ class DedicatedAiCluster(object): #: This constant has a value of "OAI_A100_40G_X4" UNIT_SHAPE_OAI_A100_40_G_X4 = "OAI_A100_40G_X4" + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "B200_X1" + UNIT_SHAPE_B200_X1 = "B200_X1" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "B200_X2" + UNIT_SHAPE_B200_X2 = "B200_X2" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "B200_X4" + UNIT_SHAPE_B200_X4 = "B200_X4" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "B200_X8" + UNIT_SHAPE_B200_X8 = "B200_X8" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "OAI_B200_X1" + UNIT_SHAPE_OAI_B200_X1 = "OAI_B200_X1" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "OAI_B200_X2" + UNIT_SHAPE_OAI_B200_X2 = "OAI_B200_X2" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "OAI_B200_X4" + UNIT_SHAPE_OAI_B200_X4 = "OAI_B200_X4" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "OAI_B200_X8" + UNIT_SHAPE_OAI_B200_X8 = "OAI_B200_X8" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "SB_B200_X1" + UNIT_SHAPE_SB_B200_X1 = "SB_B200_X1" + def __init__(self, **kwargs): """ Initializes a new DedicatedAiCluster object with values from keyword arguments. @@ -316,7 +352,7 @@ def __init__(self, **kwargs): :param unit_shape: The value to assign to the unit_shape property of this DedicatedAiCluster. - Allowed values for this property are: "LARGE_COHERE", "LARGE_COHERE_V2", "SMALL_COHERE", "SMALL_COHERE_V2", "SMALL_COHERE_4", "EMBED_COHERE", "LLAMA2_70", "LARGE_GENERIC", "LARGE_COHERE_V2_2", "LARGE_GENERIC_4", "SMALL_GENERIC_V2", "LARGE_GENERIC_2", "LARGE_GENERIC_V2", "LARGE_GENERIC_V3", "LARGE_GENERIC_V4", "LARGE_GENERIC_V5", "COHERE_H100_X1", "COHERE_A100_80G_X1", "COHERE_A100_40G_X1", "COHERE_A10_X1", "LARGE_COHERE_V3", "RERANK_COHERE", "SMALL_GENERIC_V1", "MEDIUM_GENERIC_V1", "LARGE_GENERIC_V1", "A10_X1", "A10_X2", "A10_X4", "A100_40G_X1", "A100_40G_X2", "A100_40G_X4", "A100_40G_X8", "A100_80G_X1", "A100_80G_X2", "A100_80G_X4", "A100_80G_X8", "H100_X1", "H100_X2", "H100_X4", "H100_X8", "H200_X1", "H200_X2", "H200_X4", "H200_X8", "OAI_A10_X2", "OAI_H100_X1", "OAI_H100_X2", "OAI_H200_X1", "OAI_A100_80G_X1", "OAI_A100_80G_X2", "OAI_A100_40G_X1", "OAI_A100_40G_X4", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "LARGE_COHERE", "LARGE_COHERE_V2", "SMALL_COHERE", "SMALL_COHERE_V2", "SMALL_COHERE_4", "EMBED_COHERE", "LLAMA2_70", "LARGE_GENERIC", "LARGE_COHERE_V2_2", "LARGE_GENERIC_4", "SMALL_GENERIC_V2", "LARGE_GENERIC_2", "LARGE_GENERIC_V2", "LARGE_GENERIC_V3", "LARGE_GENERIC_V4", "LARGE_GENERIC_V5", "COHERE_H100_X1", "COHERE_A100_80G_X1", "COHERE_A100_40G_X1", "COHERE_A10_X1", "LARGE_COHERE_V3", "RERANK_COHERE", "SMALL_GENERIC_V1", "MEDIUM_GENERIC_V1", "LARGE_GENERIC_V1", "A10_X1", "A10_X2", "A10_X4", "A100_40G_X1", "A100_40G_X2", "A100_40G_X4", "A100_40G_X8", "A100_80G_X1", "A100_80G_X2", "A100_80G_X4", "A100_80G_X8", "H100_X1", "H100_X2", "H100_X4", "H100_X8", "H200_X1", "H200_X2", "H200_X4", "H200_X8", "OAI_A10_X2", "OAI_H100_X1", "OAI_H100_X2", "OAI_H200_X1", "OAI_A100_80G_X1", "OAI_A100_80G_X2", "OAI_A100_40G_X1", "OAI_A100_40G_X4", "B200_X1", "B200_X2", "B200_X4", "B200_X8", "OAI_B200_X1", "OAI_B200_X2", "OAI_B200_X4", "OAI_B200_X8", "SB_B200_X1", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type unit_shape: str @@ -656,7 +692,7 @@ def unit_shape(self): **[Required]** Gets the unit_shape of this DedicatedAiCluster. The shape of dedicated unit in this AI cluster. The underlying hardware configuration is hidden from customers. - Allowed values for this property are: "LARGE_COHERE", "LARGE_COHERE_V2", "SMALL_COHERE", "SMALL_COHERE_V2", "SMALL_COHERE_4", "EMBED_COHERE", "LLAMA2_70", "LARGE_GENERIC", "LARGE_COHERE_V2_2", "LARGE_GENERIC_4", "SMALL_GENERIC_V2", "LARGE_GENERIC_2", "LARGE_GENERIC_V2", "LARGE_GENERIC_V3", "LARGE_GENERIC_V4", "LARGE_GENERIC_V5", "COHERE_H100_X1", "COHERE_A100_80G_X1", "COHERE_A100_40G_X1", "COHERE_A10_X1", "LARGE_COHERE_V3", "RERANK_COHERE", "SMALL_GENERIC_V1", "MEDIUM_GENERIC_V1", "LARGE_GENERIC_V1", "A10_X1", "A10_X2", "A10_X4", "A100_40G_X1", "A100_40G_X2", "A100_40G_X4", "A100_40G_X8", "A100_80G_X1", "A100_80G_X2", "A100_80G_X4", "A100_80G_X8", "H100_X1", "H100_X2", "H100_X4", "H100_X8", "H200_X1", "H200_X2", "H200_X4", "H200_X8", "OAI_A10_X2", "OAI_H100_X1", "OAI_H100_X2", "OAI_H200_X1", "OAI_A100_80G_X1", "OAI_A100_80G_X2", "OAI_A100_40G_X1", "OAI_A100_40G_X4", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "LARGE_COHERE", "LARGE_COHERE_V2", "SMALL_COHERE", "SMALL_COHERE_V2", "SMALL_COHERE_4", "EMBED_COHERE", "LLAMA2_70", "LARGE_GENERIC", "LARGE_COHERE_V2_2", "LARGE_GENERIC_4", "SMALL_GENERIC_V2", "LARGE_GENERIC_2", "LARGE_GENERIC_V2", "LARGE_GENERIC_V3", "LARGE_GENERIC_V4", "LARGE_GENERIC_V5", "COHERE_H100_X1", "COHERE_A100_80G_X1", "COHERE_A100_40G_X1", "COHERE_A10_X1", "LARGE_COHERE_V3", "RERANK_COHERE", "SMALL_GENERIC_V1", "MEDIUM_GENERIC_V1", "LARGE_GENERIC_V1", "A10_X1", "A10_X2", "A10_X4", "A100_40G_X1", "A100_40G_X2", "A100_40G_X4", "A100_40G_X8", "A100_80G_X1", "A100_80G_X2", "A100_80G_X4", "A100_80G_X8", "H100_X1", "H100_X2", "H100_X4", "H100_X8", "H200_X1", "H200_X2", "H200_X4", "H200_X8", "OAI_A10_X2", "OAI_H100_X1", "OAI_H100_X2", "OAI_H200_X1", "OAI_A100_80G_X1", "OAI_A100_80G_X2", "OAI_A100_40G_X1", "OAI_A100_40G_X4", "B200_X1", "B200_X2", "B200_X4", "B200_X8", "OAI_B200_X1", "OAI_B200_X2", "OAI_B200_X4", "OAI_B200_X8", "SB_B200_X1", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -675,7 +711,7 @@ def unit_shape(self, unit_shape): :param unit_shape: The unit_shape of this DedicatedAiCluster. :type: str """ - allowed_values = ["LARGE_COHERE", "LARGE_COHERE_V2", "SMALL_COHERE", "SMALL_COHERE_V2", "SMALL_COHERE_4", "EMBED_COHERE", "LLAMA2_70", "LARGE_GENERIC", "LARGE_COHERE_V2_2", "LARGE_GENERIC_4", "SMALL_GENERIC_V2", "LARGE_GENERIC_2", "LARGE_GENERIC_V2", "LARGE_GENERIC_V3", "LARGE_GENERIC_V4", "LARGE_GENERIC_V5", "COHERE_H100_X1", "COHERE_A100_80G_X1", "COHERE_A100_40G_X1", "COHERE_A10_X1", "LARGE_COHERE_V3", "RERANK_COHERE", "SMALL_GENERIC_V1", "MEDIUM_GENERIC_V1", "LARGE_GENERIC_V1", "A10_X1", "A10_X2", "A10_X4", "A100_40G_X1", "A100_40G_X2", "A100_40G_X4", "A100_40G_X8", "A100_80G_X1", "A100_80G_X2", "A100_80G_X4", "A100_80G_X8", "H100_X1", "H100_X2", "H100_X4", "H100_X8", "H200_X1", "H200_X2", "H200_X4", "H200_X8", "OAI_A10_X2", "OAI_H100_X1", "OAI_H100_X2", "OAI_H200_X1", "OAI_A100_80G_X1", "OAI_A100_80G_X2", "OAI_A100_40G_X1", "OAI_A100_40G_X4"] + allowed_values = ["LARGE_COHERE", "LARGE_COHERE_V2", "SMALL_COHERE", "SMALL_COHERE_V2", "SMALL_COHERE_4", "EMBED_COHERE", "LLAMA2_70", "LARGE_GENERIC", "LARGE_COHERE_V2_2", "LARGE_GENERIC_4", "SMALL_GENERIC_V2", "LARGE_GENERIC_2", "LARGE_GENERIC_V2", "LARGE_GENERIC_V3", "LARGE_GENERIC_V4", "LARGE_GENERIC_V5", "COHERE_H100_X1", "COHERE_A100_80G_X1", "COHERE_A100_40G_X1", "COHERE_A10_X1", "LARGE_COHERE_V3", "RERANK_COHERE", "SMALL_GENERIC_V1", "MEDIUM_GENERIC_V1", "LARGE_GENERIC_V1", "A10_X1", "A10_X2", "A10_X4", "A100_40G_X1", "A100_40G_X2", "A100_40G_X4", "A100_40G_X8", "A100_80G_X1", "A100_80G_X2", "A100_80G_X4", "A100_80G_X8", "H100_X1", "H100_X2", "H100_X4", "H100_X8", "H200_X1", "H200_X2", "H200_X4", "H200_X8", "OAI_A10_X2", "OAI_H100_X1", "OAI_H100_X2", "OAI_H200_X1", "OAI_A100_80G_X1", "OAI_A100_80G_X2", "OAI_A100_40G_X1", "OAI_A100_40G_X4", "B200_X1", "B200_X2", "B200_X4", "B200_X8", "OAI_B200_X1", "OAI_B200_X2", "OAI_B200_X4", "OAI_B200_X8", "SB_B200_X1"] if not value_allowed_none_or_none_sentinel(unit_shape, allowed_values): unit_shape = 'UNKNOWN_ENUM_VALUE' self._unit_shape = unit_shape diff --git a/src/oci/generative_ai/models/schema_item.py b/src/oci/generative_ai/models/schema_item.py index 345181bbf7..aa61c72971 100644 --- a/src/oci/generative_ai/models/schema_item.py +++ b/src/oci/generative_ai/models/schema_item.py @@ -37,6 +37,8 @@ def __init__(self, **kwargs): def name(self): """ **[Required]** Gets the name of this SchemaItem. + Specifies the name. + :return: The name of this SchemaItem. :rtype: str @@ -47,6 +49,8 @@ def name(self): def name(self, name): """ Sets the name of this SchemaItem. + Specifies the name. + :param name: The name of this SchemaItem. :type: str diff --git a/src/oci/identity_domains/identity_domains_client.py b/src/oci/identity_domains/identity_domains_client.py index 0563004f81..ad95e64158 100644 --- a/src/oci/identity_domains/identity_domains_client.py +++ b/src/oci/identity_domains/identity_domains_client.py @@ -23019,7 +23019,7 @@ def list_identity_propagation_trusts(self, **kwargs): resource_path = "/admin/v1/IdentityPropagationTrusts" method = "GET" operation_name = "list_identity_propagation_trusts" - api_reference_link = "https://docs.oracle.com/iaas/api/#/en/identity-domains/v1/IdentityPropagationTrusts/ListIdentityPropagationTrusts" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/identity-domains/v1/IdentityPropagationTrust/ListIdentityPropagationTrusts" # Don't accept unknown kwargs expected_kwargs = [ diff --git a/src/oci/identity_domains/models/__init__.py b/src/oci/identity_domains/models/__init__.py index 651c897c30..a8842aa136 100644 --- a/src/oci/identity_domains/models/__init__.py +++ b/src/oci/identity_domains/models/__init__.py @@ -222,6 +222,8 @@ from .identity_proofing_provider_templates import IdentityProofingProviderTemplates from .identity_proofing_providers import IdentityProofingProviders from .identity_propagation_trust import IdentityPropagationTrust +from .identity_propagation_trust_ca_cert_chain import IdentityPropagationTrustCaCertChain +from .identity_propagation_trust_claim_validations import IdentityPropagationTrustClaimValidations from .identity_propagation_trust_impersonation_service_users import IdentityPropagationTrustImpersonationServiceUsers from .identity_propagation_trust_keytab import IdentityPropagationTrustKeytab from .identity_propagation_trusts import IdentityPropagationTrusts @@ -706,6 +708,8 @@ "IdentityProofingProviderTemplates": IdentityProofingProviderTemplates, "IdentityProofingProviders": IdentityProofingProviders, "IdentityPropagationTrust": IdentityPropagationTrust, + "IdentityPropagationTrustCaCertChain": IdentityPropagationTrustCaCertChain, + "IdentityPropagationTrustClaimValidations": IdentityPropagationTrustClaimValidations, "IdentityPropagationTrustImpersonationServiceUsers": IdentityPropagationTrustImpersonationServiceUsers, "IdentityPropagationTrustKeytab": IdentityPropagationTrustKeytab, "IdentityPropagationTrusts": IdentityPropagationTrusts, diff --git a/src/oci/identity_domains/models/identity_propagation_trust.py b/src/oci/identity_domains/models/identity_propagation_trust.py index c9030e2515..37ceed7d5b 100644 --- a/src/oci/identity_domains/models/identity_propagation_trust.py +++ b/src/oci/identity_domains/models/identity_propagation_trust.py @@ -43,6 +43,10 @@ class IdentityPropagationTrust(object): #: This constant has a value of "AWS" TYPE_AWS = "AWS" + #: A constant which can be used with the type property of a IdentityPropagationTrust. + #: This constant has a value of "X509" + TYPE_X509 = "X509" + #: A constant which can be used with the subject_type property of a IdentityPropagationTrust. #: This constant has a value of "User" SUBJECT_TYPE_USER = "User" @@ -51,6 +55,10 @@ class IdentityPropagationTrust(object): #: This constant has a value of "App" SUBJECT_TYPE_APP = "App" + #: A constant which can be used with the subject_type property of a IdentityPropagationTrust. + #: This constant has a value of "Resource" + SUBJECT_TYPE_RESOURCE = "Resource" + def __init__(self, **kwargs): """ Initializes a new IdentityPropagationTrust object with values from keyword arguments. @@ -120,7 +128,7 @@ def __init__(self, **kwargs): :param type: The value to assign to the type property of this IdentityPropagationTrust. - Allowed values for this property are: "JWT", "SAML", "SPNEGO", "AWS", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "JWT", "SAML", "SPNEGO", "AWS", "X509", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type type: str @@ -142,7 +150,7 @@ def __init__(self, **kwargs): :param subject_type: The value to assign to the subject_type property of this IdentityPropagationTrust. - Allowed values for this property are: "User", "App", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "User", "App", "Resource", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type subject_type: str @@ -178,6 +186,22 @@ def __init__(self, **kwargs): The value to assign to the clock_skew_seconds property of this IdentityPropagationTrust. :type clock_skew_seconds: int + :param impersonating_resource: + The value to assign to the impersonating_resource property of this IdentityPropagationTrust. + :type impersonating_resource: str + + :param claim_validations: + The value to assign to the claim_validations property of this IdentityPropagationTrust. + :type claim_validations: list[oci.identity_domains.models.IdentityPropagationTrustClaimValidations] + + :param claim_propagations: + The value to assign to the claim_propagations property of this IdentityPropagationTrust. + :type claim_propagations: list[str] + + :param ca_cert_chain: + The value to assign to the ca_cert_chain property of this IdentityPropagationTrust. + :type ca_cert_chain: oci.identity_domains.models.IdentityPropagationTrustCaCertChain + :param impersonation_service_users: The value to assign to the impersonation_service_users property of this IdentityPropagationTrust. :type impersonation_service_users: list[oci.identity_domains.models.IdentityPropagationTrustImpersonationServiceUsers] @@ -217,6 +241,10 @@ def __init__(self, **kwargs): 'oauth_clients': 'list[str]', 'allow_impersonation': 'bool', 'clock_skew_seconds': 'int', + 'impersonating_resource': 'str', + 'claim_validations': 'list[IdentityPropagationTrustClaimValidations]', + 'claim_propagations': 'list[str]', + 'ca_cert_chain': 'IdentityPropagationTrustCaCertChain', 'impersonation_service_users': 'list[IdentityPropagationTrustImpersonationServiceUsers]', 'keytab': 'IdentityPropagationTrustKeytab' } @@ -250,6 +278,10 @@ def __init__(self, **kwargs): 'oauth_clients': 'oauthClients', 'allow_impersonation': 'allowImpersonation', 'clock_skew_seconds': 'clockSkewSeconds', + 'impersonating_resource': 'impersonatingResource', + 'claim_validations': 'claimValidations', + 'claim_propagations': 'claimPropagations', + 'ca_cert_chain': 'CACertChain', 'impersonation_service_users': 'impersonationServiceUsers', 'keytab': 'keytab' } @@ -282,6 +314,10 @@ def __init__(self, **kwargs): self._oauth_clients = None self._allow_impersonation = None self._clock_skew_seconds = None + self._impersonating_resource = None + self._claim_validations = None + self._claim_propagations = None + self._ca_cert_chain = None self._impersonation_service_users = None self._keytab = None @@ -893,7 +929,7 @@ def type(self): - multiValued: false - uniqueness: none - Allowed values for this property are: "JWT", "SAML", "SPNEGO", "AWS", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "JWT", "SAML", "SPNEGO", "AWS", "X509", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -922,7 +958,7 @@ def type(self, type): :param type: The type of this IdentityPropagationTrust. :type: str """ - allowed_values = ["JWT", "SAML", "SPNEGO", "AWS"] + allowed_values = ["JWT", "SAML", "SPNEGO", "AWS", "X509"] if not value_allowed_none_or_none_sentinel(type, allowed_values): type = 'UNKNOWN_ENUM_VALUE' self._type = type @@ -1116,7 +1152,7 @@ def subject_type(self): - type: string - uniqueness: none - Allowed values for this property are: "User", "App", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "User", "App", "Resource", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -1144,7 +1180,7 @@ def subject_type(self, subject_type): :param subject_type: The subject_type of this IdentityPropagationTrust. :type: str """ - allowed_values = ["User", "App"] + allowed_values = ["User", "App", "Resource"] if not value_allowed_none_or_none_sentinel(subject_type, allowed_values): subject_type = 'UNKNOWN_ENUM_VALUE' self._subject_type = subject_type @@ -1495,6 +1531,168 @@ def clock_skew_seconds(self, clock_skew_seconds): """ self._clock_skew_seconds = clock_skew_seconds + @property + def impersonating_resource(self): + """ + Gets the impersonating_resource of this IdentityPropagationTrust. + Defines the external workload that acts as impersonating resource principal. + + **Added In:** 2509172316 + + **SCIM++ Properties:** + - type: string + - multiValued: false + - required: false + - mutability: readWrite + - returned: default + - uniqueness: none + - caseExact: true + - idcsSearchable: false + + + :return: The impersonating_resource of this IdentityPropagationTrust. + :rtype: str + """ + return self._impersonating_resource + + @impersonating_resource.setter + def impersonating_resource(self, impersonating_resource): + """ + Sets the impersonating_resource of this IdentityPropagationTrust. + Defines the external workload that acts as impersonating resource principal. + + **Added In:** 2509172316 + + **SCIM++ Properties:** + - type: string + - multiValued: false + - required: false + - mutability: readWrite + - returned: default + - uniqueness: none + - caseExact: true + - idcsSearchable: false + + + :param impersonating_resource: The impersonating_resource of this IdentityPropagationTrust. + :type: str + """ + self._impersonating_resource = impersonating_resource + + @property + def claim_validations(self): + """ + Gets the claim_validations of this IdentityPropagationTrust. + A list of claim validations + + **Added In:** 2509172316 + + **SCIM++ Properties:** + - idcsCompositeKey: [name] + - idcsSearchable: false + - multiValued: true + - mutability: readWrite + - required: false + - returned: default + - type: complex + - uniqueness: none + + + :return: The claim_validations of this IdentityPropagationTrust. + :rtype: list[oci.identity_domains.models.IdentityPropagationTrustClaimValidations] + """ + return self._claim_validations + + @claim_validations.setter + def claim_validations(self, claim_validations): + """ + Sets the claim_validations of this IdentityPropagationTrust. + A list of claim validations + + **Added In:** 2509172316 + + **SCIM++ Properties:** + - idcsCompositeKey: [name] + - idcsSearchable: false + - multiValued: true + - mutability: readWrite + - required: false + - returned: default + - type: complex + - uniqueness: none + + + :param claim_validations: The claim_validations of this IdentityPropagationTrust. + :type: list[oci.identity_domains.models.IdentityPropagationTrustClaimValidations] + """ + self._claim_validations = claim_validations + + @property + def claim_propagations(self): + """ + Gets the claim_propagations of this IdentityPropagationTrust. + A list of claims to propagate in RPST + + **Added In:** 2509172316 + + **SCIM++ Properties:** + - idcsSearchable: false + - multiValued: true + - mutability: readWrite + - required: false + - returned: default + - type: string + - uniqueness: none + + + :return: The claim_propagations of this IdentityPropagationTrust. + :rtype: list[str] + """ + return self._claim_propagations + + @claim_propagations.setter + def claim_propagations(self, claim_propagations): + """ + Sets the claim_propagations of this IdentityPropagationTrust. + A list of claims to propagate in RPST + + **Added In:** 2509172316 + + **SCIM++ Properties:** + - idcsSearchable: false + - multiValued: true + - mutability: readWrite + - required: false + - returned: default + - type: string + - uniqueness: none + + + :param claim_propagations: The claim_propagations of this IdentityPropagationTrust. + :type: list[str] + """ + self._claim_propagations = claim_propagations + + @property + def ca_cert_chain(self): + """ + Gets the ca_cert_chain of this IdentityPropagationTrust. + + :return: The ca_cert_chain of this IdentityPropagationTrust. + :rtype: oci.identity_domains.models.IdentityPropagationTrustCaCertChain + """ + return self._ca_cert_chain + + @ca_cert_chain.setter + def ca_cert_chain(self, ca_cert_chain): + """ + Sets the ca_cert_chain of this IdentityPropagationTrust. + + :param ca_cert_chain: The ca_cert_chain of this IdentityPropagationTrust. + :type: oci.identity_domains.models.IdentityPropagationTrustCaCertChain + """ + self._ca_cert_chain = ca_cert_chain + @property def impersonation_service_users(self): """ diff --git a/src/oci/identity_domains/models/identity_propagation_trust_ca_cert_chain.py b/src/oci/identity_domains/models/identity_propagation_trust_ca_cert_chain.py new file mode 100644 index 0000000000..0db96e4bc8 --- /dev/null +++ b/src/oci/identity_domains/models/identity_propagation_trust_ca_cert_chain.py @@ -0,0 +1,156 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: v1 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class IdentityPropagationTrustCaCertChain(object): + """ + Certificate trust store. This is required if identity propagation type is X509. + + **Added In:** 2508041610 + + **SCIM++ Properties:** + - caseExact: true + - type: complex + - multiValued: false + - required: false + - mutability: readWrite + - returned: default + - uniqueness: none + """ + + def __init__(self, **kwargs): + """ + Initializes a new IdentityPropagationTrustCaCertChain object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param root_c_as: + The value to assign to the root_c_as property of this IdentityPropagationTrustCaCertChain. + :type root_c_as: list[str] + + :param intermediate_c_as: + The value to assign to the intermediate_c_as property of this IdentityPropagationTrustCaCertChain. + :type intermediate_c_as: list[str] + + """ + self.swagger_types = { + 'root_c_as': 'list[str]', + 'intermediate_c_as': 'list[str]' + } + self.attribute_map = { + 'root_c_as': 'rootCAs', + 'intermediate_c_as': 'intermediateCAs' + } + self._root_c_as = None + self._intermediate_c_as = None + + @property + def root_c_as(self): + """ + **[Required]** Gets the root_c_as of this IdentityPropagationTrustCaCertChain. + A list of PEM-encoded root CA certificates. + + **Added In:** 2508041610 + + **SCIM++ Properties:** + - caseExact: true + - type: string + - multiValued: true + - required: true + - mutability: readWrite + - returned: default + - uniqueness: none + + + :return: The root_c_as of this IdentityPropagationTrustCaCertChain. + :rtype: list[str] + """ + return self._root_c_as + + @root_c_as.setter + def root_c_as(self, root_c_as): + """ + Sets the root_c_as of this IdentityPropagationTrustCaCertChain. + A list of PEM-encoded root CA certificates. + + **Added In:** 2508041610 + + **SCIM++ Properties:** + - caseExact: true + - type: string + - multiValued: true + - required: true + - mutability: readWrite + - returned: default + - uniqueness: none + + + :param root_c_as: The root_c_as of this IdentityPropagationTrustCaCertChain. + :type: list[str] + """ + self._root_c_as = root_c_as + + @property + def intermediate_c_as(self): + """ + Gets the intermediate_c_as of this IdentityPropagationTrustCaCertChain. + A list of PEM-encoded intermediate CA certificates. + + **Added In:** 2508041610 + + **SCIM++ Properties:** + - caseExact: true + - type: string + - multiValued: true + - required: false + - mutability: readWrite + - returned: default + - uniqueness: none + + + :return: The intermediate_c_as of this IdentityPropagationTrustCaCertChain. + :rtype: list[str] + """ + return self._intermediate_c_as + + @intermediate_c_as.setter + def intermediate_c_as(self, intermediate_c_as): + """ + Sets the intermediate_c_as of this IdentityPropagationTrustCaCertChain. + A list of PEM-encoded intermediate CA certificates. + + **Added In:** 2508041610 + + **SCIM++ Properties:** + - caseExact: true + - type: string + - multiValued: true + - required: false + - mutability: readWrite + - returned: default + - uniqueness: none + + + :param intermediate_c_as: The intermediate_c_as of this IdentityPropagationTrustCaCertChain. + :type: list[str] + """ + self._intermediate_c_as = intermediate_c_as + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/identity_domains/models/identity_propagation_trust_claim_validations.py b/src/oci/identity_domains/models/identity_propagation_trust_claim_validations.py new file mode 100644 index 0000000000..837e349a61 --- /dev/null +++ b/src/oci/identity_domains/models/identity_propagation_trust_claim_validations.py @@ -0,0 +1,149 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: v1 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class IdentityPropagationTrustClaimValidations(object): + """ + A list of claim validations + """ + + def __init__(self, **kwargs): + """ + Initializes a new IdentityPropagationTrustClaimValidations object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this IdentityPropagationTrustClaimValidations. + :type name: str + + :param value: + The value to assign to the value property of this IdentityPropagationTrustClaimValidations. + :type value: str + + """ + self.swagger_types = { + 'name': 'str', + 'value': 'str' + } + self.attribute_map = { + 'name': 'name', + 'value': 'value' + } + self._name = None + self._value = None + + @property + def name(self): + """ + **[Required]** Gets the name of this IdentityPropagationTrustClaimValidations. + Claim Name + + **Added In:** 2509172316 + + **SCIM++ Properties:** + - caseExact: true + - idcsSearchable: false + - multiValued: false + - mutability: readWrite + - required: true + - returned: default + - type: string + - uniqueness: none + + + :return: The name of this IdentityPropagationTrustClaimValidations. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this IdentityPropagationTrustClaimValidations. + Claim Name + + **Added In:** 2509172316 + + **SCIM++ Properties:** + - caseExact: true + - idcsSearchable: false + - multiValued: false + - mutability: readWrite + - required: true + - returned: default + - type: string + - uniqueness: none + + + :param name: The name of this IdentityPropagationTrustClaimValidations. + :type: str + """ + self._name = name + + @property + def value(self): + """ + **[Required]** Gets the value of this IdentityPropagationTrustClaimValidations. + Claim Value + + **Added In:** 2509172316 + + **SCIM++ Properties:** + - caseExact: true + - idcsSearchable: false + - multiValued: false + - mutability: readWrite + - required: true + - returned: default + - type: string + - uniqueness: none + + + :return: The value of this IdentityPropagationTrustClaimValidations. + :rtype: str + """ + return self._value + + @value.setter + def value(self, value): + """ + Sets the value of this IdentityPropagationTrustClaimValidations. + Claim Value + + **Added In:** 2509172316 + + **SCIM++ Properties:** + - caseExact: true + - idcsSearchable: false + - multiValued: false + - mutability: readWrite + - required: true + - returned: default + - type: string + - uniqueness: none + + + :param value: The value of this IdentityPropagationTrustClaimValidations. + :type: str + """ + self._value = value + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/managed_kafka/kafka_cluster_client.py b/src/oci/managed_kafka/kafka_cluster_client.py index 4499d75a23..d715434fbb 100644 --- a/src/oci/managed_kafka/kafka_cluster_client.py +++ b/src/oci/managed_kafka/kafka_cluster_client.py @@ -1313,6 +1313,120 @@ def enable_superuser(self, kafka_cluster_id, enable_superuser_details, **kwargs) api_reference_link=api_reference_link, required_arguments=required_arguments) + def get_addon(self, kafka_cluster_id, addon_name, **kwargs): + """ + Gets information about a KafkaClusterAddon. + + + :param str kafka_cluster_id: (required) + The `OCID`__ of the KafkaCluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str addon_name: (required) + The unique name of the KafkaClusterAddon. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.managed_kafka.models.KafkaClusterAddon` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_addon API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['kafkaClusterId', 'addonName'] + resource_path = "/kafkaClusters/{kafkaClusterId}/addons/{addonName}" + method = "GET" + operation_name = "get_addon" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/kafka/20240901/KafkaClusterAddon/GetAddon" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"get_addon got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "kafkaClusterId": kafka_cluster_id, + "addonName": addon_name + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="KafkaClusterAddon", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="KafkaClusterAddon", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + def get_kafka_cluster(self, kafka_cluster_id, **kwargs): """ Gets information about a KafkaCluster. @@ -1702,10 +1816,451 @@ def get_work_request(self, work_request_id, **kwargs): extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] if extra_kwargs: raise ValueError( - f"get_work_request got unknown kwargs: {extra_kwargs!r}") + f"get_work_request got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "workRequestId": work_request_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="WorkRequest", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="WorkRequest", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def install_addon(self, install_addon_details, kafka_cluster_id, **kwargs): + """ + Installs a KafkaClusterAddon. + + + :param oci.managed_kafka.models.InstallAddonDetails install_addon_details: (required) + Details for the new KafkaClusterAddon. + + :param str kafka_cluster_id: (required) + The `OCID`__ of the KafkaCluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of running that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and removed from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the + `if-match` parameter to the value of the etag from a previous GET or POST response for + that resource. The resource will be updated or deleted only if the etag you provide + matches the resource's current etag value. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.managed_kafka.models.KafkaClusterAddon` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use install_addon API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['kafkaClusterId'] + resource_path = "/kafkaClusters/{kafkaClusterId}/addons" + method = "POST" + operation_name = "install_addon" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/kafka/20240901/KafkaCluster/InstallAddon" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_retry_token", + "opc_request_id", + "if_match" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"install_addon got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "kafkaClusterId": kafka_cluster_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=install_addon_details, + response_type="KafkaClusterAddon", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=install_addon_details, + response_type="KafkaClusterAddon", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_addon_options(self, **kwargs): + """ + Gets a list of supported KafkaClusterAddons. + + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param str compartment_id: (optional) + The `OCID`__ of the compartment in which to list resources. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param int limit: (optional) + For list pagination. The maximum number of results per page, or items to return in a + paginated \"List\" call. For important details about how pagination works, see + `List Pagination`__. + + __ https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param str page: (optional) + For list pagination. The value of the opc-next-page response header from the previous + \"List\" call. For important details about how pagination works, see + `List Pagination`__. + + __ https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param str name: (optional) + The name to filter on. + + :param str sort_order: (optional) + The sort order to use, either ascending (`ASC`) or descending (`DESC`). + + Allowed values are: "ASC", "DESC" + + :param str sort_by: (optional) + The field to sort by. You can provide only one sort order. Default order for `timeCreated` + is descending. + + Allowed values are: "timeCreated" + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.managed_kafka.models.AddonOptionCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_addon_options API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = [] + resource_path = "/addonOptions" + method = "GET" + operation_name = "list_addon_options" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/kafka/20240901/AddonOptionCollection/ListAddonOptions" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id", + "compartment_id", + "limit", + "page", + "name", + "sort_order", + "sort_by" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_addon_options got unknown kwargs: {extra_kwargs!r}") + + if 'sort_order' in kwargs: + sort_order_allowed_values = ["ASC", "DESC"] + if kwargs['sort_order'] not in sort_order_allowed_values: + raise ValueError( + f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + ) + + if 'sort_by' in kwargs: + sort_by_allowed_values = ["timeCreated"] + if kwargs['sort_by'] not in sort_by_allowed_values: + raise ValueError( + f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" + ) + + query_params = { + "compartmentId": kwargs.get("compartment_id", missing), + "limit": kwargs.get("limit", missing), + "page": kwargs.get("page", missing), + "name": kwargs.get("name", missing), + "sortOrder": kwargs.get("sort_order", missing), + "sortBy": kwargs.get("sort_by", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="AddonOptionCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="AddonOptionCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_addons(self, kafka_cluster_id, **kwargs): + """ + Gets a list of KafkaClusterAddons. + + + :param str kafka_cluster_id: (required) + The `OCID`__ of the KafkaCluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param str lifecycle_state: (optional) + A filter to return only resources that match the given lifecycle state. The + state value is case-insensitive. + + Allowed values are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED" + + :param int limit: (optional) + For list pagination. The maximum number of results per page, or items to return in a + paginated \"List\" call. For important details about how pagination works, see + `List Pagination`__. + + __ https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param str page: (optional) + For list pagination. The value of the opc-next-page response header from the previous + \"List\" call. For important details about how pagination works, see + `List Pagination`__. + + __ https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param str name: (optional) + The name to filter on. + + :param str sort_order: (optional) + The sort order to use, either ascending (`ASC`) or descending (`DESC`). + + Allowed values are: "ASC", "DESC" + + :param str sort_by: (optional) + The field to sort by. You can provide only one sort order. Default order for `timeCreated` + is descending. + + Allowed values are: "timeCreated" + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.managed_kafka.models.AddonCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_addons API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['kafkaClusterId'] + resource_path = "/kafkaClusters/{kafkaClusterId}/addons" + method = "GET" + operation_name = "list_addons" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/kafka/20240901/KafkaCluster/ListAddons" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id", + "lifecycle_state", + "limit", + "page", + "name", + "sort_order", + "sort_by" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_addons got unknown kwargs: {extra_kwargs!r}") path_params = { - "workRequestId": work_request_id + "kafkaClusterId": kafka_cluster_id } path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} @@ -1714,6 +2269,37 @@ def get_work_request(self, work_request_id, **kwargs): if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + if 'lifecycle_state' in kwargs: + lifecycle_state_allowed_values = ["CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED"] + if kwargs['lifecycle_state'] not in lifecycle_state_allowed_values: + raise ValueError( + f"Invalid value for `lifecycle_state`, must be one of { lifecycle_state_allowed_values }" + ) + + if 'sort_order' in kwargs: + sort_order_allowed_values = ["ASC", "DESC"] + if kwargs['sort_order'] not in sort_order_allowed_values: + raise ValueError( + f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + ) + + if 'sort_by' in kwargs: + sort_by_allowed_values = ["timeCreated"] + if kwargs['sort_by'] not in sort_by_allowed_values: + raise ValueError( + f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" + ) + + query_params = { + "lifecycleState": kwargs.get("lifecycle_state", missing), + "limit": kwargs.get("limit", missing), + "page": kwargs.get("page", missing), + "name": kwargs.get("name", missing), + "sortOrder": kwargs.get("sort_order", missing), + "sortBy": kwargs.get("sort_by", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + header_params = { "accept": "application/json", "content-type": "application/json", @@ -1737,8 +2323,9 @@ def get_work_request(self, work_request_id, **kwargs): resource_path=resource_path, method=method, path_params=path_params, + query_params=query_params, header_params=header_params, - response_type="WorkRequest", + response_type="AddonCollection", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, @@ -1749,8 +2336,9 @@ def get_work_request(self, work_request_id, **kwargs): resource_path=resource_path, method=method, path_params=path_params, + query_params=query_params, header_params=header_params, - response_type="WorkRequest", + response_type="AddonCollection", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, @@ -2942,6 +3530,253 @@ def list_work_requests(self, **kwargs): api_reference_link=api_reference_link, required_arguments=required_arguments) + def uninstall_addon(self, kafka_cluster_id, addon_name, **kwargs): + """ + Uninstalls a KafkaClusterAddon in a provisioned cluster. + + + :param str kafka_cluster_id: (required) + The `OCID`__ of the KafkaCluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str addon_name: (required) + The unique name of the KafkaClusterAddon. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the + `if-match` parameter to the value of the etag from a previous GET or POST response for + that resource. The resource will be updated or deleted only if the etag you provide + matches the resource's current etag value. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use uninstall_addon API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['kafkaClusterId', 'addonName'] + resource_path = "/kafkaClusters/{kafkaClusterId}/addons/{addonName}" + method = "DELETE" + operation_name = "uninstall_addon" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/kafka/20240901/KafkaCluster/UninstallAddon" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"uninstall_addon got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "kafkaClusterId": kafka_cluster_id, + "addonName": addon_name + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def update_addon(self, update_addon_details, kafka_cluster_id, addon_name, **kwargs): + """ + Installs updates on the existing KafkaClusterAddon. + + + :param oci.managed_kafka.models.UpdateAddonDetails update_addon_details: (required) + The information to be updated. + + :param str kafka_cluster_id: (required) + The `OCID`__ of the KafkaCluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str addon_name: (required) + The unique name of the KafkaClusterAddon. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the + `if-match` parameter to the value of the etag from a previous GET or POST response for + that resource. The resource will be updated or deleted only if the etag you provide + matches the resource's current etag value. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.managed_kafka.models.KafkaClusterAddon` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use update_addon API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['kafkaClusterId', 'addonName'] + resource_path = "/kafkaClusters/{kafkaClusterId}/addons/{addonName}" + method = "PUT" + operation_name = "update_addon" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/kafka/20240901/KafkaCluster/UpdateAddon" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"update_addon got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "kafkaClusterId": kafka_cluster_id, + "addonName": addon_name + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=update_addon_details, + response_type="KafkaClusterAddon", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=update_addon_details, + response_type="KafkaClusterAddon", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + def update_kafka_cluster(self, kafka_cluster_id, update_kafka_cluster_details, **kwargs): """ Updates a KafkaCluster. diff --git a/src/oci/managed_kafka/kafka_cluster_client_composite_operations.py b/src/oci/managed_kafka/kafka_cluster_client_composite_operations.py index e8c43dec5c..a86ad16ac2 100644 --- a/src/oci/managed_kafka/kafka_cluster_client_composite_operations.py +++ b/src/oci/managed_kafka/kafka_cluster_client_composite_operations.py @@ -345,6 +345,97 @@ def enable_superuser_and_wait_for_state(self, kafka_cluster_id, enable_superuser except Exception as e: raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def install_addon_and_wait_for_state(self, install_addon_details, kafka_cluster_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.managed_kafka.KafkaClusterClient.install_addon` and waits for the :py:class:`~oci.managed_kafka.models.WorkRequest` + to enter the given state(s). + + :param oci.managed_kafka.models.InstallAddonDetails install_addon_details: (required) + Details for the new KafkaClusterAddon. + + :param str kafka_cluster_id: (required) + The `OCID`__ of the KafkaCluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.managed_kafka.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.managed_kafka.KafkaClusterClient.install_addon` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.install_addon(install_addon_details, kafka_cluster_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def update_addon_and_wait_for_state(self, update_addon_details, kafka_cluster_id, addon_name, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.managed_kafka.KafkaClusterClient.update_addon` and waits for the :py:class:`~oci.managed_kafka.models.WorkRequest` + to enter the given state(s). + + :param oci.managed_kafka.models.UpdateAddonDetails update_addon_details: (required) + The information to be updated. + + :param str kafka_cluster_id: (required) + The `OCID`__ of the KafkaCluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str addon_name: (required) + The unique name of the KafkaClusterAddon. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.managed_kafka.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.managed_kafka.KafkaClusterClient.update_addon` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.update_addon(update_addon_details, kafka_cluster_id, addon_name, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def update_kafka_cluster_and_wait_for_state(self, kafka_cluster_id, update_kafka_cluster_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): """ Calls :py:func:`~oci.managed_kafka.KafkaClusterClient.update_kafka_cluster` and waits for the :py:class:`~oci.managed_kafka.models.WorkRequest` diff --git a/src/oci/managed_kafka/models/__init__.py b/src/oci/managed_kafka/models/__init__.py index 5253c21ce6..0885d695b9 100644 --- a/src/oci/managed_kafka/models/__init__.py +++ b/src/oci/managed_kafka/models/__init__.py @@ -6,6 +6,10 @@ from __future__ import absolute_import +from .addon_collection import AddonCollection +from .addon_option_collection import AddonOptionCollection +from .addon_option_summary import AddonOptionSummary +from .addon_summary import AddonSummary from .bootstrap_url import BootstrapUrl from .broker_shape import BrokerShape from .change_kafka_cluster_compartment_details import ChangeKafkaClusterCompartmentDetails @@ -13,7 +17,10 @@ from .create_kafka_cluster_config_details import CreateKafkaClusterConfigDetails from .create_kafka_cluster_details import CreateKafkaClusterDetails from .enable_superuser_details import EnableSuperuserDetails +from .install_addon_details import InstallAddonDetails +from .install_public_connectivity_addon_details import InstallPublicConnectivityAddonDetails from .kafka_cluster import KafkaCluster +from .kafka_cluster_addon import KafkaClusterAddon from .kafka_cluster_collection import KafkaClusterCollection from .kafka_cluster_config import KafkaClusterConfig from .kafka_cluster_config_collection import KafkaClusterConfigCollection @@ -24,9 +31,12 @@ from .kafka_cluster_summary import KafkaClusterSummary from .node_shape_collection import NodeShapeCollection from .node_shape_summary import NodeShapeSummary +from .public_connectivity_addon import PublicConnectivityAddon from .subnet_set import SubnetSet +from .update_addon_details import UpdateAddonDetails from .update_kafka_cluster_config_details import UpdateKafkaClusterConfigDetails from .update_kafka_cluster_details import UpdateKafkaClusterDetails +from .update_public_connectivity_addon_details import UpdatePublicConnectivityAddonDetails from .work_request import WorkRequest from .work_request_error import WorkRequestError from .work_request_error_collection import WorkRequestErrorCollection @@ -38,6 +48,10 @@ # Maps type names to classes for managed_kafka services. managed_kafka_type_mapping = { + "AddonCollection": AddonCollection, + "AddonOptionCollection": AddonOptionCollection, + "AddonOptionSummary": AddonOptionSummary, + "AddonSummary": AddonSummary, "BootstrapUrl": BootstrapUrl, "BrokerShape": BrokerShape, "ChangeKafkaClusterCompartmentDetails": ChangeKafkaClusterCompartmentDetails, @@ -45,7 +59,10 @@ "CreateKafkaClusterConfigDetails": CreateKafkaClusterConfigDetails, "CreateKafkaClusterDetails": CreateKafkaClusterDetails, "EnableSuperuserDetails": EnableSuperuserDetails, + "InstallAddonDetails": InstallAddonDetails, + "InstallPublicConnectivityAddonDetails": InstallPublicConnectivityAddonDetails, "KafkaCluster": KafkaCluster, + "KafkaClusterAddon": KafkaClusterAddon, "KafkaClusterCollection": KafkaClusterCollection, "KafkaClusterConfig": KafkaClusterConfig, "KafkaClusterConfigCollection": KafkaClusterConfigCollection, @@ -56,9 +73,12 @@ "KafkaClusterSummary": KafkaClusterSummary, "NodeShapeCollection": NodeShapeCollection, "NodeShapeSummary": NodeShapeSummary, + "PublicConnectivityAddon": PublicConnectivityAddon, "SubnetSet": SubnetSet, + "UpdateAddonDetails": UpdateAddonDetails, "UpdateKafkaClusterConfigDetails": UpdateKafkaClusterConfigDetails, "UpdateKafkaClusterDetails": UpdateKafkaClusterDetails, + "UpdatePublicConnectivityAddonDetails": UpdatePublicConnectivityAddonDetails, "WorkRequest": WorkRequest, "WorkRequestError": WorkRequestError, "WorkRequestErrorCollection": WorkRequestErrorCollection, diff --git a/src/oci/managed_kafka/models/addon_collection.py b/src/oci/managed_kafka/models/addon_collection.py new file mode 100644 index 0000000000..e587441074 --- /dev/null +++ b/src/oci/managed_kafka/models/addon_collection.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20240901 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class AddonCollection(object): + """ + Results of a kafkaClusterAddon search. Contains both AddonSummary items and other information. + """ + + def __init__(self, **kwargs): + """ + Initializes a new AddonCollection object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this AddonCollection. + :type items: list[oci.managed_kafka.models.AddonSummary] + + """ + self.swagger_types = { + 'items': 'list[AddonSummary]' + } + self.attribute_map = { + 'items': 'items' + } + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this AddonCollection. + List of kafkaClusterAddons. + + + :return: The items of this AddonCollection. + :rtype: list[oci.managed_kafka.models.AddonSummary] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this AddonCollection. + List of kafkaClusterAddons. + + + :param items: The items of this AddonCollection. + :type: list[oci.managed_kafka.models.AddonSummary] + """ + self._items = items + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/managed_kafka/models/addon_option_collection.py b/src/oci/managed_kafka/models/addon_option_collection.py new file mode 100644 index 0000000000..7a2771ff3b --- /dev/null +++ b/src/oci/managed_kafka/models/addon_option_collection.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20240901 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class AddonOptionCollection(object): + """ + Results of a AddonOptions search. Contains AddonOptionSummary items + """ + + def __init__(self, **kwargs): + """ + Initializes a new AddonOptionCollection object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this AddonOptionCollection. + :type items: list[oci.managed_kafka.models.AddonOptionSummary] + + """ + self.swagger_types = { + 'items': 'list[AddonOptionSummary]' + } + self.attribute_map = { + 'items': 'items' + } + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this AddonOptionCollection. + List of kafka Cluster AddonOptions. + + + :return: The items of this AddonOptionCollection. + :rtype: list[oci.managed_kafka.models.AddonOptionSummary] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this AddonOptionCollection. + List of kafka Cluster AddonOptions. + + + :param items: The items of this AddonOptionCollection. + :type: list[oci.managed_kafka.models.AddonOptionSummary] + """ + self._items = items + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/managed_kafka/models/addon_option_summary.py b/src/oci/managed_kafka/models/addon_option_summary.py new file mode 100644 index 0000000000..cf6aa42d43 --- /dev/null +++ b/src/oci/managed_kafka/models/addon_option_summary.py @@ -0,0 +1,117 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20240901 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class AddonOptionSummary(object): + """ + Summary information about a AddonOptions. + """ + + #: A constant which can be used with the lifecycle_state property of a AddonOptionSummary. + #: This constant has a value of "ACTIVE" + LIFECYCLE_STATE_ACTIVE = "ACTIVE" + + #: A constant which can be used with the lifecycle_state property of a AddonOptionSummary. + #: This constant has a value of "INACTIVE" + LIFECYCLE_STATE_INACTIVE = "INACTIVE" + + def __init__(self, **kwargs): + """ + Initializes a new AddonOptionSummary object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this AddonOptionSummary. + :type name: str + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this AddonOptionSummary. + Allowed values for this property are: "ACTIVE", "INACTIVE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + """ + self.swagger_types = { + 'name': 'str', + 'lifecycle_state': 'str' + } + self.attribute_map = { + 'name': 'name', + 'lifecycle_state': 'lifecycleState' + } + self._name = None + self._lifecycle_state = None + + @property + def name(self): + """ + **[Required]** Gets the name of this AddonOptionSummary. + A user-friendly name. + + + :return: The name of this AddonOptionSummary. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this AddonOptionSummary. + A user-friendly name. + + + :param name: The name of this AddonOptionSummary. + :type: str + """ + self._name = name + + @property + def lifecycle_state(self): + """ + **[Required]** Gets the lifecycle_state of this AddonOptionSummary. + The current state of the KafkaClusterAddon. + + Allowed values for this property are: "ACTIVE", "INACTIVE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this AddonOptionSummary. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this AddonOptionSummary. + The current state of the KafkaClusterAddon. + + + :param lifecycle_state: The lifecycle_state of this AddonOptionSummary. + :type: str + """ + allowed_values = ["ACTIVE", "INACTIVE"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/managed_kafka/models/addon_summary.py b/src/oci/managed_kafka/models/addon_summary.py new file mode 100644 index 0000000000..3736d4f239 --- /dev/null +++ b/src/oci/managed_kafka/models/addon_summary.py @@ -0,0 +1,247 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20240901 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class AddonSummary(object): + """ + Summary information about a KafkaClusterAddon. + """ + + def __init__(self, **kwargs): + """ + Initializes a new AddonSummary object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this AddonSummary. + :type name: str + + :param time_created: + The value to assign to the time_created property of this AddonSummary. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this AddonSummary. + :type time_updated: datetime + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this AddonSummary. + :type lifecycle_state: str + + :param lifecycle_details: + The value to assign to the lifecycle_details property of this AddonSummary. + :type lifecycle_details: str + + :param addon_type: + The value to assign to the addon_type property of this AddonSummary. + :type addon_type: str + + """ + self.swagger_types = { + 'name': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'lifecycle_state': 'str', + 'lifecycle_details': 'str', + 'addon_type': 'str' + } + self.attribute_map = { + 'name': 'name', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'lifecycle_state': 'lifecycleState', + 'lifecycle_details': 'lifecycleDetails', + 'addon_type': 'addonType' + } + self._name = None + self._time_created = None + self._time_updated = None + self._lifecycle_state = None + self._lifecycle_details = None + self._addon_type = None + + @property + def name(self): + """ + **[Required]** Gets the name of this AddonSummary. + A user-friendly name. + + + :return: The name of this AddonSummary. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this AddonSummary. + A user-friendly name. + + + :param name: The name of this AddonSummary. + :type: str + """ + self._name = name + + @property + def time_created(self): + """ + Gets the time_created of this AddonSummary. + The date and time the KafkaClusterAddon was created, in the format defined by + `RFC 3339`__. + + Example: `2016-08-25T21:10:29.600Z` + + __ https://tools.ietf.org/html/rfc3339 + + + :return: The time_created of this AddonSummary. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this AddonSummary. + The date and time the KafkaClusterAddon was created, in the format defined by + `RFC 3339`__. + + Example: `2016-08-25T21:10:29.600Z` + + __ https://tools.ietf.org/html/rfc3339 + + + :param time_created: The time_created of this AddonSummary. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + Gets the time_updated of this AddonSummary. + The date and time the KafkaClusterAddon was updated, in the format defined by + `RFC 3339`__. + + Example: `2016-08-25T21:10:29.600Z` + + __ https://tools.ietf.org/html/rfc3339 + + + :return: The time_updated of this AddonSummary. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this AddonSummary. + The date and time the KafkaClusterAddon was updated, in the format defined by + `RFC 3339`__. + + Example: `2016-08-25T21:10:29.600Z` + + __ https://tools.ietf.org/html/rfc3339 + + + :param time_updated: The time_updated of this AddonSummary. + :type: datetime + """ + self._time_updated = time_updated + + @property + def lifecycle_state(self): + """ + **[Required]** Gets the lifecycle_state of this AddonSummary. + The current state of the KafkaClusterAddon. + + + :return: The lifecycle_state of this AddonSummary. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this AddonSummary. + The current state of the KafkaClusterAddon. + + + :param lifecycle_state: The lifecycle_state of this AddonSummary. + :type: str + """ + self._lifecycle_state = lifecycle_state + + @property + def lifecycle_details(self): + """ + Gets the lifecycle_details of this AddonSummary. + A message that describes the current state of the KafkaClusterAddon in more detail. For example, + can be used to provide actionable information for a resource in the Failed state. + + + :return: The lifecycle_details of this AddonSummary. + :rtype: str + """ + return self._lifecycle_details + + @lifecycle_details.setter + def lifecycle_details(self, lifecycle_details): + """ + Sets the lifecycle_details of this AddonSummary. + A message that describes the current state of the KafkaClusterAddon in more detail. For example, + can be used to provide actionable information for a resource in the Failed state. + + + :param lifecycle_details: The lifecycle_details of this AddonSummary. + :type: str + """ + self._lifecycle_details = lifecycle_details + + @property + def addon_type(self): + """ + **[Required]** Gets the addon_type of this AddonSummary. + Addon Type + + + :return: The addon_type of this AddonSummary. + :rtype: str + """ + return self._addon_type + + @addon_type.setter + def addon_type(self, addon_type): + """ + Sets the addon_type of this AddonSummary. + Addon Type + + + :param addon_type: The addon_type of this AddonSummary. + :type: str + """ + self._addon_type = addon_type + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/managed_kafka/models/install_addon_details.py b/src/oci/managed_kafka/models/install_addon_details.py new file mode 100644 index 0000000000..578361dafa --- /dev/null +++ b/src/oci/managed_kafka/models/install_addon_details.py @@ -0,0 +1,149 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20240901 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class InstallAddonDetails(object): + """ + The data to create a KafkaClusterAddon. + """ + + def __init__(self, **kwargs): + """ + Initializes a new InstallAddonDetails object with values from keyword arguments. This class has the following subclasses and if you are using this class as input + to a service operations then you should favor using a subclass over the base class: + + * :class:`~oci.managed_kafka.models.InstallPublicConnectivityAddonDetails` + + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this InstallAddonDetails. + :type name: str + + :param description: + The value to assign to the description property of this InstallAddonDetails. + :type description: str + + :param addon_type: + The value to assign to the addon_type property of this InstallAddonDetails. + :type addon_type: str + + """ + self.swagger_types = { + 'name': 'str', + 'description': 'str', + 'addon_type': 'str' + } + self.attribute_map = { + 'name': 'name', + 'description': 'description', + 'addon_type': 'addonType' + } + self._name = None + self._description = None + self._addon_type = None + + @staticmethod + def get_subtype(object_dictionary): + """ + Given the hash representation of a subtype of this class, + use the info in the hash to return the class of the subtype. + """ + type = object_dictionary['addonType'] + + if type == 'PUBLICCONNECTIVITY': + return 'InstallPublicConnectivityAddonDetails' + else: + return 'InstallAddonDetails' + + @property + def name(self): + """ + **[Required]** Gets the name of this InstallAddonDetails. + A unique user-friendly name. Avoid entering confidential information. + + + :return: The name of this InstallAddonDetails. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this InstallAddonDetails. + A unique user-friendly name. Avoid entering confidential information. + + + :param name: The name of this InstallAddonDetails. + :type: str + """ + self._name = name + + @property + def description(self): + """ + Gets the description of this InstallAddonDetails. + A brief description of the add on being installed. + + + :return: The description of this InstallAddonDetails. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this InstallAddonDetails. + A brief description of the add on being installed. + + + :param description: The description of this InstallAddonDetails. + :type: str + """ + self._description = description + + @property + def addon_type(self): + """ + **[Required]** Gets the addon_type of this InstallAddonDetails. + This is Addon Type of OCI kafka cluster + + + :return: The addon_type of this InstallAddonDetails. + :rtype: str + """ + return self._addon_type + + @addon_type.setter + def addon_type(self, addon_type): + """ + Sets the addon_type of this InstallAddonDetails. + This is Addon Type of OCI kafka cluster + + + :param addon_type: The addon_type of this InstallAddonDetails. + :type: str + """ + self._addon_type = addon_type + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/managed_kafka/models/install_public_connectivity_addon_details.py b/src/oci/managed_kafka/models/install_public_connectivity_addon_details.py new file mode 100644 index 0000000000..74cdd3bf29 --- /dev/null +++ b/src/oci/managed_kafka/models/install_public_connectivity_addon_details.py @@ -0,0 +1,124 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20240901 + +from .install_addon_details import InstallAddonDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class InstallPublicConnectivityAddonDetails(InstallAddonDetails): + """ + The data to install a KafkaClusterAddon. + """ + + def __init__(self, **kwargs): + """ + Initializes a new InstallPublicConnectivityAddonDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.managed_kafka.models.InstallPublicConnectivityAddonDetails.addon_type` attribute + of this class is ``PUBLICCONNECTIVITY`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this InstallPublicConnectivityAddonDetails. + :type name: str + + :param description: + The value to assign to the description property of this InstallPublicConnectivityAddonDetails. + :type description: str + + :param addon_type: + The value to assign to the addon_type property of this InstallPublicConnectivityAddonDetails. + :type addon_type: str + + :param authentication_mechanism: + The value to assign to the authentication_mechanism property of this InstallPublicConnectivityAddonDetails. + :type authentication_mechanism: str + + :param network_cidrs: + The value to assign to the network_cidrs property of this InstallPublicConnectivityAddonDetails. + :type network_cidrs: list[str] + + """ + self.swagger_types = { + 'name': 'str', + 'description': 'str', + 'addon_type': 'str', + 'authentication_mechanism': 'str', + 'network_cidrs': 'list[str]' + } + self.attribute_map = { + 'name': 'name', + 'description': 'description', + 'addon_type': 'addonType', + 'authentication_mechanism': 'authenticationMechanism', + 'network_cidrs': 'networkCidrs' + } + self._name = None + self._description = None + self._addon_type = None + self._authentication_mechanism = None + self._network_cidrs = None + self._addon_type = 'PUBLICCONNECTIVITY' + + @property + def authentication_mechanism(self): + """ + **[Required]** Gets the authentication_mechanism of this InstallPublicConnectivityAddonDetails. + Authentication mechanism. + + + :return: The authentication_mechanism of this InstallPublicConnectivityAddonDetails. + :rtype: str + """ + return self._authentication_mechanism + + @authentication_mechanism.setter + def authentication_mechanism(self, authentication_mechanism): + """ + Sets the authentication_mechanism of this InstallPublicConnectivityAddonDetails. + Authentication mechanism. + + + :param authentication_mechanism: The authentication_mechanism of this InstallPublicConnectivityAddonDetails. + :type: str + """ + self._authentication_mechanism = authentication_mechanism + + @property + def network_cidrs(self): + """ + **[Required]** Gets the network_cidrs of this InstallPublicConnectivityAddonDetails. + A list of CIDR's for ingress/egress traffic. + + + :return: The network_cidrs of this InstallPublicConnectivityAddonDetails. + :rtype: list[str] + """ + return self._network_cidrs + + @network_cidrs.setter + def network_cidrs(self, network_cidrs): + """ + Sets the network_cidrs of this InstallPublicConnectivityAddonDetails. + A list of CIDR's for ingress/egress traffic. + + + :param network_cidrs: The network_cidrs of this InstallPublicConnectivityAddonDetails. + :type: list[str] + """ + self._network_cidrs = network_cidrs + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/managed_kafka/models/kafka_cluster_addon.py b/src/oci/managed_kafka/models/kafka_cluster_addon.py new file mode 100644 index 0000000000..400e3db080 --- /dev/null +++ b/src/oci/managed_kafka/models/kafka_cluster_addon.py @@ -0,0 +1,286 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20240901 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class KafkaClusterAddon(object): + """ + The base data object to represent a KafkaClusterAddon. + """ + + #: A constant which can be used with the addon_type property of a KafkaClusterAddon. + #: This constant has a value of "PUBLICCONNECTIVITY" + ADDON_TYPE_PUBLICCONNECTIVITY = "PUBLICCONNECTIVITY" + + #: A constant which can be used with the lifecycle_state property of a KafkaClusterAddon. + #: This constant has a value of "CREATING" + LIFECYCLE_STATE_CREATING = "CREATING" + + #: A constant which can be used with the lifecycle_state property of a KafkaClusterAddon. + #: This constant has a value of "UPDATING" + LIFECYCLE_STATE_UPDATING = "UPDATING" + + #: A constant which can be used with the lifecycle_state property of a KafkaClusterAddon. + #: This constant has a value of "ACTIVE" + LIFECYCLE_STATE_ACTIVE = "ACTIVE" + + #: A constant which can be used with the lifecycle_state property of a KafkaClusterAddon. + #: This constant has a value of "DELETING" + LIFECYCLE_STATE_DELETING = "DELETING" + + #: A constant which can be used with the lifecycle_state property of a KafkaClusterAddon. + #: This constant has a value of "DELETED" + LIFECYCLE_STATE_DELETED = "DELETED" + + #: A constant which can be used with the lifecycle_state property of a KafkaClusterAddon. + #: This constant has a value of "FAILED" + LIFECYCLE_STATE_FAILED = "FAILED" + + def __init__(self, **kwargs): + """ + Initializes a new KafkaClusterAddon object with values from keyword arguments. This class has the following subclasses and if you are using this class as input + to a service operations then you should favor using a subclass over the base class: + + * :class:`~oci.managed_kafka.models.PublicConnectivityAddon` + + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this KafkaClusterAddon. + :type name: str + + :param description: + The value to assign to the description property of this KafkaClusterAddon. + :type description: str + + :param addon_type: + The value to assign to the addon_type property of this KafkaClusterAddon. + Allowed values for this property are: "PUBLICCONNECTIVITY", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type addon_type: str + + :param time_created: + The value to assign to the time_created property of this KafkaClusterAddon. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this KafkaClusterAddon. + :type time_updated: datetime + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this KafkaClusterAddon. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + """ + self.swagger_types = { + 'name': 'str', + 'description': 'str', + 'addon_type': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'lifecycle_state': 'str' + } + self.attribute_map = { + 'name': 'name', + 'description': 'description', + 'addon_type': 'addonType', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'lifecycle_state': 'lifecycleState' + } + self._name = None + self._description = None + self._addon_type = None + self._time_created = None + self._time_updated = None + self._lifecycle_state = None + + @staticmethod + def get_subtype(object_dictionary): + """ + Given the hash representation of a subtype of this class, + use the info in the hash to return the class of the subtype. + """ + type = object_dictionary['addonType'] + + if type == 'PUBLICCONNECTIVITY': + return 'PublicConnectivityAddon' + else: + return 'KafkaClusterAddon' + + @property + def name(self): + """ + **[Required]** Gets the name of this KafkaClusterAddon. + A unique user-friendly name. + + + :return: The name of this KafkaClusterAddon. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this KafkaClusterAddon. + A unique user-friendly name. + + + :param name: The name of this KafkaClusterAddon. + :type: str + """ + self._name = name + + @property + def description(self): + """ + Gets the description of this KafkaClusterAddon. + Description of the add on + + + :return: The description of this KafkaClusterAddon. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this KafkaClusterAddon. + Description of the add on + + + :param description: The description of this KafkaClusterAddon. + :type: str + """ + self._description = description + + @property + def addon_type(self): + """ + **[Required]** Gets the addon_type of this KafkaClusterAddon. + The type of addon + + Allowed values for this property are: "PUBLICCONNECTIVITY", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The addon_type of this KafkaClusterAddon. + :rtype: str + """ + return self._addon_type + + @addon_type.setter + def addon_type(self, addon_type): + """ + Sets the addon_type of this KafkaClusterAddon. + The type of addon + + + :param addon_type: The addon_type of this KafkaClusterAddon. + :type: str + """ + allowed_values = ["PUBLICCONNECTIVITY"] + if not value_allowed_none_or_none_sentinel(addon_type, allowed_values): + addon_type = 'UNKNOWN_ENUM_VALUE' + self._addon_type = addon_type + + @property + def time_created(self): + """ + Gets the time_created of this KafkaClusterAddon. + The time the addon was created. + + + :return: The time_created of this KafkaClusterAddon. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this KafkaClusterAddon. + The time the addon was created. + + + :param time_created: The time_created of this KafkaClusterAddon. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + Gets the time_updated of this KafkaClusterAddon. + The time the addon was updated. + + + :return: The time_updated of this KafkaClusterAddon. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this KafkaClusterAddon. + The time the addon was updated. + + + :param time_updated: The time_updated of this KafkaClusterAddon. + :type: datetime + """ + self._time_updated = time_updated + + @property + def lifecycle_state(self): + """ + **[Required]** Gets the lifecycle_state of this KafkaClusterAddon. + The current state of the KafkaCluster. + + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this KafkaClusterAddon. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this KafkaClusterAddon. + The current state of the KafkaCluster. + + + :param lifecycle_state: The lifecycle_state of this KafkaClusterAddon. + :type: str + """ + allowed_values = ["CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/managed_kafka/models/public_connectivity_addon.py b/src/oci/managed_kafka/models/public_connectivity_addon.py new file mode 100644 index 0000000000..b6f25d14d2 --- /dev/null +++ b/src/oci/managed_kafka/models/public_connectivity_addon.py @@ -0,0 +1,178 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20240901 + +from .kafka_cluster_addon import KafkaClusterAddon +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class PublicConnectivityAddon(KafkaClusterAddon): + """ + The data that represents a Public Connectivity Addon + """ + + def __init__(self, **kwargs): + """ + Initializes a new PublicConnectivityAddon object with values from keyword arguments. The default value of the :py:attr:`~oci.managed_kafka.models.PublicConnectivityAddon.addon_type` attribute + of this class is ``PUBLICCONNECTIVITY`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this PublicConnectivityAddon. + :type name: str + + :param description: + The value to assign to the description property of this PublicConnectivityAddon. + :type description: str + + :param addon_type: + The value to assign to the addon_type property of this PublicConnectivityAddon. + Allowed values for this property are: "PUBLICCONNECTIVITY" + :type addon_type: str + + :param time_created: + The value to assign to the time_created property of this PublicConnectivityAddon. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this PublicConnectivityAddon. + :type time_updated: datetime + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this PublicConnectivityAddon. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED" + :type lifecycle_state: str + + :param authentication_mechanism: + The value to assign to the authentication_mechanism property of this PublicConnectivityAddon. + :type authentication_mechanism: str + + :param bootstrap_url: + The value to assign to the bootstrap_url property of this PublicConnectivityAddon. + :type bootstrap_url: str + + :param network_cidrs: + The value to assign to the network_cidrs property of this PublicConnectivityAddon. + :type network_cidrs: list[str] + + """ + self.swagger_types = { + 'name': 'str', + 'description': 'str', + 'addon_type': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'lifecycle_state': 'str', + 'authentication_mechanism': 'str', + 'bootstrap_url': 'str', + 'network_cidrs': 'list[str]' + } + self.attribute_map = { + 'name': 'name', + 'description': 'description', + 'addon_type': 'addonType', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'lifecycle_state': 'lifecycleState', + 'authentication_mechanism': 'authenticationMechanism', + 'bootstrap_url': 'bootstrapUrl', + 'network_cidrs': 'networkCidrs' + } + self._name = None + self._description = None + self._addon_type = None + self._time_created = None + self._time_updated = None + self._lifecycle_state = None + self._authentication_mechanism = None + self._bootstrap_url = None + self._network_cidrs = None + self._addon_type = 'PUBLICCONNECTIVITY' + + @property + def authentication_mechanism(self): + """ + **[Required]** Gets the authentication_mechanism of this PublicConnectivityAddon. + Authentication mechanism. + + + :return: The authentication_mechanism of this PublicConnectivityAddon. + :rtype: str + """ + return self._authentication_mechanism + + @authentication_mechanism.setter + def authentication_mechanism(self, authentication_mechanism): + """ + Sets the authentication_mechanism of this PublicConnectivityAddon. + Authentication mechanism. + + + :param authentication_mechanism: The authentication_mechanism of this PublicConnectivityAddon. + :type: str + """ + self._authentication_mechanism = authentication_mechanism + + @property + def bootstrap_url(self): + """ + **[Required]** Gets the bootstrap_url of this PublicConnectivityAddon. + The bootstrap url of the kafka cluster. + + + :return: The bootstrap_url of this PublicConnectivityAddon. + :rtype: str + """ + return self._bootstrap_url + + @bootstrap_url.setter + def bootstrap_url(self, bootstrap_url): + """ + Sets the bootstrap_url of this PublicConnectivityAddon. + The bootstrap url of the kafka cluster. + + + :param bootstrap_url: The bootstrap_url of this PublicConnectivityAddon. + :type: str + """ + self._bootstrap_url = bootstrap_url + + @property + def network_cidrs(self): + """ + **[Required]** Gets the network_cidrs of this PublicConnectivityAddon. + A list of CIDR ranges for ingress/egress traffic. + + + :return: The network_cidrs of this PublicConnectivityAddon. + :rtype: list[str] + """ + return self._network_cidrs + + @network_cidrs.setter + def network_cidrs(self, network_cidrs): + """ + Sets the network_cidrs of this PublicConnectivityAddon. + A list of CIDR ranges for ingress/egress traffic. + + + :param network_cidrs: The network_cidrs of this PublicConnectivityAddon. + :type: list[str] + """ + self._network_cidrs = network_cidrs + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/managed_kafka/models/update_addon_details.py b/src/oci/managed_kafka/models/update_addon_details.py new file mode 100644 index 0000000000..5543446c94 --- /dev/null +++ b/src/oci/managed_kafka/models/update_addon_details.py @@ -0,0 +1,118 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20240901 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class UpdateAddonDetails(object): + """ + The data to update a KafkaClusterAddon. + """ + + def __init__(self, **kwargs): + """ + Initializes a new UpdateAddonDetails object with values from keyword arguments. This class has the following subclasses and if you are using this class as input + to a service operations then you should favor using a subclass over the base class: + + * :class:`~oci.managed_kafka.models.UpdatePublicConnectivityAddonDetails` + + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param addon_type: + The value to assign to the addon_type property of this UpdateAddonDetails. + :type addon_type: str + + :param description: + The value to assign to the description property of this UpdateAddonDetails. + :type description: str + + """ + self.swagger_types = { + 'addon_type': 'str', + 'description': 'str' + } + self.attribute_map = { + 'addon_type': 'addonType', + 'description': 'description' + } + self._addon_type = None + self._description = None + + @staticmethod + def get_subtype(object_dictionary): + """ + Given the hash representation of a subtype of this class, + use the info in the hash to return the class of the subtype. + """ + type = object_dictionary['addonType'] + + if type == 'PUBLICCONNECTIVITY': + return 'UpdatePublicConnectivityAddonDetails' + else: + return 'UpdateAddonDetails' + + @property + def addon_type(self): + """ + Gets the addon_type of this UpdateAddonDetails. + This is Addon Type of OCI kafka cluster + + + :return: The addon_type of this UpdateAddonDetails. + :rtype: str + """ + return self._addon_type + + @addon_type.setter + def addon_type(self, addon_type): + """ + Sets the addon_type of this UpdateAddonDetails. + This is Addon Type of OCI kafka cluster + + + :param addon_type: The addon_type of this UpdateAddonDetails. + :type: str + """ + self._addon_type = addon_type + + @property + def description(self): + """ + Gets the description of this UpdateAddonDetails. + A unique user-friendly name. Avoid entering confidential information. + + + :return: The description of this UpdateAddonDetails. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this UpdateAddonDetails. + A unique user-friendly name. Avoid entering confidential information. + + + :param description: The description of this UpdateAddonDetails. + :type: str + """ + self._description = description + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/managed_kafka/models/update_public_connectivity_addon_details.py b/src/oci/managed_kafka/models/update_public_connectivity_addon_details.py new file mode 100644 index 0000000000..206719bb71 --- /dev/null +++ b/src/oci/managed_kafka/models/update_public_connectivity_addon_details.py @@ -0,0 +1,86 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20240901 + +from .update_addon_details import UpdateAddonDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class UpdatePublicConnectivityAddonDetails(UpdateAddonDetails): + """ + The data to update a KafkaClusterAddon. + """ + + def __init__(self, **kwargs): + """ + Initializes a new UpdatePublicConnectivityAddonDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.managed_kafka.models.UpdatePublicConnectivityAddonDetails.addon_type` attribute + of this class is ``PUBLICCONNECTIVITY`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param addon_type: + The value to assign to the addon_type property of this UpdatePublicConnectivityAddonDetails. + :type addon_type: str + + :param description: + The value to assign to the description property of this UpdatePublicConnectivityAddonDetails. + :type description: str + + :param network_cidrs: + The value to assign to the network_cidrs property of this UpdatePublicConnectivityAddonDetails. + :type network_cidrs: list[str] + + """ + self.swagger_types = { + 'addon_type': 'str', + 'description': 'str', + 'network_cidrs': 'list[str]' + } + self.attribute_map = { + 'addon_type': 'addonType', + 'description': 'description', + 'network_cidrs': 'networkCidrs' + } + self._addon_type = None + self._description = None + self._network_cidrs = None + self._addon_type = 'PUBLICCONNECTIVITY' + + @property + def network_cidrs(self): + """ + **[Required]** Gets the network_cidrs of this UpdatePublicConnectivityAddonDetails. + A list of CIDR ranges for ingress/egress traffic. + + + :return: The network_cidrs of this UpdatePublicConnectivityAddonDetails. + :rtype: list[str] + """ + return self._network_cidrs + + @network_cidrs.setter + def network_cidrs(self, network_cidrs): + """ + Sets the network_cidrs of this UpdatePublicConnectivityAddonDetails. + A list of CIDR ranges for ingress/egress traffic. + + + :param network_cidrs: The network_cidrs of this UpdatePublicConnectivityAddonDetails. + :type: list[str] + """ + self._network_cidrs = network_cidrs + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/managed_kafka/models/work_request.py b/src/oci/managed_kafka/models/work_request.py index 8d0839cba9..2a8be21544 100644 --- a/src/oci/managed_kafka/models/work_request.py +++ b/src/oci/managed_kafka/models/work_request.py @@ -41,6 +41,18 @@ class WorkRequest(object): #: This constant has a value of "DISABLE_SUPERUSER" OPERATION_TYPE_DISABLE_SUPERUSER = "DISABLE_SUPERUSER" + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "INSTALL_KAFKA_CLUSTER_ADDON" + OPERATION_TYPE_INSTALL_KAFKA_CLUSTER_ADDON = "INSTALL_KAFKA_CLUSTER_ADDON" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "UPDATE_KAFKA_CLUSTER_ADDON" + OPERATION_TYPE_UPDATE_KAFKA_CLUSTER_ADDON = "UPDATE_KAFKA_CLUSTER_ADDON" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "UNINSTALL_KAFKA_CLUSTER_ADDON" + OPERATION_TYPE_UNINSTALL_KAFKA_CLUSTER_ADDON = "UNINSTALL_KAFKA_CLUSTER_ADDON" + #: A constant which can be used with the status property of a WorkRequest. #: This constant has a value of "ACCEPTED" STATUS_ACCEPTED = "ACCEPTED" @@ -80,7 +92,7 @@ def __init__(self, **kwargs): :param operation_type: The value to assign to the operation_type property of this WorkRequest. - Allowed values for this property are: "CREATE_KAFKA_CLUSTER", "UPDATE_KAFKA_CLUSTER", "DELETE_KAFKA_CLUSTER", "MOVE_KAFKA_CLUSTER", "ENABLE_SUPERUSER", "DISABLE_SUPERUSER", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATE_KAFKA_CLUSTER", "UPDATE_KAFKA_CLUSTER", "DELETE_KAFKA_CLUSTER", "MOVE_KAFKA_CLUSTER", "ENABLE_SUPERUSER", "DISABLE_SUPERUSER", "INSTALL_KAFKA_CLUSTER_ADDON", "UPDATE_KAFKA_CLUSTER_ADDON", "UNINSTALL_KAFKA_CLUSTER_ADDON", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type operation_type: str @@ -164,7 +176,7 @@ def operation_type(self): **[Required]** Gets the operation_type of this WorkRequest. The asynchronous operation tracked by this work request. - Allowed values for this property are: "CREATE_KAFKA_CLUSTER", "UPDATE_KAFKA_CLUSTER", "DELETE_KAFKA_CLUSTER", "MOVE_KAFKA_CLUSTER", "ENABLE_SUPERUSER", "DISABLE_SUPERUSER", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATE_KAFKA_CLUSTER", "UPDATE_KAFKA_CLUSTER", "DELETE_KAFKA_CLUSTER", "MOVE_KAFKA_CLUSTER", "ENABLE_SUPERUSER", "DISABLE_SUPERUSER", "INSTALL_KAFKA_CLUSTER_ADDON", "UPDATE_KAFKA_CLUSTER_ADDON", "UNINSTALL_KAFKA_CLUSTER_ADDON", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -183,7 +195,7 @@ def operation_type(self, operation_type): :param operation_type: The operation_type of this WorkRequest. :type: str """ - allowed_values = ["CREATE_KAFKA_CLUSTER", "UPDATE_KAFKA_CLUSTER", "DELETE_KAFKA_CLUSTER", "MOVE_KAFKA_CLUSTER", "ENABLE_SUPERUSER", "DISABLE_SUPERUSER"] + allowed_values = ["CREATE_KAFKA_CLUSTER", "UPDATE_KAFKA_CLUSTER", "DELETE_KAFKA_CLUSTER", "MOVE_KAFKA_CLUSTER", "ENABLE_SUPERUSER", "DISABLE_SUPERUSER", "INSTALL_KAFKA_CLUSTER_ADDON", "UPDATE_KAFKA_CLUSTER_ADDON", "UNINSTALL_KAFKA_CLUSTER_ADDON"] if not value_allowed_none_or_none_sentinel(operation_type, allowed_values): operation_type = 'UNKNOWN_ENUM_VALUE' self._operation_type = operation_type diff --git a/src/oci/managed_kafka/models/work_request_summary.py b/src/oci/managed_kafka/models/work_request_summary.py index a7792c20fd..50985b74a6 100644 --- a/src/oci/managed_kafka/models/work_request_summary.py +++ b/src/oci/managed_kafka/models/work_request_summary.py @@ -39,6 +39,18 @@ class WorkRequestSummary(object): #: This constant has a value of "DISABLE_SUPERUSER" OPERATION_TYPE_DISABLE_SUPERUSER = "DISABLE_SUPERUSER" + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "INSTALL_KAFKA_CLUSTER_ADDON" + OPERATION_TYPE_INSTALL_KAFKA_CLUSTER_ADDON = "INSTALL_KAFKA_CLUSTER_ADDON" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "UPDATE_KAFKA_CLUSTER_ADDON" + OPERATION_TYPE_UPDATE_KAFKA_CLUSTER_ADDON = "UPDATE_KAFKA_CLUSTER_ADDON" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "UNINSTALL_KAFKA_CLUSTER_ADDON" + OPERATION_TYPE_UNINSTALL_KAFKA_CLUSTER_ADDON = "UNINSTALL_KAFKA_CLUSTER_ADDON" + #: A constant which can be used with the status property of a WorkRequestSummary. #: This constant has a value of "ACCEPTED" STATUS_ACCEPTED = "ACCEPTED" @@ -78,7 +90,7 @@ def __init__(self, **kwargs): :param operation_type: The value to assign to the operation_type property of this WorkRequestSummary. - Allowed values for this property are: "CREATE_KAFKA_CLUSTER", "UPDATE_KAFKA_CLUSTER", "DELETE_KAFKA_CLUSTER", "MOVE_KAFKA_CLUSTER", "ENABLE_SUPERUSER", "DISABLE_SUPERUSER", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATE_KAFKA_CLUSTER", "UPDATE_KAFKA_CLUSTER", "DELETE_KAFKA_CLUSTER", "MOVE_KAFKA_CLUSTER", "ENABLE_SUPERUSER", "DISABLE_SUPERUSER", "INSTALL_KAFKA_CLUSTER_ADDON", "UPDATE_KAFKA_CLUSTER_ADDON", "UNINSTALL_KAFKA_CLUSTER_ADDON", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type operation_type: str @@ -162,7 +174,7 @@ def operation_type(self): **[Required]** Gets the operation_type of this WorkRequestSummary. The asynchronous operation tracked by this work request. - Allowed values for this property are: "CREATE_KAFKA_CLUSTER", "UPDATE_KAFKA_CLUSTER", "DELETE_KAFKA_CLUSTER", "MOVE_KAFKA_CLUSTER", "ENABLE_SUPERUSER", "DISABLE_SUPERUSER", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATE_KAFKA_CLUSTER", "UPDATE_KAFKA_CLUSTER", "DELETE_KAFKA_CLUSTER", "MOVE_KAFKA_CLUSTER", "ENABLE_SUPERUSER", "DISABLE_SUPERUSER", "INSTALL_KAFKA_CLUSTER_ADDON", "UPDATE_KAFKA_CLUSTER_ADDON", "UNINSTALL_KAFKA_CLUSTER_ADDON", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -181,7 +193,7 @@ def operation_type(self, operation_type): :param operation_type: The operation_type of this WorkRequestSummary. :type: str """ - allowed_values = ["CREATE_KAFKA_CLUSTER", "UPDATE_KAFKA_CLUSTER", "DELETE_KAFKA_CLUSTER", "MOVE_KAFKA_CLUSTER", "ENABLE_SUPERUSER", "DISABLE_SUPERUSER"] + allowed_values = ["CREATE_KAFKA_CLUSTER", "UPDATE_KAFKA_CLUSTER", "DELETE_KAFKA_CLUSTER", "MOVE_KAFKA_CLUSTER", "ENABLE_SUPERUSER", "DISABLE_SUPERUSER", "INSTALL_KAFKA_CLUSTER_ADDON", "UPDATE_KAFKA_CLUSTER_ADDON", "UNINSTALL_KAFKA_CLUSTER_ADDON"] if not value_allowed_none_or_none_sentinel(operation_type, allowed_values): operation_type = 'UNKNOWN_ENUM_VALUE' self._operation_type = operation_type diff --git a/src/oci/mysql/models/__init__.py b/src/oci/mysql/models/__init__.py index 3018da7201..9f8851dfa1 100644 --- a/src/oci/mysql/models/__init__.py +++ b/src/oci/mysql/models/__init__.py @@ -88,6 +88,7 @@ from .heat_wave_cluster_table_memory_estimate import HeatWaveClusterTableMemoryEstimate from .heat_wave_node import HeatWaveNode from .initialization_variables import InitializationVariables +from .ipv6_address_ipv6_subnet_cidr_pair_details import Ipv6AddressIpv6SubnetCidrPairDetails from .logging_destination_configuration import LoggingDestinationConfiguration from .maintenance_details import MaintenanceDetails from .maintenance_disabled_window import MaintenanceDisabledWindow @@ -217,6 +218,7 @@ "HeatWaveClusterTableMemoryEstimate": HeatWaveClusterTableMemoryEstimate, "HeatWaveNode": HeatWaveNode, "InitializationVariables": InitializationVariables, + "Ipv6AddressIpv6SubnetCidrPairDetails": Ipv6AddressIpv6SubnetCidrPairDetails, "LoggingDestinationConfiguration": LoggingDestinationConfiguration, "MaintenanceDetails": MaintenanceDetails, "MaintenanceDisabledWindow": MaintenanceDisabledWindow, diff --git a/src/oci/mysql/models/channel_source_mysql.py b/src/oci/mysql/models/channel_source_mysql.py index 3cf1ff6c9a..9c7a0f0096 100644 --- a/src/oci/mysql/models/channel_source_mysql.py +++ b/src/oci/mysql/models/channel_source_mysql.py @@ -69,6 +69,10 @@ def __init__(self, **kwargs): The value to assign to the anonymous_transactions_handling property of this ChannelSourceMysql. :type anonymous_transactions_handling: oci.mysql.models.AnonymousTransactionsHandling + :param must_use_ipv6_on_dual_stack: + The value to assign to the must_use_ipv6_on_dual_stack property of this ChannelSourceMysql. + :type must_use_ipv6_on_dual_stack: bool + """ self.swagger_types = { 'source_type': 'str', @@ -77,7 +81,8 @@ def __init__(self, **kwargs): 'username': 'str', 'ssl_mode': 'str', 'ssl_ca_certificate': 'CaCertificate', - 'anonymous_transactions_handling': 'AnonymousTransactionsHandling' + 'anonymous_transactions_handling': 'AnonymousTransactionsHandling', + 'must_use_ipv6_on_dual_stack': 'bool' } self.attribute_map = { 'source_type': 'sourceType', @@ -86,7 +91,8 @@ def __init__(self, **kwargs): 'username': 'username', 'ssl_mode': 'sslMode', 'ssl_ca_certificate': 'sslCaCertificate', - 'anonymous_transactions_handling': 'anonymousTransactionsHandling' + 'anonymous_transactions_handling': 'anonymousTransactionsHandling', + 'must_use_ipv6_on_dual_stack': 'mustUseIpv6OnDualStack' } self._source_type = None self._hostname = None @@ -95,6 +101,7 @@ def __init__(self, **kwargs): self._ssl_mode = None self._ssl_ca_certificate = None self._anonymous_transactions_handling = None + self._must_use_ipv6_on_dual_stack = None self._source_type = 'MYSQL' @property @@ -247,6 +254,32 @@ def anonymous_transactions_handling(self, anonymous_transactions_handling): """ self._anonymous_transactions_handling = anonymous_transactions_handling + @property + def must_use_ipv6_on_dual_stack(self): + """ + Gets the must_use_ipv6_on_dual_stack of this ChannelSourceMysql. + Whether the connection of the channel will be requested using the IPv6 address of + the dual stack DB system or not. Default: False. + + + :return: The must_use_ipv6_on_dual_stack of this ChannelSourceMysql. + :rtype: bool + """ + return self._must_use_ipv6_on_dual_stack + + @must_use_ipv6_on_dual_stack.setter + def must_use_ipv6_on_dual_stack(self, must_use_ipv6_on_dual_stack): + """ + Sets the must_use_ipv6_on_dual_stack of this ChannelSourceMysql. + Whether the connection of the channel will be requested using the IPv6 address of + the dual stack DB system or not. Default: False. + + + :param must_use_ipv6_on_dual_stack: The must_use_ipv6_on_dual_stack of this ChannelSourceMysql. + :type: bool + """ + self._must_use_ipv6_on_dual_stack = must_use_ipv6_on_dual_stack + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/mysql/models/create_channel_source_from_mysql_details.py b/src/oci/mysql/models/create_channel_source_from_mysql_details.py index 9b6f78b8f0..7060743e54 100644 --- a/src/oci/mysql/models/create_channel_source_from_mysql_details.py +++ b/src/oci/mysql/models/create_channel_source_from_mysql_details.py @@ -54,6 +54,10 @@ def __init__(self, **kwargs): The value to assign to the anonymous_transactions_handling property of this CreateChannelSourceFromMysqlDetails. :type anonymous_transactions_handling: oci.mysql.models.AnonymousTransactionsHandling + :param must_use_ipv6_on_dual_stack: + The value to assign to the must_use_ipv6_on_dual_stack property of this CreateChannelSourceFromMysqlDetails. + :type must_use_ipv6_on_dual_stack: bool + """ self.swagger_types = { 'source_type': 'str', @@ -63,7 +67,8 @@ def __init__(self, **kwargs): 'password': 'str', 'ssl_mode': 'str', 'ssl_ca_certificate': 'CaCertificate', - 'anonymous_transactions_handling': 'AnonymousTransactionsHandling' + 'anonymous_transactions_handling': 'AnonymousTransactionsHandling', + 'must_use_ipv6_on_dual_stack': 'bool' } self.attribute_map = { 'source_type': 'sourceType', @@ -73,7 +78,8 @@ def __init__(self, **kwargs): 'password': 'password', 'ssl_mode': 'sslMode', 'ssl_ca_certificate': 'sslCaCertificate', - 'anonymous_transactions_handling': 'anonymousTransactionsHandling' + 'anonymous_transactions_handling': 'anonymousTransactionsHandling', + 'must_use_ipv6_on_dual_stack': 'mustUseIpv6OnDualStack' } self._source_type = None self._hostname = None @@ -83,6 +89,7 @@ def __init__(self, **kwargs): self._ssl_mode = None self._ssl_ca_certificate = None self._anonymous_transactions_handling = None + self._must_use_ipv6_on_dual_stack = None self._source_type = 'MYSQL' @property @@ -259,6 +266,32 @@ def anonymous_transactions_handling(self, anonymous_transactions_handling): """ self._anonymous_transactions_handling = anonymous_transactions_handling + @property + def must_use_ipv6_on_dual_stack(self): + """ + Gets the must_use_ipv6_on_dual_stack of this CreateChannelSourceFromMysqlDetails. + Whether the connection of the channel will be requested using the IPv6 address of + the dual stack DB system or not. Default: False. + + + :return: The must_use_ipv6_on_dual_stack of this CreateChannelSourceFromMysqlDetails. + :rtype: bool + """ + return self._must_use_ipv6_on_dual_stack + + @must_use_ipv6_on_dual_stack.setter + def must_use_ipv6_on_dual_stack(self, must_use_ipv6_on_dual_stack): + """ + Sets the must_use_ipv6_on_dual_stack of this CreateChannelSourceFromMysqlDetails. + Whether the connection of the channel will be requested using the IPv6 address of + the dual stack DB system or not. Default: False. + + + :param must_use_ipv6_on_dual_stack: The must_use_ipv6_on_dual_stack of this CreateChannelSourceFromMysqlDetails. + :type: bool + """ + self._must_use_ipv6_on_dual_stack = must_use_ipv6_on_dual_stack + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/mysql/models/create_db_system_details.py b/src/oci/mysql/models/create_db_system_details.py index 6d266e91f6..7198ce2566 100644 --- a/src/oci/mysql/models/create_db_system_details.py +++ b/src/oci/mysql/models/create_db_system_details.py @@ -116,6 +116,14 @@ def __init__(self, **kwargs): The value to assign to the ip_address property of this CreateDbSystemDetails. :type ip_address: str + :param is_ipv6_enabled: + The value to assign to the is_ipv6_enabled property of this CreateDbSystemDetails. + :type is_ipv6_enabled: bool + + :param ipv6_address_ipv6_subnet_cidr_pair_details: + The value to assign to the ipv6_address_ipv6_subnet_cidr_pair_details property of this CreateDbSystemDetails. + :type ipv6_address_ipv6_subnet_cidr_pair_details: oci.mysql.models.Ipv6AddressIpv6SubnetCidrPairDetails + :param port: The value to assign to the port property of this CreateDbSystemDetails. :type port: int @@ -208,6 +216,8 @@ def __init__(self, **kwargs): 'data_storage': 'DataStorageDetails', 'hostname_label': 'str', 'ip_address': 'str', + 'is_ipv6_enabled': 'bool', + 'ipv6_address_ipv6_subnet_cidr_pair_details': 'Ipv6AddressIpv6SubnetCidrPairDetails', 'port': 'int', 'port_x': 'int', 'backup_policy': 'CreateBackupPolicyDetails', @@ -247,6 +257,8 @@ def __init__(self, **kwargs): 'data_storage': 'dataStorage', 'hostname_label': 'hostnameLabel', 'ip_address': 'ipAddress', + 'is_ipv6_enabled': 'isIpv6Enabled', + 'ipv6_address_ipv6_subnet_cidr_pair_details': 'ipv6AddressIpv6SubnetCidrPairDetails', 'port': 'port', 'port_x': 'portX', 'backup_policy': 'backupPolicy', @@ -285,6 +297,8 @@ def __init__(self, **kwargs): self._data_storage = None self._hostname_label = None self._ip_address = None + self._is_ipv6_enabled = None + self._ipv6_address_ipv6_subnet_cidr_pair_details = None self._port = None self._port_x = None self._backup_policy = None @@ -849,6 +863,58 @@ def ip_address(self, ip_address): """ self._ip_address = ip_address + @property + def is_ipv6_enabled(self): + """ + Gets the is_ipv6_enabled of this CreateDbSystemDetails. + Whether to allocate an IPv6 address at DB system creation from an + IPv6 enabled subnet. When provided you may optionally + provide an IPv6 prefix (ipv6AddressIpv6SubnetCidrPairDetails) of your + choice to assign the IPv6 address from. If ipv6AddressIpv6SubnetCidrPairDetails + is not provided then an IPv6 prefix is chosen for you. + + + :return: The is_ipv6_enabled of this CreateDbSystemDetails. + :rtype: bool + """ + return self._is_ipv6_enabled + + @is_ipv6_enabled.setter + def is_ipv6_enabled(self, is_ipv6_enabled): + """ + Sets the is_ipv6_enabled of this CreateDbSystemDetails. + Whether to allocate an IPv6 address at DB system creation from an + IPv6 enabled subnet. When provided you may optionally + provide an IPv6 prefix (ipv6AddressIpv6SubnetCidrPairDetails) of your + choice to assign the IPv6 address from. If ipv6AddressIpv6SubnetCidrPairDetails + is not provided then an IPv6 prefix is chosen for you. + + + :param is_ipv6_enabled: The is_ipv6_enabled of this CreateDbSystemDetails. + :type: bool + """ + self._is_ipv6_enabled = is_ipv6_enabled + + @property + def ipv6_address_ipv6_subnet_cidr_pair_details(self): + """ + Gets the ipv6_address_ipv6_subnet_cidr_pair_details of this CreateDbSystemDetails. + + :return: The ipv6_address_ipv6_subnet_cidr_pair_details of this CreateDbSystemDetails. + :rtype: oci.mysql.models.Ipv6AddressIpv6SubnetCidrPairDetails + """ + return self._ipv6_address_ipv6_subnet_cidr_pair_details + + @ipv6_address_ipv6_subnet_cidr_pair_details.setter + def ipv6_address_ipv6_subnet_cidr_pair_details(self, ipv6_address_ipv6_subnet_cidr_pair_details): + """ + Sets the ipv6_address_ipv6_subnet_cidr_pair_details of this CreateDbSystemDetails. + + :param ipv6_address_ipv6_subnet_cidr_pair_details: The ipv6_address_ipv6_subnet_cidr_pair_details of this CreateDbSystemDetails. + :type: oci.mysql.models.Ipv6AddressIpv6SubnetCidrPairDetails + """ + self._ipv6_address_ipv6_subnet_cidr_pair_details = ipv6_address_ipv6_subnet_cidr_pair_details + @property def port(self): """ diff --git a/src/oci/mysql/models/create_read_endpoint_details.py b/src/oci/mysql/models/create_read_endpoint_details.py index 01a2428e78..1b664d7e8d 100644 --- a/src/oci/mysql/models/create_read_endpoint_details.py +++ b/src/oci/mysql/models/create_read_endpoint_details.py @@ -28,6 +28,10 @@ def __init__(self, **kwargs): The value to assign to the read_endpoint_ip_address property of this CreateReadEndpointDetails. :type read_endpoint_ip_address: str + :param read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details: + The value to assign to the read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details property of this CreateReadEndpointDetails. + :type read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details: oci.mysql.models.Ipv6AddressIpv6SubnetCidrPairDetails + :param read_endpoint_hostname_label: The value to assign to the read_endpoint_hostname_label property of this CreateReadEndpointDetails. :type read_endpoint_hostname_label: str @@ -40,17 +44,20 @@ def __init__(self, **kwargs): self.swagger_types = { 'is_enabled': 'bool', 'read_endpoint_ip_address': 'str', + 'read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details': 'Ipv6AddressIpv6SubnetCidrPairDetails', 'read_endpoint_hostname_label': 'str', 'exclude_ips': 'list[str]' } self.attribute_map = { 'is_enabled': 'isEnabled', 'read_endpoint_ip_address': 'readEndpointIpAddress', + 'read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details': 'readEndpointIpv6AddressIpv6SubnetCidrPairDetails', 'read_endpoint_hostname_label': 'readEndpointHostnameLabel', 'exclude_ips': 'excludeIps' } self._is_enabled = None self._read_endpoint_ip_address = None + self._read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details = None self._read_endpoint_hostname_label = None self._exclude_ips = None @@ -110,6 +117,26 @@ def read_endpoint_ip_address(self, read_endpoint_ip_address): """ self._read_endpoint_ip_address = read_endpoint_ip_address + @property + def read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details(self): + """ + Gets the read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details of this CreateReadEndpointDetails. + + :return: The read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details of this CreateReadEndpointDetails. + :rtype: oci.mysql.models.Ipv6AddressIpv6SubnetCidrPairDetails + """ + return self._read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details + + @read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details.setter + def read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details(self, read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details): + """ + Sets the read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details of this CreateReadEndpointDetails. + + :param read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details: The read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details of this CreateReadEndpointDetails. + :type: oci.mysql.models.Ipv6AddressIpv6SubnetCidrPairDetails + """ + self._read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details = read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details + @property def read_endpoint_hostname_label(self): """ diff --git a/src/oci/mysql/models/db_system.py b/src/oci/mysql/models/db_system.py index 10d7414fa9..f9ff8d0bbe 100644 --- a/src/oci/mysql/models/db_system.py +++ b/src/oci/mysql/models/db_system.py @@ -180,6 +180,14 @@ def __init__(self, **kwargs): The value to assign to the ip_address property of this DbSystem. :type ip_address: str + :param is_ipv6_enabled: + The value to assign to the is_ipv6_enabled property of this DbSystem. + :type is_ipv6_enabled: bool + + :param ipv6_address_ipv6_subnet_cidr_pair_details: + The value to assign to the ipv6_address_ipv6_subnet_cidr_pair_details property of this DbSystem. + :type ipv6_address_ipv6_subnet_cidr_pair_details: oci.mysql.models.Ipv6AddressIpv6SubnetCidrPairDetails + :param port: The value to assign to the port property of this DbSystem. :type port: int @@ -309,6 +317,8 @@ def __init__(self, **kwargs): 'data_storage': 'DataStorage', 'hostname_label': 'str', 'ip_address': 'str', + 'is_ipv6_enabled': 'bool', + 'ipv6_address_ipv6_subnet_cidr_pair_details': 'Ipv6AddressIpv6SubnetCidrPairDetails', 'port': 'int', 'port_x': 'int', 'endpoints': 'list[DbSystemEndpoint]', @@ -359,6 +369,8 @@ def __init__(self, **kwargs): 'data_storage': 'dataStorage', 'hostname_label': 'hostnameLabel', 'ip_address': 'ipAddress', + 'is_ipv6_enabled': 'isIpv6Enabled', + 'ipv6_address_ipv6_subnet_cidr_pair_details': 'ipv6AddressIpv6SubnetCidrPairDetails', 'port': 'port', 'port_x': 'portX', 'endpoints': 'endpoints', @@ -408,6 +420,8 @@ def __init__(self, **kwargs): self._data_storage = None self._hostname_label = None self._ip_address = None + self._is_ipv6_enabled = None + self._ipv6_address_ipv6_subnet_cidr_pair_details = None self._port = None self._port_x = None self._endpoints = None @@ -1054,6 +1068,52 @@ def ip_address(self, ip_address): """ self._ip_address = ip_address + @property + def is_ipv6_enabled(self): + """ + Gets the is_ipv6_enabled of this DbSystem. + Whether an IPv6 address has been allocated for the DB system when attached + to an IPv6 enabled subnet. Default: False. + + + :return: The is_ipv6_enabled of this DbSystem. + :rtype: bool + """ + return self._is_ipv6_enabled + + @is_ipv6_enabled.setter + def is_ipv6_enabled(self, is_ipv6_enabled): + """ + Sets the is_ipv6_enabled of this DbSystem. + Whether an IPv6 address has been allocated for the DB system when attached + to an IPv6 enabled subnet. Default: False. + + + :param is_ipv6_enabled: The is_ipv6_enabled of this DbSystem. + :type: bool + """ + self._is_ipv6_enabled = is_ipv6_enabled + + @property + def ipv6_address_ipv6_subnet_cidr_pair_details(self): + """ + Gets the ipv6_address_ipv6_subnet_cidr_pair_details of this DbSystem. + + :return: The ipv6_address_ipv6_subnet_cidr_pair_details of this DbSystem. + :rtype: oci.mysql.models.Ipv6AddressIpv6SubnetCidrPairDetails + """ + return self._ipv6_address_ipv6_subnet_cidr_pair_details + + @ipv6_address_ipv6_subnet_cidr_pair_details.setter + def ipv6_address_ipv6_subnet_cidr_pair_details(self, ipv6_address_ipv6_subnet_cidr_pair_details): + """ + Sets the ipv6_address_ipv6_subnet_cidr_pair_details of this DbSystem. + + :param ipv6_address_ipv6_subnet_cidr_pair_details: The ipv6_address_ipv6_subnet_cidr_pair_details of this DbSystem. + :type: oci.mysql.models.Ipv6AddressIpv6SubnetCidrPairDetails + """ + self._ipv6_address_ipv6_subnet_cidr_pair_details = ipv6_address_ipv6_subnet_cidr_pair_details + @property def port(self): """ diff --git a/src/oci/mysql/models/db_system_endpoint.py b/src/oci/mysql/models/db_system_endpoint.py index ba103796ec..3fa94294f3 100644 --- a/src/oci/mysql/models/db_system_endpoint.py +++ b/src/oci/mysql/models/db_system_endpoint.py @@ -15,6 +15,14 @@ class DbSystemEndpoint(object): A particular functional endpoint for access to a DB System, and the properties that apply to it. """ + #: A constant which can be used with the ip_address_version property of a DbSystemEndpoint. + #: This constant has a value of "IPV4" + IP_ADDRESS_VERSION_IPV4 = "IPV4" + + #: A constant which can be used with the ip_address_version property of a DbSystemEndpoint. + #: This constant has a value of "IPV6" + IP_ADDRESS_VERSION_IPV6 = "IPV6" + #: A constant which can be used with the modes property of a DbSystemEndpoint. #: This constant has a value of "READ" MODES_READ = "READ" @@ -64,6 +72,12 @@ def __init__(self, **kwargs): The value to assign to the ip_address property of this DbSystemEndpoint. :type ip_address: str + :param ip_address_version: + The value to assign to the ip_address_version property of this DbSystemEndpoint. + Allowed values for this property are: "IPV4", "IPV6", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type ip_address_version: str + :param port: The value to assign to the port property of this DbSystemEndpoint. :type port: int @@ -102,6 +116,7 @@ def __init__(self, **kwargs): self.swagger_types = { 'hostname': 'str', 'ip_address': 'str', + 'ip_address_version': 'str', 'port': 'int', 'port_x': 'int', 'modes': 'list[str]', @@ -113,6 +128,7 @@ def __init__(self, **kwargs): self.attribute_map = { 'hostname': 'hostname', 'ip_address': 'ipAddress', + 'ip_address_version': 'ipAddressVersion', 'port': 'port', 'port_x': 'portX', 'modes': 'modes', @@ -123,6 +139,7 @@ def __init__(self, **kwargs): } self._hostname = None self._ip_address = None + self._ip_address_version = None self._port = None self._port_x = None self._modes = None @@ -179,6 +196,36 @@ def ip_address(self, ip_address): """ self._ip_address = ip_address + @property + def ip_address_version(self): + """ + Gets the ip_address_version of this DbSystemEndpoint. + The internet protocol (IP) version of the IP address. + + Allowed values for this property are: "IPV4", "IPV6", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The ip_address_version of this DbSystemEndpoint. + :rtype: str + """ + return self._ip_address_version + + @ip_address_version.setter + def ip_address_version(self, ip_address_version): + """ + Sets the ip_address_version of this DbSystemEndpoint. + The internet protocol (IP) version of the IP address. + + + :param ip_address_version: The ip_address_version of this DbSystemEndpoint. + :type: str + """ + allowed_values = ["IPV4", "IPV6"] + if not value_allowed_none_or_none_sentinel(ip_address_version, allowed_values): + ip_address_version = 'UNKNOWN_ENUM_VALUE' + self._ip_address_version = ip_address_version + @property def port(self): """ diff --git a/src/oci/mysql/models/db_system_snapshot.py b/src/oci/mysql/models/db_system_snapshot.py index 480a781684..e27f9feccd 100644 --- a/src/oci/mysql/models/db_system_snapshot.py +++ b/src/oci/mysql/models/db_system_snapshot.py @@ -108,6 +108,10 @@ def __init__(self, **kwargs): The value to assign to the ip_address property of this DbSystemSnapshot. :type ip_address: str + :param ipv6_address: + The value to assign to the ipv6_address property of this DbSystemSnapshot. + :type ipv6_address: str + :param port: The value to assign to the port property of this DbSystemSnapshot. :type port: int @@ -200,6 +204,7 @@ def __init__(self, **kwargs): 'data_storage': 'DataStorage', 'hostname_label': 'str', 'ip_address': 'str', + 'ipv6_address': 'str', 'port': 'int', 'port_x': 'int', 'rest': 'RestDetails', @@ -237,6 +242,7 @@ def __init__(self, **kwargs): 'data_storage': 'dataStorage', 'hostname_label': 'hostnameLabel', 'ip_address': 'ipAddress', + 'ipv6_address': 'ipv6Address', 'port': 'port', 'port_x': 'portX', 'rest': 'rest', @@ -273,6 +279,7 @@ def __init__(self, **kwargs): self._data_storage = None self._hostname_label = None self._ip_address = None + self._ipv6_address = None self._port = None self._port_x = None self._rest = None @@ -745,6 +752,30 @@ def ip_address(self, ip_address): """ self._ip_address = ip_address + @property + def ipv6_address(self): + """ + Gets the ipv6_address of this DbSystemSnapshot. + The IPv6 address the DB System is configured to listen on. + + + :return: The ipv6_address of this DbSystemSnapshot. + :rtype: str + """ + return self._ipv6_address + + @ipv6_address.setter + def ipv6_address(self, ipv6_address): + """ + Sets the ipv6_address of this DbSystemSnapshot. + The IPv6 address the DB System is configured to listen on. + + + :param ipv6_address: The ipv6_address of this DbSystemSnapshot. + :type: str + """ + self._ipv6_address = ipv6_address + @property def port(self): """ diff --git a/src/oci/mysql/models/initialization_variables.py b/src/oci/mysql/models/initialization_variables.py index 4eba9ef805..e89436f371 100644 --- a/src/oci/mysql/models/initialization_variables.py +++ b/src/oci/mysql/models/initialization_variables.py @@ -49,9 +49,7 @@ def lower_case_table_names(self): """ Gets the lower_case_table_names of this InitializationVariables. Represents the MySQL server system variable lower_case_table_names (https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_lower_case_table_names). - lowerCaseTableNames controls case-sensitivity of tables and schema names and how they are stored in the DB System. - Valid values are: - CASE_SENSITIVE - (default) Table and schema name comparisons are case-sensitive and stored as specified. (lower_case_table_names=0) - CASE_INSENSITIVE_LOWERCASE - Table and schema name comparisons are not case-sensitive and stored in lowercase. (lower_case_table_names=1) @@ -70,9 +68,7 @@ def lower_case_table_names(self, lower_case_table_names): """ Sets the lower_case_table_names of this InitializationVariables. Represents the MySQL server system variable lower_case_table_names (https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_lower_case_table_names). - lowerCaseTableNames controls case-sensitivity of tables and schema names and how they are stored in the DB System. - Valid values are: - CASE_SENSITIVE - (default) Table and schema name comparisons are case-sensitive and stored as specified. (lower_case_table_names=0) - CASE_INSENSITIVE_LOWERCASE - Table and schema name comparisons are not case-sensitive and stored in lowercase. (lower_case_table_names=1) diff --git a/src/oci/mysql/models/ipv6_address_ipv6_subnet_cidr_pair_details.py b/src/oci/mysql/models/ipv6_address_ipv6_subnet_cidr_pair_details.py new file mode 100644 index 0000000000..fc9925ad86 --- /dev/null +++ b/src/oci/mysql/models/ipv6_address_ipv6_subnet_cidr_pair_details.py @@ -0,0 +1,101 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190415 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class Ipv6AddressIpv6SubnetCidrPairDetails(object): + """ + Details to assign an IPv6 subnet prefix or IPv6 address to a resource. + """ + + def __init__(self, **kwargs): + """ + Initializes a new Ipv6AddressIpv6SubnetCidrPairDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param ipv6_subnet_cidr: + The value to assign to the ipv6_subnet_cidr property of this Ipv6AddressIpv6SubnetCidrPairDetails. + :type ipv6_subnet_cidr: str + + :param ipv6_address: + The value to assign to the ipv6_address property of this Ipv6AddressIpv6SubnetCidrPairDetails. + :type ipv6_address: str + + """ + self.swagger_types = { + 'ipv6_subnet_cidr': 'str', + 'ipv6_address': 'str' + } + self.attribute_map = { + 'ipv6_subnet_cidr': 'ipv6SubnetCidr', + 'ipv6_address': 'ipv6Address' + } + self._ipv6_subnet_cidr = None + self._ipv6_address = None + + @property + def ipv6_subnet_cidr(self): + """ + Gets the ipv6_subnet_cidr of this Ipv6AddressIpv6SubnetCidrPairDetails. + The IPv6 prefix allocated to the subnet. + + + :return: The ipv6_subnet_cidr of this Ipv6AddressIpv6SubnetCidrPairDetails. + :rtype: str + """ + return self._ipv6_subnet_cidr + + @ipv6_subnet_cidr.setter + def ipv6_subnet_cidr(self, ipv6_subnet_cidr): + """ + Sets the ipv6_subnet_cidr of this Ipv6AddressIpv6SubnetCidrPairDetails. + The IPv6 prefix allocated to the subnet. + + + :param ipv6_subnet_cidr: The ipv6_subnet_cidr of this Ipv6AddressIpv6SubnetCidrPairDetails. + :type: str + """ + self._ipv6_subnet_cidr = ipv6_subnet_cidr + + @property + def ipv6_address(self): + """ + Gets the ipv6_address of this Ipv6AddressIpv6SubnetCidrPairDetails. + An IPv6 address of your choice. Must be an available IPv6 address within the subnet's prefix. + + + :return: The ipv6_address of this Ipv6AddressIpv6SubnetCidrPairDetails. + :rtype: str + """ + return self._ipv6_address + + @ipv6_address.setter + def ipv6_address(self, ipv6_address): + """ + Sets the ipv6_address of this Ipv6AddressIpv6SubnetCidrPairDetails. + An IPv6 address of your choice. Must be an available IPv6 address within the subnet's prefix. + + + :param ipv6_address: The ipv6_address of this Ipv6AddressIpv6SubnetCidrPairDetails. + :type: str + """ + self._ipv6_address = ipv6_address + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/mysql/models/read_endpoint_details.py b/src/oci/mysql/models/read_endpoint_details.py index e1c1a15083..dc13682625 100644 --- a/src/oci/mysql/models/read_endpoint_details.py +++ b/src/oci/mysql/models/read_endpoint_details.py @@ -28,6 +28,10 @@ def __init__(self, **kwargs): The value to assign to the read_endpoint_ip_address property of this ReadEndpointDetails. :type read_endpoint_ip_address: str + :param read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details: + The value to assign to the read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details property of this ReadEndpointDetails. + :type read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details: oci.mysql.models.Ipv6AddressIpv6SubnetCidrPairDetails + :param read_endpoint_hostname_label: The value to assign to the read_endpoint_hostname_label property of this ReadEndpointDetails. :type read_endpoint_hostname_label: str @@ -40,17 +44,20 @@ def __init__(self, **kwargs): self.swagger_types = { 'is_enabled': 'bool', 'read_endpoint_ip_address': 'str', + 'read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details': 'Ipv6AddressIpv6SubnetCidrPairDetails', 'read_endpoint_hostname_label': 'str', 'exclude_ips': 'list[str]' } self.attribute_map = { 'is_enabled': 'isEnabled', 'read_endpoint_ip_address': 'readEndpointIpAddress', + 'read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details': 'readEndpointIpv6AddressIpv6SubnetCidrPairDetails', 'read_endpoint_hostname_label': 'readEndpointHostnameLabel', 'exclude_ips': 'excludeIps' } self._is_enabled = None self._read_endpoint_ip_address = None + self._read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details = None self._read_endpoint_hostname_label = None self._exclude_ips = None @@ -110,6 +117,26 @@ def read_endpoint_ip_address(self, read_endpoint_ip_address): """ self._read_endpoint_ip_address = read_endpoint_ip_address + @property + def read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details(self): + """ + Gets the read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details of this ReadEndpointDetails. + + :return: The read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details of this ReadEndpointDetails. + :rtype: oci.mysql.models.Ipv6AddressIpv6SubnetCidrPairDetails + """ + return self._read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details + + @read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details.setter + def read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details(self, read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details): + """ + Sets the read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details of this ReadEndpointDetails. + + :param read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details: The read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details of this ReadEndpointDetails. + :type: oci.mysql.models.Ipv6AddressIpv6SubnetCidrPairDetails + """ + self._read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details = read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details + @property def read_endpoint_hostname_label(self): """ diff --git a/src/oci/mysql/models/replica.py b/src/oci/mysql/models/replica.py index 91fd26ae83..cc90a0d525 100644 --- a/src/oci/mysql/models/replica.py +++ b/src/oci/mysql/models/replica.py @@ -122,6 +122,10 @@ def __init__(self, **kwargs): The value to assign to the ip_address property of this Replica. :type ip_address: str + :param ipv6_address: + The value to assign to the ipv6_address property of this Replica. + :type ipv6_address: str + :param port: The value to assign to the port property of this Replica. :type port: int @@ -177,6 +181,7 @@ def __init__(self, **kwargs): 'nsg_ids': 'list[str]', 'security_attributes': 'dict(str, dict(str, object))', 'ip_address': 'str', + 'ipv6_address': 'str', 'port': 'int', 'port_x': 'int', 'freeform_tags': 'dict(str, str)', @@ -205,6 +210,7 @@ def __init__(self, **kwargs): 'nsg_ids': 'nsgIds', 'security_attributes': 'securityAttributes', 'ip_address': 'ipAddress', + 'ipv6_address': 'ipv6Address', 'port': 'port', 'port_x': 'portX', 'freeform_tags': 'freeformTags', @@ -232,6 +238,7 @@ def __init__(self, **kwargs): self._nsg_ids = None self._security_attributes = None self._ip_address = None + self._ipv6_address = None self._port = None self._port_x = None self._freeform_tags = None @@ -664,6 +671,30 @@ def ip_address(self, ip_address): """ self._ip_address = ip_address + @property + def ipv6_address(self): + """ + Gets the ipv6_address of this Replica. + The IPv6 address the read replica is configured to listen on. + + + :return: The ipv6_address of this Replica. + :rtype: str + """ + return self._ipv6_address + + @ipv6_address.setter + def ipv6_address(self, ipv6_address): + """ + Sets the ipv6_address of this Replica. + The IPv6 address the read replica is configured to listen on. + + + :param ipv6_address: The ipv6_address of this Replica. + :type: str + """ + self._ipv6_address = ipv6_address + @property def port(self): """ diff --git a/src/oci/mysql/models/replica_summary.py b/src/oci/mysql/models/replica_summary.py index 24c152f42d..8f8ec5b82e 100644 --- a/src/oci/mysql/models/replica_summary.py +++ b/src/oci/mysql/models/replica_summary.py @@ -114,6 +114,10 @@ def __init__(self, **kwargs): The value to assign to the ip_address property of this ReplicaSummary. :type ip_address: str + :param ipv6_address: + The value to assign to the ipv6_address property of this ReplicaSummary. + :type ipv6_address: str + :param port: The value to assign to the port property of this ReplicaSummary. :type port: int @@ -167,6 +171,7 @@ def __init__(self, **kwargs): 'nsg_ids': 'list[str]', 'security_attributes': 'dict(str, dict(str, object))', 'ip_address': 'str', + 'ipv6_address': 'str', 'port': 'int', 'port_x': 'int', 'freeform_tags': 'dict(str, str)', @@ -193,6 +198,7 @@ def __init__(self, **kwargs): 'nsg_ids': 'nsgIds', 'security_attributes': 'securityAttributes', 'ip_address': 'ipAddress', + 'ipv6_address': 'ipv6Address', 'port': 'port', 'port_x': 'portX', 'freeform_tags': 'freeformTags', @@ -218,6 +224,7 @@ def __init__(self, **kwargs): self._nsg_ids = None self._security_attributes = None self._ip_address = None + self._ipv6_address = None self._port = None self._port_x = None self._freeform_tags = None @@ -610,6 +617,30 @@ def ip_address(self, ip_address): """ self._ip_address = ip_address + @property + def ipv6_address(self): + """ + Gets the ipv6_address of this ReplicaSummary. + The IPv6 address the read replica is configured to listen on. + + + :return: The ipv6_address of this ReplicaSummary. + :rtype: str + """ + return self._ipv6_address + + @ipv6_address.setter + def ipv6_address(self, ipv6_address): + """ + Sets the ipv6_address of this ReplicaSummary. + The IPv6 address the read replica is configured to listen on. + + + :param ipv6_address: The ipv6_address of this ReplicaSummary. + :type: str + """ + self._ipv6_address = ipv6_address + @property def port(self): """ diff --git a/src/oci/mysql/models/update_channel_source_from_mysql_details.py b/src/oci/mysql/models/update_channel_source_from_mysql_details.py index 38424af492..87770ce0a0 100644 --- a/src/oci/mysql/models/update_channel_source_from_mysql_details.py +++ b/src/oci/mysql/models/update_channel_source_from_mysql_details.py @@ -54,6 +54,10 @@ def __init__(self, **kwargs): The value to assign to the anonymous_transactions_handling property of this UpdateChannelSourceFromMysqlDetails. :type anonymous_transactions_handling: oci.mysql.models.AnonymousTransactionsHandling + :param must_use_ipv6_on_dual_stack: + The value to assign to the must_use_ipv6_on_dual_stack property of this UpdateChannelSourceFromMysqlDetails. + :type must_use_ipv6_on_dual_stack: bool + """ self.swagger_types = { 'source_type': 'str', @@ -63,7 +67,8 @@ def __init__(self, **kwargs): 'password': 'str', 'ssl_mode': 'str', 'ssl_ca_certificate': 'CaCertificate', - 'anonymous_transactions_handling': 'AnonymousTransactionsHandling' + 'anonymous_transactions_handling': 'AnonymousTransactionsHandling', + 'must_use_ipv6_on_dual_stack': 'bool' } self.attribute_map = { 'source_type': 'sourceType', @@ -73,7 +78,8 @@ def __init__(self, **kwargs): 'password': 'password', 'ssl_mode': 'sslMode', 'ssl_ca_certificate': 'sslCaCertificate', - 'anonymous_transactions_handling': 'anonymousTransactionsHandling' + 'anonymous_transactions_handling': 'anonymousTransactionsHandling', + 'must_use_ipv6_on_dual_stack': 'mustUseIpv6OnDualStack' } self._source_type = None self._hostname = None @@ -83,6 +89,7 @@ def __init__(self, **kwargs): self._ssl_mode = None self._ssl_ca_certificate = None self._anonymous_transactions_handling = None + self._must_use_ipv6_on_dual_stack = None self._source_type = 'MYSQL' @property @@ -259,6 +266,32 @@ def anonymous_transactions_handling(self, anonymous_transactions_handling): """ self._anonymous_transactions_handling = anonymous_transactions_handling + @property + def must_use_ipv6_on_dual_stack(self): + """ + Gets the must_use_ipv6_on_dual_stack of this UpdateChannelSourceFromMysqlDetails. + Whether the connection of the channel will be requested using the IPv6 address of + the dual stack DB system or not. Default: False. + + + :return: The must_use_ipv6_on_dual_stack of this UpdateChannelSourceFromMysqlDetails. + :rtype: bool + """ + return self._must_use_ipv6_on_dual_stack + + @must_use_ipv6_on_dual_stack.setter + def must_use_ipv6_on_dual_stack(self, must_use_ipv6_on_dual_stack): + """ + Sets the must_use_ipv6_on_dual_stack of this UpdateChannelSourceFromMysqlDetails. + Whether the connection of the channel will be requested using the IPv6 address of + the dual stack DB system or not. Default: False. + + + :param must_use_ipv6_on_dual_stack: The must_use_ipv6_on_dual_stack of this UpdateChannelSourceFromMysqlDetails. + :type: bool + """ + self._must_use_ipv6_on_dual_stack = must_use_ipv6_on_dual_stack + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/mysql/models/update_db_system_details.py b/src/oci/mysql/models/update_db_system_details.py index 854e7c232d..cfd5fa97bb 100644 --- a/src/oci/mysql/models/update_db_system_details.py +++ b/src/oci/mysql/models/update_db_system_details.py @@ -120,6 +120,14 @@ def __init__(self, **kwargs): The value to assign to the ip_address property of this UpdateDbSystemDetails. :type ip_address: str + :param is_ipv6_enabled: + The value to assign to the is_ipv6_enabled property of this UpdateDbSystemDetails. + :type is_ipv6_enabled: bool + + :param ipv6_address_ipv6_subnet_cidr_pair_details: + The value to assign to the ipv6_address_ipv6_subnet_cidr_pair_details property of this UpdateDbSystemDetails. + :type ipv6_address_ipv6_subnet_cidr_pair_details: oci.mysql.models.Ipv6AddressIpv6SubnetCidrPairDetails + :param port: The value to assign to the port property of this UpdateDbSystemDetails. :type port: int @@ -201,6 +209,8 @@ def __init__(self, **kwargs): 'data_storage': 'DataStorageDetails', 'hostname_label': 'str', 'ip_address': 'str', + 'is_ipv6_enabled': 'bool', + 'ipv6_address_ipv6_subnet_cidr_pair_details': 'Ipv6AddressIpv6SubnetCidrPairDetails', 'port': 'int', 'port_x': 'int', 'backup_policy': 'UpdateBackupPolicyDetails', @@ -238,6 +248,8 @@ def __init__(self, **kwargs): 'data_storage': 'dataStorage', 'hostname_label': 'hostnameLabel', 'ip_address': 'ipAddress', + 'is_ipv6_enabled': 'isIpv6Enabled', + 'ipv6_address_ipv6_subnet_cidr_pair_details': 'ipv6AddressIpv6SubnetCidrPairDetails', 'port': 'port', 'port_x': 'portX', 'backup_policy': 'backupPolicy', @@ -274,6 +286,8 @@ def __init__(self, **kwargs): self._data_storage = None self._hostname_label = None self._ip_address = None + self._is_ipv6_enabled = None + self._ipv6_address_ipv6_subnet_cidr_pair_details = None self._port = None self._port_x = None self._backup_policy = None @@ -893,6 +907,58 @@ def ip_address(self, ip_address): """ self._ip_address = ip_address + @property + def is_ipv6_enabled(self): + """ + Gets the is_ipv6_enabled of this UpdateDbSystemDetails. + Whether to allocate an IPv6 address for the DB system in an IPv6 enabled subnet. + When provided you may optionally + provide an IPv6 prefix (ipv6AddressIpv6SubnetCidrPairDetails) of your choice to assign the IPv6 + address from. If ipv6AddressIpv6SubnetCidrPairDetails is not provided then an IPv6 prefix is + chosen for you. + + + :return: The is_ipv6_enabled of this UpdateDbSystemDetails. + :rtype: bool + """ + return self._is_ipv6_enabled + + @is_ipv6_enabled.setter + def is_ipv6_enabled(self, is_ipv6_enabled): + """ + Sets the is_ipv6_enabled of this UpdateDbSystemDetails. + Whether to allocate an IPv6 address for the DB system in an IPv6 enabled subnet. + When provided you may optionally + provide an IPv6 prefix (ipv6AddressIpv6SubnetCidrPairDetails) of your choice to assign the IPv6 + address from. If ipv6AddressIpv6SubnetCidrPairDetails is not provided then an IPv6 prefix is + chosen for you. + + + :param is_ipv6_enabled: The is_ipv6_enabled of this UpdateDbSystemDetails. + :type: bool + """ + self._is_ipv6_enabled = is_ipv6_enabled + + @property + def ipv6_address_ipv6_subnet_cidr_pair_details(self): + """ + Gets the ipv6_address_ipv6_subnet_cidr_pair_details of this UpdateDbSystemDetails. + + :return: The ipv6_address_ipv6_subnet_cidr_pair_details of this UpdateDbSystemDetails. + :rtype: oci.mysql.models.Ipv6AddressIpv6SubnetCidrPairDetails + """ + return self._ipv6_address_ipv6_subnet_cidr_pair_details + + @ipv6_address_ipv6_subnet_cidr_pair_details.setter + def ipv6_address_ipv6_subnet_cidr_pair_details(self, ipv6_address_ipv6_subnet_cidr_pair_details): + """ + Sets the ipv6_address_ipv6_subnet_cidr_pair_details of this UpdateDbSystemDetails. + + :param ipv6_address_ipv6_subnet_cidr_pair_details: The ipv6_address_ipv6_subnet_cidr_pair_details of this UpdateDbSystemDetails. + :type: oci.mysql.models.Ipv6AddressIpv6SubnetCidrPairDetails + """ + self._ipv6_address_ipv6_subnet_cidr_pair_details = ipv6_address_ipv6_subnet_cidr_pair_details + @property def port(self): """ diff --git a/src/oci/mysql/models/update_read_endpoint_details.py b/src/oci/mysql/models/update_read_endpoint_details.py index 2f312e8fc7..893fe287b4 100644 --- a/src/oci/mysql/models/update_read_endpoint_details.py +++ b/src/oci/mysql/models/update_read_endpoint_details.py @@ -28,6 +28,10 @@ def __init__(self, **kwargs): The value to assign to the read_endpoint_ip_address property of this UpdateReadEndpointDetails. :type read_endpoint_ip_address: str + :param read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details: + The value to assign to the read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details property of this UpdateReadEndpointDetails. + :type read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details: oci.mysql.models.Ipv6AddressIpv6SubnetCidrPairDetails + :param read_endpoint_hostname_label: The value to assign to the read_endpoint_hostname_label property of this UpdateReadEndpointDetails. :type read_endpoint_hostname_label: str @@ -40,17 +44,20 @@ def __init__(self, **kwargs): self.swagger_types = { 'is_enabled': 'bool', 'read_endpoint_ip_address': 'str', + 'read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details': 'Ipv6AddressIpv6SubnetCidrPairDetails', 'read_endpoint_hostname_label': 'str', 'exclude_ips': 'list[str]' } self.attribute_map = { 'is_enabled': 'isEnabled', 'read_endpoint_ip_address': 'readEndpointIpAddress', + 'read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details': 'readEndpointIpv6AddressIpv6SubnetCidrPairDetails', 'read_endpoint_hostname_label': 'readEndpointHostnameLabel', 'exclude_ips': 'excludeIps' } self._is_enabled = None self._read_endpoint_ip_address = None + self._read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details = None self._read_endpoint_hostname_label = None self._exclude_ips = None @@ -110,6 +117,26 @@ def read_endpoint_ip_address(self, read_endpoint_ip_address): """ self._read_endpoint_ip_address = read_endpoint_ip_address + @property + def read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details(self): + """ + Gets the read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details of this UpdateReadEndpointDetails. + + :return: The read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details of this UpdateReadEndpointDetails. + :rtype: oci.mysql.models.Ipv6AddressIpv6SubnetCidrPairDetails + """ + return self._read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details + + @read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details.setter + def read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details(self, read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details): + """ + Sets the read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details of this UpdateReadEndpointDetails. + + :param read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details: The read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details of this UpdateReadEndpointDetails. + :type: oci.mysql.models.Ipv6AddressIpv6SubnetCidrPairDetails + """ + self._read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details = read_endpoint_ipv6_address_ipv6_subnet_cidr_pair_details + @property def read_endpoint_hostname_label(self): """ diff --git a/src/oci/version.py b/src/oci/version.py index 84b6112c89..3da0a063ca 100644 --- a/src/oci/version.py +++ b/src/oci/version.py @@ -2,4 +2,4 @@ # Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. # This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. -__version__ = "2.177.0" +__version__ = "2.178.0" diff --git a/tests/test_config_container.py b/tests/test_config_container.py index 0addb302e1..eb33fad220 100644 --- a/tests/test_config_container.py +++ b/tests/test_config_container.py @@ -24,7 +24,8 @@ def create_vcr(**kwargs): vcr_to_use = vcr.VCR( serializer='yaml', cassette_library_dir='tests/fixtures/cassettes', - record_mode=vcr_mode + record_mode=vcr_mode, + decode_compressed_response=True ) if 'match_on' in kwargs: diff --git a/tox.ini b/tox.ini index cfff94f517..cac802edd3 100644 --- a/tox.ini +++ b/tox.ini @@ -1,12 +1,17 @@ [tox] envlist = py36, py37, py38, py39, py310, py311, py312, py313, flake8 +skip_missing_interpreters = true [testenv] -passenv = PYTHON_TESTS_ADMIN_PASS_PHRASE OCI_PYSDK* +passenv = PYTHON_TESTS_ADMIN_PASS_PHRASE + OCI_PYSDK* setenv = PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 deps = -r{toxinidir}/requirements.txt +allowlist_externals = bash commands = - py.test -p pytest_cov.plugin tests/autogentest tests/unit tests/integ [] -s + bash buildServiceScripts/run_pytests_unset_proxies.sh [] [testenv:flake8] +skip_install = true +deps = flake8>=3.6.0,<6 commands = flake8 src docs tests examples --exclude src/oci/_vendor,docs/conf.py \ No newline at end of file From 5f609df03cc5dc448ea2196f099d4e791f76d2e5 Mon Sep 17 00:00:00 2001 From: OCI DEX Release Bot Automation Date: Tue, 16 Jun 2026 06:15:28 +0000 Subject: [PATCH 02/11] Releasing version 2.179.0 Co-authored-by: Harsh Kumar --- CHANGELOG.rst | 28 + docs/api/apm_config.rst | 3 + .../models/oci.apm_config.models.DataFile.rst | 11 + .../oci.apm_config.models.DataFileSummary.rst | 11 + ...onfig.models.DataFileSummaryCollection.rst | 11 + docs/api/database.rst | 3 + ...tartAutonomousContainerDatabaseDetails.rst | 11 + ...odels.RestartAutonomousDatabaseDetails.rst | 11 + ...e.models.StopAutonomousDatabaseDetails.rst | 11 + docs/api/desktops.rst | 2 + ...dels.UpdateDesktopNetworkConfiguration.rst | 11 + ....UpdateDesktopPoolPrivateAccessDetails.rst | 11 + docs/api/landing.rst | 1 + docs/api/opensearch.rst | 1 - docs/api/psql.rst | 29 + ...psql.models.ChangeRoleToReplicaDetails.rst | 11 + ...l.models.ChangeRoleToStandaloneDetails.rst | 11 + ....models.CreateReplicationConfigDetails.rst | 11 + ...ci.psql.models.DateTimeRangeCapability.rst | 11 + ....psql.models.DbSystemReplicaCollection.rst | 11 + ...ci.psql.models.DbSystemReplicaSummary.rst} | 6 +- ...oci.psql.models.DisabledInsightDetails.rst | 11 + ...sql.models.DisabledKerberosAuthDetails.rst | 11 + .../oci.psql.models.EnabledInsightDetails.rst | 11 + ...psql.models.EnabledKerberosAuthDetails.rst | 11 + .../oci.psql.models.GranularityCapability.rst | 11 + ...sql.models.InsightCapabilityCollection.rst | 11 + ...i.psql.models.InsightCapabilitySummary.rst | 11 + .../oci.psql.models.InsightDataContract.rst | 11 + ....psql.models.InsightDataTypeCapability.rst | 11 + ...ci.psql.models.InsightFilterCapability.rst | 11 + .../models/oci.psql.models.InsightLimits.rst | 11 + .../oci.psql.models.KerberosAuthDetails.rst | 11 + .../oci.psql.models.KerberosCredential.rst | 11 + .../models/oci.psql.models.OdspInsight.rst | 11 + .../oci.psql.models.OdspInsightDetails.rst | 11 + .../oci.psql.models.PaginationCapability.rst | 11 + ...ql.models.PrimaryDbSystemSourceDetails.rst | 11 + .../oci.psql.models.ReplicationConfig.rst | 11 + .../oci.psql.models.SortingCapability.rst | 11 + .../models/oci.psql.models.SortingDefault.rst | 11 + .../oci.psql.models.StartDbSystemDetails.rst | 11 + .../oci.psql.models.SwitchOverDetails.rst | 11 + ....models.UpdateReplicationConfigDetails.rst | 11 + docs/api/tenant_manager_control_plane.rst | 7 +- ...nager_control_plane.LinkFeaturesClient.rst | 8 + ....LinkFeaturesClientCompositeOperations.rst | 8 + ...ontrol_plane.models.InvitationFeature.rst} | 6 +- ...ontrol_plane.models.LinkFeatureSummary.rst | 11 + ...ol_plane.models.LinkFeaturesCollection.rst | 11 + ...trol_plane.models.LinkWithTenancyNames.rst | 11 + src/oci/apm_config/config_client.py | 931 ++++++++++++++++-- src/oci/apm_config/models/__init__.py | 6 + src/oci/apm_config/models/data_file.py | 39 + .../apm_config/models/data_file_summary.py | 237 +++++ .../models/data_file_summary_collection.py | 70 ++ .../apm_control_plane/models/apm_domain.py | 31 + .../models/apm_domain_summary.py | 31 + .../models/base_domain_details.py | 31 + .../models/create_apm_domain_details.py | 31 + .../models/update_apm_domain_details.py | 31 + .../models/create_migration_details.py | 45 +- src/oci/cloud_migrations/models/migration.py | 45 +- .../models/migration_summary.py | 45 +- .../models/update_migration_details.py | 45 +- .../create_node_pool_node_config_details.py | 31 + .../models/node_pool_node_config_details.py | 31 + .../node_pool_placement_config_details.py | 31 + src/oci/database/database_client.py | 264 ++++- .../database_client_composite_operations.py | 80 +- src/oci/database/models/__init__.py | 6 + src/oci/database/models/db_node.py | 63 ++ src/oci/database/models/db_node_summary.py | 63 ++ ...t_autonomous_container_database_details.py | 70 ++ .../restart_autonomous_database_details.py | 70 ++ .../stop_autonomous_database_details.py | 70 ++ src/oci/desktops/models/__init__.py | 4 + .../models/create_desktop_pool_details.py | 45 + ...ate_desktop_pool_private_access_details.py | 49 +- .../models/desktop_network_configuration.py | 49 +- src/oci/desktops/models/desktop_pool.py | 45 + .../desktop_pool_private_access_details.py | 49 +- .../desktops/models/desktop_pool_summary.py | 45 + .../update_desktop_network_configuration.py | 84 ++ .../models/update_desktop_pool_details.py | 99 ++ ...ate_desktop_pool_private_access_details.py | 84 ++ .../models/create_private_endpoint_details.py | 45 +- .../object_storage/models/private_endpoint.py | 41 + .../models/update_private_endpoint_details.py | 45 +- src/oci/opensearch/models/__init__.py | 2 - .../create_opensearch_cluster_details.py | 167 ++++ .../opensearch/models/opensearch_cluster.py | 167 ++++ ...e_opensearch_cluster_horizontal_details.py | 31 + ...ize_opensearch_cluster_vertical_details.py | 93 ++ .../models/update_cluster_specs_details.py | 124 +++ .../access_requests_client.py | 27 +- .../models/access_request.py | 10 +- .../models/access_request_summary.py | 41 +- ...ate_operator_control_assignment_details.py | 10 +- .../models/create_operator_control_details.py | 41 +- .../models/operator_action.py | 10 +- .../models/operator_action_summary.py | 10 +- .../models/operator_control.py | 41 +- .../models/operator_control_assignment.py | 20 +- .../operator_control_assignment_summary.py | 20 +- .../models/operator_control_summary.py | 10 +- .../models/update_operator_control_details.py | 31 + .../operator_actions_client.py | 6 +- .../operator_control_assignment_client.py | 22 +- .../operator_control_client.py | 14 +- src/oci/psql/models/__init__.py | 58 ++ src/oci/psql/models/backup_copy_details.py | 4 +- src/oci/psql/models/backup_source_details.py | 2 +- .../models/change_role_to_replica_details.py | 70 ++ .../change_role_to_standalone_details.py | 90 ++ .../psql/models/create_db_system_details.py | 56 +- .../create_replication_config_details.py | 108 ++ .../psql/models/date_time_range_capability.py | 70 ++ src/oci/psql/models/db_system.py | 140 ++- .../models/db_system_replica_collection.py | 70 ++ .../psql/models/db_system_replica_summary.py | 103 ++ .../psql/models/disabled_insight_details.py | 49 + .../models/disabled_kerberos_auth_details.py | 49 + .../psql/models/enabled_insight_details.py | 80 ++ .../models/enabled_kerberos_auth_details.py | 111 +++ src/oci/psql/models/granularity_capability.py | 152 +++ .../models/insight_capability_collection.py | 70 ++ .../psql/models/insight_capability_summary.py | 144 +++ src/oci/psql/models/insight_data_contract.py | 121 +++ .../models/insight_data_type_capability.py | 310 ++++++ .../psql/models/insight_filter_capability.py | 163 +++ src/oci/psql/models/insight_limits.py | 101 ++ src/oci/psql/models/kerberos_auth_details.py | 107 ++ src/oci/psql/models/kerberos_credential.py | 144 +++ src/oci/psql/models/none_source_details.py | 2 +- src/oci/psql/models/odsp_insight.py | 113 +++ src/oci/psql/models/odsp_insight_details.py | 107 ++ src/oci/psql/models/pagination_capability.py | 132 +++ .../primary_db_system_source_details.py | 80 ++ src/oci/psql/models/replication_config.py | 106 ++ src/oci/psql/models/sorting_capability.py | 128 +++ src/oci/psql/models/sorting_default.py | 117 +++ src/oci/psql/models/source_details.py | 14 +- .../psql/models/start_db_system_details.py | 163 +++ src/oci/psql/models/switch_over_details.py | 70 ++ .../psql/models/update_db_system_details.py | 81 ++ .../update_replication_config_details.py | 108 ++ src/oci/psql/postgresql_client.py | 914 ++++++++++++++++- .../postgresql_client_composite_operations.py | 207 ++++ .../tenant_manager_control_plane/__init__.py | 4 +- .../link_client.py | 110 +++ .../link_features_client.py | 225 +++++ ...nk_features_client_composite_operations.py | 26 + .../models/__init__.py | 10 +- .../models/create_child_tenancy_details.py | 35 +- .../create_sender_invitation_details.py | 31 + .../models/domain.py | 31 + .../models/domain_governance.py | 31 + .../models/domain_governance_summary.py | 31 + .../models/domain_summary.py | 31 + .../models/invitation_feature.py | 164 +++ .../models/link.py | 35 +- .../models/link_feature_summary.py | 194 ++++ .../models/link_features_collection.py} | 46 +- .../models/link_summary.py | 35 +- .../models/link_with_tenancy_names.py | 381 +++++++ .../models/recipient_invitation.py | 31 + .../models/recipient_invitation_summary.py | 31 + .../revive_workflow_instance_details.py | 101 -- .../models/sender_invitation.py | 41 +- .../models/sender_invitation_summary.py | 41 +- .../sender_invitation_client.py | 4 +- src/oci/version.py | 2 +- 173 files changed, 10539 insertions(+), 355 deletions(-) create mode 100644 docs/api/apm_config/models/oci.apm_config.models.DataFile.rst create mode 100644 docs/api/apm_config/models/oci.apm_config.models.DataFileSummary.rst create mode 100644 docs/api/apm_config/models/oci.apm_config.models.DataFileSummaryCollection.rst create mode 100644 docs/api/database/models/oci.database.models.RestartAutonomousContainerDatabaseDetails.rst create mode 100644 docs/api/database/models/oci.database.models.RestartAutonomousDatabaseDetails.rst create mode 100644 docs/api/database/models/oci.database.models.StopAutonomousDatabaseDetails.rst create mode 100644 docs/api/desktops/models/oci.desktops.models.UpdateDesktopNetworkConfiguration.rst create mode 100644 docs/api/desktops/models/oci.desktops.models.UpdateDesktopPoolPrivateAccessDetails.rst create mode 100644 docs/api/psql/models/oci.psql.models.ChangeRoleToReplicaDetails.rst create mode 100644 docs/api/psql/models/oci.psql.models.ChangeRoleToStandaloneDetails.rst create mode 100644 docs/api/psql/models/oci.psql.models.CreateReplicationConfigDetails.rst create mode 100644 docs/api/psql/models/oci.psql.models.DateTimeRangeCapability.rst create mode 100644 docs/api/psql/models/oci.psql.models.DbSystemReplicaCollection.rst rename docs/api/{opensearch/models/oci.opensearch.models.CustomerLoggingDetails.rst => psql/models/oci.psql.models.DbSystemReplicaSummary.rst} (57%) create mode 100644 docs/api/psql/models/oci.psql.models.DisabledInsightDetails.rst create mode 100644 docs/api/psql/models/oci.psql.models.DisabledKerberosAuthDetails.rst create mode 100644 docs/api/psql/models/oci.psql.models.EnabledInsightDetails.rst create mode 100644 docs/api/psql/models/oci.psql.models.EnabledKerberosAuthDetails.rst create mode 100644 docs/api/psql/models/oci.psql.models.GranularityCapability.rst create mode 100644 docs/api/psql/models/oci.psql.models.InsightCapabilityCollection.rst create mode 100644 docs/api/psql/models/oci.psql.models.InsightCapabilitySummary.rst create mode 100644 docs/api/psql/models/oci.psql.models.InsightDataContract.rst create mode 100644 docs/api/psql/models/oci.psql.models.InsightDataTypeCapability.rst create mode 100644 docs/api/psql/models/oci.psql.models.InsightFilterCapability.rst create mode 100644 docs/api/psql/models/oci.psql.models.InsightLimits.rst create mode 100644 docs/api/psql/models/oci.psql.models.KerberosAuthDetails.rst create mode 100644 docs/api/psql/models/oci.psql.models.KerberosCredential.rst create mode 100644 docs/api/psql/models/oci.psql.models.OdspInsight.rst create mode 100644 docs/api/psql/models/oci.psql.models.OdspInsightDetails.rst create mode 100644 docs/api/psql/models/oci.psql.models.PaginationCapability.rst create mode 100644 docs/api/psql/models/oci.psql.models.PrimaryDbSystemSourceDetails.rst create mode 100644 docs/api/psql/models/oci.psql.models.ReplicationConfig.rst create mode 100644 docs/api/psql/models/oci.psql.models.SortingCapability.rst create mode 100644 docs/api/psql/models/oci.psql.models.SortingDefault.rst create mode 100644 docs/api/psql/models/oci.psql.models.StartDbSystemDetails.rst create mode 100644 docs/api/psql/models/oci.psql.models.SwitchOverDetails.rst create mode 100644 docs/api/psql/models/oci.psql.models.UpdateReplicationConfigDetails.rst create mode 100644 docs/api/tenant_manager_control_plane/client/oci.tenant_manager_control_plane.LinkFeaturesClient.rst create mode 100644 docs/api/tenant_manager_control_plane/client/oci.tenant_manager_control_plane.LinkFeaturesClientCompositeOperations.rst rename docs/api/tenant_manager_control_plane/models/{oci.tenant_manager_control_plane.models.ReviveWorkflowInstanceDetails.rst => oci.tenant_manager_control_plane.models.InvitationFeature.rst} (62%) create mode 100644 docs/api/tenant_manager_control_plane/models/oci.tenant_manager_control_plane.models.LinkFeatureSummary.rst create mode 100644 docs/api/tenant_manager_control_plane/models/oci.tenant_manager_control_plane.models.LinkFeaturesCollection.rst create mode 100644 docs/api/tenant_manager_control_plane/models/oci.tenant_manager_control_plane.models.LinkWithTenancyNames.rst create mode 100644 src/oci/apm_config/models/data_file.py create mode 100644 src/oci/apm_config/models/data_file_summary.py create mode 100644 src/oci/apm_config/models/data_file_summary_collection.py create mode 100644 src/oci/database/models/restart_autonomous_container_database_details.py create mode 100644 src/oci/database/models/restart_autonomous_database_details.py create mode 100644 src/oci/database/models/stop_autonomous_database_details.py create mode 100644 src/oci/desktops/models/update_desktop_network_configuration.py create mode 100644 src/oci/desktops/models/update_desktop_pool_private_access_details.py create mode 100644 src/oci/psql/models/change_role_to_replica_details.py create mode 100644 src/oci/psql/models/change_role_to_standalone_details.py create mode 100644 src/oci/psql/models/create_replication_config_details.py create mode 100644 src/oci/psql/models/date_time_range_capability.py create mode 100644 src/oci/psql/models/db_system_replica_collection.py create mode 100644 src/oci/psql/models/db_system_replica_summary.py create mode 100644 src/oci/psql/models/disabled_insight_details.py create mode 100644 src/oci/psql/models/disabled_kerberos_auth_details.py create mode 100644 src/oci/psql/models/enabled_insight_details.py create mode 100644 src/oci/psql/models/enabled_kerberos_auth_details.py create mode 100644 src/oci/psql/models/granularity_capability.py create mode 100644 src/oci/psql/models/insight_capability_collection.py create mode 100644 src/oci/psql/models/insight_capability_summary.py create mode 100644 src/oci/psql/models/insight_data_contract.py create mode 100644 src/oci/psql/models/insight_data_type_capability.py create mode 100644 src/oci/psql/models/insight_filter_capability.py create mode 100644 src/oci/psql/models/insight_limits.py create mode 100644 src/oci/psql/models/kerberos_auth_details.py create mode 100644 src/oci/psql/models/kerberos_credential.py create mode 100644 src/oci/psql/models/odsp_insight.py create mode 100644 src/oci/psql/models/odsp_insight_details.py create mode 100644 src/oci/psql/models/pagination_capability.py create mode 100644 src/oci/psql/models/primary_db_system_source_details.py create mode 100644 src/oci/psql/models/replication_config.py create mode 100644 src/oci/psql/models/sorting_capability.py create mode 100644 src/oci/psql/models/sorting_default.py create mode 100644 src/oci/psql/models/start_db_system_details.py create mode 100644 src/oci/psql/models/switch_over_details.py create mode 100644 src/oci/psql/models/update_replication_config_details.py create mode 100644 src/oci/tenant_manager_control_plane/link_features_client.py create mode 100644 src/oci/tenant_manager_control_plane/link_features_client_composite_operations.py create mode 100644 src/oci/tenant_manager_control_plane/models/invitation_feature.py create mode 100644 src/oci/tenant_manager_control_plane/models/link_feature_summary.py rename src/oci/{opensearch/models/customer_logging_details.py => tenant_manager_control_plane/models/link_features_collection.py} (50%) create mode 100644 src/oci/tenant_manager_control_plane/models/link_with_tenancy_names.py delete mode 100644 src/oci/tenant_manager_control_plane/models/revive_workflow_instance_details.py diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 8d589b6bc4..aa37bc4ac7 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -4,6 +4,34 @@ All notable changes to this project will be documented in this file. The format is based on `Keep a Changelog `_. +==================== +2.179.0 - 2026-06-16 +==================== + +Added +----- +* Support for ExaDB-D Public Cloud in the Operator Access Control service +* Support for cross region replication with hot standby in the PostgreSQL service +* Support for starting and stopping DB systems in the PostgreSQL service +* Support for Kerberos authentication in the PostgreSQL service +* Support for performance insights in the PostgreSQL service +* Support for log analytics integration in the Application Performance Monitoring Control Plane service +* Support for storing large data files in Application Performance Monitoring configurations in the Application Performance Monitoring service +* Support for compute clusters and host groups in the Kubernetes Engine service +* Support for Zero Trust Packet Routing (ZPR) security attributes on private endpoints in the Object Storage service +* Support for Zero Trust Packet Routing (ZPR) security attributes in the Cloud Migrations service +* Support for Zero Trust Packet Routing (ZPR) security attributes in the Secure Desktops service +* Support for forcefully restarting and stopping Autonomous Databases and Autonomous Container Databases in the Database service +* Support for restarting Oracle Rest Data Services (ORDS) services on Autonomous VM Clusters and Cloud Autonomous VM Clusters in the Database service +* Support for triggering forced reboot and stop of DB nodes in ExaDB-D, ExaDB-XS and ExaDB-C@C in the Database service +* Support for additional coordinator node pools for OCI Search in the OpenSearch service +* Support for multi-link organizations in the Organization Management service + +Breaking +-------- +* The model `CustomerLoggingDetails` has been removed from the OpenSearch service +* The model `ReviveWorkflowInstanceDetails` has been removed from the Organization Management service + ==================== 2.178.0 - 2026-06-08 ==================== diff --git a/docs/api/apm_config.rst b/docs/api/apm_config.rst index 6c8978762a..f2dc224eab 100644 --- a/docs/api/apm_config.rst +++ b/docs/api/apm_config.rst @@ -38,6 +38,9 @@ Apm Config oci.apm_config.models.CreateMetricGroupDetails oci.apm_config.models.CreateOptionsDetails oci.apm_config.models.CreateSpanFilterDetails + oci.apm_config.models.DataFile + oci.apm_config.models.DataFileSummary + oci.apm_config.models.DataFileSummaryCollection oci.apm_config.models.Dimension oci.apm_config.models.ExportConfigurationDetails oci.apm_config.models.ExportConfigurationResponseDetails diff --git a/docs/api/apm_config/models/oci.apm_config.models.DataFile.rst b/docs/api/apm_config/models/oci.apm_config.models.DataFile.rst new file mode 100644 index 0000000000..a531bf1422 --- /dev/null +++ b/docs/api/apm_config/models/oci.apm_config.models.DataFile.rst @@ -0,0 +1,11 @@ +DataFile +======== + +.. currentmodule:: oci.apm_config.models + +.. autoclass:: DataFile + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/apm_config/models/oci.apm_config.models.DataFileSummary.rst b/docs/api/apm_config/models/oci.apm_config.models.DataFileSummary.rst new file mode 100644 index 0000000000..da1dbcfa89 --- /dev/null +++ b/docs/api/apm_config/models/oci.apm_config.models.DataFileSummary.rst @@ -0,0 +1,11 @@ +DataFileSummary +=============== + +.. currentmodule:: oci.apm_config.models + +.. autoclass:: DataFileSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/apm_config/models/oci.apm_config.models.DataFileSummaryCollection.rst b/docs/api/apm_config/models/oci.apm_config.models.DataFileSummaryCollection.rst new file mode 100644 index 0000000000..92d41be0f2 --- /dev/null +++ b/docs/api/apm_config/models/oci.apm_config.models.DataFileSummaryCollection.rst @@ -0,0 +1,11 @@ +DataFileSummaryCollection +========================= + +.. currentmodule:: oci.apm_config.models + +.. autoclass:: DataFileSummaryCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/database.rst b/docs/api/database.rst index 07f3f3c988..eaf8ec2e50 100644 --- a/docs/api/database.rst +++ b/docs/api/database.rst @@ -471,6 +471,8 @@ Database oci.database.models.ResourcePoolShapeCollection oci.database.models.ResourcePoolShapeSummary oci.database.models.ResourcePoolSummary + oci.database.models.RestartAutonomousContainerDatabaseDetails + oci.database.models.RestartAutonomousDatabaseDetails oci.database.models.RestoreAutonomousDatabaseDetails oci.database.models.RestoreDatabaseDetails oci.database.models.RotateAutonomousContainerDatabaseEncryptionKeyDetails @@ -498,6 +500,7 @@ Database oci.database.models.SetKeyVersionDetails oci.database.models.SourceDatabaseDetails oci.database.models.StackMonitoringConfig + oci.database.models.StopAutonomousDatabaseDetails oci.database.models.StoragePerformanceDetails oci.database.models.SwitchOverDataGuardDetails oci.database.models.SwitchoverDataGuardAssociationDetails diff --git a/docs/api/database/models/oci.database.models.RestartAutonomousContainerDatabaseDetails.rst b/docs/api/database/models/oci.database.models.RestartAutonomousContainerDatabaseDetails.rst new file mode 100644 index 0000000000..6b592e0f27 --- /dev/null +++ b/docs/api/database/models/oci.database.models.RestartAutonomousContainerDatabaseDetails.rst @@ -0,0 +1,11 @@ +RestartAutonomousContainerDatabaseDetails +========================================= + +.. currentmodule:: oci.database.models + +.. autoclass:: RestartAutonomousContainerDatabaseDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/database/models/oci.database.models.RestartAutonomousDatabaseDetails.rst b/docs/api/database/models/oci.database.models.RestartAutonomousDatabaseDetails.rst new file mode 100644 index 0000000000..0a3f9de819 --- /dev/null +++ b/docs/api/database/models/oci.database.models.RestartAutonomousDatabaseDetails.rst @@ -0,0 +1,11 @@ +RestartAutonomousDatabaseDetails +================================ + +.. currentmodule:: oci.database.models + +.. autoclass:: RestartAutonomousDatabaseDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/database/models/oci.database.models.StopAutonomousDatabaseDetails.rst b/docs/api/database/models/oci.database.models.StopAutonomousDatabaseDetails.rst new file mode 100644 index 0000000000..0fcdc005dd --- /dev/null +++ b/docs/api/database/models/oci.database.models.StopAutonomousDatabaseDetails.rst @@ -0,0 +1,11 @@ +StopAutonomousDatabaseDetails +============================= + +.. currentmodule:: oci.database.models + +.. autoclass:: StopAutonomousDatabaseDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/desktops.rst b/docs/api/desktops.rst index 68f34661fc..61257758ca 100644 --- a/docs/api/desktops.rst +++ b/docs/api/desktops.rst @@ -48,8 +48,10 @@ Desktops oci.desktops.models.InactivityConfig oci.desktops.models.UpdateDesktopDetails oci.desktops.models.UpdateDesktopImage + oci.desktops.models.UpdateDesktopNetworkConfiguration oci.desktops.models.UpdateDesktopPoolDesktopSessionLifecycleActions oci.desktops.models.UpdateDesktopPoolDetails + oci.desktops.models.UpdateDesktopPoolPrivateAccessDetails oci.desktops.models.WorkRequest oci.desktops.models.WorkRequestError oci.desktops.models.WorkRequestErrorCollection diff --git a/docs/api/desktops/models/oci.desktops.models.UpdateDesktopNetworkConfiguration.rst b/docs/api/desktops/models/oci.desktops.models.UpdateDesktopNetworkConfiguration.rst new file mode 100644 index 0000000000..cae4da1759 --- /dev/null +++ b/docs/api/desktops/models/oci.desktops.models.UpdateDesktopNetworkConfiguration.rst @@ -0,0 +1,11 @@ +UpdateDesktopNetworkConfiguration +================================= + +.. currentmodule:: oci.desktops.models + +.. autoclass:: UpdateDesktopNetworkConfiguration + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/desktops/models/oci.desktops.models.UpdateDesktopPoolPrivateAccessDetails.rst b/docs/api/desktops/models/oci.desktops.models.UpdateDesktopPoolPrivateAccessDetails.rst new file mode 100644 index 0000000000..2cfa504f6f --- /dev/null +++ b/docs/api/desktops/models/oci.desktops.models.UpdateDesktopPoolPrivateAccessDetails.rst @@ -0,0 +1,11 @@ +UpdateDesktopPoolPrivateAccessDetails +===================================== + +.. currentmodule:: oci.desktops.models + +.. autoclass:: UpdateDesktopPoolPrivateAccessDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/landing.rst b/docs/api/landing.rst index 39cf532b0f..a4d8a94d31 100644 --- a/docs/api/landing.rst +++ b/docs/api/landing.rst @@ -159,6 +159,7 @@ API Reference * :doc:`Limits ` * :doc:`Limits Increase ` * :doc:`Link ` +* :doc:`Link Features ` * :doc:`List Enrichment Jobs ` * :doc:`Load Balancer ` * :doc:`Lockbox ` diff --git a/docs/api/opensearch.rst b/docs/api/opensearch.rst index 3d1b626e0c..3225ac3d61 100644 --- a/docs/api/opensearch.rst +++ b/docs/api/opensearch.rst @@ -33,7 +33,6 @@ Opensearch oci.opensearch.models.CreateMaintenanceDetails oci.opensearch.models.CreateOpensearchClusterDetails oci.opensearch.models.CreateOpensearchClusterPipelineDetails - oci.opensearch.models.CustomerLoggingDetails oci.opensearch.models.DeleteBlockVolumesForNamespaceDetails oci.opensearch.models.ExportOpensearchClusterBackupDetails oci.opensearch.models.ForcePatchClusterDetails diff --git a/docs/api/psql.rst b/docs/api/psql.rst index 20e27025b2..b9194611fc 100644 --- a/docs/api/psql.rst +++ b/docs/api/psql.rst @@ -29,6 +29,8 @@ Psql oci.psql.models.ChangeBackupCompartmentDetails oci.psql.models.ChangeConfigurationCompartmentDetails oci.psql.models.ChangeDbSystemCompartmentDetails + oci.psql.models.ChangeRoleToReplicaDetails + oci.psql.models.ChangeRoleToStandaloneDetails oci.psql.models.ConfigOverrides oci.psql.models.ConfigParams oci.psql.models.Configuration @@ -40,22 +42,39 @@ Psql oci.psql.models.CreateConfigurationDetails oci.psql.models.CreateDbInstanceDetails oci.psql.models.CreateDbSystemDetails + oci.psql.models.CreateReplicationConfigDetails oci.psql.models.Credentials oci.psql.models.DailyBackupPolicy + oci.psql.models.DateTimeRangeCapability oci.psql.models.DbConfigurationOverrideCollection oci.psql.models.DbInstance oci.psql.models.DbInstanceEndpoint oci.psql.models.DbSystem oci.psql.models.DbSystemCollection oci.psql.models.DbSystemDetails + oci.psql.models.DbSystemReplicaCollection + oci.psql.models.DbSystemReplicaSummary oci.psql.models.DbSystemSummary oci.psql.models.DefaultConfigParams oci.psql.models.DefaultConfiguration oci.psql.models.DefaultConfigurationCollection oci.psql.models.DefaultConfigurationDetails oci.psql.models.DefaultConfigurationSummary + oci.psql.models.DisabledInsightDetails + oci.psql.models.DisabledKerberosAuthDetails + oci.psql.models.EnabledInsightDetails + oci.psql.models.EnabledKerberosAuthDetails oci.psql.models.Endpoint oci.psql.models.FailoverDbSystemDetails + oci.psql.models.GranularityCapability + oci.psql.models.InsightCapabilityCollection + oci.psql.models.InsightCapabilitySummary + oci.psql.models.InsightDataContract + oci.psql.models.InsightDataTypeCapability + oci.psql.models.InsightFilterCapability + oci.psql.models.InsightLimits + oci.psql.models.KerberosAuthDetails + oci.psql.models.KerberosCredential oci.psql.models.ManagementPolicy oci.psql.models.ManagementPolicyDetails oci.psql.models.MonthlyBackupPolicy @@ -63,6 +82,9 @@ Psql oci.psql.models.NoneBackupPolicy oci.psql.models.NoneSourceDetails oci.psql.models.OciOptimizedStorageDetails + oci.psql.models.OdspInsight + oci.psql.models.OdspInsightDetails + oci.psql.models.PaginationCapability oci.psql.models.PasswordDetails oci.psql.models.PatchDbSystemDetails oci.psql.models.PatchInsertInstruction @@ -75,6 +97,8 @@ Psql oci.psql.models.PatchRequireInstruction oci.psql.models.PlainTextPasswordDetails oci.psql.models.PrimaryDbInstanceDetails + oci.psql.models.PrimaryDbSystemSourceDetails + oci.psql.models.ReplicationConfig oci.psql.models.ResetMasterUserPasswordDetails oci.psql.models.RestartDbInstanceInDbSystemDetails oci.psql.models.RestoreDbSystemDetails @@ -82,15 +106,20 @@ Psql oci.psql.models.ShapeMemoryOptions oci.psql.models.ShapeOcpuOptions oci.psql.models.ShapeSummary + oci.psql.models.SortingCapability + oci.psql.models.SortingDefault oci.psql.models.SourceBackupDetails oci.psql.models.SourceDetails + oci.psql.models.StartDbSystemDetails oci.psql.models.StorageDetails + oci.psql.models.SwitchOverDetails oci.psql.models.UpdateBackupDetails oci.psql.models.UpdateConfigurationDetails oci.psql.models.UpdateDbConfigParams oci.psql.models.UpdateDbSystemDbInstanceDetails oci.psql.models.UpdateDbSystemDetails oci.psql.models.UpdateNetworkDetails + oci.psql.models.UpdateReplicationConfigDetails oci.psql.models.UpdateStorageDetailsParams oci.psql.models.VaultSecretPasswordDetails oci.psql.models.WeeklyBackupPolicy diff --git a/docs/api/psql/models/oci.psql.models.ChangeRoleToReplicaDetails.rst b/docs/api/psql/models/oci.psql.models.ChangeRoleToReplicaDetails.rst new file mode 100644 index 0000000000..a9540b8cca --- /dev/null +++ b/docs/api/psql/models/oci.psql.models.ChangeRoleToReplicaDetails.rst @@ -0,0 +1,11 @@ +ChangeRoleToReplicaDetails +========================== + +.. currentmodule:: oci.psql.models + +.. autoclass:: ChangeRoleToReplicaDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/psql/models/oci.psql.models.ChangeRoleToStandaloneDetails.rst b/docs/api/psql/models/oci.psql.models.ChangeRoleToStandaloneDetails.rst new file mode 100644 index 0000000000..fad4772c0e --- /dev/null +++ b/docs/api/psql/models/oci.psql.models.ChangeRoleToStandaloneDetails.rst @@ -0,0 +1,11 @@ +ChangeRoleToStandaloneDetails +============================= + +.. currentmodule:: oci.psql.models + +.. autoclass:: ChangeRoleToStandaloneDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/psql/models/oci.psql.models.CreateReplicationConfigDetails.rst b/docs/api/psql/models/oci.psql.models.CreateReplicationConfigDetails.rst new file mode 100644 index 0000000000..63ea94c7a4 --- /dev/null +++ b/docs/api/psql/models/oci.psql.models.CreateReplicationConfigDetails.rst @@ -0,0 +1,11 @@ +CreateReplicationConfigDetails +============================== + +.. currentmodule:: oci.psql.models + +.. autoclass:: CreateReplicationConfigDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/psql/models/oci.psql.models.DateTimeRangeCapability.rst b/docs/api/psql/models/oci.psql.models.DateTimeRangeCapability.rst new file mode 100644 index 0000000000..2d685a297e --- /dev/null +++ b/docs/api/psql/models/oci.psql.models.DateTimeRangeCapability.rst @@ -0,0 +1,11 @@ +DateTimeRangeCapability +======================= + +.. currentmodule:: oci.psql.models + +.. autoclass:: DateTimeRangeCapability + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/psql/models/oci.psql.models.DbSystemReplicaCollection.rst b/docs/api/psql/models/oci.psql.models.DbSystemReplicaCollection.rst new file mode 100644 index 0000000000..acf64b6cb1 --- /dev/null +++ b/docs/api/psql/models/oci.psql.models.DbSystemReplicaCollection.rst @@ -0,0 +1,11 @@ +DbSystemReplicaCollection +========================= + +.. currentmodule:: oci.psql.models + +.. autoclass:: DbSystemReplicaCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/opensearch/models/oci.opensearch.models.CustomerLoggingDetails.rst b/docs/api/psql/models/oci.psql.models.DbSystemReplicaSummary.rst similarity index 57% rename from docs/api/opensearch/models/oci.opensearch.models.CustomerLoggingDetails.rst rename to docs/api/psql/models/oci.psql.models.DbSystemReplicaSummary.rst index e485612910..88571588ff 100644 --- a/docs/api/opensearch/models/oci.opensearch.models.CustomerLoggingDetails.rst +++ b/docs/api/psql/models/oci.psql.models.DbSystemReplicaSummary.rst @@ -1,9 +1,9 @@ -CustomerLoggingDetails +DbSystemReplicaSummary ====================== -.. currentmodule:: oci.opensearch.models +.. currentmodule:: oci.psql.models -.. autoclass:: CustomerLoggingDetails +.. autoclass:: DbSystemReplicaSummary :show-inheritance: :special-members: __init__ :members: diff --git a/docs/api/psql/models/oci.psql.models.DisabledInsightDetails.rst b/docs/api/psql/models/oci.psql.models.DisabledInsightDetails.rst new file mode 100644 index 0000000000..65ea5f0e3e --- /dev/null +++ b/docs/api/psql/models/oci.psql.models.DisabledInsightDetails.rst @@ -0,0 +1,11 @@ +DisabledInsightDetails +====================== + +.. currentmodule:: oci.psql.models + +.. autoclass:: DisabledInsightDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/psql/models/oci.psql.models.DisabledKerberosAuthDetails.rst b/docs/api/psql/models/oci.psql.models.DisabledKerberosAuthDetails.rst new file mode 100644 index 0000000000..fd8e81992a --- /dev/null +++ b/docs/api/psql/models/oci.psql.models.DisabledKerberosAuthDetails.rst @@ -0,0 +1,11 @@ +DisabledKerberosAuthDetails +=========================== + +.. currentmodule:: oci.psql.models + +.. autoclass:: DisabledKerberosAuthDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/psql/models/oci.psql.models.EnabledInsightDetails.rst b/docs/api/psql/models/oci.psql.models.EnabledInsightDetails.rst new file mode 100644 index 0000000000..f26f15edbf --- /dev/null +++ b/docs/api/psql/models/oci.psql.models.EnabledInsightDetails.rst @@ -0,0 +1,11 @@ +EnabledInsightDetails +===================== + +.. currentmodule:: oci.psql.models + +.. autoclass:: EnabledInsightDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/psql/models/oci.psql.models.EnabledKerberosAuthDetails.rst b/docs/api/psql/models/oci.psql.models.EnabledKerberosAuthDetails.rst new file mode 100644 index 0000000000..7b28c3466a --- /dev/null +++ b/docs/api/psql/models/oci.psql.models.EnabledKerberosAuthDetails.rst @@ -0,0 +1,11 @@ +EnabledKerberosAuthDetails +========================== + +.. currentmodule:: oci.psql.models + +.. autoclass:: EnabledKerberosAuthDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/psql/models/oci.psql.models.GranularityCapability.rst b/docs/api/psql/models/oci.psql.models.GranularityCapability.rst new file mode 100644 index 0000000000..391d026cc1 --- /dev/null +++ b/docs/api/psql/models/oci.psql.models.GranularityCapability.rst @@ -0,0 +1,11 @@ +GranularityCapability +===================== + +.. currentmodule:: oci.psql.models + +.. autoclass:: GranularityCapability + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/psql/models/oci.psql.models.InsightCapabilityCollection.rst b/docs/api/psql/models/oci.psql.models.InsightCapabilityCollection.rst new file mode 100644 index 0000000000..1f405c2918 --- /dev/null +++ b/docs/api/psql/models/oci.psql.models.InsightCapabilityCollection.rst @@ -0,0 +1,11 @@ +InsightCapabilityCollection +=========================== + +.. currentmodule:: oci.psql.models + +.. autoclass:: InsightCapabilityCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/psql/models/oci.psql.models.InsightCapabilitySummary.rst b/docs/api/psql/models/oci.psql.models.InsightCapabilitySummary.rst new file mode 100644 index 0000000000..c4ba4c7ca7 --- /dev/null +++ b/docs/api/psql/models/oci.psql.models.InsightCapabilitySummary.rst @@ -0,0 +1,11 @@ +InsightCapabilitySummary +======================== + +.. currentmodule:: oci.psql.models + +.. autoclass:: InsightCapabilitySummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/psql/models/oci.psql.models.InsightDataContract.rst b/docs/api/psql/models/oci.psql.models.InsightDataContract.rst new file mode 100644 index 0000000000..68c18ec120 --- /dev/null +++ b/docs/api/psql/models/oci.psql.models.InsightDataContract.rst @@ -0,0 +1,11 @@ +InsightDataContract +=================== + +.. currentmodule:: oci.psql.models + +.. autoclass:: InsightDataContract + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/psql/models/oci.psql.models.InsightDataTypeCapability.rst b/docs/api/psql/models/oci.psql.models.InsightDataTypeCapability.rst new file mode 100644 index 0000000000..96d80dba8c --- /dev/null +++ b/docs/api/psql/models/oci.psql.models.InsightDataTypeCapability.rst @@ -0,0 +1,11 @@ +InsightDataTypeCapability +========================= + +.. currentmodule:: oci.psql.models + +.. autoclass:: InsightDataTypeCapability + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/psql/models/oci.psql.models.InsightFilterCapability.rst b/docs/api/psql/models/oci.psql.models.InsightFilterCapability.rst new file mode 100644 index 0000000000..cf4936a1c9 --- /dev/null +++ b/docs/api/psql/models/oci.psql.models.InsightFilterCapability.rst @@ -0,0 +1,11 @@ +InsightFilterCapability +======================= + +.. currentmodule:: oci.psql.models + +.. autoclass:: InsightFilterCapability + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/psql/models/oci.psql.models.InsightLimits.rst b/docs/api/psql/models/oci.psql.models.InsightLimits.rst new file mode 100644 index 0000000000..5328a960bd --- /dev/null +++ b/docs/api/psql/models/oci.psql.models.InsightLimits.rst @@ -0,0 +1,11 @@ +InsightLimits +============= + +.. currentmodule:: oci.psql.models + +.. autoclass:: InsightLimits + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/psql/models/oci.psql.models.KerberosAuthDetails.rst b/docs/api/psql/models/oci.psql.models.KerberosAuthDetails.rst new file mode 100644 index 0000000000..3f9a6b0fa4 --- /dev/null +++ b/docs/api/psql/models/oci.psql.models.KerberosAuthDetails.rst @@ -0,0 +1,11 @@ +KerberosAuthDetails +=================== + +.. currentmodule:: oci.psql.models + +.. autoclass:: KerberosAuthDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/psql/models/oci.psql.models.KerberosCredential.rst b/docs/api/psql/models/oci.psql.models.KerberosCredential.rst new file mode 100644 index 0000000000..28ea4c7032 --- /dev/null +++ b/docs/api/psql/models/oci.psql.models.KerberosCredential.rst @@ -0,0 +1,11 @@ +KerberosCredential +================== + +.. currentmodule:: oci.psql.models + +.. autoclass:: KerberosCredential + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/psql/models/oci.psql.models.OdspInsight.rst b/docs/api/psql/models/oci.psql.models.OdspInsight.rst new file mode 100644 index 0000000000..bd48ea4eee --- /dev/null +++ b/docs/api/psql/models/oci.psql.models.OdspInsight.rst @@ -0,0 +1,11 @@ +OdspInsight +=========== + +.. currentmodule:: oci.psql.models + +.. autoclass:: OdspInsight + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/psql/models/oci.psql.models.OdspInsightDetails.rst b/docs/api/psql/models/oci.psql.models.OdspInsightDetails.rst new file mode 100644 index 0000000000..db04a0d22e --- /dev/null +++ b/docs/api/psql/models/oci.psql.models.OdspInsightDetails.rst @@ -0,0 +1,11 @@ +OdspInsightDetails +================== + +.. currentmodule:: oci.psql.models + +.. autoclass:: OdspInsightDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/psql/models/oci.psql.models.PaginationCapability.rst b/docs/api/psql/models/oci.psql.models.PaginationCapability.rst new file mode 100644 index 0000000000..ad70fc3d5c --- /dev/null +++ b/docs/api/psql/models/oci.psql.models.PaginationCapability.rst @@ -0,0 +1,11 @@ +PaginationCapability +==================== + +.. currentmodule:: oci.psql.models + +.. autoclass:: PaginationCapability + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/psql/models/oci.psql.models.PrimaryDbSystemSourceDetails.rst b/docs/api/psql/models/oci.psql.models.PrimaryDbSystemSourceDetails.rst new file mode 100644 index 0000000000..a58a7a7c95 --- /dev/null +++ b/docs/api/psql/models/oci.psql.models.PrimaryDbSystemSourceDetails.rst @@ -0,0 +1,11 @@ +PrimaryDbSystemSourceDetails +============================ + +.. currentmodule:: oci.psql.models + +.. autoclass:: PrimaryDbSystemSourceDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/psql/models/oci.psql.models.ReplicationConfig.rst b/docs/api/psql/models/oci.psql.models.ReplicationConfig.rst new file mode 100644 index 0000000000..c6c0574bb8 --- /dev/null +++ b/docs/api/psql/models/oci.psql.models.ReplicationConfig.rst @@ -0,0 +1,11 @@ +ReplicationConfig +================= + +.. currentmodule:: oci.psql.models + +.. autoclass:: ReplicationConfig + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/psql/models/oci.psql.models.SortingCapability.rst b/docs/api/psql/models/oci.psql.models.SortingCapability.rst new file mode 100644 index 0000000000..e5a53c6ef7 --- /dev/null +++ b/docs/api/psql/models/oci.psql.models.SortingCapability.rst @@ -0,0 +1,11 @@ +SortingCapability +================= + +.. currentmodule:: oci.psql.models + +.. autoclass:: SortingCapability + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/psql/models/oci.psql.models.SortingDefault.rst b/docs/api/psql/models/oci.psql.models.SortingDefault.rst new file mode 100644 index 0000000000..f41db26cfe --- /dev/null +++ b/docs/api/psql/models/oci.psql.models.SortingDefault.rst @@ -0,0 +1,11 @@ +SortingDefault +============== + +.. currentmodule:: oci.psql.models + +.. autoclass:: SortingDefault + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/psql/models/oci.psql.models.StartDbSystemDetails.rst b/docs/api/psql/models/oci.psql.models.StartDbSystemDetails.rst new file mode 100644 index 0000000000..058f9126a9 --- /dev/null +++ b/docs/api/psql/models/oci.psql.models.StartDbSystemDetails.rst @@ -0,0 +1,11 @@ +StartDbSystemDetails +==================== + +.. currentmodule:: oci.psql.models + +.. autoclass:: StartDbSystemDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/psql/models/oci.psql.models.SwitchOverDetails.rst b/docs/api/psql/models/oci.psql.models.SwitchOverDetails.rst new file mode 100644 index 0000000000..9f39542717 --- /dev/null +++ b/docs/api/psql/models/oci.psql.models.SwitchOverDetails.rst @@ -0,0 +1,11 @@ +SwitchOverDetails +================= + +.. currentmodule:: oci.psql.models + +.. autoclass:: SwitchOverDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/psql/models/oci.psql.models.UpdateReplicationConfigDetails.rst b/docs/api/psql/models/oci.psql.models.UpdateReplicationConfigDetails.rst new file mode 100644 index 0000000000..c622c03c0e --- /dev/null +++ b/docs/api/psql/models/oci.psql.models.UpdateReplicationConfigDetails.rst @@ -0,0 +1,11 @@ +UpdateReplicationConfigDetails +============================== + +.. currentmodule:: oci.psql.models + +.. autoclass:: UpdateReplicationConfigDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/tenant_manager_control_plane.rst b/docs/api/tenant_manager_control_plane.rst index 797ea70ab9..367f5b5a2e 100644 --- a/docs/api/tenant_manager_control_plane.rst +++ b/docs/api/tenant_manager_control_plane.rst @@ -10,6 +10,7 @@ Tenant Manager Control Plane oci.tenant_manager_control_plane.DomainGovernanceClient oci.tenant_manager_control_plane.GovernanceClient oci.tenant_manager_control_plane.LinkClient + oci.tenant_manager_control_plane.LinkFeaturesClient oci.tenant_manager_control_plane.OrdersClient oci.tenant_manager_control_plane.OrganizationClient oci.tenant_manager_control_plane.RecipientInvitationClient @@ -20,6 +21,7 @@ Tenant Manager Control Plane oci.tenant_manager_control_plane.DomainGovernanceClientCompositeOperations oci.tenant_manager_control_plane.GovernanceClientCompositeOperations oci.tenant_manager_control_plane.LinkClientCompositeOperations + oci.tenant_manager_control_plane.LinkFeaturesClientCompositeOperations oci.tenant_manager_control_plane.OrdersClientCompositeOperations oci.tenant_manager_control_plane.OrganizationClientCompositeOperations oci.tenant_manager_control_plane.RecipientInvitationClientCompositeOperations @@ -64,9 +66,13 @@ Tenant Manager Control Plane oci.tenant_manager_control_plane.models.DomainGovernanceCollection oci.tenant_manager_control_plane.models.DomainGovernanceSummary oci.tenant_manager_control_plane.models.DomainSummary + oci.tenant_manager_control_plane.models.InvitationFeature oci.tenant_manager_control_plane.models.Link oci.tenant_manager_control_plane.models.LinkCollection + oci.tenant_manager_control_plane.models.LinkFeatureSummary + oci.tenant_manager_control_plane.models.LinkFeaturesCollection oci.tenant_manager_control_plane.models.LinkSummary + oci.tenant_manager_control_plane.models.LinkWithTenancyNames oci.tenant_manager_control_plane.models.Order oci.tenant_manager_control_plane.models.Organization oci.tenant_manager_control_plane.models.OrganizationCollection @@ -78,7 +84,6 @@ Tenant Manager Control Plane oci.tenant_manager_control_plane.models.RecipientInvitation oci.tenant_manager_control_plane.models.RecipientInvitationCollection oci.tenant_manager_control_plane.models.RecipientInvitationSummary - oci.tenant_manager_control_plane.models.ReviveWorkflowInstanceDetails oci.tenant_manager_control_plane.models.SenderInvitation oci.tenant_manager_control_plane.models.SenderInvitationCollection oci.tenant_manager_control_plane.models.SenderInvitationSummary diff --git a/docs/api/tenant_manager_control_plane/client/oci.tenant_manager_control_plane.LinkFeaturesClient.rst b/docs/api/tenant_manager_control_plane/client/oci.tenant_manager_control_plane.LinkFeaturesClient.rst new file mode 100644 index 0000000000..244c210482 --- /dev/null +++ b/docs/api/tenant_manager_control_plane/client/oci.tenant_manager_control_plane.LinkFeaturesClient.rst @@ -0,0 +1,8 @@ +LinkFeaturesClient +================== + +.. currentmodule:: oci.tenant_manager_control_plane + +.. autoclass:: LinkFeaturesClient + :special-members: __init__ + :members: \ No newline at end of file diff --git a/docs/api/tenant_manager_control_plane/client/oci.tenant_manager_control_plane.LinkFeaturesClientCompositeOperations.rst b/docs/api/tenant_manager_control_plane/client/oci.tenant_manager_control_plane.LinkFeaturesClientCompositeOperations.rst new file mode 100644 index 0000000000..5a754dacdc --- /dev/null +++ b/docs/api/tenant_manager_control_plane/client/oci.tenant_manager_control_plane.LinkFeaturesClientCompositeOperations.rst @@ -0,0 +1,8 @@ +LinkFeaturesClientCompositeOperations +===================================== + +.. currentmodule:: oci.tenant_manager_control_plane + +.. autoclass:: LinkFeaturesClientCompositeOperations + :special-members: __init__ + :members: \ No newline at end of file diff --git a/docs/api/tenant_manager_control_plane/models/oci.tenant_manager_control_plane.models.ReviveWorkflowInstanceDetails.rst b/docs/api/tenant_manager_control_plane/models/oci.tenant_manager_control_plane.models.InvitationFeature.rst similarity index 62% rename from docs/api/tenant_manager_control_plane/models/oci.tenant_manager_control_plane.models.ReviveWorkflowInstanceDetails.rst rename to docs/api/tenant_manager_control_plane/models/oci.tenant_manager_control_plane.models.InvitationFeature.rst index 89f6bf4ca5..f40c258e39 100644 --- a/docs/api/tenant_manager_control_plane/models/oci.tenant_manager_control_plane.models.ReviveWorkflowInstanceDetails.rst +++ b/docs/api/tenant_manager_control_plane/models/oci.tenant_manager_control_plane.models.InvitationFeature.rst @@ -1,9 +1,9 @@ -ReviveWorkflowInstanceDetails -============================= +InvitationFeature +================= .. currentmodule:: oci.tenant_manager_control_plane.models -.. autoclass:: ReviveWorkflowInstanceDetails +.. autoclass:: InvitationFeature :show-inheritance: :special-members: __init__ :members: diff --git a/docs/api/tenant_manager_control_plane/models/oci.tenant_manager_control_plane.models.LinkFeatureSummary.rst b/docs/api/tenant_manager_control_plane/models/oci.tenant_manager_control_plane.models.LinkFeatureSummary.rst new file mode 100644 index 0000000000..974807890f --- /dev/null +++ b/docs/api/tenant_manager_control_plane/models/oci.tenant_manager_control_plane.models.LinkFeatureSummary.rst @@ -0,0 +1,11 @@ +LinkFeatureSummary +================== + +.. currentmodule:: oci.tenant_manager_control_plane.models + +.. autoclass:: LinkFeatureSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/tenant_manager_control_plane/models/oci.tenant_manager_control_plane.models.LinkFeaturesCollection.rst b/docs/api/tenant_manager_control_plane/models/oci.tenant_manager_control_plane.models.LinkFeaturesCollection.rst new file mode 100644 index 0000000000..b3548644cd --- /dev/null +++ b/docs/api/tenant_manager_control_plane/models/oci.tenant_manager_control_plane.models.LinkFeaturesCollection.rst @@ -0,0 +1,11 @@ +LinkFeaturesCollection +====================== + +.. currentmodule:: oci.tenant_manager_control_plane.models + +.. autoclass:: LinkFeaturesCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/tenant_manager_control_plane/models/oci.tenant_manager_control_plane.models.LinkWithTenancyNames.rst b/docs/api/tenant_manager_control_plane/models/oci.tenant_manager_control_plane.models.LinkWithTenancyNames.rst new file mode 100644 index 0000000000..c75ca8d38d --- /dev/null +++ b/docs/api/tenant_manager_control_plane/models/oci.tenant_manager_control_plane.models.LinkWithTenancyNames.rst @@ -0,0 +1,11 @@ +LinkWithTenancyNames +==================== + +.. currentmodule:: oci.tenant_manager_control_plane.models + +.. autoclass:: LinkWithTenancyNames + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/src/oci/apm_config/config_client.py b/src/oci/apm_config/config_client.py index 1d3ddf1e96..089c1c29b2 100644 --- a/src/oci/apm_config/config_client.py +++ b/src/oci/apm_config/config_client.py @@ -14,6 +14,7 @@ from oci.config import get_config_value_or_default, validate_config from oci.signer import Signer from oci.util import Sentinel, get_signer_from_authentication_type, AUTHENTICATION_TYPE_FIELD_NAME +from oci.util import back_up_body_calculate_stream_content_length, is_content_length_calculable_by_req_util from oci.exceptions import InvalidDeveloperToolConfiguration from oci.developer_tool_configuration import OCI_SDK_ENABLED_SERVICES_SET from .models import apm_config_type_mapping @@ -492,6 +493,142 @@ def delete_config(self, apm_domain_id, config_id, **kwargs): api_reference_link=api_reference_link, required_arguments=required_arguments) + def delete_data_file(self, data_file_name, apm_domain_id, apm_type, **kwargs): + """ + Removes the data file. + + + :param str data_file_name: (required) + The name of the data file. + + :param str apm_domain_id: (required) + The APM Domain ID the request is intended for. + + :param str apm_type: (required) + The type of the data file. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str opc_client_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use delete_data_file API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['dataFileName', 'apmDomainId', 'apmType'] + resource_path = "/dataFiles/{dataFileName}" + method = "DELETE" + operation_name = "delete_data_file" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/apm-config/20210201/DataFile/DeleteDataFile" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_retry_token", + "opc_client_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"delete_data_file got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "dataFileName": data_file_name + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + query_params = { + "apmDomainId": apm_domain_id, + "apmType": apm_type + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-client-request-id": kwargs.get("opc_client_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + def export_configuration(self, export_configuration_details, apm_domain_id, **kwargs): """ Exports configurations for the whole domain by domainId. @@ -726,17 +863,29 @@ def get_config(self, apm_domain_id, config_id, **kwargs): api_reference_link=api_reference_link, required_arguments=required_arguments) - def get_match_agents_with_attribute_key(self, apm_domain_id, **kwargs): + def get_data_file(self, data_file_name, apm_domain_id, apm_type, **kwargs): """ - The domain-wide agents matching attribute key. + Retrieves the Data file with the specified name and type. + :param str data_file_name: (required) + The name of the data file. + :param str apm_domain_id: (required) The APM Domain ID the request is intended for. - :param str opc_request_id: (optional) - Unique identifier for the request. - If you need to contact Oracle about a particular request, please provide the request ID. + :param str apm_type: (required) + The type of the data file. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str opc_client_request_id: (optional) + The client request ID for tracing. :param obj retry_strategy: (optional) A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. @@ -754,40 +903,53 @@ def get_match_agents_with_attribute_key(self, apm_domain_id, **kwargs): enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. By default, strict url encoding for path params is disabled - :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.apm_config.models.MatchAgentsWithAttributeKey` + :return: A :class:`~oci.response.Response` object with data of type stream :rtype: :class:`~oci.response.Response` :example: - Click `here `__ to see an example of how to use get_match_agents_with_attribute_key API. + Click `here `__ to see an example of how to use get_data_file API. """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. - required_arguments = ['apmDomainId'] - resource_path = "/actions/matchAgentsWithAttributeKey" + required_arguments = ['dataFileName', 'apmDomainId', 'apmType'] + resource_path = "/dataFiles/{dataFileName}" method = "GET" - operation_name = "get_match_agents_with_attribute_key" - api_reference_link = "https://docs.oracle.com/iaas/api/#/en/apm-config/20210201/MatchAgentsWithAttributeKey/GetMatchAgentsWithAttributeKey" + operation_name = "get_data_file" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/apm-config/20210201/DataFile/GetDataFile" # Don't accept unknown kwargs expected_kwargs = [ "allow_control_chars", "enable_strict_url_encoding", "retry_strategy", - "opc_request_id" + "opc_retry_token", + "opc_client_request_id" ] extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] if extra_kwargs: raise ValueError( - f"get_match_agents_with_attribute_key got unknown kwargs: {extra_kwargs!r}") + f"get_data_file got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "dataFileName": data_file_name + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') query_params = { - "apmDomainId": apm_domain_id + "apmDomainId": apm_domain_id, + "apmType": apm_type } query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} header_params = { "accept": "application/json", "content-type": "application/json", - "opc-request-id": kwargs.get("opc_request_id", missing) + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-client-request-id": kwargs.get("opc_client_request_id", missing) } header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} @@ -800,15 +962,17 @@ def get_match_agents_with_attribute_key(self, apm_domain_id, **kwargs): if retry_strategy: if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) self.base_client.add_opc_client_retries_header(header_params) retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) return retry_strategy.make_retrying_call( self.base_client.call_api, resource_path=resource_path, method=method, + path_params=path_params, query_params=query_params, header_params=header_params, - response_type="MatchAgentsWithAttributeKey", + response_type="stream", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, @@ -818,33 +982,24 @@ def get_match_agents_with_attribute_key(self, apm_domain_id, **kwargs): return self.base_client.call_api( resource_path=resource_path, method=method, + path_params=path_params, query_params=query_params, header_params=header_params, - response_type="MatchAgentsWithAttributeKey", + response_type="stream", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, api_reference_link=api_reference_link, required_arguments=required_arguments) - def import_configuration(self, import_configuration_details, apm_domain_id, **kwargs): + def get_match_agents_with_attribute_key(self, apm_domain_id, **kwargs): """ - Import configurations Item(s) with its dependencies into a destination domain. - + The domain-wide agents matching attribute key. - :param oci.apm_config.models.ImportConfigurationDetails import_configuration_details: (required) - JSON metadata for importing configurations domain. :param str apm_domain_id: (required) The APM Domain ID the request is intended for. - :param str opc_retry_token: (optional) - A token that uniquely identifies a request so it can be retried in case of a timeout or - server error without risk of executing that same action again. Retry tokens expire after 24 - hours, but can be invalidated before then due to conflicting operations. For example, if a resource - has been deleted and purged from the system, then a retry of the original creation request - might be rejected. - :param str opc_request_id: (optional) Unique identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. @@ -865,31 +1020,30 @@ def import_configuration(self, import_configuration_details, apm_domain_id, **kw enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. By default, strict url encoding for path params is disabled - :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.apm_config.models.ImportConfigurationFailedItemsCollection` + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.apm_config.models.MatchAgentsWithAttributeKey` :rtype: :class:`~oci.response.Response` :example: - Click `here `__ to see an example of how to use import_configuration API. + Click `here `__ to see an example of how to use get_match_agents_with_attribute_key API. """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. required_arguments = ['apmDomainId'] - resource_path = "/actions/importConfiguration" - method = "POST" - operation_name = "import_configuration" - api_reference_link = "https://docs.oracle.com/iaas/api/#/en/apm-config/20210201/ImportConfigurationDetails/ImportConfiguration" + resource_path = "/actions/matchAgentsWithAttributeKey" + method = "GET" + operation_name = "get_match_agents_with_attribute_key" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/apm-config/20210201/MatchAgentsWithAttributeKey/GetMatchAgentsWithAttributeKey" # Don't accept unknown kwargs expected_kwargs = [ "allow_control_chars", "enable_strict_url_encoding", "retry_strategy", - "opc_retry_token", "opc_request_id" ] extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] if extra_kwargs: raise ValueError( - f"import_configuration got unknown kwargs: {extra_kwargs!r}") + f"get_match_agents_with_attribute_key got unknown kwargs: {extra_kwargs!r}") query_params = { "apmDomainId": apm_domain_id @@ -899,7 +1053,6 @@ def import_configuration(self, import_configuration_details, apm_domain_id, **kw header_params = { "accept": "application/json", "content-type": "application/json", - "opc-retry-token": kwargs.get("opc_retry_token", missing), "opc-request-id": kwargs.get("opc_request_id", missing) } header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} @@ -913,7 +1066,6 @@ def import_configuration(self, import_configuration_details, apm_domain_id, **kw if retry_strategy: if not isinstance(retry_strategy, retry.NoneRetryStrategy): - self.base_client.add_opc_retry_token_if_needed(header_params) self.base_client.add_opc_client_retries_header(header_params) retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) return retry_strategy.make_retrying_call( @@ -922,8 +1074,7 @@ def import_configuration(self, import_configuration_details, apm_domain_id, **kw method=method, query_params=query_params, header_params=header_params, - body=import_configuration_details, - response_type="ImportConfigurationFailedItemsCollection", + response_type="MatchAgentsWithAttributeKey", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, @@ -935,57 +1086,299 @@ def import_configuration(self, import_configuration_details, apm_domain_id, **kw method=method, query_params=query_params, header_params=header_params, - body=import_configuration_details, - response_type="ImportConfigurationFailedItemsCollection", + response_type="MatchAgentsWithAttributeKey", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, api_reference_link=api_reference_link, required_arguments=required_arguments) - def list_configs(self, apm_domain_id, **kwargs): + def head_data_file(self, data_file_name, apm_domain_id, apm_type, **kwargs): """ - Returns all configuration items, which can optionally be filtered by configuration type. + Returns metadata about the datafile. + :param str data_file_name: (required) + The name of the data file. + :param str apm_domain_id: (required) The APM Domain ID the request is intended for. - :param str opc_request_id: (optional) - Unique identifier for the request. - If you need to contact Oracle about a particular request, please provide the request ID. + :param str apm_type: (required) + The type of the data file. - :param str config_type: (optional) - A filter to match configuration items of a given type. - Supported values are SPAN_FILTER, METRIC_GROUP, APDEX, AGENT and MACS_APM_EXTENSION. + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. - :param str display_name: (optional) - A filter to return resources that match the given display name. + :param str opc_client_request_id: (optional) + The client request ID for tracing. - :param int limit: (optional) - The maximum number of items to return. + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. - :param str page: (optional) - The maximum number of results per page, or items to return in a paginated \"List\" call. For information on - how pagination works, see `List Pagination`__. - Example: `50` + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. - __ https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. - :param str sort_order: (optional) - The sort order to use, either ascending (`ASC`) or descending (`DESC`). The displayName sort order - is case-sensitive. + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings - Allowed values are: "ASC", "DESC" + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled - :param str sort_by: (optional) - The field to sort by. You can provide one \"sortBy\" value. The default order for displayName, timeCreated - and timeUpdated is ascending. The displayName sort by is case-sensitive. + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` - Allowed values are: "displayName", "timeCreated", "timeUpdated" + :example: + Click `here `__ to see an example of how to use head_data_file API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['dataFileName', 'apmDomainId', 'apmType'] + resource_path = "/dataFiles/{dataFileName}" + method = "HEAD" + operation_name = "head_data_file" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/apm-config/20210201/DataFile/HeadDataFile" - :param str options_group: (optional) - A filter to return OPTIONS resources that match the given group. + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_retry_token", + "opc_client_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"head_data_file got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "dataFileName": data_file_name + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + query_params = { + "apmDomainId": apm_domain_id, + "apmType": apm_type + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-client-request-id": kwargs.get("opc_client_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def import_configuration(self, import_configuration_details, apm_domain_id, **kwargs): + """ + Import configurations Item(s) with its dependencies into a destination domain. + + + :param oci.apm_config.models.ImportConfigurationDetails import_configuration_details: (required) + JSON metadata for importing configurations domain. + + :param str apm_domain_id: (required) + The APM Domain ID the request is intended for. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + Unique identifier for the request. + If you need to contact Oracle about a particular request, please provide the request ID. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.apm_config.models.ImportConfigurationFailedItemsCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use import_configuration API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['apmDomainId'] + resource_path = "/actions/importConfiguration" + method = "POST" + operation_name = "import_configuration" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/apm-config/20210201/ImportConfigurationDetails/ImportConfiguration" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_retry_token", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"import_configuration got unknown kwargs: {extra_kwargs!r}") + + query_params = { + "apmDomainId": apm_domain_id + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + body=import_configuration_details, + response_type="ImportConfigurationFailedItemsCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + body=import_configuration_details, + response_type="ImportConfigurationFailedItemsCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_configs(self, apm_domain_id, **kwargs): + """ + Returns all configuration items, which can optionally be filtered by configuration type. + + + :param str apm_domain_id: (required) + The APM Domain ID the request is intended for. + + :param str opc_request_id: (optional) + Unique identifier for the request. + If you need to contact Oracle about a particular request, please provide the request ID. + + :param str config_type: (optional) + A filter to match configuration items of a given type. + Supported values are SPAN_FILTER, METRIC_GROUP, APDEX, AGENT and MACS_APM_EXTENSION. + + :param str display_name: (optional) + A filter to return resources that match the given display name. + + :param int limit: (optional) + The maximum number of items to return. + + :param str page: (optional) + The maximum number of results per page, or items to return in a paginated \"List\" call. For information on + how pagination works, see `List Pagination`__. + Example: `50` + + __ https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param str sort_order: (optional) + The sort order to use, either ascending (`ASC`) or descending (`DESC`). The displayName sort order + is case-sensitive. + + Allowed values are: "ASC", "DESC" + + :param str sort_by: (optional) + The field to sort by. You can provide one \"sortBy\" value. The default order for displayName, timeCreated + and timeUpdated is ascending. The displayName sort by is case-sensitive. + + Allowed values are: "displayName", "timeCreated", "timeUpdated" + + :param str options_group: (optional) + A filter to return OPTIONS resources that match the given group. :param list[str] defined_tag_equals: (optional) A list of tag filters to apply. Only resources with a defined tag matching the value will be returned. @@ -1137,6 +1530,404 @@ def list_configs(self, apm_domain_id, **kwargs): api_reference_link=api_reference_link, required_arguments=required_arguments) + def list_data_files(self, apm_domain_id, **kwargs): + """ + Fetches a list of Data files using some parameters. + + + :param str apm_domain_id: (required) + The APM Domain ID the request is intended for. + + :param str apm_type: (optional) + The type of the data file. + + :param str name: (optional) + A filter to return resources that match the specified name. Supports regular expressions to filter data files. + + :param datetime time_last_modified_before: (optional) + Return data files with time 'timeLastModified' before the specified time, expressed in `RFC 3339`__ + timestamp format. + Example: `2020-02-19T22:47:12.613Z` + + __ https://tools.ietf.org/html/rfc3339 + + :param datetime time_last_modified_after: (optional) + Return data files with the 'timeLastModified' after the specified time, expressed in `RFC 3339`__ + timestamp format. + Example: `2020-02-19T22:47:12.613Z` + + __ https://tools.ietf.org/html/rfc3339 + + :param int limit: (optional) + The maximum number of items to return. + + :param str page: (optional) + The maximum number of results per page, or items to return in a paginated \"List\" call. For information on + how pagination works, see `List Pagination`__. + Example: `50` + + __ https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param str sort_order: (optional) + The sort order to use, either ascending (`ASC`) or descending (`DESC`). The displayName sort order + is case-sensitive. + + Allowed values are: "ASC", "DESC" + + :param str sort_by: (optional) + The field to sort by. You can provide one \"sortBy\" value. The default order for displayName, timeCreated + and timeUpdated is ascending. The displayName sort by is case-sensitive. + + Allowed values are: "displayName", "timeCreated", "timeUpdated" + + :param str metadata: (optional) + A string containing a JSON-encoded object with metadata related to the uploaded file or resource. + Example: + {\"fileName\":\"report.pdf\",\"uploader\":\"jane.doe\",\"category\":\"financial\"} + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str opc_client_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.apm_config.models.DataFileSummaryCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_data_files API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['apmDomainId'] + resource_path = "/dataFiles" + method = "GET" + operation_name = "list_data_files" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/apm-config/20210201/DataFileSummaryCollection/ListDataFiles" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "apm_type", + "name", + "time_last_modified_before", + "time_last_modified_after", + "limit", + "page", + "sort_order", + "sort_by", + "metadata", + "opc_retry_token", + "opc_client_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_data_files got unknown kwargs: {extra_kwargs!r}") + + if 'sort_order' in kwargs: + sort_order_allowed_values = ["ASC", "DESC"] + if kwargs['sort_order'] not in sort_order_allowed_values: + raise ValueError( + f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + ) + + if 'sort_by' in kwargs: + sort_by_allowed_values = ["displayName", "timeCreated", "timeUpdated"] + if kwargs['sort_by'] not in sort_by_allowed_values: + raise ValueError( + f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" + ) + + query_params = { + "apmDomainId": apm_domain_id, + "apmType": kwargs.get("apm_type", missing), + "name": kwargs.get("name", missing), + "timeLastModifiedBefore": kwargs.get("time_last_modified_before", missing), + "timeLastModifiedAfter": kwargs.get("time_last_modified_after", missing), + "limit": kwargs.get("limit", missing), + "page": kwargs.get("page", missing), + "sortOrder": kwargs.get("sort_order", missing), + "sortBy": kwargs.get("sort_by", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "metadata": kwargs.get("metadata", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-client-request-id": kwargs.get("opc_client_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="DataFileSummaryCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="DataFileSummaryCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def put_data_file(self, put_data_file_body, data_file_name, apm_domain_id, apm_type, **kwargs): + """ + Creates a new data file or replaces an existing one with the same name and type. + + + :param stream put_data_file_body: (required) + The data file to be uploaded. + + :param str data_file_name: (required) + The name of the data file. + + :param str apm_domain_id: (required) + The APM Domain ID the request is intended for. + + :param str apm_type: (required) + The type of the data file. + + :param str content_md5: (optional) + Optional base64-encoded MD5 hash of the request body. If provided, the server will perform + a data integrity check by computing the MD5 of the received content and comparing it to the + supplied value. + + If the values do not match, the request will be rejected with an HTTP 400 error and a message such as: + + \"The computed MD5 of the request body (ACTUAL_MD5) does not match the Content-MD5 header (HEADER_MD5)\" + + :param str content_type: (optional) + Optional parameter specifying the media type (MIME type) of the request or response body. + If not specified, the default is `application/octet-stream`. + + This value can be used by recipients to determine how to interpret or render the content. + + :param str content_language: (optional) + Optional parameter that indicates the natural language of the content. + This value can be used by clients or intermediaries to select or display content based on language preferences. + + :param str content_encoding: (optional) + Optional parameter indicating the content encodings applied to the request body (e.g., gzip, deflate). + This value can be used by recipients to determine how to decode the content. + + :param str content_disposition: (optional) + Optional parameter that provides presentation information for how the content should be displayed or handled by the recipient. + + For example, to prompt a file download with a custom filename: + `attachment; filename=\"example.txt\"` + + :param str metadata: (optional) + A string containing a JSON-encoded object with metadata related to the uploaded file or resource. + Example: + {\"fileName\":\"report.pdf\",\"uploader\":\"jane.doe\",\"category\":\"financial\"} + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str opc_client_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :param int buffer_limit: (optional) + A buffer limit for the stream to be buffered. buffer_limit is used to set the buffer size capacity. Streams will be read until the size of the buffer reaches the buffer_limit. + If the stream size is greater than the buffer_limit, a BufferError exception will be thrown. + + The buffer_limit parameter is used when the stream object does not have a `seek`, `tell`, or `fileno` property for the Python Request library to calculate out the content length. + If buffer_limit is not passed, then the buffer_limit will be defaulted to 100MB. + Large streams can cause the process to freeze, consider passing in content-length for large streams instead. + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use put_data_file API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['dataFileName', 'apmDomainId', 'apmType'] + resource_path = "/dataFiles/{dataFileName}" + method = "PUT" + operation_name = "put_data_file" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/apm-config/20210201/DataFile/PutDataFile" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "buffer_limit", + "content_md5", + "content_type", + "content_language", + "content_encoding", + "content_disposition", + "metadata", + "opc_retry_token", + "opc_client_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"put_data_file got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "dataFileName": data_file_name + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + query_params = { + "apmDomainId": apm_domain_id, + "apmType": apm_type + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "Content-MD5": kwargs.get("content_md5", missing), + "Content-Type": kwargs.get("content_type", missing), + "Content-Language": kwargs.get("content_language", missing), + "Content-Encoding": kwargs.get("content_encoding", missing), + "Content-Disposition": kwargs.get("content_disposition", missing), + "metadata": kwargs.get("metadata", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-client-request-id": kwargs.get("opc_client_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + # If the body parameter is optional we need to assign it to a variable so additional type checking can be performed. + try: + put_data_file_body + except NameError: + put_data_file_body = kwargs.get("put_data_file_body", missing) + + if put_data_file_body is not missing and put_data_file_body is not None: + if (not isinstance(put_data_file_body, (six.binary_type, six.string_types)) and + not hasattr(put_data_file_body, "read")): + raise TypeError('The body must be a string, bytes, or provide a read() method.') + + if hasattr(put_data_file_body, 'fileno') and hasattr(put_data_file_body, 'name') and put_data_file_body.name != '': + if requests.utils.super_len(put_data_file_body) == 0: + header_params['Content-Length'] = '0' + + # If content length is not given and stream object have no 'fileno' and is not a string or bytes, try to calculate content length + elif 'Content-Length' not in header_params and not is_content_length_calculable_by_req_util(put_data_file_body): + calculated_obj = back_up_body_calculate_stream_content_length(put_data_file_body, kwargs.get("buffer_limit")) + header_params['Content-Length'] = calculated_obj["content_length"] + put_data_file_body = calculated_obj["byte_content"] + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + body=put_data_file_body, + enforce_content_headers=False, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + body=put_data_file_body, + enforce_content_headers=False, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + def retrieve_namespace_metrics(self, apm_domain_id, retrieve_namespace_metrics_details, **kwargs): """ Returns all metrics associated with the specified namespace. diff --git a/src/oci/apm_config/models/__init__.py b/src/oci/apm_config/models/__init__.py index 45381b14a5..19eff82cd4 100644 --- a/src/oci/apm_config/models/__init__.py +++ b/src/oci/apm_config/models/__init__.py @@ -26,6 +26,9 @@ from .create_metric_group_details import CreateMetricGroupDetails from .create_options_details import CreateOptionsDetails from .create_span_filter_details import CreateSpanFilterDetails +from .data_file import DataFile +from .data_file_summary import DataFileSummary +from .data_file_summary_collection import DataFileSummaryCollection from .dimension import Dimension from .export_configuration_details import ExportConfigurationDetails from .export_configuration_response_details import ExportConfigurationResponseDetails @@ -90,6 +93,9 @@ "CreateMetricGroupDetails": CreateMetricGroupDetails, "CreateOptionsDetails": CreateOptionsDetails, "CreateSpanFilterDetails": CreateSpanFilterDetails, + "DataFile": DataFile, + "DataFileSummary": DataFileSummary, + "DataFileSummaryCollection": DataFileSummaryCollection, "Dimension": Dimension, "ExportConfigurationDetails": ExportConfigurationDetails, "ExportConfigurationResponseDetails": ExportConfigurationResponseDetails, diff --git a/src/oci/apm_config/models/data_file.py b/src/oci/apm_config/models/data_file.py new file mode 100644 index 0000000000..9f6dab5340 --- /dev/null +++ b/src/oci/apm_config/models/data_file.py @@ -0,0 +1,39 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20210201 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DataFile(object): + """ + The data file to be uploaded. + """ + + def __init__(self, **kwargs): + """ + Initializes a new DataFile object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + """ + self.swagger_types = { + } + self.attribute_map = { + } + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/apm_config/models/data_file_summary.py b/src/oci/apm_config/models/data_file_summary.py new file mode 100644 index 0000000000..477abe89f3 --- /dev/null +++ b/src/oci/apm_config/models/data_file_summary.py @@ -0,0 +1,237 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20210201 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DataFileSummary(object): + """ + Properties related to the file. + """ + + def __init__(self, **kwargs): + """ + Initializes a new DataFileSummary object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this DataFileSummary. + :type name: str + + :param apm_type: + The value to assign to the apm_type property of this DataFileSummary. + :type apm_type: str + + :param size_in_bytes: + The value to assign to the size_in_bytes property of this DataFileSummary. + :type size_in_bytes: int + + :param md5: + The value to assign to the md5 property of this DataFileSummary. + :type md5: str + + :param time_last_modified: + The value to assign to the time_last_modified property of this DataFileSummary. + :type time_last_modified: datetime + + :param metadata: + The value to assign to the metadata property of this DataFileSummary. + :type metadata: dict(str, str) + + """ + self.swagger_types = { + 'name': 'str', + 'apm_type': 'str', + 'size_in_bytes': 'int', + 'md5': 'str', + 'time_last_modified': 'datetime', + 'metadata': 'dict(str, str)' + } + self.attribute_map = { + 'name': 'name', + 'apm_type': 'apmType', + 'size_in_bytes': 'sizeInBytes', + 'md5': 'md5', + 'time_last_modified': 'timeLastModified', + 'metadata': 'metadata' + } + self._name = None + self._apm_type = None + self._size_in_bytes = None + self._md5 = None + self._time_last_modified = None + self._metadata = None + + @property + def name(self): + """ + **[Required]** Gets the name of this DataFileSummary. + The name to use as identifier for the data file. + + + :return: The name of this DataFileSummary. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this DataFileSummary. + The name to use as identifier for the data file. + + + :param name: The name of this DataFileSummary. + :type: str + """ + self._name = name + + @property + def apm_type(self): + """ + **[Required]** Gets the apm_type of this DataFileSummary. + The type of the data file, indicating its intended use + Example: `source_map` + + + :return: The apm_type of this DataFileSummary. + :rtype: str + """ + return self._apm_type + + @apm_type.setter + def apm_type(self, apm_type): + """ + Sets the apm_type of this DataFileSummary. + The type of the data file, indicating its intended use + Example: `source_map` + + + :param apm_type: The apm_type of this DataFileSummary. + :type: str + """ + self._apm_type = apm_type + + @property + def size_in_bytes(self): + """ + Gets the size_in_bytes of this DataFileSummary. + Size of the object in bytes. + + + :return: The size_in_bytes of this DataFileSummary. + :rtype: int + """ + return self._size_in_bytes + + @size_in_bytes.setter + def size_in_bytes(self, size_in_bytes): + """ + Sets the size_in_bytes of this DataFileSummary. + Size of the object in bytes. + + + :param size_in_bytes: The size_in_bytes of this DataFileSummary. + :type: int + """ + self._size_in_bytes = size_in_bytes + + @property + def md5(self): + """ + Gets the md5 of this DataFileSummary. + Base64-encoded MD5 hash of the object data. + + + :return: The md5 of this DataFileSummary. + :rtype: str + """ + return self._md5 + + @md5.setter + def md5(self, md5): + """ + Sets the md5 of this DataFileSummary. + Base64-encoded MD5 hash of the object data. + + + :param md5: The md5 of this DataFileSummary. + :type: str + """ + self._md5 = md5 + + @property + def time_last_modified(self): + """ + Gets the time_last_modified of this DataFileSummary. + The last time the object was modified, as described in `RFC 2616`__. + Expressed in `RFC 3339`__ timestamp format. + Example: `2020-02-19T22:47:12.613Z` + + __ https://tools.ietf.org/html/rfc2616#section-14.29 + __ https://tools.ietf.org/html/rfc3339 + + + :return: The time_last_modified of this DataFileSummary. + :rtype: datetime + """ + return self._time_last_modified + + @time_last_modified.setter + def time_last_modified(self, time_last_modified): + """ + Sets the time_last_modified of this DataFileSummary. + The last time the object was modified, as described in `RFC 2616`__. + Expressed in `RFC 3339`__ timestamp format. + Example: `2020-02-19T22:47:12.613Z` + + __ https://tools.ietf.org/html/rfc2616#section-14.29 + __ https://tools.ietf.org/html/rfc3339 + + + :param time_last_modified: The time_last_modified of this DataFileSummary. + :type: datetime + """ + self._time_last_modified = time_last_modified + + @property + def metadata(self): + """ + Gets the metadata of this DataFileSummary. + Metadata properties related to the data file. + + + :return: The metadata of this DataFileSummary. + :rtype: dict(str, str) + """ + return self._metadata + + @metadata.setter + def metadata(self, metadata): + """ + Sets the metadata of this DataFileSummary. + Metadata properties related to the data file. + + + :param metadata: The metadata of this DataFileSummary. + :type: dict(str, str) + """ + self._metadata = metadata + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/apm_config/models/data_file_summary_collection.py b/src/oci/apm_config/models/data_file_summary_collection.py new file mode 100644 index 0000000000..a46b5f9155 --- /dev/null +++ b/src/oci/apm_config/models/data_file_summary_collection.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20210201 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DataFileSummaryCollection(object): + """ + A collection of Data File summaries. + """ + + def __init__(self, **kwargs): + """ + Initializes a new DataFileSummaryCollection object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this DataFileSummaryCollection. + :type items: list[oci.apm_config.models.DataFileSummary] + + """ + self.swagger_types = { + 'items': 'list[DataFileSummary]' + } + self.attribute_map = { + 'items': 'items' + } + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this DataFileSummaryCollection. + A list of Data File summaries. + + + :return: The items of this DataFileSummaryCollection. + :rtype: list[oci.apm_config.models.DataFileSummary] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this DataFileSummaryCollection. + A list of Data File summaries. + + + :param items: The items of this DataFileSummaryCollection. + :type: list[oci.apm_config.models.DataFileSummary] + """ + self._items = items + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/apm_control_plane/models/apm_domain.py b/src/oci/apm_control_plane/models/apm_domain.py index 9f8f7210cd..2c4b4cd039 100644 --- a/src/oci/apm_control_plane/models/apm_domain.py +++ b/src/oci/apm_control_plane/models/apm_domain.py @@ -74,6 +74,10 @@ def __init__(self, **kwargs): The value to assign to the is_free_tier property of this ApmDomain. :type is_free_tier: bool + :param log_group_id: + The value to assign to the log_group_id property of this ApmDomain. + :type log_group_id: str + :param time_created: The value to assign to the time_created property of this ApmDomain. :type time_created: datetime @@ -99,6 +103,7 @@ def __init__(self, **kwargs): 'compartment_id': 'str', 'lifecycle_state': 'str', 'is_free_tier': 'bool', + 'log_group_id': 'str', 'time_created': 'datetime', 'time_updated': 'datetime', 'freeform_tags': 'dict(str, str)', @@ -112,6 +117,7 @@ def __init__(self, **kwargs): 'compartment_id': 'compartmentId', 'lifecycle_state': 'lifecycleState', 'is_free_tier': 'isFreeTier', + 'log_group_id': 'logGroupId', 'time_created': 'timeCreated', 'time_updated': 'timeUpdated', 'freeform_tags': 'freeformTags', @@ -124,6 +130,7 @@ def __init__(self, **kwargs): self._compartment_id = None self._lifecycle_state = None self._is_free_tier = None + self._log_group_id = None self._time_created = None self._time_updated = None self._freeform_tags = None @@ -303,6 +310,30 @@ def is_free_tier(self, is_free_tier): """ self._is_free_tier = is_free_tier + @property + def log_group_id(self): + """ + Gets the log_group_id of this ApmDomain. + The OCID of the Log Analytics log group to which the data uploaded to this APM domain will be mapped to. + + + :return: The log_group_id of this ApmDomain. + :rtype: str + """ + return self._log_group_id + + @log_group_id.setter + def log_group_id(self, log_group_id): + """ + Sets the log_group_id of this ApmDomain. + The OCID of the Log Analytics log group to which the data uploaded to this APM domain will be mapped to. + + + :param log_group_id: The log_group_id of this ApmDomain. + :type: str + """ + self._log_group_id = log_group_id + @property def time_created(self): """ diff --git a/src/oci/apm_control_plane/models/apm_domain_summary.py b/src/oci/apm_control_plane/models/apm_domain_summary.py index 1d538acab3..b0774afbfa 100644 --- a/src/oci/apm_control_plane/models/apm_domain_summary.py +++ b/src/oci/apm_control_plane/models/apm_domain_summary.py @@ -70,6 +70,10 @@ def __init__(self, **kwargs): The value to assign to the is_free_tier property of this ApmDomainSummary. :type is_free_tier: bool + :param log_group_id: + The value to assign to the log_group_id property of this ApmDomainSummary. + :type log_group_id: str + :param time_created: The value to assign to the time_created property of this ApmDomainSummary. :type time_created: datetime @@ -94,6 +98,7 @@ def __init__(self, **kwargs): 'compartment_id': 'str', 'lifecycle_state': 'str', 'is_free_tier': 'bool', + 'log_group_id': 'str', 'time_created': 'datetime', 'time_updated': 'datetime', 'freeform_tags': 'dict(str, str)', @@ -106,6 +111,7 @@ def __init__(self, **kwargs): 'compartment_id': 'compartmentId', 'lifecycle_state': 'lifecycleState', 'is_free_tier': 'isFreeTier', + 'log_group_id': 'logGroupId', 'time_created': 'timeCreated', 'time_updated': 'timeUpdated', 'freeform_tags': 'freeformTags', @@ -117,6 +123,7 @@ def __init__(self, **kwargs): self._compartment_id = None self._lifecycle_state = None self._is_free_tier = None + self._log_group_id = None self._time_created = None self._time_updated = None self._freeform_tags = None @@ -272,6 +279,30 @@ def is_free_tier(self, is_free_tier): """ self._is_free_tier = is_free_tier + @property + def log_group_id(self): + """ + Gets the log_group_id of this ApmDomainSummary. + The OCID of the Log Analytics log group to which the data uploaded to this APM domain will be mapped to. + + + :return: The log_group_id of this ApmDomainSummary. + :rtype: str + """ + return self._log_group_id + + @log_group_id.setter + def log_group_id(self, log_group_id): + """ + Sets the log_group_id of this ApmDomainSummary. + The OCID of the Log Analytics log group to which the data uploaded to this APM domain will be mapped to. + + + :param log_group_id: The log_group_id of this ApmDomainSummary. + :type: str + """ + self._log_group_id = log_group_id + @property def time_created(self): """ diff --git a/src/oci/apm_control_plane/models/base_domain_details.py b/src/oci/apm_control_plane/models/base_domain_details.py index 0c04e0da98..dffc6cee7c 100644 --- a/src/oci/apm_control_plane/models/base_domain_details.py +++ b/src/oci/apm_control_plane/models/base_domain_details.py @@ -70,6 +70,10 @@ def __init__(self, **kwargs): The value to assign to the is_free_tier property of this BaseDomainDetails. :type is_free_tier: bool + :param log_group_id: + The value to assign to the log_group_id property of this BaseDomainDetails. + :type log_group_id: str + :param time_created: The value to assign to the time_created property of this BaseDomainDetails. :type time_created: datetime @@ -94,6 +98,7 @@ def __init__(self, **kwargs): 'compartment_id': 'str', 'lifecycle_state': 'str', 'is_free_tier': 'bool', + 'log_group_id': 'str', 'time_created': 'datetime', 'time_updated': 'datetime', 'freeform_tags': 'dict(str, str)', @@ -106,6 +111,7 @@ def __init__(self, **kwargs): 'compartment_id': 'compartmentId', 'lifecycle_state': 'lifecycleState', 'is_free_tier': 'isFreeTier', + 'log_group_id': 'logGroupId', 'time_created': 'timeCreated', 'time_updated': 'timeUpdated', 'freeform_tags': 'freeformTags', @@ -117,6 +123,7 @@ def __init__(self, **kwargs): self._compartment_id = None self._lifecycle_state = None self._is_free_tier = None + self._log_group_id = None self._time_created = None self._time_updated = None self._freeform_tags = None @@ -272,6 +279,30 @@ def is_free_tier(self, is_free_tier): """ self._is_free_tier = is_free_tier + @property + def log_group_id(self): + """ + Gets the log_group_id of this BaseDomainDetails. + The OCID of the Log Analytics log group to which the data uploaded to this APM domain will be mapped to. + + + :return: The log_group_id of this BaseDomainDetails. + :rtype: str + """ + return self._log_group_id + + @log_group_id.setter + def log_group_id(self, log_group_id): + """ + Sets the log_group_id of this BaseDomainDetails. + The OCID of the Log Analytics log group to which the data uploaded to this APM domain will be mapped to. + + + :param log_group_id: The log_group_id of this BaseDomainDetails. + :type: str + """ + self._log_group_id = log_group_id + @property def time_created(self): """ diff --git a/src/oci/apm_control_plane/models/create_apm_domain_details.py b/src/oci/apm_control_plane/models/create_apm_domain_details.py index 42c7d79344..e3706ab63e 100644 --- a/src/oci/apm_control_plane/models/create_apm_domain_details.py +++ b/src/oci/apm_control_plane/models/create_apm_domain_details.py @@ -32,6 +32,10 @@ def __init__(self, **kwargs): The value to assign to the compartment_id property of this CreateApmDomainDetails. :type compartment_id: str + :param log_group_id: + The value to assign to the log_group_id property of this CreateApmDomainDetails. + :type log_group_id: str + :param freeform_tags: The value to assign to the freeform_tags property of this CreateApmDomainDetails. :type freeform_tags: dict(str, str) @@ -49,6 +53,7 @@ def __init__(self, **kwargs): 'display_name': 'str', 'description': 'str', 'compartment_id': 'str', + 'log_group_id': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', 'is_free_tier': 'bool' @@ -57,6 +62,7 @@ def __init__(self, **kwargs): 'display_name': 'displayName', 'description': 'description', 'compartment_id': 'compartmentId', + 'log_group_id': 'logGroupId', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', 'is_free_tier': 'isFreeTier' @@ -64,6 +70,7 @@ def __init__(self, **kwargs): self._display_name = None self._description = None self._compartment_id = None + self._log_group_id = None self._freeform_tags = None self._defined_tags = None self._is_free_tier = None @@ -140,6 +147,30 @@ def compartment_id(self, compartment_id): """ self._compartment_id = compartment_id + @property + def log_group_id(self): + """ + Gets the log_group_id of this CreateApmDomainDetails. + The OCID of the Log Analytics log group to which the data uploaded to this APM domain will be mapped to. + + + :return: The log_group_id of this CreateApmDomainDetails. + :rtype: str + """ + return self._log_group_id + + @log_group_id.setter + def log_group_id(self, log_group_id): + """ + Sets the log_group_id of this CreateApmDomainDetails. + The OCID of the Log Analytics log group to which the data uploaded to this APM domain will be mapped to. + + + :param log_group_id: The log_group_id of this CreateApmDomainDetails. + :type: str + """ + self._log_group_id = log_group_id + @property def freeform_tags(self): """ diff --git a/src/oci/apm_control_plane/models/update_apm_domain_details.py b/src/oci/apm_control_plane/models/update_apm_domain_details.py index ff5c18fed8..e8a0172c91 100644 --- a/src/oci/apm_control_plane/models/update_apm_domain_details.py +++ b/src/oci/apm_control_plane/models/update_apm_domain_details.py @@ -28,6 +28,10 @@ def __init__(self, **kwargs): The value to assign to the description property of this UpdateApmDomainDetails. :type description: str + :param log_group_id: + The value to assign to the log_group_id property of this UpdateApmDomainDetails. + :type log_group_id: str + :param freeform_tags: The value to assign to the freeform_tags property of this UpdateApmDomainDetails. :type freeform_tags: dict(str, str) @@ -40,17 +44,20 @@ def __init__(self, **kwargs): self.swagger_types = { 'display_name': 'str', 'description': 'str', + 'log_group_id': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))' } self.attribute_map = { 'display_name': 'displayName', 'description': 'description', + 'log_group_id': 'logGroupId', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags' } self._display_name = None self._description = None + self._log_group_id = None self._freeform_tags = None self._defined_tags = None @@ -102,6 +109,30 @@ def description(self, description): """ self._description = description + @property + def log_group_id(self): + """ + Gets the log_group_id of this UpdateApmDomainDetails. + The OCID of the Log Analytics log group to which the data uploaded to this APM domain will be mapped to. + + + :return: The log_group_id of this UpdateApmDomainDetails. + :rtype: str + """ + return self._log_group_id + + @log_group_id.setter + def log_group_id(self, log_group_id): + """ + Sets the log_group_id of this UpdateApmDomainDetails. + The OCID of the Log Analytics log group to which the data uploaded to this APM domain will be mapped to. + + + :param log_group_id: The log_group_id of this UpdateApmDomainDetails. + :type: str + """ + self._log_group_id = log_group_id + @property def freeform_tags(self): """ diff --git a/src/oci/cloud_migrations/models/create_migration_details.py b/src/oci/cloud_migrations/models/create_migration_details.py index 9905ec8d21..79a94f0812 100644 --- a/src/oci/cloud_migrations/models/create_migration_details.py +++ b/src/oci/cloud_migrations/models/create_migration_details.py @@ -52,6 +52,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this CreateMigrationDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this CreateMigrationDetails. + :type security_attributes: dict(str, dict(str, object)) + """ self.swagger_types = { 'migration_type': 'str', @@ -61,7 +65,8 @@ def __init__(self, **kwargs): 'is_completed': 'bool', 'migration_config': 'MigrationConfig', 'freeform_tags': 'dict(str, str)', - 'defined_tags': 'dict(str, dict(str, object))' + 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))' } self.attribute_map = { 'migration_type': 'migrationType', @@ -71,7 +76,8 @@ def __init__(self, **kwargs): 'is_completed': 'isCompleted', 'migration_config': 'migrationConfig', 'freeform_tags': 'freeformTags', - 'defined_tags': 'definedTags' + 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes' } self._migration_type = None self._display_name = None @@ -81,6 +87,7 @@ def __init__(self, **kwargs): self._migration_config = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None @property def migration_type(self): @@ -274,6 +281,40 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this CreateMigrationDetails. + 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\": \"enforce\"}}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this CreateMigrationDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this CreateMigrationDetails. + 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\": \"enforce\"}}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this CreateMigrationDetails. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/cloud_migrations/models/migration.py b/src/oci/cloud_migrations/models/migration.py index 0920001be4..3938bb068f 100644 --- a/src/oci/cloud_migrations/models/migration.py +++ b/src/oci/cloud_migrations/models/migration.py @@ -116,6 +116,10 @@ def __init__(self, **kwargs): The value to assign to the system_tags property of this Migration. :type system_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this Migration. + :type security_attributes: dict(str, dict(str, object)) + """ self.swagger_types = { 'id': 'str', @@ -131,7 +135,8 @@ def __init__(self, **kwargs): 'migration_config': 'MigrationConfig', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', - 'system_tags': 'dict(str, dict(str, object))' + 'system_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))' } self.attribute_map = { 'id': 'id', @@ -147,7 +152,8 @@ def __init__(self, **kwargs): 'migration_config': 'migrationConfig', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', - 'system_tags': 'systemTags' + 'system_tags': 'systemTags', + 'security_attributes': 'securityAttributes' } self._id = None self._display_name = None @@ -163,6 +169,7 @@ def __init__(self, **kwargs): self._freeform_tags = None self._defined_tags = None self._system_tags = None + self._security_attributes = None @property def id(self): @@ -514,6 +521,40 @@ def system_tags(self, system_tags): """ self._system_tags = system_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this Migration. + 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\": \"enforce\"}}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this Migration. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this Migration. + 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\": \"enforce\"}}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this Migration. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/cloud_migrations/models/migration_summary.py b/src/oci/cloud_migrations/models/migration_summary.py index ed1c2b829f..636ee86893 100644 --- a/src/oci/cloud_migrations/models/migration_summary.py +++ b/src/oci/cloud_migrations/models/migration_summary.py @@ -76,6 +76,10 @@ def __init__(self, **kwargs): The value to assign to the system_tags property of this MigrationSummary. :type system_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this MigrationSummary. + :type security_attributes: dict(str, dict(str, object)) + """ self.swagger_types = { 'id': 'str', @@ -91,7 +95,8 @@ def __init__(self, **kwargs): 'migration_config': 'MigrationConfig', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', - 'system_tags': 'dict(str, dict(str, object))' + 'system_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))' } self.attribute_map = { 'id': 'id', @@ -107,7 +112,8 @@ def __init__(self, **kwargs): 'migration_config': 'migrationConfig', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', - 'system_tags': 'systemTags' + 'system_tags': 'systemTags', + 'security_attributes': 'securityAttributes' } self._id = None self._display_name = None @@ -123,6 +129,7 @@ def __init__(self, **kwargs): self._freeform_tags = None self._defined_tags = None self._system_tags = None + self._security_attributes = None @property def id(self): @@ -462,6 +469,40 @@ def system_tags(self, system_tags): """ self._system_tags = system_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this MigrationSummary. + 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\": \"enforce\"}}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this MigrationSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this MigrationSummary. + 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\": \"enforce\"}}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this MigrationSummary. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/cloud_migrations/models/update_migration_details.py b/src/oci/cloud_migrations/models/update_migration_details.py index 302086ab6d..804ef711e9 100644 --- a/src/oci/cloud_migrations/models/update_migration_details.py +++ b/src/oci/cloud_migrations/models/update_migration_details.py @@ -48,6 +48,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this UpdateMigrationDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this UpdateMigrationDetails. + :type security_attributes: dict(str, dict(str, object)) + """ self.swagger_types = { 'display_name': 'str', @@ -56,7 +60,8 @@ def __init__(self, **kwargs): 'migration_type': 'str', 'migration_config': 'MigrationConfig', 'freeform_tags': 'dict(str, str)', - 'defined_tags': 'dict(str, dict(str, object))' + 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))' } self.attribute_map = { 'display_name': 'displayName', @@ -65,7 +70,8 @@ def __init__(self, **kwargs): 'migration_type': 'migrationType', 'migration_config': 'migrationConfig', 'freeform_tags': 'freeformTags', - 'defined_tags': 'definedTags' + 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes' } self._display_name = None self._replication_schedule_id = None @@ -74,6 +80,7 @@ def __init__(self, **kwargs): self._migration_config = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None @property def display_name(self): @@ -243,6 +250,40 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this UpdateMigrationDetails. + 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\": \"enforce\"}}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this UpdateMigrationDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this UpdateMigrationDetails. + 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\": \"enforce\"}}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this UpdateMigrationDetails. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/container_engine/models/create_node_pool_node_config_details.py b/src/oci/container_engine/models/create_node_pool_node_config_details.py index 20b64a6059..fd18aac8f9 100644 --- a/src/oci/container_engine/models/create_node_pool_node_config_details.py +++ b/src/oci/container_engine/models/create_node_pool_node_config_details.py @@ -36,6 +36,10 @@ def __init__(self, **kwargs): The value to assign to the is_pv_encryption_in_transit_enabled property of this CreateNodePoolNodeConfigDetails. :type is_pv_encryption_in_transit_enabled: bool + :param compute_cluster_id: + The value to assign to the compute_cluster_id property of this CreateNodePoolNodeConfigDetails. + :type compute_cluster_id: str + :param freeform_tags: The value to assign to the freeform_tags property of this CreateNodePoolNodeConfigDetails. :type freeform_tags: dict(str, str) @@ -58,6 +62,7 @@ def __init__(self, **kwargs): 'nsg_ids': 'list[str]', 'kms_key_id': 'str', 'is_pv_encryption_in_transit_enabled': 'bool', + 'compute_cluster_id': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', 'placement_configs': 'list[NodePoolPlacementConfigDetails]', @@ -68,6 +73,7 @@ def __init__(self, **kwargs): 'nsg_ids': 'nsgIds', 'kms_key_id': 'kmsKeyId', 'is_pv_encryption_in_transit_enabled': 'isPvEncryptionInTransitEnabled', + 'compute_cluster_id': 'computeClusterId', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', 'placement_configs': 'placementConfigs', @@ -77,6 +83,7 @@ def __init__(self, **kwargs): self._nsg_ids = None self._kms_key_id = None self._is_pv_encryption_in_transit_enabled = None + self._compute_cluster_id = None self._freeform_tags = None self._defined_tags = None self._placement_configs = None @@ -178,6 +185,30 @@ def is_pv_encryption_in_transit_enabled(self, is_pv_encryption_in_transit_enable """ self._is_pv_encryption_in_transit_enabled = is_pv_encryption_in_transit_enabled + @property + def compute_cluster_id(self): + """ + Gets the compute_cluster_id of this CreateNodePoolNodeConfigDetails. + The OCID of the Compute Cluster to be associated with the worker node instance. + + + :return: The compute_cluster_id of this CreateNodePoolNodeConfigDetails. + :rtype: str + """ + return self._compute_cluster_id + + @compute_cluster_id.setter + def compute_cluster_id(self, compute_cluster_id): + """ + Sets the compute_cluster_id of this CreateNodePoolNodeConfigDetails. + The OCID of the Compute Cluster to be associated with the worker node instance. + + + :param compute_cluster_id: The compute_cluster_id of this CreateNodePoolNodeConfigDetails. + :type: str + """ + self._compute_cluster_id = compute_cluster_id + @property def freeform_tags(self): """ diff --git a/src/oci/container_engine/models/node_pool_node_config_details.py b/src/oci/container_engine/models/node_pool_node_config_details.py index a6e9850185..0beefd97ef 100644 --- a/src/oci/container_engine/models/node_pool_node_config_details.py +++ b/src/oci/container_engine/models/node_pool_node_config_details.py @@ -32,6 +32,10 @@ def __init__(self, **kwargs): The value to assign to the kms_key_id property of this NodePoolNodeConfigDetails. :type kms_key_id: str + :param compute_cluster_id: + The value to assign to the compute_cluster_id property of this NodePoolNodeConfigDetails. + :type compute_cluster_id: str + :param is_pv_encryption_in_transit_enabled: The value to assign to the is_pv_encryption_in_transit_enabled property of this NodePoolNodeConfigDetails. :type is_pv_encryption_in_transit_enabled: bool @@ -57,6 +61,7 @@ def __init__(self, **kwargs): 'size': 'int', 'nsg_ids': 'list[str]', 'kms_key_id': 'str', + 'compute_cluster_id': 'str', 'is_pv_encryption_in_transit_enabled': 'bool', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', @@ -67,6 +72,7 @@ def __init__(self, **kwargs): 'size': 'size', 'nsg_ids': 'nsgIds', 'kms_key_id': 'kmsKeyId', + 'compute_cluster_id': 'computeClusterId', 'is_pv_encryption_in_transit_enabled': 'isPvEncryptionInTransitEnabled', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', @@ -76,6 +82,7 @@ def __init__(self, **kwargs): self._size = None self._nsg_ids = None self._kms_key_id = None + self._compute_cluster_id = None self._is_pv_encryption_in_transit_enabled = None self._freeform_tags = None self._defined_tags = None @@ -154,6 +161,30 @@ def kms_key_id(self, kms_key_id): """ self._kms_key_id = kms_key_id + @property + def compute_cluster_id(self): + """ + Gets the compute_cluster_id of this NodePoolNodeConfigDetails. + The OCID of the Compute Cluster to be associated with the worker node instance. + + + :return: The compute_cluster_id of this NodePoolNodeConfigDetails. + :rtype: str + """ + return self._compute_cluster_id + + @compute_cluster_id.setter + def compute_cluster_id(self, compute_cluster_id): + """ + Sets the compute_cluster_id of this NodePoolNodeConfigDetails. + The OCID of the Compute Cluster to be associated with the worker node instance. + + + :param compute_cluster_id: The compute_cluster_id of this NodePoolNodeConfigDetails. + :type: str + """ + self._compute_cluster_id = compute_cluster_id + @property def is_pv_encryption_in_transit_enabled(self): """ diff --git a/src/oci/container_engine/models/node_pool_placement_config_details.py b/src/oci/container_engine/models/node_pool_placement_config_details.py index b97a0be563..a7c2e95d81 100644 --- a/src/oci/container_engine/models/node_pool_placement_config_details.py +++ b/src/oci/container_engine/models/node_pool_placement_config_details.py @@ -32,6 +32,10 @@ def __init__(self, **kwargs): The value to assign to the capacity_reservation_id property of this NodePoolPlacementConfigDetails. :type capacity_reservation_id: str + :param host_group_id: + The value to assign to the host_group_id property of this NodePoolPlacementConfigDetails. + :type host_group_id: str + :param preemptible_node_config: The value to assign to the preemptible_node_config property of this NodePoolPlacementConfigDetails. :type preemptible_node_config: oci.container_engine.models.PreemptibleNodeConfigDetails @@ -45,6 +49,7 @@ def __init__(self, **kwargs): 'availability_domain': 'str', 'subnet_id': 'str', 'capacity_reservation_id': 'str', + 'host_group_id': 'str', 'preemptible_node_config': 'PreemptibleNodeConfigDetails', 'fault_domains': 'list[str]' } @@ -52,12 +57,14 @@ def __init__(self, **kwargs): 'availability_domain': 'availabilityDomain', 'subnet_id': 'subnetId', 'capacity_reservation_id': 'capacityReservationId', + 'host_group_id': 'hostGroupId', 'preemptible_node_config': 'preemptibleNodeConfig', 'fault_domains': 'faultDomains' } self._availability_domain = None self._subnet_id = None self._capacity_reservation_id = None + self._host_group_id = None self._preemptible_node_config = None self._fault_domains = None @@ -135,6 +142,30 @@ def capacity_reservation_id(self, capacity_reservation_id): """ self._capacity_reservation_id = capacity_reservation_id + @property + def host_group_id(self): + """ + Gets the host_group_id of this NodePoolPlacementConfigDetails. + The OCID of the Host Group to be associated with the worker node instance. + + + :return: The host_group_id of this NodePoolPlacementConfigDetails. + :rtype: str + """ + return self._host_group_id + + @host_group_id.setter + def host_group_id(self, host_group_id): + """ + Sets the host_group_id of this NodePoolPlacementConfigDetails. + The OCID of the Host Group to be associated with the worker node instance. + + + :param host_group_id: The host_group_id of this NodePoolPlacementConfigDetails. + :type: str + """ + self._host_group_id = host_group_id + @property def preemptible_node_config(self): """ diff --git a/src/oci/database/database_client.py b/src/oci/database/database_client.py index 4776ca2dff..b5ff488e8a 100644 --- a/src/oci/database/database_client.py +++ b/src/oci/database/database_client.py @@ -11475,6 +11475,8 @@ def db_node_action(self, db_node_id, action, **kwargs): Performs one of the following power actions on the specified DB node: - start - power on - stop - power off gracefully + - forcestop - power off forcefully + - forcereset - ACPI shutdown and power on forcefully - softreset - ACPI shutdown and power on - reset - power off and power on @@ -11495,7 +11497,7 @@ def db_node_action(self, db_node_id, action, **kwargs): :param str action: (required) The action to perform on the DB Node. - Allowed values are: "STOP", "START", "SOFTRESET", "RESET" + Allowed values are: "STOP", "FORCESTOP", "FORCERESET", "START", "SOFTRESET", "RESET" :param str opc_retry_token: (optional) A token that uniquely identifies a request so it can be retried in case of a timeout or @@ -46148,6 +46150,9 @@ def restart_autonomous_container_database(self, autonomous_container_database_id :param str opc_request_id: (optional) Unique identifier for the request. + :param oci.database.models.RestartAutonomousContainerDatabaseDetails restart_autonomous_container_database_details: (optional) + Request details to restart the Autonomous Container Database with force option. + :param obj retry_strategy: (optional) A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. @@ -46183,7 +46188,8 @@ def restart_autonomous_container_database(self, autonomous_container_database_id "enable_strict_url_encoding", "retry_strategy", "if_match", - "opc_request_id" + "opc_request_id", + "restart_autonomous_container_database_details" ] extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] if extra_kwargs: @@ -46223,6 +46229,7 @@ def restart_autonomous_container_database(self, autonomous_container_database_id method=method, path_params=path_params, header_params=header_params, + body=kwargs.get('restart_autonomous_container_database_details'), response_type="AutonomousContainerDatabase", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), @@ -46235,6 +46242,7 @@ def restart_autonomous_container_database(self, autonomous_container_database_id method=method, path_params=path_params, header_params=header_params, + body=kwargs.get('restart_autonomous_container_database_details'), response_type="AutonomousContainerDatabase", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), @@ -46260,6 +46268,9 @@ def restart_autonomous_database(self, autonomous_database_id, **kwargs): :param bool is_online_restart: (optional) If provided, an online restart will be triggered. + :param oci.database.models.RestartAutonomousDatabaseDetails restart_autonomous_database_details: (optional) + Request details to restart the Autonomous Database with force option. + :param bool opc_dry_run: (optional) Indicates that the request is a dry run, if set to \"true\". A dry run request does not actually creating or updating a resource and is used only to perform validation on the submitted data. @@ -46300,6 +46311,7 @@ def restart_autonomous_database(self, autonomous_database_id, **kwargs): "retry_strategy", "if_match", "is_online_restart", + "restart_autonomous_database_details", "opc_dry_run" ] extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] @@ -46346,6 +46358,7 @@ def restart_autonomous_database(self, autonomous_database_id, **kwargs): path_params=path_params, query_params=query_params, header_params=header_params, + body=kwargs.get('restart_autonomous_database_details'), response_type="AutonomousDatabase", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), @@ -46359,6 +46372,7 @@ def restart_autonomous_database(self, autonomous_database_id, **kwargs): path_params=path_params, query_params=query_params, header_params=header_params, + body=kwargs.get('restart_autonomous_database_details'), response_type="AutonomousDatabase", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), @@ -46366,6 +46380,246 @@ def restart_autonomous_database(self, autonomous_database_id, **kwargs): api_reference_link=api_reference_link, required_arguments=required_arguments) + def restart_autonomous_vm_cluster_ords(self, autonomous_vm_cluster_id, **kwargs): + """ + Restarts Oracle REST Data Services (ORDS) for Autonomous Exadata VM cluster. + + + :param str autonomous_vm_cluster_id: (required) + The autonomous VM cluster `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations (for example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + may be rejected). + + :param str opc_request_id: (optional) + Unique identifier for the request. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` + parameter to the value of the etag from a previous GET or POST response for that resource. The resource + will be updated or deleted only if the etag you provide matches the resource's current etag value. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use restart_autonomous_vm_cluster_ords API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['autonomousVmClusterId'] + resource_path = "/autonomousVmClusters/{autonomousVmClusterId}/actions/restartOrds" + method = "POST" + operation_name = "restart_autonomous_vm_cluster_ords" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/AutonomousVmCluster/RestartAutonomousVmClusterOrds" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_retry_token", + "opc_request_id", + "if_match" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"restart_autonomous_vm_cluster_ords got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "autonomousVmClusterId": autonomous_vm_cluster_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def restart_cloud_autonomous_vm_cluster_ords(self, cloud_autonomous_vm_cluster_id, **kwargs): + """ + Restarts Oracle REST Data Services (ORDS) for a cloud Autonomous Exadata VM cluster. + + + :param str cloud_autonomous_vm_cluster_id: (required) + The Cloud VM cluster `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations (for example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + may be rejected). + + :param str opc_request_id: (optional) + Unique identifier for the request. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` + parameter to the value of the etag from a previous GET or POST response for that resource. The resource + will be updated or deleted only if the etag you provide matches the resource's current etag value. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use restart_cloud_autonomous_vm_cluster_ords API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['cloudAutonomousVmClusterId'] + resource_path = "/cloudAutonomousVmClusters/{cloudAutonomousVmClusterId}/actions/restartOrds" + method = "POST" + operation_name = "restart_cloud_autonomous_vm_cluster_ords" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/CloudAutonomousVmCluster/RestartCloudAutonomousVmClusterOrds" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_retry_token", + "opc_request_id", + "if_match" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"restart_cloud_autonomous_vm_cluster_ords got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "cloudAutonomousVmClusterId": cloud_autonomous_vm_cluster_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + def restore_autonomous_database(self, autonomous_database_id, restore_autonomous_database_details, **kwargs): """ Restores an Autonomous AI Database based on the provided request parameters. @@ -48826,6 +49080,9 @@ def stop_autonomous_database(self, autonomous_database_id, **kwargs): :param str opc_request_id: (optional) Unique identifier for the request. + :param oci.database.models.StopAutonomousDatabaseDetails stop_autonomous_database_details: (optional) + Request details to stop the Autonomous Database with force option. + :param bool opc_dry_run: (optional) Indicates that the request is a dry run, if set to \"true\". A dry run request does not actually creating or updating a resource and is used only to perform validation on the submitted data. @@ -48866,6 +49123,7 @@ def stop_autonomous_database(self, autonomous_database_id, **kwargs): "retry_strategy", "if_match", "opc_request_id", + "stop_autonomous_database_details", "opc_dry_run" ] extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] @@ -48907,6 +49165,7 @@ def stop_autonomous_database(self, autonomous_database_id, **kwargs): method=method, path_params=path_params, header_params=header_params, + body=kwargs.get('stop_autonomous_database_details'), response_type="AutonomousDatabase", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), @@ -48919,6 +49178,7 @@ def stop_autonomous_database(self, autonomous_database_id, **kwargs): method=method, path_params=path_params, header_params=header_params, + body=kwargs.get('stop_autonomous_database_details'), response_type="AutonomousDatabase", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), diff --git a/src/oci/database/database_client_composite_operations.py b/src/oci/database/database_client_composite_operations.py index a8e4635be6..438670f2bd 100644 --- a/src/oci/database/database_client_composite_operations.py +++ b/src/oci/database/database_client_composite_operations.py @@ -6216,7 +6216,7 @@ def db_node_action_and_wait_for_work_request(self, db_node_id, action, work_requ :param str action: (required) The action to perform on the DB Node. - Allowed values are: "STOP", "START", "SOFTRESET", "RESET" + Allowed values are: "STOP", "FORCESTOP", "FORCERESET", "START", "SOFTRESET", "RESET" :param list[str] work_request_states: (optional) An array of work requests states to wait on. These should be valid values for :py:attr:`~oci.work_requests.models.WorkRequest.status` @@ -6259,7 +6259,7 @@ def db_node_action_and_wait_for_state(self, db_node_id, action, wait_for_states= :param str action: (required) The action to perform on the DB Node. - Allowed values are: "STOP", "START", "SOFTRESET", "RESET" + Allowed values are: "STOP", "FORCESTOP", "FORCERESET", "START", "SOFTRESET", "RESET" :param list[str] wait_for_states: An array of states to wait on. These should be valid values for :py:attr:`~oci.database.models.DbNode.lifecycle_state` @@ -12068,6 +12068,82 @@ def restart_autonomous_database_and_wait_for_state(self, autonomous_database_id, except Exception as e: raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def restart_autonomous_vm_cluster_ords_and_wait_for_work_request(self, autonomous_vm_cluster_id, work_request_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.database.DatabaseClient.restart_autonomous_vm_cluster_ords` and waits for the oci.work_requests.models.WorkRequest + to enter the given state(s). + + :param str autonomous_vm_cluster_id: (required) + The autonomous VM cluster `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param list[str] work_request_states: (optional) + An array of work requests states to wait on. These should be valid values for :py:attr:`~oci.work_requests.models.WorkRequest.status` + Default values are termination states: [STATUS_SUCCEEDED, STATUS_FAILED, STATUS_CANCELED] + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.database.DatabaseClient.restart_autonomous_vm_cluster_ords` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.restart_autonomous_vm_cluster_ords(autonomous_vm_cluster_id, **operation_kwargs) + work_request_states = work_request_states if work_request_states else oci.waiter._WORK_REQUEST_TERMINATION_STATES + lowered_work_request_states = [w.lower() for w in work_request_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + work_request_id = operation_result.headers['opc-work-request-id'] + try: + waiter_result = oci.wait_until( + self._work_request_client, + self._work_request_client.get_work_request(work_request_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_work_request_states, + **waiter_kwargs + ) + return waiter_result + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def restart_cloud_autonomous_vm_cluster_ords_and_wait_for_work_request(self, cloud_autonomous_vm_cluster_id, work_request_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.database.DatabaseClient.restart_cloud_autonomous_vm_cluster_ords` and waits for the oci.work_requests.models.WorkRequest + to enter the given state(s). + + :param str cloud_autonomous_vm_cluster_id: (required) + The Cloud VM cluster `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param list[str] work_request_states: (optional) + An array of work requests states to wait on. These should be valid values for :py:attr:`~oci.work_requests.models.WorkRequest.status` + Default values are termination states: [STATUS_SUCCEEDED, STATUS_FAILED, STATUS_CANCELED] + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.database.DatabaseClient.restart_cloud_autonomous_vm_cluster_ords` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.restart_cloud_autonomous_vm_cluster_ords(cloud_autonomous_vm_cluster_id, **operation_kwargs) + work_request_states = work_request_states if work_request_states else oci.waiter._WORK_REQUEST_TERMINATION_STATES + lowered_work_request_states = [w.lower() for w in work_request_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + work_request_id = operation_result.headers['opc-work-request-id'] + try: + waiter_result = oci.wait_until( + self._work_request_client, + self._work_request_client.get_work_request(work_request_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_work_request_states, + **waiter_kwargs + ) + return waiter_result + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def restore_autonomous_database_and_wait_for_work_request(self, autonomous_database_id, restore_autonomous_database_details, work_request_states=[], operation_kwargs={}, waiter_kwargs={}): """ Calls :py:func:`~oci.database.DatabaseClient.restore_autonomous_database` and waits for the oci.work_requests.models.WorkRequest diff --git a/src/oci/database/models/__init__.py b/src/oci/database/models/__init__.py index 3c501da1e5..71e63bef72 100644 --- a/src/oci/database/models/__init__.py +++ b/src/oci/database/models/__init__.py @@ -459,6 +459,8 @@ from .resource_pool_shape_collection import ResourcePoolShapeCollection from .resource_pool_shape_summary import ResourcePoolShapeSummary from .resource_pool_summary import ResourcePoolSummary +from .restart_autonomous_container_database_details import RestartAutonomousContainerDatabaseDetails +from .restart_autonomous_database_details import RestartAutonomousDatabaseDetails from .restore_autonomous_database_details import RestoreAutonomousDatabaseDetails from .restore_database_details import RestoreDatabaseDetails from .rotate_autonomous_container_database_encryption_key_details import RotateAutonomousContainerDatabaseEncryptionKeyDetails @@ -486,6 +488,7 @@ from .set_key_version_details import SetKeyVersionDetails from .source_database_details import SourceDatabaseDetails from .stack_monitoring_config import StackMonitoringConfig +from .stop_autonomous_database_details import StopAutonomousDatabaseDetails from .storage_performance_details import StoragePerformanceDetails from .switch_over_data_guard_details import SwitchOverDataGuardDetails from .switchover_data_guard_association_details import SwitchoverDataGuardAssociationDetails @@ -1022,6 +1025,8 @@ "ResourcePoolShapeCollection": ResourcePoolShapeCollection, "ResourcePoolShapeSummary": ResourcePoolShapeSummary, "ResourcePoolSummary": ResourcePoolSummary, + "RestartAutonomousContainerDatabaseDetails": RestartAutonomousContainerDatabaseDetails, + "RestartAutonomousDatabaseDetails": RestartAutonomousDatabaseDetails, "RestoreAutonomousDatabaseDetails": RestoreAutonomousDatabaseDetails, "RestoreDatabaseDetails": RestoreDatabaseDetails, "RotateAutonomousContainerDatabaseEncryptionKeyDetails": RotateAutonomousContainerDatabaseEncryptionKeyDetails, @@ -1049,6 +1054,7 @@ "SetKeyVersionDetails": SetKeyVersionDetails, "SourceDatabaseDetails": SourceDatabaseDetails, "StackMonitoringConfig": StackMonitoringConfig, + "StopAutonomousDatabaseDetails": StopAutonomousDatabaseDetails, "StoragePerformanceDetails": StoragePerformanceDetails, "SwitchOverDataGuardDetails": SwitchOverDataGuardDetails, "SwitchoverDataGuardAssociationDetails": SwitchoverDataGuardAssociationDetails, diff --git a/src/oci/database/models/db_node.py b/src/oci/database/models/db_node.py index f51b0628d4..868584262c 100644 --- a/src/oci/database/models/db_node.py +++ b/src/oci/database/models/db_node.py @@ -51,6 +51,30 @@ class DbNode(object): #: This constant has a value of "FAILED" LIFECYCLE_STATE_FAILED = "FAILED" + #: A constant which can be used with the available_actions property of a DbNode. + #: This constant has a value of "STOP" + AVAILABLE_ACTIONS_STOP = "STOP" + + #: A constant which can be used with the available_actions property of a DbNode. + #: This constant has a value of "FORCESTOP" + AVAILABLE_ACTIONS_FORCESTOP = "FORCESTOP" + + #: A constant which can be used with the available_actions property of a DbNode. + #: This constant has a value of "FORCERESET" + AVAILABLE_ACTIONS_FORCERESET = "FORCERESET" + + #: A constant which can be used with the available_actions property of a DbNode. + #: This constant has a value of "START" + AVAILABLE_ACTIONS_START = "START" + + #: A constant which can be used with the available_actions property of a DbNode. + #: This constant has a value of "SOFTRESET" + AVAILABLE_ACTIONS_SOFTRESET = "SOFTRESET" + + #: A constant which can be used with the available_actions property of a DbNode. + #: This constant has a value of "RESET" + AVAILABLE_ACTIONS_RESET = "RESET" + #: A constant which can be used with the maintenance_type property of a DbNode. #: This constant has a value of "VMDB_REBOOT_MIGRATION" MAINTENANCE_TYPE_VMDB_REBOOT_MIGRATION = "VMDB_REBOOT_MIGRATION" @@ -118,6 +142,12 @@ def __init__(self, **kwargs): Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str + :param available_actions: + The value to assign to the available_actions property of this DbNode. + Allowed values for items in this list are: "STOP", "FORCESTOP", "FORCERESET", "START", "SOFTRESET", "RESET", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type available_actions: list[str] + :param hostname: The value to assign to the hostname property of this DbNode. :type hostname: str @@ -215,6 +245,7 @@ def __init__(self, **kwargs): 'vnic2_id': 'str', 'backup_vnic2_id': 'str', 'lifecycle_state': 'str', + 'available_actions': 'list[str]', 'hostname': 'str', 'fault_domain': 'str', 'time_created': 'datetime', @@ -248,6 +279,7 @@ def __init__(self, **kwargs): 'vnic2_id': 'vnic2Id', 'backup_vnic2_id': 'backupVnic2Id', 'lifecycle_state': 'lifecycleState', + 'available_actions': 'availableActions', 'hostname': 'hostname', 'fault_domain': 'faultDomain', 'time_created': 'timeCreated', @@ -280,6 +312,7 @@ def __init__(self, **kwargs): self._vnic2_id = None self._backup_vnic2_id = None self._lifecycle_state = None + self._available_actions = None self._hostname = None self._fault_domain = None self._time_created = None @@ -647,6 +680,36 @@ def lifecycle_state(self, lifecycle_state): lifecycle_state = 'UNKNOWN_ENUM_VALUE' self._lifecycle_state = lifecycle_state + @property + def available_actions(self): + """ + Gets the available_actions of this DbNode. + Actions that can be performed on the database node, depending on its current lifecycle state. + + Allowed values for items in this list are: "STOP", "FORCESTOP", "FORCERESET", "START", "SOFTRESET", "RESET", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The available_actions of this DbNode. + :rtype: list[str] + """ + return self._available_actions + + @available_actions.setter + def available_actions(self, available_actions): + """ + Sets the available_actions of this DbNode. + Actions that can be performed on the database node, depending on its current lifecycle state. + + + :param available_actions: The available_actions of this DbNode. + :type: list[str] + """ + allowed_values = ["STOP", "FORCESTOP", "FORCERESET", "START", "SOFTRESET", "RESET"] + if available_actions: + available_actions[:] = ['UNKNOWN_ENUM_VALUE' if not value_allowed_none_or_none_sentinel(x, allowed_values) else x for x in available_actions] + self._available_actions = available_actions + @property def hostname(self): """ diff --git a/src/oci/database/models/db_node_summary.py b/src/oci/database/models/db_node_summary.py index 93b619ccfa..33f692c820 100644 --- a/src/oci/database/models/db_node_summary.py +++ b/src/oci/database/models/db_node_summary.py @@ -57,6 +57,30 @@ class DbNodeSummary(object): #: This constant has a value of "FAILED" LIFECYCLE_STATE_FAILED = "FAILED" + #: A constant which can be used with the available_actions property of a DbNodeSummary. + #: This constant has a value of "STOP" + AVAILABLE_ACTIONS_STOP = "STOP" + + #: A constant which can be used with the available_actions property of a DbNodeSummary. + #: This constant has a value of "FORCESTOP" + AVAILABLE_ACTIONS_FORCESTOP = "FORCESTOP" + + #: A constant which can be used with the available_actions property of a DbNodeSummary. + #: This constant has a value of "FORCERESET" + AVAILABLE_ACTIONS_FORCERESET = "FORCERESET" + + #: A constant which can be used with the available_actions property of a DbNodeSummary. + #: This constant has a value of "START" + AVAILABLE_ACTIONS_START = "START" + + #: A constant which can be used with the available_actions property of a DbNodeSummary. + #: This constant has a value of "SOFTRESET" + AVAILABLE_ACTIONS_SOFTRESET = "SOFTRESET" + + #: A constant which can be used with the available_actions property of a DbNodeSummary. + #: This constant has a value of "RESET" + AVAILABLE_ACTIONS_RESET = "RESET" + #: A constant which can be used with the maintenance_type property of a DbNodeSummary. #: This constant has a value of "VMDB_REBOOT_MIGRATION" MAINTENANCE_TYPE_VMDB_REBOOT_MIGRATION = "VMDB_REBOOT_MIGRATION" @@ -124,6 +148,12 @@ def __init__(self, **kwargs): Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str + :param available_actions: + The value to assign to the available_actions property of this DbNodeSummary. + Allowed values for items in this list are: "STOP", "FORCESTOP", "FORCERESET", "START", "SOFTRESET", "RESET", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type available_actions: list[str] + :param hostname: The value to assign to the hostname property of this DbNodeSummary. :type hostname: str @@ -221,6 +251,7 @@ def __init__(self, **kwargs): 'vnic2_id': 'str', 'backup_vnic2_id': 'str', 'lifecycle_state': 'str', + 'available_actions': 'list[str]', 'hostname': 'str', 'fault_domain': 'str', 'time_created': 'datetime', @@ -254,6 +285,7 @@ def __init__(self, **kwargs): 'vnic2_id': 'vnic2Id', 'backup_vnic2_id': 'backupVnic2Id', 'lifecycle_state': 'lifecycleState', + 'available_actions': 'availableActions', 'hostname': 'hostname', 'fault_domain': 'faultDomain', 'time_created': 'timeCreated', @@ -286,6 +318,7 @@ def __init__(self, **kwargs): self._vnic2_id = None self._backup_vnic2_id = None self._lifecycle_state = None + self._available_actions = None self._hostname = None self._fault_domain = None self._time_created = None @@ -653,6 +686,36 @@ def lifecycle_state(self, lifecycle_state): lifecycle_state = 'UNKNOWN_ENUM_VALUE' self._lifecycle_state = lifecycle_state + @property + def available_actions(self): + """ + Gets the available_actions of this DbNodeSummary. + Actions that can be performed on the database node, depending on its current lifecycle state. + + Allowed values for items in this list are: "STOP", "FORCESTOP", "FORCERESET", "START", "SOFTRESET", "RESET", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The available_actions of this DbNodeSummary. + :rtype: list[str] + """ + return self._available_actions + + @available_actions.setter + def available_actions(self, available_actions): + """ + Sets the available_actions of this DbNodeSummary. + Actions that can be performed on the database node, depending on its current lifecycle state. + + + :param available_actions: The available_actions of this DbNodeSummary. + :type: list[str] + """ + allowed_values = ["STOP", "FORCESTOP", "FORCERESET", "START", "SOFTRESET", "RESET"] + if available_actions: + available_actions[:] = ['UNKNOWN_ENUM_VALUE' if not value_allowed_none_or_none_sentinel(x, allowed_values) else x for x in available_actions] + self._available_actions = available_actions + @property def hostname(self): """ diff --git a/src/oci/database/models/restart_autonomous_container_database_details.py b/src/oci/database/models/restart_autonomous_container_database_details.py new file mode 100644 index 0000000000..9c5a3d831f --- /dev/null +++ b/src/oci/database/models/restart_autonomous_container_database_details.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class RestartAutonomousContainerDatabaseDetails(object): + """ + Request details to restart an Autonomous Container Database with force option. + """ + + def __init__(self, **kwargs): + """ + Initializes a new RestartAutonomousContainerDatabaseDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param is_force_restart: + The value to assign to the is_force_restart property of this RestartAutonomousContainerDatabaseDetails. + :type is_force_restart: bool + + """ + self.swagger_types = { + 'is_force_restart': 'bool' + } + self.attribute_map = { + 'is_force_restart': 'isForceRestart' + } + self._is_force_restart = None + + @property + def is_force_restart(self): + """ + Gets the is_force_restart of this RestartAutonomousContainerDatabaseDetails. + If set to `true`, restarts the Autonomous Container Database with force option. + + + :return: The is_force_restart of this RestartAutonomousContainerDatabaseDetails. + :rtype: bool + """ + return self._is_force_restart + + @is_force_restart.setter + def is_force_restart(self, is_force_restart): + """ + Sets the is_force_restart of this RestartAutonomousContainerDatabaseDetails. + If set to `true`, restarts the Autonomous Container Database with force option. + + + :param is_force_restart: The is_force_restart of this RestartAutonomousContainerDatabaseDetails. + :type: bool + """ + self._is_force_restart = is_force_restart + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/database/models/restart_autonomous_database_details.py b/src/oci/database/models/restart_autonomous_database_details.py new file mode 100644 index 0000000000..d68ee55a7d --- /dev/null +++ b/src/oci/database/models/restart_autonomous_database_details.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class RestartAutonomousDatabaseDetails(object): + """ + Request details to restart an Autonomous Database with force option. + """ + + def __init__(self, **kwargs): + """ + Initializes a new RestartAutonomousDatabaseDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param is_force_restart: + The value to assign to the is_force_restart property of this RestartAutonomousDatabaseDetails. + :type is_force_restart: bool + + """ + self.swagger_types = { + 'is_force_restart': 'bool' + } + self.attribute_map = { + 'is_force_restart': 'isForceRestart' + } + self._is_force_restart = None + + @property + def is_force_restart(self): + """ + Gets the is_force_restart of this RestartAutonomousDatabaseDetails. + If set to `true`, restarts the Autonomous Database with force option. + + + :return: The is_force_restart of this RestartAutonomousDatabaseDetails. + :rtype: bool + """ + return self._is_force_restart + + @is_force_restart.setter + def is_force_restart(self, is_force_restart): + """ + Sets the is_force_restart of this RestartAutonomousDatabaseDetails. + If set to `true`, restarts the Autonomous Database with force option. + + + :param is_force_restart: The is_force_restart of this RestartAutonomousDatabaseDetails. + :type: bool + """ + self._is_force_restart = is_force_restart + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/database/models/stop_autonomous_database_details.py b/src/oci/database/models/stop_autonomous_database_details.py new file mode 100644 index 0000000000..8cddc7e6fa --- /dev/null +++ b/src/oci/database/models/stop_autonomous_database_details.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class StopAutonomousDatabaseDetails(object): + """ + Request details to stop an Autonomous Database with force option. + """ + + def __init__(self, **kwargs): + """ + Initializes a new StopAutonomousDatabaseDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param is_force_stop: + The value to assign to the is_force_stop property of this StopAutonomousDatabaseDetails. + :type is_force_stop: bool + + """ + self.swagger_types = { + 'is_force_stop': 'bool' + } + self.attribute_map = { + 'is_force_stop': 'isForceStop' + } + self._is_force_stop = None + + @property + def is_force_stop(self): + """ + Gets the is_force_stop of this StopAutonomousDatabaseDetails. + If set to `true`, stops the Autonomous Database with force option. + + + :return: The is_force_stop of this StopAutonomousDatabaseDetails. + :rtype: bool + """ + return self._is_force_stop + + @is_force_stop.setter + def is_force_stop(self, is_force_stop): + """ + Sets the is_force_stop of this StopAutonomousDatabaseDetails. + If set to `true`, stops the Autonomous Database with force option. + + + :param is_force_stop: The is_force_stop of this StopAutonomousDatabaseDetails. + :type: bool + """ + self._is_force_stop = is_force_stop + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/desktops/models/__init__.py b/src/oci/desktops/models/__init__.py index 3686bedca1..4f82df425e 100644 --- a/src/oci/desktops/models/__init__.py +++ b/src/oci/desktops/models/__init__.py @@ -36,8 +36,10 @@ from .inactivity_config import InactivityConfig from .update_desktop_details import UpdateDesktopDetails from .update_desktop_image import UpdateDesktopImage +from .update_desktop_network_configuration import UpdateDesktopNetworkConfiguration from .update_desktop_pool_desktop_session_lifecycle_actions import UpdateDesktopPoolDesktopSessionLifecycleActions from .update_desktop_pool_details import UpdateDesktopPoolDetails +from .update_desktop_pool_private_access_details import UpdateDesktopPoolPrivateAccessDetails from .work_request import WorkRequest from .work_request_error import WorkRequestError from .work_request_error_collection import WorkRequestErrorCollection @@ -79,8 +81,10 @@ "InactivityConfig": InactivityConfig, "UpdateDesktopDetails": UpdateDesktopDetails, "UpdateDesktopImage": UpdateDesktopImage, + "UpdateDesktopNetworkConfiguration": UpdateDesktopNetworkConfiguration, "UpdateDesktopPoolDesktopSessionLifecycleActions": UpdateDesktopPoolDesktopSessionLifecycleActions, "UpdateDesktopPoolDetails": UpdateDesktopPoolDetails, + "UpdateDesktopPoolPrivateAccessDetails": UpdateDesktopPoolPrivateAccessDetails, "WorkRequest": WorkRequest, "WorkRequestError": WorkRequestError, "WorkRequestErrorCollection": WorkRequestErrorCollection, diff --git a/src/oci/desktops/models/create_desktop_pool_details.py b/src/oci/desktops/models/create_desktop_pool_details.py index 1e289014e4..a027017168 100644 --- a/src/oci/desktops/models/create_desktop_pool_details.py +++ b/src/oci/desktops/models/create_desktop_pool_details.py @@ -133,6 +133,10 @@ def __init__(self, **kwargs): The value to assign to the private_access_details property of this CreateDesktopPoolDetails. :type private_access_details: oci.desktops.models.CreateDesktopPoolPrivateAccessDetails + :param security_attributes: + The value to assign to the security_attributes property of this CreateDesktopPoolDetails. + :type security_attributes: dict(str, dict(str, object)) + :param boot_volume_size_in_gbs: The value to assign to the boot_volume_size_in_gbs property of this CreateDesktopPoolDetails. :type boot_volume_size_in_gbs: int @@ -164,6 +168,7 @@ def __init__(self, **kwargs): 'defined_tags': 'dict(str, dict(str, object))', 'nsg_ids': 'list[str]', 'private_access_details': 'CreateDesktopPoolPrivateAccessDetails', + 'security_attributes': 'dict(str, dict(str, object))', 'boot_volume_size_in_gbs': 'int' } self.attribute_map = { @@ -192,6 +197,7 @@ def __init__(self, **kwargs): 'defined_tags': 'definedTags', 'nsg_ids': 'nsgIds', 'private_access_details': 'privateAccessDetails', + 'security_attributes': 'securityAttributes', 'boot_volume_size_in_gbs': 'bootVolumeSizeInGBs' } self._compartment_id = None @@ -219,6 +225,7 @@ def __init__(self, **kwargs): self._defined_tags = None self._nsg_ids = None self._private_access_details = None + self._security_attributes = None self._boot_volume_size_in_gbs = None @property @@ -818,6 +825,44 @@ def private_access_details(self, private_access_details): """ self._private_access_details = private_access_details + @property + def security_attributes(self): + """ + Gets the security_attributes of this CreateDesktopPoolDetails. + `Security attributes`__ for this resource. + Each attribute can be referenced in a `Zero Trust Packet Routing`__ + (ZPR) policy to control access to ZPR-supported resources. + + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/zpr-artifacts.htm#security-attributes + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/overview.htm + + + :return: The security_attributes of this CreateDesktopPoolDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this CreateDesktopPoolDetails. + `Security attributes`__ for this resource. + Each attribute can be referenced in a `Zero Trust Packet Routing`__ + (ZPR) policy to control access to ZPR-supported resources. + + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/zpr-artifacts.htm#security-attributes + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/overview.htm + + + :param security_attributes: The security_attributes of this CreateDesktopPoolDetails. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def boot_volume_size_in_gbs(self): """ diff --git a/src/oci/desktops/models/create_desktop_pool_private_access_details.py b/src/oci/desktops/models/create_desktop_pool_private_access_details.py index 57ed665c45..d0d731402e 100644 --- a/src/oci/desktops/models/create_desktop_pool_private_access_details.py +++ b/src/oci/desktops/models/create_desktop_pool_private_access_details.py @@ -32,20 +32,27 @@ def __init__(self, **kwargs): The value to assign to the private_ip property of this CreateDesktopPoolPrivateAccessDetails. :type private_ip: str + :param security_attributes: + The value to assign to the security_attributes property of this CreateDesktopPoolPrivateAccessDetails. + :type security_attributes: dict(str, dict(str, object)) + """ self.swagger_types = { 'subnet_id': 'str', 'nsg_ids': 'list[str]', - 'private_ip': 'str' + 'private_ip': 'str', + 'security_attributes': 'dict(str, dict(str, object))' } self.attribute_map = { 'subnet_id': 'subnetId', 'nsg_ids': 'nsgIds', - 'private_ip': 'privateIp' + 'private_ip': 'privateIp', + 'security_attributes': 'securityAttributes' } self._subnet_id = None self._nsg_ids = None self._private_ip = None + self._security_attributes = None @property def subnet_id(self): @@ -127,6 +134,44 @@ def private_ip(self, private_ip): """ self._private_ip = private_ip + @property + def security_attributes(self): + """ + Gets the security_attributes of this CreateDesktopPoolPrivateAccessDetails. + `Security attributes`__ for this resource. + Each attribute can be referenced in a `Zero Trust Packet Routing`__ + (ZPR) policy to control access to ZPR-supported resources. + + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/zpr-artifacts.htm#security-attributes + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/overview.htm + + + :return: The security_attributes of this CreateDesktopPoolPrivateAccessDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this CreateDesktopPoolPrivateAccessDetails. + `Security attributes`__ for this resource. + Each attribute can be referenced in a `Zero Trust Packet Routing`__ + (ZPR) policy to control access to ZPR-supported resources. + + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/zpr-artifacts.htm#security-attributes + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/overview.htm + + + :param security_attributes: The security_attributes of this CreateDesktopPoolPrivateAccessDetails. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/desktops/models/desktop_network_configuration.py b/src/oci/desktops/models/desktop_network_configuration.py index e28366cd7e..00623c5035 100644 --- a/src/oci/desktops/models/desktop_network_configuration.py +++ b/src/oci/desktops/models/desktop_network_configuration.py @@ -28,17 +28,24 @@ def __init__(self, **kwargs): The value to assign to the subnet_id property of this DesktopNetworkConfiguration. :type subnet_id: str + :param security_attributes: + The value to assign to the security_attributes property of this DesktopNetworkConfiguration. + :type security_attributes: dict(str, dict(str, object)) + """ self.swagger_types = { 'vcn_id': 'str', - 'subnet_id': 'str' + 'subnet_id': 'str', + 'security_attributes': 'dict(str, dict(str, object))' } self.attribute_map = { 'vcn_id': 'vcnId', - 'subnet_id': 'subnetId' + 'subnet_id': 'subnetId', + 'security_attributes': 'securityAttributes' } self._vcn_id = None self._subnet_id = None + self._security_attributes = None @property def vcn_id(self): @@ -98,6 +105,44 @@ def subnet_id(self, subnet_id): """ self._subnet_id = subnet_id + @property + def security_attributes(self): + """ + Gets the security_attributes of this DesktopNetworkConfiguration. + `Security attributes`__ for this resource. + Each attribute can be referenced in a `Zero Trust Packet Routing`__ + (ZPR) policy to control access to ZPR-supported resources. + + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/zpr-artifacts.htm#security-attributes + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/overview.htm + + + :return: The security_attributes of this DesktopNetworkConfiguration. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this DesktopNetworkConfiguration. + `Security attributes`__ for this resource. + Each attribute can be referenced in a `Zero Trust Packet Routing`__ + (ZPR) policy to control access to ZPR-supported resources. + + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/zpr-artifacts.htm#security-attributes + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/overview.htm + + + :param security_attributes: The security_attributes of this DesktopNetworkConfiguration. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/desktops/models/desktop_pool.py b/src/oci/desktops/models/desktop_pool.py index 76be9ddd22..4fa68da760 100644 --- a/src/oci/desktops/models/desktop_pool.py +++ b/src/oci/desktops/models/desktop_pool.py @@ -168,6 +168,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this DesktopPool. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this DesktopPool. + :type security_attributes: dict(str, dict(str, object)) + :param nsg_ids: The value to assign to the nsg_ids property of this DesktopPool. :type nsg_ids: list[str] @@ -208,6 +212,7 @@ def __init__(self, **kwargs): 'availability_domain': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'nsg_ids': 'list[str]', 'private_access_details': 'DesktopPoolPrivateAccessDetails', 'boot_volume_size_in_gbs': 'int' @@ -239,6 +244,7 @@ def __init__(self, **kwargs): 'availability_domain': 'availabilityDomain', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'nsg_ids': 'nsgIds', 'private_access_details': 'privateAccessDetails', 'boot_volume_size_in_gbs': 'bootVolumeSizeInGBs' @@ -269,6 +275,7 @@ def __init__(self, **kwargs): self._availability_domain = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None self._nsg_ids = None self._private_access_details = None self._boot_volume_size_in_gbs = None @@ -903,6 +910,44 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this DesktopPool. + `Security attributes`__ for this resource. + Each attribute can be referenced in a `Zero Trust Packet Routing`__ + (ZPR) policy to control access to ZPR-supported resources. + + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/zpr-artifacts.htm#security-attributes + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/overview.htm + + + :return: The security_attributes of this DesktopPool. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this DesktopPool. + `Security attributes`__ for this resource. + Each attribute can be referenced in a `Zero Trust Packet Routing`__ + (ZPR) policy to control access to ZPR-supported resources. + + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/zpr-artifacts.htm#security-attributes + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/overview.htm + + + :param security_attributes: The security_attributes of this DesktopPool. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def nsg_ids(self): """ diff --git a/src/oci/desktops/models/desktop_pool_private_access_details.py b/src/oci/desktops/models/desktop_pool_private_access_details.py index 85821b92e8..4adfe20eb3 100644 --- a/src/oci/desktops/models/desktop_pool_private_access_details.py +++ b/src/oci/desktops/models/desktop_pool_private_access_details.py @@ -40,26 +40,33 @@ def __init__(self, **kwargs): The value to assign to the private_ip property of this DesktopPoolPrivateAccessDetails. :type private_ip: str + :param security_attributes: + The value to assign to the security_attributes property of this DesktopPoolPrivateAccessDetails. + :type security_attributes: dict(str, dict(str, object)) + """ self.swagger_types = { 'vcn_id': 'str', 'endpoint_fqdn': 'str', 'subnet_id': 'str', 'nsg_ids': 'list[str]', - 'private_ip': 'str' + 'private_ip': 'str', + 'security_attributes': 'dict(str, dict(str, object))' } self.attribute_map = { 'vcn_id': 'vcnId', 'endpoint_fqdn': 'endpointFqdn', 'subnet_id': 'subnetId', 'nsg_ids': 'nsgIds', - 'private_ip': 'privateIp' + 'private_ip': 'privateIp', + 'security_attributes': 'securityAttributes' } self._vcn_id = None self._endpoint_fqdn = None self._subnet_id = None self._nsg_ids = None self._private_ip = None + self._security_attributes = None @property def vcn_id(self): @@ -197,6 +204,44 @@ def private_ip(self, private_ip): """ self._private_ip = private_ip + @property + def security_attributes(self): + """ + Gets the security_attributes of this DesktopPoolPrivateAccessDetails. + `Security attributes`__ for this resource. + Each attribute can be referenced in a `Zero Trust Packet Routing`__ + (ZPR) policy to control access to ZPR-supported resources. + + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/zpr-artifacts.htm#security-attributes + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/overview.htm + + + :return: The security_attributes of this DesktopPoolPrivateAccessDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this DesktopPoolPrivateAccessDetails. + `Security attributes`__ for this resource. + Each attribute can be referenced in a `Zero Trust Packet Routing`__ + (ZPR) policy to control access to ZPR-supported resources. + + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/zpr-artifacts.htm#security-attributes + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/overview.htm + + + :param security_attributes: The security_attributes of this DesktopPoolPrivateAccessDetails. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/desktops/models/desktop_pool_summary.py b/src/oci/desktops/models/desktop_pool_summary.py index 7d96ffa26a..0c4c5e7b18 100644 --- a/src/oci/desktops/models/desktop_pool_summary.py +++ b/src/oci/desktops/models/desktop_pool_summary.py @@ -78,6 +78,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this DesktopPoolSummary. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this DesktopPoolSummary. + :type security_attributes: dict(str, dict(str, object)) + :param contact_details: The value to assign to the contact_details property of this DesktopPoolSummary. :type contact_details: str @@ -99,6 +103,7 @@ def __init__(self, **kwargs): 'active_desktops': 'int', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'contact_details': 'str', 'compartment_id': 'str', 'time_created': 'datetime' @@ -111,6 +116,7 @@ def __init__(self, **kwargs): 'active_desktops': 'activeDesktops', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'contact_details': 'contactDetails', 'compartment_id': 'compartmentId', 'time_created': 'timeCreated' @@ -122,6 +128,7 @@ def __init__(self, **kwargs): self._active_desktops = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None self._contact_details = None self._compartment_id = None self._time_created = None @@ -314,6 +321,44 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this DesktopPoolSummary. + `Security attributes`__ for this resource. + Each attribute can be referenced in a `Zero Trust Packet Routing`__ + (ZPR) policy to control access to ZPR-supported resources. + + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/zpr-artifacts.htm#security-attributes + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/overview.htm + + + :return: The security_attributes of this DesktopPoolSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this DesktopPoolSummary. + `Security attributes`__ for this resource. + Each attribute can be referenced in a `Zero Trust Packet Routing`__ + (ZPR) policy to control access to ZPR-supported resources. + + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/zpr-artifacts.htm#security-attributes + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/overview.htm + + + :param security_attributes: The security_attributes of this DesktopPoolSummary. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def contact_details(self): """ diff --git a/src/oci/desktops/models/update_desktop_network_configuration.py b/src/oci/desktops/models/update_desktop_network_configuration.py new file mode 100644 index 0000000000..ac0a3bab0d --- /dev/null +++ b/src/oci/desktops/models/update_desktop_network_configuration.py @@ -0,0 +1,84 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220618 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class UpdateDesktopNetworkConfiguration(object): + """ + Provides information about the network configuration of the desktop pool. + """ + + def __init__(self, **kwargs): + """ + Initializes a new UpdateDesktopNetworkConfiguration object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param security_attributes: + The value to assign to the security_attributes property of this UpdateDesktopNetworkConfiguration. + :type security_attributes: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'security_attributes': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'security_attributes': 'securityAttributes' + } + self._security_attributes = None + + @property + def security_attributes(self): + """ + Gets the security_attributes of this UpdateDesktopNetworkConfiguration. + `Security attributes`__ for this resource. + Each attribute can be referenced in a `Zero Trust Packet Routing`__ + (ZPR) policy to control access to ZPR-supported resources. + + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/zpr-artifacts.htm#security-attributes + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/overview.htm + + + :return: The security_attributes of this UpdateDesktopNetworkConfiguration. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this UpdateDesktopNetworkConfiguration. + `Security attributes`__ for this resource. + Each attribute can be referenced in a `Zero Trust Packet Routing`__ + (ZPR) policy to control access to ZPR-supported resources. + + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/zpr-artifacts.htm#security-attributes + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/overview.htm + + + :param security_attributes: The security_attributes of this UpdateDesktopNetworkConfiguration. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/desktops/models/update_desktop_pool_details.py b/src/oci/desktops/models/update_desktop_pool_details.py index b3dd9ad79d..adc9a2f92a 100644 --- a/src/oci/desktops/models/update_desktop_pool_details.py +++ b/src/oci/desktops/models/update_desktop_pool_details.py @@ -72,6 +72,18 @@ def __init__(self, **kwargs): The value to assign to the image property of this UpdateDesktopPoolDetails. :type image: oci.desktops.models.UpdateDesktopImage + :param network_configuration: + The value to assign to the network_configuration property of this UpdateDesktopPoolDetails. + :type network_configuration: oci.desktops.models.UpdateDesktopNetworkConfiguration + + :param private_access_details: + The value to assign to the private_access_details property of this UpdateDesktopPoolDetails. + :type private_access_details: oci.desktops.models.UpdateDesktopPoolPrivateAccessDetails + + :param security_attributes: + The value to assign to the security_attributes property of this UpdateDesktopPoolDetails. + :type security_attributes: dict(str, dict(str, object)) + :param boot_volume_size_in_gbs: The value to assign to the boot_volume_size_in_gbs property of this UpdateDesktopPoolDetails. :type boot_volume_size_in_gbs: int @@ -91,6 +103,9 @@ def __init__(self, **kwargs): 'defined_tags': 'dict(str, dict(str, object))', 'session_lifecycle_actions': 'UpdateDesktopPoolDesktopSessionLifecycleActions', 'image': 'UpdateDesktopImage', + 'network_configuration': 'UpdateDesktopNetworkConfiguration', + 'private_access_details': 'UpdateDesktopPoolPrivateAccessDetails', + 'security_attributes': 'dict(str, dict(str, object))', 'boot_volume_size_in_gbs': 'int' } self.attribute_map = { @@ -107,6 +122,9 @@ def __init__(self, **kwargs): 'defined_tags': 'definedTags', 'session_lifecycle_actions': 'sessionLifecycleActions', 'image': 'image', + 'network_configuration': 'networkConfiguration', + 'private_access_details': 'privateAccessDetails', + 'security_attributes': 'securityAttributes', 'boot_volume_size_in_gbs': 'bootVolumeSizeInGBs' } self._display_name = None @@ -122,6 +140,9 @@ def __init__(self, **kwargs): self._defined_tags = None self._session_lifecycle_actions = None self._image = None + self._network_configuration = None + self._private_access_details = None + self._security_attributes = None self._boot_volume_size_in_gbs = None @property @@ -438,6 +459,84 @@ def image(self, image): """ self._image = image + @property + def network_configuration(self): + """ + Gets the network_configuration of this UpdateDesktopPoolDetails. + + :return: The network_configuration of this UpdateDesktopPoolDetails. + :rtype: oci.desktops.models.UpdateDesktopNetworkConfiguration + """ + return self._network_configuration + + @network_configuration.setter + def network_configuration(self, network_configuration): + """ + Sets the network_configuration of this UpdateDesktopPoolDetails. + + :param network_configuration: The network_configuration of this UpdateDesktopPoolDetails. + :type: oci.desktops.models.UpdateDesktopNetworkConfiguration + """ + self._network_configuration = network_configuration + + @property + def private_access_details(self): + """ + Gets the private_access_details of this UpdateDesktopPoolDetails. + + :return: The private_access_details of this UpdateDesktopPoolDetails. + :rtype: oci.desktops.models.UpdateDesktopPoolPrivateAccessDetails + """ + return self._private_access_details + + @private_access_details.setter + def private_access_details(self, private_access_details): + """ + Sets the private_access_details of this UpdateDesktopPoolDetails. + + :param private_access_details: The private_access_details of this UpdateDesktopPoolDetails. + :type: oci.desktops.models.UpdateDesktopPoolPrivateAccessDetails + """ + self._private_access_details = private_access_details + + @property + def security_attributes(self): + """ + Gets the security_attributes of this UpdateDesktopPoolDetails. + `Security attributes`__ for this resource. + Each attribute can be referenced in a `Zero Trust Packet Routing`__ + (ZPR) policy to control access to ZPR-supported resources. + + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/zpr-artifacts.htm#security-attributes + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/overview.htm + + + :return: The security_attributes of this UpdateDesktopPoolDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this UpdateDesktopPoolDetails. + `Security attributes`__ for this resource. + Each attribute can be referenced in a `Zero Trust Packet Routing`__ + (ZPR) policy to control access to ZPR-supported resources. + + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/zpr-artifacts.htm#security-attributes + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/overview.htm + + + :param security_attributes: The security_attributes of this UpdateDesktopPoolDetails. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def boot_volume_size_in_gbs(self): """ diff --git a/src/oci/desktops/models/update_desktop_pool_private_access_details.py b/src/oci/desktops/models/update_desktop_pool_private_access_details.py new file mode 100644 index 0000000000..15b2b8d53e --- /dev/null +++ b/src/oci/desktops/models/update_desktop_pool_private_access_details.py @@ -0,0 +1,84 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220618 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class UpdateDesktopPoolPrivateAccessDetails(object): + """ + The details of the desktop's private access network connectivity to be set up for the desktop pool. + """ + + def __init__(self, **kwargs): + """ + Initializes a new UpdateDesktopPoolPrivateAccessDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param security_attributes: + The value to assign to the security_attributes property of this UpdateDesktopPoolPrivateAccessDetails. + :type security_attributes: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'security_attributes': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'security_attributes': 'securityAttributes' + } + self._security_attributes = None + + @property + def security_attributes(self): + """ + Gets the security_attributes of this UpdateDesktopPoolPrivateAccessDetails. + `Security attributes`__ for this resource. + Each attribute can be referenced in a `Zero Trust Packet Routing`__ + (ZPR) policy to control access to ZPR-supported resources. + + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/zpr-artifacts.htm#security-attributes + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/overview.htm + + + :return: The security_attributes of this UpdateDesktopPoolPrivateAccessDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this UpdateDesktopPoolPrivateAccessDetails. + `Security attributes`__ for this resource. + Each attribute can be referenced in a `Zero Trust Packet Routing`__ + (ZPR) policy to control access to ZPR-supported resources. + + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}` + + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/zpr-artifacts.htm#security-attributes + __ https://docs.oracle.com/iaas/Content/zero-trust-packet-routing/overview.htm + + + :param security_attributes: The security_attributes of this UpdateDesktopPoolPrivateAccessDetails. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/object_storage/models/create_private_endpoint_details.py b/src/oci/object_storage/models/create_private_endpoint_details.py index cfd74f0840..62ee1d27a5 100644 --- a/src/oci/object_storage/models/create_private_endpoint_details.py +++ b/src/oci/object_storage/models/create_private_endpoint_details.py @@ -60,6 +60,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this CreatePrivateEndpointDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this CreatePrivateEndpointDetails. + :type security_attributes: dict(str, dict(str, object)) + """ self.swagger_types = { 'name': 'str', @@ -71,7 +75,8 @@ def __init__(self, **kwargs): 'nsg_ids': 'list[str]', 'access_targets': 'list[AccessTargetDetails]', 'freeform_tags': 'dict(str, str)', - 'defined_tags': 'dict(str, dict(str, object))' + 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))' } self.attribute_map = { 'name': 'name', @@ -83,7 +88,8 @@ def __init__(self, **kwargs): 'nsg_ids': 'nsgIds', 'access_targets': 'accessTargets', 'freeform_tags': 'freeformTags', - 'defined_tags': 'definedTags' + 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes' } self._name = None self._compartment_id = None @@ -95,6 +101,7 @@ def __init__(self, **kwargs): self._access_targets = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None @property def name(self): @@ -374,6 +381,40 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this CreatePrivateEndpointDetails. + Security attributes for Private Endpoint resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"enforce\"}}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this CreatePrivateEndpointDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this CreatePrivateEndpointDetails. + Security attributes for Private Endpoint resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"enforce\"}}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this CreatePrivateEndpointDetails. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/object_storage/models/private_endpoint.py b/src/oci/object_storage/models/private_endpoint.py index dafec60aba..f86838e986 100644 --- a/src/oci/object_storage/models/private_endpoint.py +++ b/src/oci/object_storage/models/private_endpoint.py @@ -118,6 +118,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this PrivateEndpoint. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this PrivateEndpoint. + :type security_attributes: dict(str, dict(str, object)) + :param id: The value to assign to the id property of this PrivateEndpoint. :type id: str @@ -141,6 +145,7 @@ def __init__(self, **kwargs): 'access_targets': 'list[AccessTargetDetails]', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))', 'id': 'str' } self.attribute_map = { @@ -161,6 +166,7 @@ def __init__(self, **kwargs): 'access_targets': 'accessTargets', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes', 'id': 'id' } self._name = None @@ -180,6 +186,7 @@ def __init__(self, **kwargs): self._access_targets = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None self._id = None @property @@ -642,6 +649,40 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this PrivateEndpoint. + Security attributes for Private Endpoint resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"enforce\"}}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this PrivateEndpoint. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this PrivateEndpoint. + Security attributes for Private Endpoint resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"enforce\"}}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this PrivateEndpoint. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def id(self): """ diff --git a/src/oci/object_storage/models/update_private_endpoint_details.py b/src/oci/object_storage/models/update_private_endpoint_details.py index 48ce597b2e..a902c1f51b 100644 --- a/src/oci/object_storage/models/update_private_endpoint_details.py +++ b/src/oci/object_storage/models/update_private_endpoint_details.py @@ -40,26 +40,33 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this UpdatePrivateEndpointDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this UpdatePrivateEndpointDetails. + :type security_attributes: dict(str, dict(str, object)) + """ self.swagger_types = { 'name': 'str', 'namespace': 'str', 'access_targets': 'list[AccessTargetDetails]', 'freeform_tags': 'dict(str, str)', - 'defined_tags': 'dict(str, dict(str, object))' + 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))' } self.attribute_map = { 'name': 'name', 'namespace': 'namespace', 'access_targets': 'accessTargets', 'freeform_tags': 'freeformTags', - 'defined_tags': 'definedTags' + 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes' } self._name = None self._namespace = None self._access_targets = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None @property def name(self): @@ -201,6 +208,40 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this UpdatePrivateEndpointDetails. + Security attributes for Private Endpoint resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"enforce\"}}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this UpdatePrivateEndpointDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this UpdatePrivateEndpointDetails. + Security attributes for Private Endpoint resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + Example: `{\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"enforce\"}}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this UpdatePrivateEndpointDetails. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/opensearch/models/__init__.py b/src/oci/opensearch/models/__init__.py index 3e8c7fa839..4e251d5a06 100644 --- a/src/oci/opensearch/models/__init__.py +++ b/src/oci/opensearch/models/__init__.py @@ -17,7 +17,6 @@ from .create_maintenance_details import CreateMaintenanceDetails from .create_opensearch_cluster_details import CreateOpensearchClusterDetails from .create_opensearch_cluster_pipeline_details import CreateOpensearchClusterPipelineDetails -from .customer_logging_details import CustomerLoggingDetails from .delete_block_volumes_for_namespace_details import DeleteBlockVolumesForNamespaceDetails from .export_opensearch_cluster_backup_details import ExportOpensearchClusterBackupDetails from .force_patch_cluster_details import ForcePatchClusterDetails @@ -82,7 +81,6 @@ "CreateMaintenanceDetails": CreateMaintenanceDetails, "CreateOpensearchClusterDetails": CreateOpensearchClusterDetails, "CreateOpensearchClusterPipelineDetails": CreateOpensearchClusterPipelineDetails, - "CustomerLoggingDetails": CustomerLoggingDetails, "DeleteBlockVolumesForNamespaceDetails": DeleteBlockVolumesForNamespaceDetails, "ExportOpensearchClusterBackupDetails": ExportOpensearchClusterBackupDetails, "ForcePatchClusterDetails": ForcePatchClusterDetails, diff --git a/src/oci/opensearch/models/create_opensearch_cluster_details.py b/src/oci/opensearch/models/create_opensearch_cluster_details.py index 3903eb96a3..767389c7d7 100644 --- a/src/oci/opensearch/models/create_opensearch_cluster_details.py +++ b/src/oci/opensearch/models/create_opensearch_cluster_details.py @@ -35,6 +35,10 @@ class CreateOpensearchClusterDetails(object): #: This constant has a value of "FLEX" SEARCH_NODE_HOST_TYPE_FLEX = "FLEX" + #: A constant which can be used with the coordinator_node_host_type property of a CreateOpensearchClusterDetails. + #: This constant has a value of "FLEX" + COORDINATOR_NODE_HOST_TYPE_FLEX = "FLEX" + #: A constant which can be used with the ml_node_host_type property of a CreateOpensearchClusterDetails. #: This constant has a value of "FLEX" ML_NODE_HOST_TYPE_FLEX = "FLEX" @@ -163,6 +167,27 @@ def __init__(self, **kwargs): The value to assign to the search_node_storage_gb property of this CreateOpensearchClusterDetails. :type search_node_storage_gb: int + :param coordinator_node_count: + The value to assign to the coordinator_node_count property of this CreateOpensearchClusterDetails. + :type coordinator_node_count: int + + :param coordinator_node_host_type: + The value to assign to the coordinator_node_host_type property of this CreateOpensearchClusterDetails. + Allowed values for this property are: "FLEX" + :type coordinator_node_host_type: str + + :param coordinator_node_host_shape: + The value to assign to the coordinator_node_host_shape property of this CreateOpensearchClusterDetails. + :type coordinator_node_host_shape: str + + :param coordinator_node_host_ocpu_count: + The value to assign to the coordinator_node_host_ocpu_count property of this CreateOpensearchClusterDetails. + :type coordinator_node_host_ocpu_count: int + + :param coordinator_node_host_memory_gb: + The value to assign to the coordinator_node_host_memory_gb property of this CreateOpensearchClusterDetails. + :type coordinator_node_host_memory_gb: int + :param ml_node_count: The value to assign to the ml_node_count property of this CreateOpensearchClusterDetails. :type ml_node_count: int @@ -297,6 +322,11 @@ def __init__(self, **kwargs): 'search_node_host_ocpu_count': 'int', 'search_node_host_memory_gb': 'int', 'search_node_storage_gb': 'int', + 'coordinator_node_count': 'int', + 'coordinator_node_host_type': 'str', + 'coordinator_node_host_shape': 'str', + 'coordinator_node_host_ocpu_count': 'int', + 'coordinator_node_host_memory_gb': 'int', 'ml_node_count': 'int', 'ml_node_host_type': 'str', 'ml_node_host_shape': 'str', @@ -351,6 +381,11 @@ def __init__(self, **kwargs): 'search_node_host_ocpu_count': 'searchNodeHostOcpuCount', 'search_node_host_memory_gb': 'searchNodeHostMemoryGB', 'search_node_storage_gb': 'searchNodeStorageGB', + 'coordinator_node_count': 'coordinatorNodeCount', + 'coordinator_node_host_type': 'coordinatorNodeHostType', + 'coordinator_node_host_shape': 'coordinatorNodeHostShape', + 'coordinator_node_host_ocpu_count': 'coordinatorNodeHostOcpuCount', + 'coordinator_node_host_memory_gb': 'coordinatorNodeHostMemoryGB', 'ml_node_count': 'mlNodeCount', 'ml_node_host_type': 'mlNodeHostType', 'ml_node_host_shape': 'mlNodeHostShape', @@ -404,6 +439,11 @@ def __init__(self, **kwargs): self._search_node_host_ocpu_count = None self._search_node_host_memory_gb = None self._search_node_storage_gb = None + self._coordinator_node_count = None + self._coordinator_node_host_type = None + self._coordinator_node_host_shape = None + self._coordinator_node_host_ocpu_count = None + self._coordinator_node_host_memory_gb = None self._ml_node_count = None self._ml_node_host_type = None self._ml_node_host_shape = None @@ -1076,6 +1116,133 @@ def search_node_storage_gb(self, search_node_storage_gb): """ self._search_node_storage_gb = search_node_storage_gb + @property + def coordinator_node_count(self): + """ + Gets the coordinator_node_count of this CreateOpensearchClusterDetails. + The number of coordinator nodes configured for the cluster. + + + :return: The coordinator_node_count of this CreateOpensearchClusterDetails. + :rtype: int + """ + return self._coordinator_node_count + + @coordinator_node_count.setter + def coordinator_node_count(self, coordinator_node_count): + """ + Sets the coordinator_node_count of this CreateOpensearchClusterDetails. + The number of coordinator nodes configured for the cluster. + + + :param coordinator_node_count: The coordinator_node_count of this CreateOpensearchClusterDetails. + :type: int + """ + self._coordinator_node_count = coordinator_node_count + + @property + def coordinator_node_host_type(self): + """ + Gets the coordinator_node_host_type of this CreateOpensearchClusterDetails. + The instance type for the cluster's coordinator nodes. + + Allowed values for this property are: "FLEX" + + + :return: The coordinator_node_host_type of this CreateOpensearchClusterDetails. + :rtype: str + """ + return self._coordinator_node_host_type + + @coordinator_node_host_type.setter + def coordinator_node_host_type(self, coordinator_node_host_type): + """ + Sets the coordinator_node_host_type of this CreateOpensearchClusterDetails. + The instance type for the cluster's coordinator nodes. + + + :param coordinator_node_host_type: The coordinator_node_host_type of this CreateOpensearchClusterDetails. + :type: str + """ + allowed_values = ["FLEX"] + if not value_allowed_none_or_none_sentinel(coordinator_node_host_type, allowed_values): + raise ValueError( + f"Invalid value for `coordinator_node_host_type`, must be None or one of {allowed_values}" + ) + self._coordinator_node_host_type = coordinator_node_host_type + + @property + def coordinator_node_host_shape(self): + """ + Gets the coordinator_node_host_shape of this CreateOpensearchClusterDetails. + The node shape for the cluster's coordinator nodes. + + + :return: The coordinator_node_host_shape of this CreateOpensearchClusterDetails. + :rtype: str + """ + return self._coordinator_node_host_shape + + @coordinator_node_host_shape.setter + def coordinator_node_host_shape(self, coordinator_node_host_shape): + """ + Sets the coordinator_node_host_shape of this CreateOpensearchClusterDetails. + The node shape for the cluster's coordinator nodes. + + + :param coordinator_node_host_shape: The coordinator_node_host_shape of this CreateOpensearchClusterDetails. + :type: str + """ + self._coordinator_node_host_shape = coordinator_node_host_shape + + @property + def coordinator_node_host_ocpu_count(self): + """ + Gets the coordinator_node_host_ocpu_count of this CreateOpensearchClusterDetails. + The number of OCPUs configured for the cluster's coordinator nodes. + + + :return: The coordinator_node_host_ocpu_count of this CreateOpensearchClusterDetails. + :rtype: int + """ + return self._coordinator_node_host_ocpu_count + + @coordinator_node_host_ocpu_count.setter + def coordinator_node_host_ocpu_count(self, coordinator_node_host_ocpu_count): + """ + Sets the coordinator_node_host_ocpu_count of this CreateOpensearchClusterDetails. + The number of OCPUs configured for the cluster's coordinator nodes. + + + :param coordinator_node_host_ocpu_count: The coordinator_node_host_ocpu_count of this CreateOpensearchClusterDetails. + :type: int + """ + self._coordinator_node_host_ocpu_count = coordinator_node_host_ocpu_count + + @property + def coordinator_node_host_memory_gb(self): + """ + Gets the coordinator_node_host_memory_gb of this CreateOpensearchClusterDetails. + The amount of memory in GB, for the cluster's coordinator nodes. + + + :return: The coordinator_node_host_memory_gb of this CreateOpensearchClusterDetails. + :rtype: int + """ + return self._coordinator_node_host_memory_gb + + @coordinator_node_host_memory_gb.setter + def coordinator_node_host_memory_gb(self, coordinator_node_host_memory_gb): + """ + Sets the coordinator_node_host_memory_gb of this CreateOpensearchClusterDetails. + The amount of memory in GB, for the cluster's coordinator nodes. + + + :param coordinator_node_host_memory_gb: The coordinator_node_host_memory_gb of this CreateOpensearchClusterDetails. + :type: int + """ + self._coordinator_node_host_memory_gb = coordinator_node_host_memory_gb + @property def ml_node_count(self): """ diff --git a/src/oci/opensearch/models/opensearch_cluster.py b/src/oci/opensearch/models/opensearch_cluster.py index 19bdb7c203..c4a1929a3c 100644 --- a/src/oci/opensearch/models/opensearch_cluster.py +++ b/src/oci/opensearch/models/opensearch_cluster.py @@ -62,6 +62,10 @@ class OpensearchCluster(object): #: This constant has a value of "FLEX" SEARCH_NODE_HOST_TYPE_FLEX = "FLEX" + #: A constant which can be used with the coordinator_node_host_type property of a OpensearchCluster. + #: This constant has a value of "FLEX" + COORDINATOR_NODE_HOST_TYPE_FLEX = "FLEX" + #: A constant which can be used with the ml_node_host_type property of a OpensearchCluster. #: This constant has a value of "FLEX" ML_NODE_HOST_TYPE_FLEX = "FLEX" @@ -239,6 +243,28 @@ def __init__(self, **kwargs): The value to assign to the search_node_storage_gb property of this OpensearchCluster. :type search_node_storage_gb: int + :param coordinator_node_count: + The value to assign to the coordinator_node_count property of this OpensearchCluster. + :type coordinator_node_count: int + + :param coordinator_node_host_type: + The value to assign to the coordinator_node_host_type property of this OpensearchCluster. + Allowed values for this property are: "FLEX", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type coordinator_node_host_type: str + + :param coordinator_node_host_shape: + The value to assign to the coordinator_node_host_shape property of this OpensearchCluster. + :type coordinator_node_host_shape: str + + :param coordinator_node_host_ocpu_count: + The value to assign to the coordinator_node_host_ocpu_count property of this OpensearchCluster. + :type coordinator_node_host_ocpu_count: int + + :param coordinator_node_host_memory_gb: + The value to assign to the coordinator_node_host_memory_gb property of this OpensearchCluster. + :type coordinator_node_host_memory_gb: int + :param ml_node_count: The value to assign to the ml_node_count property of this OpensearchCluster. :type ml_node_count: int @@ -398,6 +424,11 @@ def __init__(self, **kwargs): 'search_node_host_ocpu_count': 'int', 'search_node_host_memory_gb': 'int', 'search_node_storage_gb': 'int', + 'coordinator_node_count': 'int', + 'coordinator_node_host_type': 'str', + 'coordinator_node_host_shape': 'str', + 'coordinator_node_host_ocpu_count': 'int', + 'coordinator_node_host_memory_gb': 'int', 'ml_node_count': 'int', 'ml_node_host_type': 'str', 'ml_node_host_shape': 'str', @@ -466,6 +497,11 @@ def __init__(self, **kwargs): 'search_node_host_ocpu_count': 'searchNodeHostOcpuCount', 'search_node_host_memory_gb': 'searchNodeHostMemoryGB', 'search_node_storage_gb': 'searchNodeStorageGB', + 'coordinator_node_count': 'coordinatorNodeCount', + 'coordinator_node_host_type': 'coordinatorNodeHostType', + 'coordinator_node_host_shape': 'coordinatorNodeHostShape', + 'coordinator_node_host_ocpu_count': 'coordinatorNodeHostOcpuCount', + 'coordinator_node_host_memory_gb': 'coordinatorNodeHostMemoryGB', 'ml_node_count': 'mlNodeCount', 'ml_node_host_type': 'mlNodeHostType', 'ml_node_host_shape': 'mlNodeHostShape', @@ -533,6 +569,11 @@ def __init__(self, **kwargs): self._search_node_host_ocpu_count = None self._search_node_host_memory_gb = None self._search_node_storage_gb = None + self._coordinator_node_count = None + self._coordinator_node_host_type = None + self._coordinator_node_host_shape = None + self._coordinator_node_host_ocpu_count = None + self._coordinator_node_host_memory_gb = None self._ml_node_count = None self._ml_node_host_type = None self._ml_node_host_shape = None @@ -1491,6 +1532,132 @@ def search_node_storage_gb(self, search_node_storage_gb): """ self._search_node_storage_gb = search_node_storage_gb + @property + def coordinator_node_count(self): + """ + Gets the coordinator_node_count of this OpensearchCluster. + The number of coordinator nodes configured for the cluster. + + + :return: The coordinator_node_count of this OpensearchCluster. + :rtype: int + """ + return self._coordinator_node_count + + @coordinator_node_count.setter + def coordinator_node_count(self, coordinator_node_count): + """ + Sets the coordinator_node_count of this OpensearchCluster. + The number of coordinator nodes configured for the cluster. + + + :param coordinator_node_count: The coordinator_node_count of this OpensearchCluster. + :type: int + """ + self._coordinator_node_count = coordinator_node_count + + @property + def coordinator_node_host_type(self): + """ + Gets the coordinator_node_host_type of this OpensearchCluster. + The instance type for the cluster's coordinator nodes. + + Allowed values for this property are: "FLEX", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The coordinator_node_host_type of this OpensearchCluster. + :rtype: str + """ + return self._coordinator_node_host_type + + @coordinator_node_host_type.setter + def coordinator_node_host_type(self, coordinator_node_host_type): + """ + Sets the coordinator_node_host_type of this OpensearchCluster. + The instance type for the cluster's coordinator nodes. + + + :param coordinator_node_host_type: The coordinator_node_host_type of this OpensearchCluster. + :type: str + """ + allowed_values = ["FLEX"] + if not value_allowed_none_or_none_sentinel(coordinator_node_host_type, allowed_values): + coordinator_node_host_type = 'UNKNOWN_ENUM_VALUE' + self._coordinator_node_host_type = coordinator_node_host_type + + @property + def coordinator_node_host_shape(self): + """ + Gets the coordinator_node_host_shape of this OpensearchCluster. + The node shape for the cluster's coordinator nodes. + + + :return: The coordinator_node_host_shape of this OpensearchCluster. + :rtype: str + """ + return self._coordinator_node_host_shape + + @coordinator_node_host_shape.setter + def coordinator_node_host_shape(self, coordinator_node_host_shape): + """ + Sets the coordinator_node_host_shape of this OpensearchCluster. + The node shape for the cluster's coordinator nodes. + + + :param coordinator_node_host_shape: The coordinator_node_host_shape of this OpensearchCluster. + :type: str + """ + self._coordinator_node_host_shape = coordinator_node_host_shape + + @property + def coordinator_node_host_ocpu_count(self): + """ + Gets the coordinator_node_host_ocpu_count of this OpensearchCluster. + The number of OCPUs configured for the cluster's coordinator nodes. + + + :return: The coordinator_node_host_ocpu_count of this OpensearchCluster. + :rtype: int + """ + return self._coordinator_node_host_ocpu_count + + @coordinator_node_host_ocpu_count.setter + def coordinator_node_host_ocpu_count(self, coordinator_node_host_ocpu_count): + """ + Sets the coordinator_node_host_ocpu_count of this OpensearchCluster. + The number of OCPUs configured for the cluster's coordinator nodes. + + + :param coordinator_node_host_ocpu_count: The coordinator_node_host_ocpu_count of this OpensearchCluster. + :type: int + """ + self._coordinator_node_host_ocpu_count = coordinator_node_host_ocpu_count + + @property + def coordinator_node_host_memory_gb(self): + """ + Gets the coordinator_node_host_memory_gb of this OpensearchCluster. + The amount of memory in GB, for the cluster's coordinator nodes. + + + :return: The coordinator_node_host_memory_gb of this OpensearchCluster. + :rtype: int + """ + return self._coordinator_node_host_memory_gb + + @coordinator_node_host_memory_gb.setter + def coordinator_node_host_memory_gb(self, coordinator_node_host_memory_gb): + """ + Sets the coordinator_node_host_memory_gb of this OpensearchCluster. + The amount of memory in GB, for the cluster's coordinator nodes. + + + :param coordinator_node_host_memory_gb: The coordinator_node_host_memory_gb of this OpensearchCluster. + :type: int + """ + self._coordinator_node_host_memory_gb = coordinator_node_host_memory_gb + @property def ml_node_count(self): """ diff --git a/src/oci/opensearch/models/resize_opensearch_cluster_horizontal_details.py b/src/oci/opensearch/models/resize_opensearch_cluster_horizontal_details.py index d99acf996b..fdebc47f7d 100644 --- a/src/oci/opensearch/models/resize_opensearch_cluster_horizontal_details.py +++ b/src/oci/opensearch/models/resize_opensearch_cluster_horizontal_details.py @@ -38,6 +38,10 @@ def __init__(self, **kwargs): The value to assign to the search_node_count property of this ResizeOpensearchClusterHorizontalDetails. :type search_node_count: int + :param coordinator_node_count: + The value to assign to the coordinator_node_count property of this ResizeOpensearchClusterHorizontalDetails. + :type coordinator_node_count: int + :param ml_node_count: The value to assign to the ml_node_count property of this ResizeOpensearchClusterHorizontalDetails. :type ml_node_count: int @@ -56,6 +60,7 @@ def __init__(self, **kwargs): 'data_node_count': 'int', 'opendashboard_node_count': 'int', 'search_node_count': 'int', + 'coordinator_node_count': 'int', 'ml_node_count': 'int', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))' @@ -65,6 +70,7 @@ def __init__(self, **kwargs): 'data_node_count': 'dataNodeCount', 'opendashboard_node_count': 'opendashboardNodeCount', 'search_node_count': 'searchNodeCount', + 'coordinator_node_count': 'coordinatorNodeCount', 'ml_node_count': 'mlNodeCount', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags' @@ -73,6 +79,7 @@ def __init__(self, **kwargs): self._data_node_count = None self._opendashboard_node_count = None self._search_node_count = None + self._coordinator_node_count = None self._ml_node_count = None self._freeform_tags = None self._defined_tags = None @@ -173,6 +180,30 @@ def search_node_count(self, search_node_count): """ self._search_node_count = search_node_count + @property + def coordinator_node_count(self): + """ + Gets the coordinator_node_count of this ResizeOpensearchClusterHorizontalDetails. + The number of coordinator nodes configured for the cluster. + + + :return: The coordinator_node_count of this ResizeOpensearchClusterHorizontalDetails. + :rtype: int + """ + return self._coordinator_node_count + + @coordinator_node_count.setter + def coordinator_node_count(self, coordinator_node_count): + """ + Sets the coordinator_node_count of this ResizeOpensearchClusterHorizontalDetails. + The number of coordinator nodes configured for the cluster. + + + :param coordinator_node_count: The coordinator_node_count of this ResizeOpensearchClusterHorizontalDetails. + :type: int + """ + self._coordinator_node_count = coordinator_node_count + @property def ml_node_count(self): """ diff --git a/src/oci/opensearch/models/resize_opensearch_cluster_vertical_details.py b/src/oci/opensearch/models/resize_opensearch_cluster_vertical_details.py index 0f375da59e..3b159b589c 100644 --- a/src/oci/opensearch/models/resize_opensearch_cluster_vertical_details.py +++ b/src/oci/opensearch/models/resize_opensearch_cluster_vertical_details.py @@ -78,6 +78,18 @@ def __init__(self, **kwargs): The value to assign to the search_node_storage_gb property of this ResizeOpensearchClusterVerticalDetails. :type search_node_storage_gb: int + :param coordinator_node_host_shape: + The value to assign to the coordinator_node_host_shape property of this ResizeOpensearchClusterVerticalDetails. + :type coordinator_node_host_shape: str + + :param coordinator_node_host_ocpu_count: + The value to assign to the coordinator_node_host_ocpu_count property of this ResizeOpensearchClusterVerticalDetails. + :type coordinator_node_host_ocpu_count: int + + :param coordinator_node_host_memory_gb: + The value to assign to the coordinator_node_host_memory_gb property of this ResizeOpensearchClusterVerticalDetails. + :type coordinator_node_host_memory_gb: int + :param ml_node_host_shape: The value to assign to the ml_node_host_shape property of this ResizeOpensearchClusterVerticalDetails. :type ml_node_host_shape: str @@ -118,6 +130,9 @@ def __init__(self, **kwargs): 'search_node_host_ocpu_count': 'int', 'search_node_host_memory_gb': 'int', 'search_node_storage_gb': 'int', + 'coordinator_node_host_shape': 'str', + 'coordinator_node_host_ocpu_count': 'int', + 'coordinator_node_host_memory_gb': 'int', 'ml_node_host_shape': 'str', 'ml_node_host_ocpu_count': 'int', 'ml_node_host_memory_gb': 'int', @@ -140,6 +155,9 @@ def __init__(self, **kwargs): 'search_node_host_ocpu_count': 'searchNodeHostOcpuCount', 'search_node_host_memory_gb': 'searchNodeHostMemoryGB', 'search_node_storage_gb': 'searchNodeStorageGB', + 'coordinator_node_host_shape': 'coordinatorNodeHostShape', + 'coordinator_node_host_ocpu_count': 'coordinatorNodeHostOcpuCount', + 'coordinator_node_host_memory_gb': 'coordinatorNodeHostMemoryGB', 'ml_node_host_shape': 'mlNodeHostShape', 'ml_node_host_ocpu_count': 'mlNodeHostOcpuCount', 'ml_node_host_memory_gb': 'mlNodeHostMemoryGB', @@ -161,6 +179,9 @@ def __init__(self, **kwargs): self._search_node_host_ocpu_count = None self._search_node_host_memory_gb = None self._search_node_storage_gb = None + self._coordinator_node_host_shape = None + self._coordinator_node_host_ocpu_count = None + self._coordinator_node_host_memory_gb = None self._ml_node_host_shape = None self._ml_node_host_ocpu_count = None self._ml_node_host_memory_gb = None @@ -504,6 +525,78 @@ def search_node_storage_gb(self, search_node_storage_gb): """ self._search_node_storage_gb = search_node_storage_gb + @property + def coordinator_node_host_shape(self): + """ + Gets the coordinator_node_host_shape of this ResizeOpensearchClusterVerticalDetails. + The node shape for the cluster's coordinator nodes. + + + :return: The coordinator_node_host_shape of this ResizeOpensearchClusterVerticalDetails. + :rtype: str + """ + return self._coordinator_node_host_shape + + @coordinator_node_host_shape.setter + def coordinator_node_host_shape(self, coordinator_node_host_shape): + """ + Sets the coordinator_node_host_shape of this ResizeOpensearchClusterVerticalDetails. + The node shape for the cluster's coordinator nodes. + + + :param coordinator_node_host_shape: The coordinator_node_host_shape of this ResizeOpensearchClusterVerticalDetails. + :type: str + """ + self._coordinator_node_host_shape = coordinator_node_host_shape + + @property + def coordinator_node_host_ocpu_count(self): + """ + Gets the coordinator_node_host_ocpu_count of this ResizeOpensearchClusterVerticalDetails. + The number of OCPUs configured for the cluster's coordinator nodes. + + + :return: The coordinator_node_host_ocpu_count of this ResizeOpensearchClusterVerticalDetails. + :rtype: int + """ + return self._coordinator_node_host_ocpu_count + + @coordinator_node_host_ocpu_count.setter + def coordinator_node_host_ocpu_count(self, coordinator_node_host_ocpu_count): + """ + Sets the coordinator_node_host_ocpu_count of this ResizeOpensearchClusterVerticalDetails. + The number of OCPUs configured for the cluster's coordinator nodes. + + + :param coordinator_node_host_ocpu_count: The coordinator_node_host_ocpu_count of this ResizeOpensearchClusterVerticalDetails. + :type: int + """ + self._coordinator_node_host_ocpu_count = coordinator_node_host_ocpu_count + + @property + def coordinator_node_host_memory_gb(self): + """ + Gets the coordinator_node_host_memory_gb of this ResizeOpensearchClusterVerticalDetails. + The amount of memory in GB, for the cluster's coordinator nodes. + + + :return: The coordinator_node_host_memory_gb of this ResizeOpensearchClusterVerticalDetails. + :rtype: int + """ + return self._coordinator_node_host_memory_gb + + @coordinator_node_host_memory_gb.setter + def coordinator_node_host_memory_gb(self, coordinator_node_host_memory_gb): + """ + Sets the coordinator_node_host_memory_gb of this ResizeOpensearchClusterVerticalDetails. + The amount of memory in GB, for the cluster's coordinator nodes. + + + :param coordinator_node_host_memory_gb: The coordinator_node_host_memory_gb of this ResizeOpensearchClusterVerticalDetails. + :type: int + """ + self._coordinator_node_host_memory_gb = coordinator_node_host_memory_gb + @property def ml_node_host_shape(self): """ diff --git a/src/oci/opensearch/models/update_cluster_specs_details.py b/src/oci/opensearch/models/update_cluster_specs_details.py index c80d3c1806..c02b30c9a8 100644 --- a/src/oci/opensearch/models/update_cluster_specs_details.py +++ b/src/oci/opensearch/models/update_cluster_specs_details.py @@ -60,6 +60,22 @@ def __init__(self, **kwargs): The value to assign to the search_node_host_memory_gb property of this UpdateClusterSpecsDetails. :type search_node_host_memory_gb: int + :param coordinator_node_host_shape: + The value to assign to the coordinator_node_host_shape property of this UpdateClusterSpecsDetails. + :type coordinator_node_host_shape: str + + :param coordinator_node_host_ocpu_count: + The value to assign to the coordinator_node_host_ocpu_count property of this UpdateClusterSpecsDetails. + :type coordinator_node_host_ocpu_count: int + + :param coordinator_node_host_memory_gb: + The value to assign to the coordinator_node_host_memory_gb property of this UpdateClusterSpecsDetails. + :type coordinator_node_host_memory_gb: int + + :param coordinator_node_count: + The value to assign to the coordinator_node_count property of this UpdateClusterSpecsDetails. + :type coordinator_node_count: int + :param ml_node_host_shape: The value to assign to the ml_node_host_shape property of this UpdateClusterSpecsDetails. :type ml_node_host_shape: str @@ -100,6 +116,10 @@ def __init__(self, **kwargs): 'search_node_host_shape': 'str', 'search_node_host_ocpu_count': 'int', 'search_node_host_memory_gb': 'int', + 'coordinator_node_host_shape': 'str', + 'coordinator_node_host_ocpu_count': 'int', + 'coordinator_node_host_memory_gb': 'int', + 'coordinator_node_count': 'int', 'ml_node_host_shape': 'str', 'ml_node_host_ocpu_count': 'int', 'ml_node_host_memory_gb': 'int', @@ -119,6 +139,10 @@ def __init__(self, **kwargs): 'search_node_host_shape': 'searchNodeHostShape', 'search_node_host_ocpu_count': 'searchNodeHostOcpuCount', 'search_node_host_memory_gb': 'searchNodeHostMemoryGB', + 'coordinator_node_host_shape': 'coordinatorNodeHostShape', + 'coordinator_node_host_ocpu_count': 'coordinatorNodeHostOcpuCount', + 'coordinator_node_host_memory_gb': 'coordinatorNodeHostMemoryGB', + 'coordinator_node_count': 'coordinatorNodeCount', 'ml_node_host_shape': 'mlNodeHostShape', 'ml_node_host_ocpu_count': 'mlNodeHostOcpuCount', 'ml_node_host_memory_gb': 'mlNodeHostMemoryGB', @@ -137,6 +161,10 @@ def __init__(self, **kwargs): self._search_node_host_shape = None self._search_node_host_ocpu_count = None self._search_node_host_memory_gb = None + self._coordinator_node_host_shape = None + self._coordinator_node_host_ocpu_count = None + self._coordinator_node_host_memory_gb = None + self._coordinator_node_count = None self._ml_node_host_shape = None self._ml_node_host_ocpu_count = None self._ml_node_host_memory_gb = None @@ -385,6 +413,102 @@ def search_node_host_memory_gb(self, search_node_host_memory_gb): """ self._search_node_host_memory_gb = search_node_host_memory_gb + @property + def coordinator_node_host_shape(self): + """ + Gets the coordinator_node_host_shape of this UpdateClusterSpecsDetails. + The node shape for the cluster's coordinator nodes. + + + :return: The coordinator_node_host_shape of this UpdateClusterSpecsDetails. + :rtype: str + """ + return self._coordinator_node_host_shape + + @coordinator_node_host_shape.setter + def coordinator_node_host_shape(self, coordinator_node_host_shape): + """ + Sets the coordinator_node_host_shape of this UpdateClusterSpecsDetails. + The node shape for the cluster's coordinator nodes. + + + :param coordinator_node_host_shape: The coordinator_node_host_shape of this UpdateClusterSpecsDetails. + :type: str + """ + self._coordinator_node_host_shape = coordinator_node_host_shape + + @property + def coordinator_node_host_ocpu_count(self): + """ + Gets the coordinator_node_host_ocpu_count of this UpdateClusterSpecsDetails. + The number of OCPUs configured for the cluster's coordinator nodes. + + + :return: The coordinator_node_host_ocpu_count of this UpdateClusterSpecsDetails. + :rtype: int + """ + return self._coordinator_node_host_ocpu_count + + @coordinator_node_host_ocpu_count.setter + def coordinator_node_host_ocpu_count(self, coordinator_node_host_ocpu_count): + """ + Sets the coordinator_node_host_ocpu_count of this UpdateClusterSpecsDetails. + The number of OCPUs configured for the cluster's coordinator nodes. + + + :param coordinator_node_host_ocpu_count: The coordinator_node_host_ocpu_count of this UpdateClusterSpecsDetails. + :type: int + """ + self._coordinator_node_host_ocpu_count = coordinator_node_host_ocpu_count + + @property + def coordinator_node_host_memory_gb(self): + """ + Gets the coordinator_node_host_memory_gb of this UpdateClusterSpecsDetails. + The amount of memory in GB, for the cluster's coordinator nodes. + + + :return: The coordinator_node_host_memory_gb of this UpdateClusterSpecsDetails. + :rtype: int + """ + return self._coordinator_node_host_memory_gb + + @coordinator_node_host_memory_gb.setter + def coordinator_node_host_memory_gb(self, coordinator_node_host_memory_gb): + """ + Sets the coordinator_node_host_memory_gb of this UpdateClusterSpecsDetails. + The amount of memory in GB, for the cluster's coordinator nodes. + + + :param coordinator_node_host_memory_gb: The coordinator_node_host_memory_gb of this UpdateClusterSpecsDetails. + :type: int + """ + self._coordinator_node_host_memory_gb = coordinator_node_host_memory_gb + + @property + def coordinator_node_count(self): + """ + Gets the coordinator_node_count of this UpdateClusterSpecsDetails. + Updated value of number of coordinator nodes. + + + :return: The coordinator_node_count of this UpdateClusterSpecsDetails. + :rtype: int + """ + return self._coordinator_node_count + + @coordinator_node_count.setter + def coordinator_node_count(self, coordinator_node_count): + """ + Sets the coordinator_node_count of this UpdateClusterSpecsDetails. + Updated value of number of coordinator nodes. + + + :param coordinator_node_count: The coordinator_node_count of this UpdateClusterSpecsDetails. + :type: int + """ + self._coordinator_node_count = coordinator_node_count + @property def ml_node_host_shape(self): """ diff --git a/src/oci/operator_access_control/access_requests_client.py b/src/oci/operator_access_control/access_requests_client.py index f11aa16386..9d7e5a6a8f 100644 --- a/src/oci/operator_access_control/access_requests_client.py +++ b/src/oci/operator_access_control/access_requests_client.py @@ -24,8 +24,6 @@ class AccessRequestsClient(object): """ Operator Access Control enables you to control the time duration and the actions an Oracle operator can perform on your Exadata Cloud@Customer infrastructure. Using logging service, you can view a near real-time audit report of all actions performed by an Oracle operator. - - Use the table of contents and search tool to explore the OperatorAccessControl API. """ def __init__(self, config, **kwargs): @@ -182,7 +180,7 @@ def approve_access_request(self, access_request_id, approve_access_request_detai resource_path = "/accessRequests/{accessRequestId}/action/approve" method = "POST" operation_name = "approve_access_request" - api_reference_link = "" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/operatoraccesscontrol/20200630/AccessRequest/ApproveAccessRequest" # Don't accept unknown kwargs expected_kwargs = [ @@ -292,7 +290,7 @@ def get_access_request(self, access_request_id, **kwargs): resource_path = "/accessRequests/{accessRequestId}" method = "GET" operation_name = "get_access_request" - api_reference_link = "" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/operatoraccesscontrol/20200630/AccessRequest/GetAccessRequest" # Don't accept unknown kwargs expected_kwargs = [ @@ -400,7 +398,7 @@ def get_audit_log_report(self, access_request_id, **kwargs): resource_path = "/accessRequests/{accessRequestId}/auditLogReport" method = "GET" operation_name = "get_audit_log_report" - api_reference_link = "" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/operatoraccesscontrol/20200630/AuditLogReport/GetAuditLogReport" # Don't accept unknown kwargs expected_kwargs = [ @@ -530,7 +528,7 @@ def interaction_request(self, access_request_id, interaction_request_details, ** resource_path = "/accessRequests/{accessRequestId}/action/interactionRequest" method = "POST" operation_name = "interaction_request" - api_reference_link = "" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/operatoraccesscontrol/20200630/AccessRequest/InteractionRequest" # Don't accept unknown kwargs expected_kwargs = [ @@ -648,7 +646,7 @@ def list_access_request_histories(self, access_request_id, **kwargs): resource_path = "/accessRequests/{accessRequestId}/history" method = "GET" operation_name = "list_access_request_histories" - api_reference_link = "" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/operatoraccesscontrol/20200630/AccessRequest/ListAccessRequestHistories" # Don't accept unknown kwargs expected_kwargs = [ @@ -744,6 +742,9 @@ def list_access_requests(self, compartment_id, **kwargs): Allowed values are: "CREATED", "APPROVALWAITING", "PREAPPROVED", "APPROVED", "MOREINFO", "REJECTED", "DEPLOYED", "DEPLOYFAILED", "UNDEPLOYED", "UNDEPLOYFAILED", "CLOSEFAILED", "REVOKEFAILED", "EXPIRYFAILED", "REVOKING", "REVOKED", "EXTENDING", "EXTENDED", "EXTENSIONREJECTED", "COMPLETING", "COMPLETED", "EXPIRED", "APPROVEDFORFUTURE", "INREVIEW" + :param int num_days: (optional) + The number of days since when the user wants to search . + :param datetime time_start: (optional) Query start time in UTC in ISO 8601 format(inclusive). Example 2019-10-30T00:00:00Z (yyyy-MM-ddThh:mm:ssZ). @@ -800,7 +801,7 @@ def list_access_requests(self, compartment_id, **kwargs): resource_path = "/accessRequests" method = "GET" operation_name = "list_access_requests" - api_reference_link = "" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/operatoraccesscontrol/20200630/AccessRequest/ListAccessRequests" # Don't accept unknown kwargs expected_kwargs = [ @@ -810,6 +811,7 @@ def list_access_requests(self, compartment_id, **kwargs): "resource_name", "resource_type", "lifecycle_state", + "num_days", "time_start", "time_end", "limit", @@ -849,6 +851,7 @@ def list_access_requests(self, compartment_id, **kwargs): "resourceName": kwargs.get("resource_name", missing), "resourceType": kwargs.get("resource_type", missing), "lifecycleState": kwargs.get("lifecycle_state", missing), + "numDays": kwargs.get("num_days", missing), "timeStart": kwargs.get("time_start", missing), "timeEnd": kwargs.get("time_end", missing), "limit": kwargs.get("limit", missing), @@ -945,7 +948,7 @@ def list_interactions(self, access_request_id, **kwargs): resource_path = "/accessRequests/{accessRequestId}/interactions" method = "GET" operation_name = "list_interactions" - api_reference_link = "" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/operatoraccesscontrol/20200630/AccessRequest/ListInteractions" # Don't accept unknown kwargs expected_kwargs = [ @@ -1077,7 +1080,7 @@ def reject_access_request(self, access_request_id, reject_access_request_details resource_path = "/accessRequests/{accessRequestId}/action/reject" method = "POST" operation_name = "reject_access_request" - api_reference_link = "" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/operatoraccesscontrol/20200630/AccessRequest/RejectAccessRequest" # Don't accept unknown kwargs expected_kwargs = [ @@ -1204,7 +1207,7 @@ def review_access_request(self, access_request_id, review_access_request_details resource_path = "/accessRequests/{accessRequestId}/action/review" method = "POST" operation_name = "review_access_request" - api_reference_link = "" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/operatoraccesscontrol/20200630/AccessRequest/ReviewAccessRequest" # Don't accept unknown kwargs expected_kwargs = [ @@ -1333,7 +1336,7 @@ def revoke_access_request(self, access_request_id, revoke_access_request_details resource_path = "/accessRequests/{accessRequestId}/action/revoke" method = "POST" operation_name = "revoke_access_request" - api_reference_link = "" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/operatoraccesscontrol/20200630/AccessRequest/RevokeAccessRequest" # Don't accept unknown kwargs expected_kwargs = [ diff --git a/src/oci/operator_access_control/models/access_request.py b/src/oci/operator_access_control/models/access_request.py index ac36c75264..e5b7d9f01b 100644 --- a/src/oci/operator_access_control/models/access_request.py +++ b/src/oci/operator_access_control/models/access_request.py @@ -43,6 +43,10 @@ class AccessRequest(object): #: This constant has a value of "CCCINFRASTRUCTURE" RESOURCE_TYPE_CCCINFRASTRUCTURE = "CCCINFRASTRUCTURE" + #: A constant which can be used with the resource_type property of a AccessRequest. + #: This constant has a value of "CLOUDEXADATAINFRASTRUCTURE" + RESOURCE_TYPE_CLOUDEXADATAINFRASTRUCTURE = "CLOUDEXADATAINFRASTRUCTURE" + #: A constant which can be used with the severity property of a AccessRequest. #: This constant has a value of "S1" SEVERITY_S1 = "S1" @@ -190,7 +194,7 @@ def __init__(self, **kwargs): :param resource_type: The value to assign to the resource_type property of this AccessRequest. - Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", "CLOUDEXADATAINFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type resource_type: str @@ -636,7 +640,7 @@ def resource_type(self): Gets the resource_type of this AccessRequest. resourceType for which the AccessRequest is applicable - Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", "CLOUDEXADATAINFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -655,7 +659,7 @@ def resource_type(self, resource_type): :param resource_type: The resource_type of this AccessRequest. :type: str """ - allowed_values = ["EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE"] + allowed_values = ["EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", "CLOUDEXADATAINFRASTRUCTURE"] if not value_allowed_none_or_none_sentinel(resource_type, allowed_values): resource_type = 'UNKNOWN_ENUM_VALUE' self._resource_type = resource_type diff --git a/src/oci/operator_access_control/models/access_request_summary.py b/src/oci/operator_access_control/models/access_request_summary.py index dc86f4b454..c39f28acb9 100644 --- a/src/oci/operator_access_control/models/access_request_summary.py +++ b/src/oci/operator_access_control/models/access_request_summary.py @@ -35,6 +35,10 @@ class AccessRequestSummary(object): #: This constant has a value of "CCCINFRASTRUCTURE" RESOURCE_TYPE_CCCINFRASTRUCTURE = "CCCINFRASTRUCTURE" + #: A constant which can be used with the resource_type property of a AccessRequestSummary. + #: This constant has a value of "CLOUDEXADATAINFRASTRUCTURE" + RESOURCE_TYPE_CLOUDEXADATAINFRASTRUCTURE = "CLOUDEXADATAINFRASTRUCTURE" + #: A constant which can be used with the lifecycle_state property of a AccessRequestSummary. #: This constant has a value of "CREATED" LIFECYCLE_STATE_CREATED = "CREATED" @@ -178,10 +182,14 @@ def __init__(self, **kwargs): :param resource_type: The value to assign to the resource_type property of this AccessRequestSummary. - Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", "CLOUDEXADATAINFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type resource_type: str + :param action_requests_list: + The value to assign to the action_requests_list property of this AccessRequestSummary. + :type action_requests_list: list[str] + :param lifecycle_state: The value to assign to the lifecycle_state property of this AccessRequestSummary. Allowed values for this property are: "CREATED", "APPROVALWAITING", "PREAPPROVED", "APPROVED", "MOREINFO", "REJECTED", "DEPLOYED", "DEPLOYFAILED", "UNDEPLOYED", "UNDEPLOYFAILED", "CLOSEFAILED", "REVOKEFAILED", "EXPIRYFAILED", "REVOKING", "REVOKED", "EXTENDING", "EXTENDED", "EXTENSIONREJECTED", "COMPLETING", "COMPLETED", "EXPIRED", "APPROVEDFORFUTURE", "INREVIEW", 'UNKNOWN_ENUM_VALUE'. @@ -244,6 +252,7 @@ def __init__(self, **kwargs): 'resource_name': 'str', 'sub_resource_list': 'list[str]', 'resource_type': 'str', + 'action_requests_list': 'list[str]', 'lifecycle_state': 'str', 'lifecycle_details': 'str', 'time_of_creation': 'datetime', @@ -266,6 +275,7 @@ def __init__(self, **kwargs): 'resource_name': 'resourceName', 'sub_resource_list': 'subResourceList', 'resource_type': 'resourceType', + 'action_requests_list': 'actionRequestsList', 'lifecycle_state': 'lifecycleState', 'lifecycle_details': 'lifecycleDetails', 'time_of_creation': 'timeOfCreation', @@ -287,6 +297,7 @@ def __init__(self, **kwargs): self._resource_name = None self._sub_resource_list = None self._resource_type = None + self._action_requests_list = None self._lifecycle_state = None self._lifecycle_details = None self._time_of_creation = None @@ -476,7 +487,7 @@ def resource_type(self): Gets the resource_type of this AccessRequestSummary. resourceType for which the AccessRequest is applicable - Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", "CLOUDEXADATAINFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -495,11 +506,35 @@ def resource_type(self, resource_type): :param resource_type: The resource_type of this AccessRequestSummary. :type: str """ - allowed_values = ["EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE"] + allowed_values = ["EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", "CLOUDEXADATAINFRASTRUCTURE"] if not value_allowed_none_or_none_sentinel(resource_type, allowed_values): resource_type = 'UNKNOWN_ENUM_VALUE' self._resource_type = resource_type + @property + def action_requests_list(self): + """ + Gets the action_requests_list of this AccessRequestSummary. + List of operator actions for which approval is sought by the operator user. + + + :return: The action_requests_list of this AccessRequestSummary. + :rtype: list[str] + """ + return self._action_requests_list + + @action_requests_list.setter + def action_requests_list(self, action_requests_list): + """ + Sets the action_requests_list of this AccessRequestSummary. + List of operator actions for which approval is sought by the operator user. + + + :param action_requests_list: The action_requests_list of this AccessRequestSummary. + :type: list[str] + """ + self._action_requests_list = action_requests_list + @property def lifecycle_state(self): """ diff --git a/src/oci/operator_access_control/models/create_operator_control_assignment_details.py b/src/oci/operator_access_control/models/create_operator_control_assignment_details.py index a2d9302032..e765fba0cb 100644 --- a/src/oci/operator_access_control/models/create_operator_control_assignment_details.py +++ b/src/oci/operator_access_control/models/create_operator_control_assignment_details.py @@ -36,6 +36,10 @@ class CreateOperatorControlAssignmentDetails(object): #: This constant has a value of "CCCINFRASTRUCTURE" RESOURCE_TYPE_CCCINFRASTRUCTURE = "CCCINFRASTRUCTURE" + #: A constant which can be used with the resource_type property of a CreateOperatorControlAssignmentDetails. + #: This constant has a value of "CLOUDEXADATAINFRASTRUCTURE" + RESOURCE_TYPE_CLOUDEXADATAINFRASTRUCTURE = "CLOUDEXADATAINFRASTRUCTURE" + def __init__(self, **kwargs): """ Initializes a new CreateOperatorControlAssignmentDetails object with values from keyword arguments. @@ -55,7 +59,7 @@ def __init__(self, **kwargs): :param resource_type: The value to assign to the resource_type property of this CreateOperatorControlAssignmentDetails. - Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE" + Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", "CLOUDEXADATAINFRASTRUCTURE" :type resource_type: str :param resource_compartment_id: @@ -252,7 +256,7 @@ def resource_type(self): **[Required]** Gets the resource_type of this CreateOperatorControlAssignmentDetails. Type of the target resource. - Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE" + Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", "CLOUDEXADATAINFRASTRUCTURE" :return: The resource_type of this CreateOperatorControlAssignmentDetails. @@ -270,7 +274,7 @@ def resource_type(self, resource_type): :param resource_type: The resource_type of this CreateOperatorControlAssignmentDetails. :type: str """ - allowed_values = ["EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE"] + allowed_values = ["EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", "CLOUDEXADATAINFRASTRUCTURE"] if not value_allowed_none_or_none_sentinel(resource_type, allowed_values): raise ValueError( f"Invalid value for `resource_type`, must be None or one of {allowed_values}" diff --git a/src/oci/operator_access_control/models/create_operator_control_details.py b/src/oci/operator_access_control/models/create_operator_control_details.py index 793f50e7ff..9902dd011a 100644 --- a/src/oci/operator_access_control/models/create_operator_control_details.py +++ b/src/oci/operator_access_control/models/create_operator_control_details.py @@ -39,6 +39,10 @@ class CreateOperatorControlDetails(object): #: This constant has a value of "CCCINFRASTRUCTURE" RESOURCE_TYPE_CCCINFRASTRUCTURE = "CCCINFRASTRUCTURE" + #: A constant which can be used with the resource_type property of a CreateOperatorControlDetails. + #: This constant has a value of "CLOUDEXADATAINFRASTRUCTURE" + RESOURCE_TYPE_CLOUDEXADATAINFRASTRUCTURE = "CLOUDEXADATAINFRASTRUCTURE" + def __init__(self, **kwargs): """ Initializes a new CreateOperatorControlDetails object with values from keyword arguments. @@ -70,13 +74,17 @@ def __init__(self, **kwargs): :param resource_type: The value to assign to the resource_type property of this CreateOperatorControlDetails. - Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE" + Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", "CLOUDEXADATAINFRASTRUCTURE" :type resource_type: str :param number_of_approvers: The value to assign to the number_of_approvers property of this CreateOperatorControlDetails. :type number_of_approvers: int + :param notification_topic_id: + The value to assign to the notification_topic_id property of this CreateOperatorControlDetails. + :type notification_topic_id: str + :param email_id_list: The value to assign to the email_id_list property of this CreateOperatorControlDetails. :type email_id_list: list[str] @@ -107,6 +115,7 @@ def __init__(self, **kwargs): 'is_fully_pre_approved': 'bool', 'resource_type': 'str', 'number_of_approvers': 'int', + 'notification_topic_id': 'str', 'email_id_list': 'list[str]', 'system_message': 'str', 'compartment_id': 'str', @@ -122,6 +131,7 @@ def __init__(self, **kwargs): 'is_fully_pre_approved': 'isFullyPreApproved', 'resource_type': 'resourceType', 'number_of_approvers': 'numberOfApprovers', + 'notification_topic_id': 'notificationTopicId', 'email_id_list': 'emailIdList', 'system_message': 'systemMessage', 'compartment_id': 'compartmentId', @@ -136,6 +146,7 @@ def __init__(self, **kwargs): self._is_fully_pre_approved = None self._resource_type = None self._number_of_approvers = None + self._notification_topic_id = None self._email_id_list = None self._system_message = None self._compartment_id = None @@ -296,7 +307,7 @@ def resource_type(self): **[Required]** Gets the resource_type of this CreateOperatorControlDetails. resourceType for which the OperatorControl is applicable - Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE" + Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", "CLOUDEXADATAINFRASTRUCTURE" :return: The resource_type of this CreateOperatorControlDetails. @@ -314,7 +325,7 @@ def resource_type(self, resource_type): :param resource_type: The resource_type of this CreateOperatorControlDetails. :type: str """ - allowed_values = ["EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE"] + allowed_values = ["EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", "CLOUDEXADATAINFRASTRUCTURE"] if not value_allowed_none_or_none_sentinel(resource_type, allowed_values): raise ValueError( f"Invalid value for `resource_type`, must be None or one of {allowed_values}" @@ -345,6 +356,30 @@ def number_of_approvers(self, number_of_approvers): """ self._number_of_approvers = number_of_approvers + @property + def notification_topic_id(self): + """ + Gets the notification_topic_id of this CreateOperatorControlDetails. + The OCID of the OCI Notification topic to publish messages related to this operator control. + + + :return: The notification_topic_id of this CreateOperatorControlDetails. + :rtype: str + """ + return self._notification_topic_id + + @notification_topic_id.setter + def notification_topic_id(self, notification_topic_id): + """ + Sets the notification_topic_id of this CreateOperatorControlDetails. + The OCID of the OCI Notification topic to publish messages related to this operator control. + + + :param notification_topic_id: The notification_topic_id of this CreateOperatorControlDetails. + :type: str + """ + self._notification_topic_id = notification_topic_id + @property def email_id_list(self): """ diff --git a/src/oci/operator_access_control/models/operator_action.py b/src/oci/operator_access_control/models/operator_action.py index 1e3a8778dc..4ec5342d35 100644 --- a/src/oci/operator_access_control/models/operator_action.py +++ b/src/oci/operator_access_control/models/operator_action.py @@ -40,6 +40,10 @@ class OperatorAction(object): #: This constant has a value of "CCCINFRASTRUCTURE" RESOURCE_TYPE_CCCINFRASTRUCTURE = "CCCINFRASTRUCTURE" + #: A constant which can be used with the resource_type property of a OperatorAction. + #: This constant has a value of "CLOUDEXADATAINFRASTRUCTURE" + RESOURCE_TYPE_CLOUDEXADATAINFRASTRUCTURE = "CLOUDEXADATAINFRASTRUCTURE" + def __init__(self, **kwargs): """ Initializes a new OperatorAction object with values from keyword arguments. @@ -63,7 +67,7 @@ def __init__(self, **kwargs): :param resource_type: The value to assign to the resource_type property of this OperatorAction. - Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", "CLOUDEXADATAINFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type resource_type: str @@ -204,7 +208,7 @@ def resource_type(self): Gets the resource_type of this OperatorAction. resourceType for which the OperatorAction is applicable - Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", "CLOUDEXADATAINFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -223,7 +227,7 @@ def resource_type(self, resource_type): :param resource_type: The resource_type of this OperatorAction. :type: str """ - allowed_values = ["EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE"] + allowed_values = ["EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", "CLOUDEXADATAINFRASTRUCTURE"] if not value_allowed_none_or_none_sentinel(resource_type, allowed_values): resource_type = 'UNKNOWN_ENUM_VALUE' self._resource_type = resource_type diff --git a/src/oci/operator_access_control/models/operator_action_summary.py b/src/oci/operator_access_control/models/operator_action_summary.py index f24795140d..b57a195023 100644 --- a/src/oci/operator_access_control/models/operator_action_summary.py +++ b/src/oci/operator_access_control/models/operator_action_summary.py @@ -35,6 +35,10 @@ class OperatorActionSummary(object): #: This constant has a value of "CCCINFRASTRUCTURE" RESOURCE_TYPE_CCCINFRASTRUCTURE = "CCCINFRASTRUCTURE" + #: A constant which can be used with the resource_type property of a OperatorActionSummary. + #: This constant has a value of "CLOUDEXADATAINFRASTRUCTURE" + RESOURCE_TYPE_CLOUDEXADATAINFRASTRUCTURE = "CLOUDEXADATAINFRASTRUCTURE" + #: A constant which can be used with the lifecycle_state property of a OperatorActionSummary. #: This constant has a value of "ACTIVE" LIFECYCLE_STATE_ACTIVE = "ACTIVE" @@ -66,7 +70,7 @@ def __init__(self, **kwargs): :param resource_type: The value to assign to the resource_type property of this OperatorActionSummary. - Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", "CLOUDEXADATAINFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type resource_type: str @@ -209,7 +213,7 @@ def resource_type(self): Gets the resource_type of this OperatorActionSummary. resourceType for which the OperatorAction is applicable - Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", "CLOUDEXADATAINFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -228,7 +232,7 @@ def resource_type(self, resource_type): :param resource_type: The resource_type of this OperatorActionSummary. :type: str """ - allowed_values = ["EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE"] + allowed_values = ["EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", "CLOUDEXADATAINFRASTRUCTURE"] if not value_allowed_none_or_none_sentinel(resource_type, allowed_values): resource_type = 'UNKNOWN_ENUM_VALUE' self._resource_type = resource_type diff --git a/src/oci/operator_access_control/models/operator_control.py b/src/oci/operator_access_control/models/operator_control.py index d0bfe7c9ba..4df44bbaa0 100644 --- a/src/oci/operator_access_control/models/operator_control.py +++ b/src/oci/operator_access_control/models/operator_control.py @@ -35,6 +35,10 @@ class OperatorControl(object): #: This constant has a value of "CCCINFRASTRUCTURE" RESOURCE_TYPE_CCCINFRASTRUCTURE = "CCCINFRASTRUCTURE" + #: A constant which can be used with the resource_type property of a OperatorControl. + #: This constant has a value of "CLOUDEXADATAINFRASTRUCTURE" + RESOURCE_TYPE_CLOUDEXADATAINFRASTRUCTURE = "CLOUDEXADATAINFRASTRUCTURE" + #: A constant which can be used with the lifecycle_state property of a OperatorControl. #: This constant has a value of "CREATED" LIFECYCLE_STATE_CREATED = "CREATED" @@ -88,13 +92,17 @@ def __init__(self, **kwargs): The value to assign to the is_fully_pre_approved property of this OperatorControl. :type is_fully_pre_approved: bool + :param notification_topic_id: + The value to assign to the notification_topic_id property of this OperatorControl. + :type notification_topic_id: str + :param email_id_list: The value to assign to the email_id_list property of this OperatorControl. :type email_id_list: list[str] :param resource_type: The value to assign to the resource_type property of this OperatorControl. - Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", "CLOUDEXADATAINFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type resource_type: str @@ -154,6 +162,7 @@ def __init__(self, **kwargs): 'pre_approved_op_action_list': 'list[str]', 'approval_required_op_action_list': 'list[str]', 'is_fully_pre_approved': 'bool', + 'notification_topic_id': 'str', 'email_id_list': 'list[str]', 'resource_type': 'str', 'system_message': 'str', @@ -177,6 +186,7 @@ def __init__(self, **kwargs): 'pre_approved_op_action_list': 'preApprovedOpActionList', 'approval_required_op_action_list': 'approvalRequiredOpActionList', 'is_fully_pre_approved': 'isFullyPreApproved', + 'notification_topic_id': 'notificationTopicId', 'email_id_list': 'emailIdList', 'resource_type': 'resourceType', 'system_message': 'systemMessage', @@ -199,6 +209,7 @@ def __init__(self, **kwargs): self._pre_approved_op_action_list = None self._approval_required_op_action_list = None self._is_fully_pre_approved = None + self._notification_topic_id = None self._email_id_list = None self._resource_type = None self._system_message = None @@ -413,6 +424,30 @@ def is_fully_pre_approved(self, is_fully_pre_approved): """ self._is_fully_pre_approved = is_fully_pre_approved + @property + def notification_topic_id(self): + """ + Gets the notification_topic_id of this OperatorControl. + The OCID of the OCI Notification topic to publish messages related to this operator control. + + + :return: The notification_topic_id of this OperatorControl. + :rtype: str + """ + return self._notification_topic_id + + @notification_topic_id.setter + def notification_topic_id(self, notification_topic_id): + """ + Sets the notification_topic_id of this OperatorControl. + The OCID of the OCI Notification topic to publish messages related to this operator control. + + + :param notification_topic_id: The notification_topic_id of this OperatorControl. + :type: str + """ + self._notification_topic_id = notification_topic_id + @property def email_id_list(self): """ @@ -443,7 +478,7 @@ def resource_type(self): Gets the resource_type of this OperatorControl. resourceType for which the OperatorControl is applicable - Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", "CLOUDEXADATAINFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -462,7 +497,7 @@ def resource_type(self, resource_type): :param resource_type: The resource_type of this OperatorControl. :type: str """ - allowed_values = ["EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE"] + allowed_values = ["EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", "CLOUDEXADATAINFRASTRUCTURE"] if not value_allowed_none_or_none_sentinel(resource_type, allowed_values): resource_type = 'UNKNOWN_ENUM_VALUE' self._resource_type = resource_type diff --git a/src/oci/operator_access_control/models/operator_control_assignment.py b/src/oci/operator_access_control/models/operator_control_assignment.py index ad03a2cf1c..fea8d88e76 100644 --- a/src/oci/operator_access_control/models/operator_control_assignment.py +++ b/src/oci/operator_access_control/models/operator_control_assignment.py @@ -36,6 +36,10 @@ class OperatorControlAssignment(object): #: This constant has a value of "CCCINFRASTRUCTURE" RESOURCE_TYPE_CCCINFRASTRUCTURE = "CCCINFRASTRUCTURE" + #: A constant which can be used with the resource_type property of a OperatorControlAssignment. + #: This constant has a value of "CLOUDEXADATAINFRASTRUCTURE" + RESOURCE_TYPE_CLOUDEXADATAINFRASTRUCTURE = "CLOUDEXADATAINFRASTRUCTURE" + #: A constant which can be used with the lifecycle_state property of a OperatorControlAssignment. #: This constant has a value of "CREATED" LIFECYCLE_STATE_CREATED = "CREATED" @@ -68,6 +72,10 @@ class OperatorControlAssignment(object): #: This constant has a value of "DELETIONFAILED" LIFECYCLE_STATE_DELETIONFAILED = "DELETIONFAILED" + #: A constant which can be used with the lifecycle_state property of a OperatorControlAssignment. + #: This constant has a value of "CUSTOMERASSIGNED" + LIFECYCLE_STATE_CUSTOMERASSIGNED = "CUSTOMERASSIGNED" + def __init__(self, **kwargs): """ Initializes a new OperatorControlAssignment object with values from keyword arguments. @@ -99,7 +107,7 @@ def __init__(self, **kwargs): :param resource_type: The value to assign to the resource_type property of this OperatorControlAssignment. - Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", "CLOUDEXADATAINFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type resource_type: str @@ -117,7 +125,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this OperatorControlAssignment. - Allowed values for this property are: "CREATED", "APPLIED", "APPLYFAILED", "UPDATING", "UPDATEFAILED", "DELETING", "DELETED", "DELETIONFAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATED", "APPLIED", "APPLYFAILED", "UPDATING", "UPDATEFAILED", "DELETING", "DELETED", "DELETIONFAILED", "CUSTOMERASSIGNED", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str @@ -443,7 +451,7 @@ def resource_type(self): Gets the resource_type of this OperatorControlAssignment. resourceType for which the OperatorControlAssignment is applicable - Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", "CLOUDEXADATAINFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -462,7 +470,7 @@ def resource_type(self, resource_type): :param resource_type: The resource_type of this OperatorControlAssignment. :type: str """ - allowed_values = ["EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE"] + allowed_values = ["EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", "CLOUDEXADATAINFRASTRUCTURE"] if not value_allowed_none_or_none_sentinel(resource_type, allowed_values): resource_type = 'UNKNOWN_ENUM_VALUE' self._resource_type = resource_type @@ -557,7 +565,7 @@ def lifecycle_state(self): Gets the lifecycle_state of this OperatorControlAssignment. The current lifcycle state of the OperatorControl. - Allowed values for this property are: "CREATED", "APPLIED", "APPLYFAILED", "UPDATING", "UPDATEFAILED", "DELETING", "DELETED", "DELETIONFAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATED", "APPLIED", "APPLYFAILED", "UPDATING", "UPDATEFAILED", "DELETING", "DELETED", "DELETIONFAILED", "CUSTOMERASSIGNED", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -576,7 +584,7 @@ def lifecycle_state(self, lifecycle_state): :param lifecycle_state: The lifecycle_state of this OperatorControlAssignment. :type: str """ - allowed_values = ["CREATED", "APPLIED", "APPLYFAILED", "UPDATING", "UPDATEFAILED", "DELETING", "DELETED", "DELETIONFAILED"] + allowed_values = ["CREATED", "APPLIED", "APPLYFAILED", "UPDATING", "UPDATEFAILED", "DELETING", "DELETED", "DELETIONFAILED", "CUSTOMERASSIGNED"] if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): lifecycle_state = 'UNKNOWN_ENUM_VALUE' self._lifecycle_state = lifecycle_state diff --git a/src/oci/operator_access_control/models/operator_control_assignment_summary.py b/src/oci/operator_access_control/models/operator_control_assignment_summary.py index a6b61fa807..d1f1659560 100644 --- a/src/oci/operator_access_control/models/operator_control_assignment_summary.py +++ b/src/oci/operator_access_control/models/operator_control_assignment_summary.py @@ -35,6 +35,10 @@ class OperatorControlAssignmentSummary(object): #: This constant has a value of "CCCINFRASTRUCTURE" RESOURCE_TYPE_CCCINFRASTRUCTURE = "CCCINFRASTRUCTURE" + #: A constant which can be used with the resource_type property of a OperatorControlAssignmentSummary. + #: This constant has a value of "CLOUDEXADATAINFRASTRUCTURE" + RESOURCE_TYPE_CLOUDEXADATAINFRASTRUCTURE = "CLOUDEXADATAINFRASTRUCTURE" + #: A constant which can be used with the lifecycle_state property of a OperatorControlAssignmentSummary. #: This constant has a value of "CREATED" LIFECYCLE_STATE_CREATED = "CREATED" @@ -67,6 +71,10 @@ class OperatorControlAssignmentSummary(object): #: This constant has a value of "DELETIONFAILED" LIFECYCLE_STATE_DELETIONFAILED = "DELETIONFAILED" + #: A constant which can be used with the lifecycle_state property of a OperatorControlAssignmentSummary. + #: This constant has a value of "CUSTOMERASSIGNED" + LIFECYCLE_STATE_CUSTOMERASSIGNED = "CUSTOMERASSIGNED" + def __init__(self, **kwargs): """ Initializes a new OperatorControlAssignmentSummary object with values from keyword arguments. @@ -90,7 +98,7 @@ def __init__(self, **kwargs): :param resource_type: The value to assign to the resource_type property of this OperatorControlAssignmentSummary. - Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", "CLOUDEXADATAINFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type resource_type: str @@ -144,7 +152,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this OperatorControlAssignmentSummary. - Allowed values for this property are: "CREATED", "APPLIED", "APPLYFAILED", "UPDATING", "UPDATEFAILED", "DELETING", "DELETED", "DELETIONFAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATED", "APPLIED", "APPLYFAILED", "UPDATING", "UPDATEFAILED", "DELETING", "DELETED", "DELETIONFAILED", "CUSTOMERASSIGNED", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str @@ -331,7 +339,7 @@ def resource_type(self): Gets the resource_type of this OperatorControlAssignmentSummary. resourceType for which the OperatorControlAssignment is applicable - Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", "CLOUDEXADATAINFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -350,7 +358,7 @@ def resource_type(self, resource_type): :param resource_type: The resource_type of this OperatorControlAssignmentSummary. :type: str """ - allowed_values = ["EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE"] + allowed_values = ["EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", "CLOUDEXADATAINFRASTRUCTURE"] if not value_allowed_none_or_none_sentinel(resource_type, allowed_values): resource_type = 'UNKNOWN_ENUM_VALUE' self._resource_type = resource_type @@ -661,7 +669,7 @@ def lifecycle_state(self): Gets the lifecycle_state of this OperatorControlAssignmentSummary. The current lifcycle state of the OperatorControl. - Allowed values for this property are: "CREATED", "APPLIED", "APPLYFAILED", "UPDATING", "UPDATEFAILED", "DELETING", "DELETED", "DELETIONFAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATED", "APPLIED", "APPLYFAILED", "UPDATING", "UPDATEFAILED", "DELETING", "DELETED", "DELETIONFAILED", "CUSTOMERASSIGNED", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -680,7 +688,7 @@ def lifecycle_state(self, lifecycle_state): :param lifecycle_state: The lifecycle_state of this OperatorControlAssignmentSummary. :type: str """ - allowed_values = ["CREATED", "APPLIED", "APPLYFAILED", "UPDATING", "UPDATEFAILED", "DELETING", "DELETED", "DELETIONFAILED"] + allowed_values = ["CREATED", "APPLIED", "APPLYFAILED", "UPDATING", "UPDATEFAILED", "DELETING", "DELETED", "DELETIONFAILED", "CUSTOMERASSIGNED"] if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): lifecycle_state = 'UNKNOWN_ENUM_VALUE' self._lifecycle_state = lifecycle_state diff --git a/src/oci/operator_access_control/models/operator_control_summary.py b/src/oci/operator_access_control/models/operator_control_summary.py index c92802ad36..b4b22c67d0 100644 --- a/src/oci/operator_access_control/models/operator_control_summary.py +++ b/src/oci/operator_access_control/models/operator_control_summary.py @@ -35,6 +35,10 @@ class OperatorControlSummary(object): #: This constant has a value of "CCCINFRASTRUCTURE" RESOURCE_TYPE_CCCINFRASTRUCTURE = "CCCINFRASTRUCTURE" + #: A constant which can be used with the resource_type property of a OperatorControlSummary. + #: This constant has a value of "CLOUDEXADATAINFRASTRUCTURE" + RESOURCE_TYPE_CLOUDEXADATAINFRASTRUCTURE = "CLOUDEXADATAINFRASTRUCTURE" + #: A constant which can be used with the lifecycle_state property of a OperatorControlSummary. #: This constant has a value of "CREATED" LIFECYCLE_STATE_CREATED = "CREATED" @@ -74,7 +78,7 @@ def __init__(self, **kwargs): :param resource_type: The value to assign to the resource_type property of this OperatorControlSummary. - Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", "CLOUDEXADATAINFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type resource_type: str @@ -252,7 +256,7 @@ def resource_type(self): Gets the resource_type of this OperatorControlSummary. resourceType for which the OperatorControl is applicable - Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", "CLOUDEXADATAINFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -271,7 +275,7 @@ def resource_type(self, resource_type): :param resource_type: The resource_type of this OperatorControlSummary. :type: str """ - allowed_values = ["EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE"] + allowed_values = ["EXACC", "EXADATAINFRASTRUCTURE", "AUTONOMOUSVMCLUSTER", "CLOUDAUTONOMOUSVMCLUSTER", "CCCINFRASTRUCTURE", "CLOUDEXADATAINFRASTRUCTURE"] if not value_allowed_none_or_none_sentinel(resource_type, allowed_values): resource_type = 'UNKNOWN_ENUM_VALUE' self._resource_type = resource_type diff --git a/src/oci/operator_access_control/models/update_operator_control_details.py b/src/oci/operator_access_control/models/update_operator_control_details.py index 560b508fbf..538a2e23da 100644 --- a/src/oci/operator_access_control/models/update_operator_control_details.py +++ b/src/oci/operator_access_control/models/update_operator_control_details.py @@ -44,6 +44,10 @@ def __init__(self, **kwargs): The value to assign to the is_fully_pre_approved property of this UpdateOperatorControlDetails. :type is_fully_pre_approved: bool + :param notification_topic_id: + The value to assign to the notification_topic_id property of this UpdateOperatorControlDetails. + :type notification_topic_id: str + :param email_id_list: The value to assign to the email_id_list property of this UpdateOperatorControlDetails. :type email_id_list: list[str] @@ -72,6 +76,7 @@ def __init__(self, **kwargs): 'approver_groups_list': 'list[str]', 'pre_approved_op_action_list': 'list[str]', 'is_fully_pre_approved': 'bool', + 'notification_topic_id': 'str', 'email_id_list': 'list[str]', 'number_of_approvers': 'int', 'system_message': 'str', @@ -85,6 +90,7 @@ def __init__(self, **kwargs): 'approver_groups_list': 'approverGroupsList', 'pre_approved_op_action_list': 'preApprovedOpActionList', 'is_fully_pre_approved': 'isFullyPreApproved', + 'notification_topic_id': 'notificationTopicId', 'email_id_list': 'emailIdList', 'number_of_approvers': 'numberOfApprovers', 'system_message': 'systemMessage', @@ -97,6 +103,7 @@ def __init__(self, **kwargs): self._approver_groups_list = None self._pre_approved_op_action_list = None self._is_fully_pre_approved = None + self._notification_topic_id = None self._email_id_list = None self._number_of_approvers = None self._system_message = None @@ -251,6 +258,30 @@ def is_fully_pre_approved(self, is_fully_pre_approved): """ self._is_fully_pre_approved = is_fully_pre_approved + @property + def notification_topic_id(self): + """ + Gets the notification_topic_id of this UpdateOperatorControlDetails. + The OCID of the OCI Notification topic to publish messages related to this operator control. + + + :return: The notification_topic_id of this UpdateOperatorControlDetails. + :rtype: str + """ + return self._notification_topic_id + + @notification_topic_id.setter + def notification_topic_id(self, notification_topic_id): + """ + Sets the notification_topic_id of this UpdateOperatorControlDetails. + The OCID of the OCI Notification topic to publish messages related to this operator control. + + + :param notification_topic_id: The notification_topic_id of this UpdateOperatorControlDetails. + :type: str + """ + self._notification_topic_id = notification_topic_id + @property def email_id_list(self): """ diff --git a/src/oci/operator_access_control/operator_actions_client.py b/src/oci/operator_access_control/operator_actions_client.py index bd29a6cfd1..32570fec56 100644 --- a/src/oci/operator_access_control/operator_actions_client.py +++ b/src/oci/operator_access_control/operator_actions_client.py @@ -24,8 +24,6 @@ class OperatorActionsClient(object): """ Operator Access Control enables you to control the time duration and the actions an Oracle operator can perform on your Exadata Cloud@Customer infrastructure. Using logging service, you can view a near real-time audit report of all actions performed by an Oracle operator. - - Use the table of contents and search tool to explore the OperatorAccessControl API. """ def __init__(self, config, **kwargs): @@ -165,7 +163,7 @@ def get_operator_action(self, operator_action_id, **kwargs): resource_path = "/operatorActions/{operatorActionId}" method = "GET" operation_name = "get_operator_action" - api_reference_link = "" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/operatoraccesscontrol/20200630/OperatorAction/GetOperatorAction" # Don't accept unknown kwargs expected_kwargs = [ @@ -297,7 +295,7 @@ def list_operator_actions(self, compartment_id, **kwargs): resource_path = "/operatorActions" method = "GET" operation_name = "list_operator_actions" - api_reference_link = "" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/operatoraccesscontrol/20200630/OperatorAction/ListOperatorActions" # Don't accept unknown kwargs expected_kwargs = [ diff --git a/src/oci/operator_access_control/operator_control_assignment_client.py b/src/oci/operator_access_control/operator_control_assignment_client.py index 1ce233bdf0..a714915918 100644 --- a/src/oci/operator_access_control/operator_control_assignment_client.py +++ b/src/oci/operator_access_control/operator_control_assignment_client.py @@ -24,8 +24,6 @@ class OperatorControlAssignmentClient(object): """ Operator Access Control enables you to control the time duration and the actions an Oracle operator can perform on your Exadata Cloud@Customer infrastructure. Using logging service, you can view a near real-time audit report of all actions performed by an Oracle operator. - - Use the table of contents and search tool to explore the OperatorAccessControl API. """ def __init__(self, config, **kwargs): @@ -182,7 +180,7 @@ def change_operator_control_assignment_compartment(self, operator_control_assign resource_path = "/operatorControlAssignments/{operatorControlAssignmentId}/actions/changeCompartment" method = "POST" operation_name = "change_operator_control_assignment_compartment" - api_reference_link = "" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/operatoraccesscontrol/20200630/OperatorControlAssignment/ChangeOperatorControlAssignmentCompartment" # Don't accept unknown kwargs expected_kwargs = [ @@ -299,7 +297,7 @@ def create_operator_control_assignment(self, create_operator_control_assignment_ resource_path = "/operatorControlAssignments" method = "POST" operation_name = "create_operator_control_assignment" - api_reference_link = "" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/operatoraccesscontrol/20200630/OperatorControlAssignment/CreateOperatorControlAssignment" # Don't accept unknown kwargs expected_kwargs = [ @@ -407,7 +405,7 @@ def delete_operator_control_assignment(self, operator_control_assignment_id, **k resource_path = "/operatorControlAssignments/{operatorControlAssignmentId}" method = "DELETE" operation_name = "delete_operator_control_assignment" - api_reference_link = "" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/operatoraccesscontrol/20200630/OperatorControlAssignment/DeleteOperatorControlAssignment" # Don't accept unknown kwargs expected_kwargs = [ @@ -520,7 +518,7 @@ def get_assignment_validation_status(self, operator_control_assignment_id, **kwa resource_path = "/operatorControlAssignments/{operatorControlAssignmentId}/actions/getAssignmentValidationStatus" method = "GET" operation_name = "get_assignment_validation_status" - api_reference_link = "" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/operatoraccesscontrol/20200630/OperatorControlAssignment/GetAssignmentValidationStatus" # Don't accept unknown kwargs expected_kwargs = [ @@ -625,7 +623,7 @@ def get_operator_control_assignment(self, operator_control_assignment_id, **kwar resource_path = "/operatorControlAssignments/{operatorControlAssignmentId}" method = "GET" operation_name = "get_operator_control_assignment" - api_reference_link = "" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/operatoraccesscontrol/20200630/OperatorControlAssignment/GetOperatorControlAssignment" # Don't accept unknown kwargs expected_kwargs = [ @@ -712,7 +710,7 @@ def list_operator_control_assignments(self, compartment_id, **kwargs): :param str lifecycle_state: (optional) A filter to return only resources whose lifecycleState matches the given OperatorControlAssignment lifecycleState. - Allowed values are: "CREATED", "APPLIED", "APPLYFAILED", "UPDATING", "UPDATEFAILED", "DELETING", "DELETED", "DELETIONFAILED" + Allowed values are: "CREATED", "APPLIED", "APPLYFAILED", "UPDATING", "UPDATEFAILED", "DELETING", "DELETED", "DELETIONFAILED", "CUSTOMERASSIGNED" :param int limit: (optional) The maximum number of items to return. @@ -760,7 +758,7 @@ def list_operator_control_assignments(self, compartment_id, **kwargs): resource_path = "/operatorControlAssignments" method = "GET" operation_name = "list_operator_control_assignments" - api_reference_link = "" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/operatoraccesscontrol/20200630/OperatorControlAssignment/ListOperatorControlAssignments" # Don't accept unknown kwargs expected_kwargs = [ @@ -783,7 +781,7 @@ def list_operator_control_assignments(self, compartment_id, **kwargs): f"list_operator_control_assignments got unknown kwargs: {extra_kwargs!r}") if 'lifecycle_state' in kwargs: - lifecycle_state_allowed_values = ["CREATED", "APPLIED", "APPLYFAILED", "UPDATING", "UPDATEFAILED", "DELETING", "DELETED", "DELETIONFAILED"] + lifecycle_state_allowed_values = ["CREATED", "APPLIED", "APPLYFAILED", "UPDATING", "UPDATEFAILED", "DELETING", "DELETED", "DELETIONFAILED", "CUSTOMERASSIGNED"] if kwargs['lifecycle_state'] not in lifecycle_state_allowed_values: raise ValueError( f"Invalid value for `lifecycle_state`, must be one of { lifecycle_state_allowed_values }" @@ -907,7 +905,7 @@ def update_operator_control_assignment(self, operator_control_assignment_id, upd resource_path = "/operatorControlAssignments/{operatorControlAssignmentId}" method = "PUT" operation_name = "update_operator_control_assignment" - api_reference_link = "" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/operatoraccesscontrol/20200630/OperatorControlAssignment/UpdateOperatorControlAssignment" # Don't accept unknown kwargs expected_kwargs = [ @@ -1033,7 +1031,7 @@ def validate_operator_assignment(self, operator_control_assignment_id, validate_ resource_path = "/operatorControlAssignments/{operatorControlAssignmentId}/actions/validateAssignment" method = "POST" operation_name = "validate_operator_assignment" - api_reference_link = "" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/operatoraccesscontrol/20200630/OperatorControlAssignment/ValidateOperatorAssignment" # Don't accept unknown kwargs expected_kwargs = [ diff --git a/src/oci/operator_access_control/operator_control_client.py b/src/oci/operator_access_control/operator_control_client.py index d893efad29..1215bfae09 100644 --- a/src/oci/operator_access_control/operator_control_client.py +++ b/src/oci/operator_access_control/operator_control_client.py @@ -24,8 +24,6 @@ class OperatorControlClient(object): """ Operator Access Control enables you to control the time duration and the actions an Oracle operator can perform on your Exadata Cloud@Customer infrastructure. Using logging service, you can view a near real-time audit report of all actions performed by an Oracle operator. - - Use the table of contents and search tool to explore the OperatorAccessControl API. """ def __init__(self, config, **kwargs): @@ -182,7 +180,7 @@ def change_operator_control_compartment(self, operator_control_id, change_operat resource_path = "/operatorControls/{operatorControlId}/actions/changeCompartment" method = "POST" operation_name = "change_operator_control_compartment" - api_reference_link = "" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/operatoraccesscontrol/20200630/OperatorControl/ChangeOperatorControlCompartment" # Don't accept unknown kwargs expected_kwargs = [ @@ -299,7 +297,7 @@ def create_operator_control(self, create_operator_control_details, **kwargs): resource_path = "/operatorControls" method = "POST" operation_name = "create_operator_control" - api_reference_link = "" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/operatoraccesscontrol/20200630/OperatorControl/CreateOperatorControl" # Don't accept unknown kwargs expected_kwargs = [ @@ -411,7 +409,7 @@ def delete_operator_control(self, operator_control_id, **kwargs): resource_path = "/operatorControls/{operatorControlId}" method = "DELETE" operation_name = "delete_operator_control" - api_reference_link = "" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/operatoraccesscontrol/20200630/OperatorControl/DeleteOperatorControl" # Don't accept unknown kwargs expected_kwargs = [ @@ -524,7 +522,7 @@ def get_operator_control(self, operator_control_id, **kwargs): resource_path = "/operatorControls/{operatorControlId}" method = "GET" operation_name = "get_operator_control" - api_reference_link = "" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/operatoraccesscontrol/20200630/OperatorControl/GetOperatorControl" # Don't accept unknown kwargs expected_kwargs = [ @@ -656,7 +654,7 @@ def list_operator_controls(self, compartment_id, **kwargs): resource_path = "/operatorControls" method = "GET" operation_name = "list_operator_controls" - api_reference_link = "" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/operatoraccesscontrol/20200630/OperatorControl/ListOperatorControls" # Don't accept unknown kwargs expected_kwargs = [ @@ -801,7 +799,7 @@ def update_operator_control(self, operator_control_id, update_operator_control_d resource_path = "/operatorControls/{operatorControlId}" method = "PUT" operation_name = "update_operator_control" - api_reference_link = "" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/operatoraccesscontrol/20200630/OperatorControl/UpdateOperatorControl" # Don't accept unknown kwargs expected_kwargs = [ diff --git a/src/oci/psql/models/__init__.py b/src/oci/psql/models/__init__.py index 397fb4e339..79ef35756f 100644 --- a/src/oci/psql/models/__init__.py +++ b/src/oci/psql/models/__init__.py @@ -17,6 +17,8 @@ from .change_backup_compartment_details import ChangeBackupCompartmentDetails from .change_configuration_compartment_details import ChangeConfigurationCompartmentDetails from .change_db_system_compartment_details import ChangeDbSystemCompartmentDetails +from .change_role_to_replica_details import ChangeRoleToReplicaDetails +from .change_role_to_standalone_details import ChangeRoleToStandaloneDetails from .config_overrides import ConfigOverrides from .config_params import ConfigParams from .configuration import Configuration @@ -28,22 +30,39 @@ from .create_configuration_details import CreateConfigurationDetails from .create_db_instance_details import CreateDbInstanceDetails from .create_db_system_details import CreateDbSystemDetails +from .create_replication_config_details import CreateReplicationConfigDetails from .credentials import Credentials from .daily_backup_policy import DailyBackupPolicy +from .date_time_range_capability import DateTimeRangeCapability from .db_configuration_override_collection import DbConfigurationOverrideCollection from .db_instance import DbInstance from .db_instance_endpoint import DbInstanceEndpoint from .db_system import DbSystem from .db_system_collection import DbSystemCollection from .db_system_details import DbSystemDetails +from .db_system_replica_collection import DbSystemReplicaCollection +from .db_system_replica_summary import DbSystemReplicaSummary from .db_system_summary import DbSystemSummary from .default_config_params import DefaultConfigParams from .default_configuration import DefaultConfiguration from .default_configuration_collection import DefaultConfigurationCollection from .default_configuration_details import DefaultConfigurationDetails from .default_configuration_summary import DefaultConfigurationSummary +from .disabled_insight_details import DisabledInsightDetails +from .disabled_kerberos_auth_details import DisabledKerberosAuthDetails +from .enabled_insight_details import EnabledInsightDetails +from .enabled_kerberos_auth_details import EnabledKerberosAuthDetails from .endpoint import Endpoint from .failover_db_system_details import FailoverDbSystemDetails +from .granularity_capability import GranularityCapability +from .insight_capability_collection import InsightCapabilityCollection +from .insight_capability_summary import InsightCapabilitySummary +from .insight_data_contract import InsightDataContract +from .insight_data_type_capability import InsightDataTypeCapability +from .insight_filter_capability import InsightFilterCapability +from .insight_limits import InsightLimits +from .kerberos_auth_details import KerberosAuthDetails +from .kerberos_credential import KerberosCredential from .management_policy import ManagementPolicy from .management_policy_details import ManagementPolicyDetails from .monthly_backup_policy import MonthlyBackupPolicy @@ -51,6 +70,9 @@ from .none_backup_policy import NoneBackupPolicy from .none_source_details import NoneSourceDetails from .oci_optimized_storage_details import OciOptimizedStorageDetails +from .odsp_insight import OdspInsight +from .odsp_insight_details import OdspInsightDetails +from .pagination_capability import PaginationCapability from .password_details import PasswordDetails from .patch_db_system_details import PatchDbSystemDetails from .patch_insert_instruction import PatchInsertInstruction @@ -63,6 +85,8 @@ from .patch_require_instruction import PatchRequireInstruction from .plain_text_password_details import PlainTextPasswordDetails from .primary_db_instance_details import PrimaryDbInstanceDetails +from .primary_db_system_source_details import PrimaryDbSystemSourceDetails +from .replication_config import ReplicationConfig from .reset_master_user_password_details import ResetMasterUserPasswordDetails from .restart_db_instance_in_db_system_details import RestartDbInstanceInDbSystemDetails from .restore_db_system_details import RestoreDbSystemDetails @@ -70,15 +94,20 @@ from .shape_memory_options import ShapeMemoryOptions from .shape_ocpu_options import ShapeOcpuOptions from .shape_summary import ShapeSummary +from .sorting_capability import SortingCapability +from .sorting_default import SortingDefault from .source_backup_details import SourceBackupDetails from .source_details import SourceDetails +from .start_db_system_details import StartDbSystemDetails from .storage_details import StorageDetails +from .switch_over_details import SwitchOverDetails from .update_backup_details import UpdateBackupDetails from .update_configuration_details import UpdateConfigurationDetails from .update_db_config_params import UpdateDbConfigParams from .update_db_system_db_instance_details import UpdateDbSystemDbInstanceDetails from .update_db_system_details import UpdateDbSystemDetails from .update_network_details import UpdateNetworkDetails +from .update_replication_config_details import UpdateReplicationConfigDetails from .update_storage_details_params import UpdateStorageDetailsParams from .vault_secret_password_details import VaultSecretPasswordDetails from .weekly_backup_policy import WeeklyBackupPolicy @@ -104,6 +133,8 @@ "ChangeBackupCompartmentDetails": ChangeBackupCompartmentDetails, "ChangeConfigurationCompartmentDetails": ChangeConfigurationCompartmentDetails, "ChangeDbSystemCompartmentDetails": ChangeDbSystemCompartmentDetails, + "ChangeRoleToReplicaDetails": ChangeRoleToReplicaDetails, + "ChangeRoleToStandaloneDetails": ChangeRoleToStandaloneDetails, "ConfigOverrides": ConfigOverrides, "ConfigParams": ConfigParams, "Configuration": Configuration, @@ -115,22 +146,39 @@ "CreateConfigurationDetails": CreateConfigurationDetails, "CreateDbInstanceDetails": CreateDbInstanceDetails, "CreateDbSystemDetails": CreateDbSystemDetails, + "CreateReplicationConfigDetails": CreateReplicationConfigDetails, "Credentials": Credentials, "DailyBackupPolicy": DailyBackupPolicy, + "DateTimeRangeCapability": DateTimeRangeCapability, "DbConfigurationOverrideCollection": DbConfigurationOverrideCollection, "DbInstance": DbInstance, "DbInstanceEndpoint": DbInstanceEndpoint, "DbSystem": DbSystem, "DbSystemCollection": DbSystemCollection, "DbSystemDetails": DbSystemDetails, + "DbSystemReplicaCollection": DbSystemReplicaCollection, + "DbSystemReplicaSummary": DbSystemReplicaSummary, "DbSystemSummary": DbSystemSummary, "DefaultConfigParams": DefaultConfigParams, "DefaultConfiguration": DefaultConfiguration, "DefaultConfigurationCollection": DefaultConfigurationCollection, "DefaultConfigurationDetails": DefaultConfigurationDetails, "DefaultConfigurationSummary": DefaultConfigurationSummary, + "DisabledInsightDetails": DisabledInsightDetails, + "DisabledKerberosAuthDetails": DisabledKerberosAuthDetails, + "EnabledInsightDetails": EnabledInsightDetails, + "EnabledKerberosAuthDetails": EnabledKerberosAuthDetails, "Endpoint": Endpoint, "FailoverDbSystemDetails": FailoverDbSystemDetails, + "GranularityCapability": GranularityCapability, + "InsightCapabilityCollection": InsightCapabilityCollection, + "InsightCapabilitySummary": InsightCapabilitySummary, + "InsightDataContract": InsightDataContract, + "InsightDataTypeCapability": InsightDataTypeCapability, + "InsightFilterCapability": InsightFilterCapability, + "InsightLimits": InsightLimits, + "KerberosAuthDetails": KerberosAuthDetails, + "KerberosCredential": KerberosCredential, "ManagementPolicy": ManagementPolicy, "ManagementPolicyDetails": ManagementPolicyDetails, "MonthlyBackupPolicy": MonthlyBackupPolicy, @@ -138,6 +186,9 @@ "NoneBackupPolicy": NoneBackupPolicy, "NoneSourceDetails": NoneSourceDetails, "OciOptimizedStorageDetails": OciOptimizedStorageDetails, + "OdspInsight": OdspInsight, + "OdspInsightDetails": OdspInsightDetails, + "PaginationCapability": PaginationCapability, "PasswordDetails": PasswordDetails, "PatchDbSystemDetails": PatchDbSystemDetails, "PatchInsertInstruction": PatchInsertInstruction, @@ -150,6 +201,8 @@ "PatchRequireInstruction": PatchRequireInstruction, "PlainTextPasswordDetails": PlainTextPasswordDetails, "PrimaryDbInstanceDetails": PrimaryDbInstanceDetails, + "PrimaryDbSystemSourceDetails": PrimaryDbSystemSourceDetails, + "ReplicationConfig": ReplicationConfig, "ResetMasterUserPasswordDetails": ResetMasterUserPasswordDetails, "RestartDbInstanceInDbSystemDetails": RestartDbInstanceInDbSystemDetails, "RestoreDbSystemDetails": RestoreDbSystemDetails, @@ -157,15 +210,20 @@ "ShapeMemoryOptions": ShapeMemoryOptions, "ShapeOcpuOptions": ShapeOcpuOptions, "ShapeSummary": ShapeSummary, + "SortingCapability": SortingCapability, + "SortingDefault": SortingDefault, "SourceBackupDetails": SourceBackupDetails, "SourceDetails": SourceDetails, + "StartDbSystemDetails": StartDbSystemDetails, "StorageDetails": StorageDetails, + "SwitchOverDetails": SwitchOverDetails, "UpdateBackupDetails": UpdateBackupDetails, "UpdateConfigurationDetails": UpdateConfigurationDetails, "UpdateDbConfigParams": UpdateDbConfigParams, "UpdateDbSystemDbInstanceDetails": UpdateDbSystemDbInstanceDetails, "UpdateDbSystemDetails": UpdateDbSystemDetails, "UpdateNetworkDetails": UpdateNetworkDetails, + "UpdateReplicationConfigDetails": UpdateReplicationConfigDetails, "UpdateStorageDetailsParams": UpdateStorageDetailsParams, "VaultSecretPasswordDetails": VaultSecretPasswordDetails, "WeeklyBackupPolicy": WeeklyBackupPolicy, diff --git a/src/oci/psql/models/backup_copy_details.py b/src/oci/psql/models/backup_copy_details.py index 012b99b36e..f071fe83aa 100644 --- a/src/oci/psql/models/backup_copy_details.py +++ b/src/oci/psql/models/backup_copy_details.py @@ -99,7 +99,7 @@ def retention_period(self, retention_period): def regions(self): """ **[Required]** Gets the regions of this BackupCopyDetails. - List of region names of the remote region + List of region names of the remote regions :return: The regions of this BackupCopyDetails. @@ -111,7 +111,7 @@ def regions(self): def regions(self, regions): """ Sets the regions of this BackupCopyDetails. - List of region names of the remote region + List of region names of the remote regions :param regions: The regions of this BackupCopyDetails. diff --git a/src/oci/psql/models/backup_source_details.py b/src/oci/psql/models/backup_source_details.py index 359446562f..1df2c72ec4 100644 --- a/src/oci/psql/models/backup_source_details.py +++ b/src/oci/psql/models/backup_source_details.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param source_type: The value to assign to the source_type property of this BackupSourceDetails. - Allowed values for this property are: "BACKUP", "NONE" + Allowed values for this property are: "BACKUP", "NONE", "DB_SYSTEM" :type source_type: str :param backup_id: diff --git a/src/oci/psql/models/change_role_to_replica_details.py b/src/oci/psql/models/change_role_to_replica_details.py new file mode 100644 index 0000000000..36a2fa8046 --- /dev/null +++ b/src/oci/psql/models/change_role_to_replica_details.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ChangeRoleToReplicaDetails(object): + """ + The information required to change a primary database system's role to replica. + """ + + def __init__(self, **kwargs): + """ + Initializes a new ChangeRoleToReplicaDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param primary_db_system_id: + The value to assign to the primary_db_system_id property of this ChangeRoleToReplicaDetails. + :type primary_db_system_id: str + + """ + self.swagger_types = { + 'primary_db_system_id': 'str' + } + self.attribute_map = { + 'primary_db_system_id': 'primaryDbSystemId' + } + self._primary_db_system_id = None + + @property + def primary_db_system_id(self): + """ + **[Required]** Gets the primary_db_system_id of this ChangeRoleToReplicaDetails. + The [OCID] of the primary database system. + + + :return: The primary_db_system_id of this ChangeRoleToReplicaDetails. + :rtype: str + """ + return self._primary_db_system_id + + @primary_db_system_id.setter + def primary_db_system_id(self, primary_db_system_id): + """ + Sets the primary_db_system_id of this ChangeRoleToReplicaDetails. + The [OCID] of the primary database system. + + + :param primary_db_system_id: The primary_db_system_id of this ChangeRoleToReplicaDetails. + :type: str + """ + self._primary_db_system_id = primary_db_system_id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/models/change_role_to_standalone_details.py b/src/oci/psql/models/change_role_to_standalone_details.py new file mode 100644 index 0000000000..c31b74e9e5 --- /dev/null +++ b/src/oci/psql/models/change_role_to_standalone_details.py @@ -0,0 +1,90 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ChangeRoleToStandaloneDetails(object): + """ + The information required to change a replica database system's role to standalone. + """ + + #: A constant which can be used with the change_mode property of a ChangeRoleToStandaloneDetails. + #: This constant has a value of "REPLAY_PENDING_UPDATES" + CHANGE_MODE_REPLAY_PENDING_UPDATES = "REPLAY_PENDING_UPDATES" + + #: A constant which can be used with the change_mode property of a ChangeRoleToStandaloneDetails. + #: This constant has a value of "IMMEDIATELY" + CHANGE_MODE_IMMEDIATELY = "IMMEDIATELY" + + def __init__(self, **kwargs): + """ + Initializes a new ChangeRoleToStandaloneDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param change_mode: + The value to assign to the change_mode property of this ChangeRoleToStandaloneDetails. + Allowed values for this property are: "REPLAY_PENDING_UPDATES", "IMMEDIATELY" + :type change_mode: str + + """ + self.swagger_types = { + 'change_mode': 'str' + } + self.attribute_map = { + 'change_mode': 'changeMode' + } + self._change_mode = None + + @property + def change_mode(self): + """ + **[Required]** Gets the change_mode of this ChangeRoleToStandaloneDetails. + Type of the mode choose during change role operation. + REPLAY_PENDING_UPDATES (Default value): In this mode, the role change is delayed until replica database system has processed all Write-Ahead log (WAL) records that were archived before this API call is made. + IMMEDIATELY: In this mode, the role change is applied right away, without waiting for any pending WAL records to be processed. This allows for an immediate transition. + + Allowed values for this property are: "REPLAY_PENDING_UPDATES", "IMMEDIATELY" + + + :return: The change_mode of this ChangeRoleToStandaloneDetails. + :rtype: str + """ + return self._change_mode + + @change_mode.setter + def change_mode(self, change_mode): + """ + Sets the change_mode of this ChangeRoleToStandaloneDetails. + Type of the mode choose during change role operation. + REPLAY_PENDING_UPDATES (Default value): In this mode, the role change is delayed until replica database system has processed all Write-Ahead log (WAL) records that were archived before this API call is made. + IMMEDIATELY: In this mode, the role change is applied right away, without waiting for any pending WAL records to be processed. This allows for an immediate transition. + + + :param change_mode: The change_mode of this ChangeRoleToStandaloneDetails. + :type: str + """ + allowed_values = ["REPLAY_PENDING_UPDATES", "IMMEDIATELY"] + if not value_allowed_none_or_none_sentinel(change_mode, allowed_values): + raise ValueError( + f"Invalid value for `change_mode`, must be None or one of {allowed_values}" + ) + self._change_mode = change_mode + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/models/create_db_system_details.py b/src/oci/psql/models/create_db_system_details.py index 12fdc92dbc..94c41a6316 100644 --- a/src/oci/psql/models/create_db_system_details.py +++ b/src/oci/psql/models/create_db_system_details.py @@ -84,6 +84,14 @@ def __init__(self, **kwargs): The value to assign to the source property of this CreateDbSystemDetails. :type source: oci.psql.models.SourceDetails + :param replication_config: + The value to assign to the replication_config property of this CreateDbSystemDetails. + :type replication_config: oci.psql.models.CreateReplicationConfigDetails + + :param odsp_insight_details: + The value to assign to the odsp_insight_details property of this CreateDbSystemDetails. + :type odsp_insight_details: oci.psql.models.OdspInsightDetails + :param freeform_tags: The value to assign to the freeform_tags property of this CreateDbSystemDetails. :type freeform_tags: dict(str, str) @@ -110,6 +118,8 @@ def __init__(self, **kwargs): 'network_details': 'NetworkDetails', 'management_policy': 'ManagementPolicyDetails', 'source': 'SourceDetails', + 'replication_config': 'CreateReplicationConfigDetails', + 'odsp_insight_details': 'OdspInsightDetails', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))' } @@ -130,6 +140,8 @@ def __init__(self, **kwargs): 'network_details': 'networkDetails', 'management_policy': 'managementPolicy', 'source': 'source', + 'replication_config': 'replicationConfig', + 'odsp_insight_details': 'odspInsightDetails', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags' } @@ -149,6 +161,8 @@ def __init__(self, **kwargs): self._network_details = None self._management_policy = None self._source = None + self._replication_config = None + self._odsp_insight_details = None self._freeform_tags = None self._defined_tags = None @@ -451,7 +465,7 @@ def instances_details(self, instances_details): @property def credentials(self): """ - **[Required]** Gets the credentials of this CreateDbSystemDetails. + Gets the credentials of this CreateDbSystemDetails. :return: The credentials of this CreateDbSystemDetails. :rtype: oci.psql.models.Credentials @@ -528,6 +542,46 @@ def source(self, source): """ self._source = source + @property + def replication_config(self): + """ + Gets the replication_config of this CreateDbSystemDetails. + + :return: The replication_config of this CreateDbSystemDetails. + :rtype: oci.psql.models.CreateReplicationConfigDetails + """ + return self._replication_config + + @replication_config.setter + def replication_config(self, replication_config): + """ + Sets the replication_config of this CreateDbSystemDetails. + + :param replication_config: The replication_config of this CreateDbSystemDetails. + :type: oci.psql.models.CreateReplicationConfigDetails + """ + self._replication_config = replication_config + + @property + def odsp_insight_details(self): + """ + Gets the odsp_insight_details of this CreateDbSystemDetails. + + :return: The odsp_insight_details of this CreateDbSystemDetails. + :rtype: oci.psql.models.OdspInsightDetails + """ + return self._odsp_insight_details + + @odsp_insight_details.setter + def odsp_insight_details(self, odsp_insight_details): + """ + Sets the odsp_insight_details of this CreateDbSystemDetails. + + :param odsp_insight_details: The odsp_insight_details of this CreateDbSystemDetails. + :type: oci.psql.models.OdspInsightDetails + """ + self._odsp_insight_details = odsp_insight_details + @property def freeform_tags(self): """ diff --git a/src/oci/psql/models/create_replication_config_details.py b/src/oci/psql/models/create_replication_config_details.py new file mode 100644 index 0000000000..77fa2302b6 --- /dev/null +++ b/src/oci/psql/models/create_replication_config_details.py @@ -0,0 +1,108 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateReplicationConfigDetails(object): + """ + Details of the replication configuration that is applicable when database system gets the + PRIMARY_DB_SYSTEM role. + + This configuration does not have any effect on database systems with other roles. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateReplicationConfigDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param is_rpo_enforced: + The value to assign to the is_rpo_enforced property of this CreateReplicationConfigDetails. + :type is_rpo_enforced: bool + + :param rpo_in_seconds: + The value to assign to the rpo_in_seconds property of this CreateReplicationConfigDetails. + :type rpo_in_seconds: int + + """ + self.swagger_types = { + 'is_rpo_enforced': 'bool', + 'rpo_in_seconds': 'int' + } + self.attribute_map = { + 'is_rpo_enforced': 'isRpoEnforced', + 'rpo_in_seconds': 'rpoInSeconds' + } + self._is_rpo_enforced = None + self._rpo_in_seconds = None + + @property + def is_rpo_enforced(self): + """ + Gets the is_rpo_enforced of this CreateReplicationConfigDetails. + Specify if Recovery point objective (RPO) enforcement needs to be enabled on the database + system. + + + :return: The is_rpo_enforced of this CreateReplicationConfigDetails. + :rtype: bool + """ + return self._is_rpo_enforced + + @is_rpo_enforced.setter + def is_rpo_enforced(self, is_rpo_enforced): + """ + Sets the is_rpo_enforced of this CreateReplicationConfigDetails. + Specify if Recovery point objective (RPO) enforcement needs to be enabled on the database + system. + + + :param is_rpo_enforced: The is_rpo_enforced of this CreateReplicationConfigDetails. + :type: bool + """ + self._is_rpo_enforced = is_rpo_enforced + + @property + def rpo_in_seconds(self): + """ + Gets the rpo_in_seconds of this CreateReplicationConfigDetails. + Specifies the Recovery point objective (RPO) in seconds that will be enforced, if the + `isRpoEnforced` flag is true. + + + :return: The rpo_in_seconds of this CreateReplicationConfigDetails. + :rtype: int + """ + return self._rpo_in_seconds + + @rpo_in_seconds.setter + def rpo_in_seconds(self, rpo_in_seconds): + """ + Sets the rpo_in_seconds of this CreateReplicationConfigDetails. + Specifies the Recovery point objective (RPO) in seconds that will be enforced, if the + `isRpoEnforced` flag is true. + + + :param rpo_in_seconds: The rpo_in_seconds of this CreateReplicationConfigDetails. + :type: int + """ + self._rpo_in_seconds = rpo_in_seconds + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/models/date_time_range_capability.py b/src/oci/psql/models/date_time_range_capability.py new file mode 100644 index 0000000000..3f0c417fd1 --- /dev/null +++ b/src/oci/psql/models/date_time_range_capability.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DateTimeRangeCapability(object): + """ + Indicates whether a time range is required for the insight. + """ + + def __init__(self, **kwargs): + """ + Initializes a new DateTimeRangeCapability object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param is_required: + The value to assign to the is_required property of this DateTimeRangeCapability. + :type is_required: bool + + """ + self.swagger_types = { + 'is_required': 'bool' + } + self.attribute_map = { + 'is_required': 'isRequired' + } + self._is_required = None + + @property + def is_required(self): + """ + **[Required]** Gets the is_required of this DateTimeRangeCapability. + Indicates whether start and end time parameters are required. + + + :return: The is_required of this DateTimeRangeCapability. + :rtype: bool + """ + return self._is_required + + @is_required.setter + def is_required(self, is_required): + """ + Sets the is_required of this DateTimeRangeCapability. + Indicates whether start and end time parameters are required. + + + :param is_required: The is_required of this DateTimeRangeCapability. + :type: bool + """ + self._is_required = is_required + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/models/db_system.py b/src/oci/psql/models/db_system.py index d666aeb95f..af80858658 100644 --- a/src/oci/psql/models/db_system.py +++ b/src/oci/psql/models/db_system.py @@ -51,6 +51,22 @@ class DbSystem(object): #: This constant has a value of "OCI_OPTIMIZED_STORAGE" SYSTEM_TYPE_OCI_OPTIMIZED_STORAGE = "OCI_OPTIMIZED_STORAGE" + #: A constant which can be used with the system_role property of a DbSystem. + #: This constant has a value of "STANDALONE_DB_SYSTEM" + SYSTEM_ROLE_STANDALONE_DB_SYSTEM = "STANDALONE_DB_SYSTEM" + + #: A constant which can be used with the system_role property of a DbSystem. + #: This constant has a value of "PRIMARY_DB_SYSTEM" + SYSTEM_ROLE_PRIMARY_DB_SYSTEM = "PRIMARY_DB_SYSTEM" + + #: A constant which can be used with the system_role property of a DbSystem. + #: This constant has a value of "WARM_STANDBY_DB_SYSTEM" + SYSTEM_ROLE_WARM_STANDBY_DB_SYSTEM = "WARM_STANDBY_DB_SYSTEM" + + #: A constant which can be used with the system_role property of a DbSystem. + #: This constant has a value of "PILOT_LIGHT_DB_SYSTEM" + SYSTEM_ROLE_PILOT_LIGHT_DB_SYSTEM = "PILOT_LIGHT_DB_SYSTEM" + def __init__(self, **kwargs): """ Initializes a new DbSystem object with values from keyword arguments. @@ -112,6 +128,16 @@ def __init__(self, **kwargs): Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type system_type: str + :param system_role: + The value to assign to the system_role property of this DbSystem. + Allowed values for this property are: "STANDALONE_DB_SYSTEM", "PRIMARY_DB_SYSTEM", "WARM_STANDBY_DB_SYSTEM", "PILOT_LIGHT_DB_SYSTEM", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type system_role: str + + :param replication_config: + The value to assign to the replication_config property of this DbSystem. + :type replication_config: oci.psql.models.ReplicationConfig + :param db_version: The value to assign to the db_version property of this DbSystem. :type db_version: str @@ -156,6 +182,14 @@ def __init__(self, **kwargs): The value to assign to the source property of this DbSystem. :type source: oci.psql.models.SourceDetails + :param kerberos_auth_details: + The value to assign to the kerberos_auth_details property of this DbSystem. + :type kerberos_auth_details: oci.psql.models.KerberosAuthDetails + + :param odsp_insight_details: + The value to assign to the odsp_insight_details property of this DbSystem. + :type odsp_insight_details: oci.psql.models.OdspInsightDetails + """ self.swagger_types = { 'id': 'str', @@ -171,6 +205,8 @@ def __init__(self, **kwargs): 'defined_tags': 'dict(str, dict(str, object))', 'system_tags': 'dict(str, dict(str, object))', 'system_type': 'str', + 'system_role': 'str', + 'replication_config': 'ReplicationConfig', 'db_version': 'str', 'config_id': 'str', 'shape': 'str', @@ -181,7 +217,9 @@ def __init__(self, **kwargs): 'storage_details': 'StorageDetails', 'network_details': 'NetworkDetails', 'management_policy': 'ManagementPolicy', - 'source': 'SourceDetails' + 'source': 'SourceDetails', + 'kerberos_auth_details': 'KerberosAuthDetails', + 'odsp_insight_details': 'OdspInsightDetails' } self.attribute_map = { 'id': 'id', @@ -197,6 +235,8 @@ def __init__(self, **kwargs): 'defined_tags': 'definedTags', 'system_tags': 'systemTags', 'system_type': 'systemType', + 'system_role': 'systemRole', + 'replication_config': 'replicationConfig', 'db_version': 'dbVersion', 'config_id': 'configId', 'shape': 'shape', @@ -207,7 +247,9 @@ def __init__(self, **kwargs): 'storage_details': 'storageDetails', 'network_details': 'networkDetails', 'management_policy': 'managementPolicy', - 'source': 'source' + 'source': 'source', + 'kerberos_auth_details': 'kerberosAuthDetails', + 'odsp_insight_details': 'odspInsightDetails' } self._id = None self._display_name = None @@ -222,6 +264,8 @@ def __init__(self, **kwargs): self._defined_tags = None self._system_tags = None self._system_type = None + self._system_role = None + self._replication_config = None self._db_version = None self._config_id = None self._shape = None @@ -233,6 +277,8 @@ def __init__(self, **kwargs): self._network_details = None self._management_policy = None self._source = None + self._kerberos_auth_details = None + self._odsp_insight_details = None @property def id(self): @@ -588,6 +634,56 @@ def system_type(self, system_type): system_type = 'UNKNOWN_ENUM_VALUE' self._system_type = system_type + @property + def system_role(self): + """ + **[Required]** Gets the system_role of this DbSystem. + Type of the database system. + + Allowed values for this property are: "STANDALONE_DB_SYSTEM", "PRIMARY_DB_SYSTEM", "WARM_STANDBY_DB_SYSTEM", "PILOT_LIGHT_DB_SYSTEM", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The system_role of this DbSystem. + :rtype: str + """ + return self._system_role + + @system_role.setter + def system_role(self, system_role): + """ + Sets the system_role of this DbSystem. + Type of the database system. + + + :param system_role: The system_role of this DbSystem. + :type: str + """ + allowed_values = ["STANDALONE_DB_SYSTEM", "PRIMARY_DB_SYSTEM", "WARM_STANDBY_DB_SYSTEM", "PILOT_LIGHT_DB_SYSTEM"] + if not value_allowed_none_or_none_sentinel(system_role, allowed_values): + system_role = 'UNKNOWN_ENUM_VALUE' + self._system_role = system_role + + @property + def replication_config(self): + """ + Gets the replication_config of this DbSystem. + + :return: The replication_config of this DbSystem. + :rtype: oci.psql.models.ReplicationConfig + """ + return self._replication_config + + @replication_config.setter + def replication_config(self, replication_config): + """ + Sets the replication_config of this DbSystem. + + :param replication_config: The replication_config of this DbSystem. + :type: oci.psql.models.ReplicationConfig + """ + self._replication_config = replication_config + @property def db_version(self): """ @@ -842,6 +938,46 @@ def source(self, source): """ self._source = source + @property + def kerberos_auth_details(self): + """ + Gets the kerberos_auth_details of this DbSystem. + + :return: The kerberos_auth_details of this DbSystem. + :rtype: oci.psql.models.KerberosAuthDetails + """ + return self._kerberos_auth_details + + @kerberos_auth_details.setter + def kerberos_auth_details(self, kerberos_auth_details): + """ + Sets the kerberos_auth_details of this DbSystem. + + :param kerberos_auth_details: The kerberos_auth_details of this DbSystem. + :type: oci.psql.models.KerberosAuthDetails + """ + self._kerberos_auth_details = kerberos_auth_details + + @property + def odsp_insight_details(self): + """ + Gets the odsp_insight_details of this DbSystem. + + :return: The odsp_insight_details of this DbSystem. + :rtype: oci.psql.models.OdspInsightDetails + """ + return self._odsp_insight_details + + @odsp_insight_details.setter + def odsp_insight_details(self, odsp_insight_details): + """ + Sets the odsp_insight_details of this DbSystem. + + :param odsp_insight_details: The odsp_insight_details of this DbSystem. + :type: oci.psql.models.OdspInsightDetails + """ + self._odsp_insight_details = odsp_insight_details + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/psql/models/db_system_replica_collection.py b/src/oci/psql/models/db_system_replica_collection.py new file mode 100644 index 0000000000..fe1d8ad924 --- /dev/null +++ b/src/oci/psql/models/db_system_replica_collection.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DbSystemReplicaCollection(object): + """ + Results of replica database system search. + """ + + def __init__(self, **kwargs): + """ + Initializes a new DbSystemReplicaCollection object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this DbSystemReplicaCollection. + :type items: list[oci.psql.models.DbSystemReplicaSummary] + + """ + self.swagger_types = { + 'items': 'list[DbSystemReplicaSummary]' + } + self.attribute_map = { + 'items': 'items' + } + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this DbSystemReplicaCollection. + List of replica database systems. + + + :return: The items of this DbSystemReplicaCollection. + :rtype: list[oci.psql.models.DbSystemReplicaSummary] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this DbSystemReplicaCollection. + List of replica database systems. + + + :param items: The items of this DbSystemReplicaCollection. + :type: list[oci.psql.models.DbSystemReplicaSummary] + """ + self._items = items + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/models/db_system_replica_summary.py b/src/oci/psql/models/db_system_replica_summary.py new file mode 100644 index 0000000000..4d4130098b --- /dev/null +++ b/src/oci/psql/models/db_system_replica_summary.py @@ -0,0 +1,103 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DbSystemReplicaSummary(object): + """ + Summary information about a replica database system. + """ + + def __init__(self, **kwargs): + """ + Initializes a new DbSystemReplicaSummary object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this DbSystemReplicaSummary. + :type id: str + + :param region: + The value to assign to the region property of this DbSystemReplicaSummary. + :type region: str + + """ + self.swagger_types = { + 'id': 'str', + 'region': 'str' + } + self.attribute_map = { + 'id': 'id', + 'region': 'region' + } + self._id = None + self._region = None + + @property + def id(self): + """ + **[Required]** Gets the id of this DbSystemReplicaSummary. + A unique identifier for the replica database system. + + + :return: The id of this DbSystemReplicaSummary. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this DbSystemReplicaSummary. + A unique identifier for the replica database system. + + + :param id: The id of this DbSystemReplicaSummary. + :type: str + """ + self._id = id + + @property + def region(self): + """ + **[Required]** Gets the region of this DbSystemReplicaSummary. + Region name of the replica database system region. + Example: `us-phoenix-1` + + + :return: The region of this DbSystemReplicaSummary. + :rtype: str + """ + return self._region + + @region.setter + def region(self, region): + """ + Sets the region of this DbSystemReplicaSummary. + Region name of the replica database system region. + Example: `us-phoenix-1` + + + :param region: The region of this DbSystemReplicaSummary. + :type: str + """ + self._region = region + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/models/disabled_insight_details.py b/src/oci/psql/models/disabled_insight_details.py new file mode 100644 index 0000000000..337ad62b5b --- /dev/null +++ b/src/oci/psql/models/disabled_insight_details.py @@ -0,0 +1,49 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + +from .odsp_insight_details import OdspInsightDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DisabledInsightDetails(OdspInsightDetails): + """ + Disable Insight for the database system. + """ + + def __init__(self, **kwargs): + """ + Initializes a new DisabledInsightDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.psql.models.DisabledInsightDetails.kind` attribute + of this class is ``DISABLED`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param kind: + The value to assign to the kind property of this DisabledInsightDetails. + Allowed values for this property are: "ENABLED", "DISABLED" + :type kind: str + + """ + self.swagger_types = { + 'kind': 'str' + } + self.attribute_map = { + 'kind': 'kind' + } + self._kind = None + self._kind = 'DISABLED' + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/models/disabled_kerberos_auth_details.py b/src/oci/psql/models/disabled_kerberos_auth_details.py new file mode 100644 index 0000000000..e9c2e115b2 --- /dev/null +++ b/src/oci/psql/models/disabled_kerberos_auth_details.py @@ -0,0 +1,49 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + +from .kerberos_auth_details import KerberosAuthDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DisabledKerberosAuthDetails(KerberosAuthDetails): + """ + Disable Kerberos Authentication for the database system. + """ + + def __init__(self, **kwargs): + """ + Initializes a new DisabledKerberosAuthDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.psql.models.DisabledKerberosAuthDetails.kind` attribute + of this class is ``DISABLED`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param kind: + The value to assign to the kind property of this DisabledKerberosAuthDetails. + Allowed values for this property are: "ENABLED", "DISABLED" + :type kind: str + + """ + self.swagger_types = { + 'kind': 'str' + } + self.attribute_map = { + 'kind': 'kind' + } + self._kind = None + self._kind = 'DISABLED' + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/models/enabled_insight_details.py b/src/oci/psql/models/enabled_insight_details.py new file mode 100644 index 0000000000..33e15059f9 --- /dev/null +++ b/src/oci/psql/models/enabled_insight_details.py @@ -0,0 +1,80 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + +from .odsp_insight_details import OdspInsightDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class EnabledInsightDetails(OdspInsightDetails): + """ + Enable or Update Existing Insights for the database system. + """ + + def __init__(self, **kwargs): + """ + Initializes a new EnabledInsightDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.psql.models.EnabledInsightDetails.kind` attribute + of this class is ``ENABLED`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param kind: + The value to assign to the kind property of this EnabledInsightDetails. + Allowed values for this property are: "ENABLED", "DISABLED" + :type kind: str + + :param odsp_insight_list: + The value to assign to the odsp_insight_list property of this EnabledInsightDetails. + :type odsp_insight_list: list[oci.psql.models.OdspInsight] + + """ + self.swagger_types = { + 'kind': 'str', + 'odsp_insight_list': 'list[OdspInsight]' + } + self.attribute_map = { + 'kind': 'kind', + 'odsp_insight_list': 'odspInsightList' + } + self._kind = None + self._odsp_insight_list = None + self._kind = 'ENABLED' + + @property + def odsp_insight_list(self): + """ + **[Required]** Gets the odsp_insight_list of this EnabledInsightDetails. + List of ODSP Insight and their configurations. + + + :return: The odsp_insight_list of this EnabledInsightDetails. + :rtype: list[oci.psql.models.OdspInsight] + """ + return self._odsp_insight_list + + @odsp_insight_list.setter + def odsp_insight_list(self, odsp_insight_list): + """ + Sets the odsp_insight_list of this EnabledInsightDetails. + List of ODSP Insight and their configurations. + + + :param odsp_insight_list: The odsp_insight_list of this EnabledInsightDetails. + :type: list[oci.psql.models.OdspInsight] + """ + self._odsp_insight_list = odsp_insight_list + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/models/enabled_kerberos_auth_details.py b/src/oci/psql/models/enabled_kerberos_auth_details.py new file mode 100644 index 0000000000..5be44b14c2 --- /dev/null +++ b/src/oci/psql/models/enabled_kerberos_auth_details.py @@ -0,0 +1,111 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + +from .kerberos_auth_details import KerberosAuthDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class EnabledKerberosAuthDetails(KerberosAuthDetails): + """ + Enable or Update Existing Kerberos Authentication for the database system. + """ + + def __init__(self, **kwargs): + """ + Initializes a new EnabledKerberosAuthDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.psql.models.EnabledKerberosAuthDetails.kind` attribute + of this class is ``ENABLED`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param kind: + The value to assign to the kind property of this EnabledKerberosAuthDetails. + Allowed values for this property are: "ENABLED", "DISABLED" + :type kind: str + + :param credentials: + The value to assign to the credentials property of this EnabledKerberosAuthDetails. + :type credentials: list[oci.psql.models.KerberosCredential] + + :param backup_credentials: + The value to assign to the backup_credentials property of this EnabledKerberosAuthDetails. + :type backup_credentials: list[oci.psql.models.KerberosCredential] + + """ + self.swagger_types = { + 'kind': 'str', + 'credentials': 'list[KerberosCredential]', + 'backup_credentials': 'list[KerberosCredential]' + } + self.attribute_map = { + 'kind': 'kind', + 'credentials': 'credentials', + 'backup_credentials': 'backupCredentials' + } + self._kind = None + self._credentials = None + self._backup_credentials = None + self._kind = 'ENABLED' + + @property + def credentials(self): + """ + **[Required]** Gets the credentials of this EnabledKerberosAuthDetails. + List of Kerberos Credentials to be configured for the dbsystem. Currently supports only one entry. + + + :return: The credentials of this EnabledKerberosAuthDetails. + :rtype: list[oci.psql.models.KerberosCredential] + """ + return self._credentials + + @credentials.setter + def credentials(self, credentials): + """ + Sets the credentials of this EnabledKerberosAuthDetails. + List of Kerberos Credentials to be configured for the dbsystem. Currently supports only one entry. + + + :param credentials: The credentials of this EnabledKerberosAuthDetails. + :type: list[oci.psql.models.KerberosCredential] + """ + self._credentials = credentials + + @property + def backup_credentials(self): + """ + Gets the backup_credentials of this EnabledKerberosAuthDetails. + Optional. List of Kerberos Credentials previously configured for the dbsystem. Currently supports only one entry. + + + :return: The backup_credentials of this EnabledKerberosAuthDetails. + :rtype: list[oci.psql.models.KerberosCredential] + """ + return self._backup_credentials + + @backup_credentials.setter + def backup_credentials(self, backup_credentials): + """ + Sets the backup_credentials of this EnabledKerberosAuthDetails. + Optional. List of Kerberos Credentials previously configured for the dbsystem. Currently supports only one entry. + + + :param backup_credentials: The backup_credentials of this EnabledKerberosAuthDetails. + :type: list[oci.psql.models.KerberosCredential] + """ + self._backup_credentials = backup_credentials + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/models/granularity_capability.py b/src/oci/psql/models/granularity_capability.py new file mode 100644 index 0000000000..37815b70f3 --- /dev/null +++ b/src/oci/psql/models/granularity_capability.py @@ -0,0 +1,152 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class GranularityCapability(object): + """ + Describes time granularity behavior for time-series Insight. + """ + + #: A constant which can be used with the type property of a GranularityCapability. + #: This constant has a value of "FIXED" + TYPE_FIXED = "FIXED" + + #: A constant which can be used with the type property of a GranularityCapability. + #: This constant has a value of "CLIENT_INPUT" + TYPE_CLIENT_INPUT = "CLIENT_INPUT" + + #: A constant which can be used with the type property of a GranularityCapability. + #: This constant has a value of "BACKEND_DETERMINED" + TYPE_BACKEND_DETERMINED = "BACKEND_DETERMINED" + + def __init__(self, **kwargs): + """ + Initializes a new GranularityCapability object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param type: + The value to assign to the type property of this GranularityCapability. + Allowed values for this property are: "FIXED", "CLIENT_INPUT", "BACKEND_DETERMINED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type type: str + + :param min_seconds: + The value to assign to the min_seconds property of this GranularityCapability. + :type min_seconds: int + + :param max_seconds: + The value to assign to the max_seconds property of this GranularityCapability. + :type max_seconds: int + + """ + self.swagger_types = { + 'type': 'str', + 'min_seconds': 'int', + 'max_seconds': 'int' + } + self.attribute_map = { + 'type': 'type', + 'min_seconds': 'minSeconds', + 'max_seconds': 'maxSeconds' + } + self._type = None + self._min_seconds = None + self._max_seconds = None + + @property + def type(self): + """ + Gets the type of this GranularityCapability. + Granularity selection strategy. + + Allowed values for this property are: "FIXED", "CLIENT_INPUT", "BACKEND_DETERMINED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The type of this GranularityCapability. + :rtype: str + """ + return self._type + + @type.setter + def type(self, type): + """ + Sets the type of this GranularityCapability. + Granularity selection strategy. + + + :param type: The type of this GranularityCapability. + :type: str + """ + allowed_values = ["FIXED", "CLIENT_INPUT", "BACKEND_DETERMINED"] + if not value_allowed_none_or_none_sentinel(type, allowed_values): + type = 'UNKNOWN_ENUM_VALUE' + self._type = type + + @property + def min_seconds(self): + """ + Gets the min_seconds of this GranularityCapability. + Minimum supported granularity in seconds. + + + :return: The min_seconds of this GranularityCapability. + :rtype: int + """ + return self._min_seconds + + @min_seconds.setter + def min_seconds(self, min_seconds): + """ + Sets the min_seconds of this GranularityCapability. + Minimum supported granularity in seconds. + + + :param min_seconds: The min_seconds of this GranularityCapability. + :type: int + """ + self._min_seconds = min_seconds + + @property + def max_seconds(self): + """ + Gets the max_seconds of this GranularityCapability. + Maximum supported granularity in seconds. + + + :return: The max_seconds of this GranularityCapability. + :rtype: int + """ + return self._max_seconds + + @max_seconds.setter + def max_seconds(self, max_seconds): + """ + Sets the max_seconds of this GranularityCapability. + Maximum supported granularity in seconds. + + + :param max_seconds: The max_seconds of this GranularityCapability. + :type: int + """ + self._max_seconds = max_seconds + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/models/insight_capability_collection.py b/src/oci/psql/models/insight_capability_collection.py new file mode 100644 index 0000000000..ddda863f03 --- /dev/null +++ b/src/oci/psql/models/insight_capability_collection.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class InsightCapabilityCollection(object): + """ + PostgreSQL insight capabilities collection. + """ + + def __init__(self, **kwargs): + """ + Initializes a new InsightCapabilityCollection object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this InsightCapabilityCollection. + :type items: list[oci.psql.models.InsightCapabilitySummary] + + """ + self.swagger_types = { + 'items': 'list[InsightCapabilitySummary]' + } + self.attribute_map = { + 'items': 'items' + } + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this InsightCapabilityCollection. + PostgreSQL insight capabilities list. + + + :return: The items of this InsightCapabilityCollection. + :rtype: list[oci.psql.models.InsightCapabilitySummary] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this InsightCapabilityCollection. + PostgreSQL insight capabilities list. + + + :param items: The items of this InsightCapabilityCollection. + :type: list[oci.psql.models.InsightCapabilitySummary] + """ + self._items = items + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/models/insight_capability_summary.py b/src/oci/psql/models/insight_capability_summary.py new file mode 100644 index 0000000000..112bed99aa --- /dev/null +++ b/src/oci/psql/models/insight_capability_summary.py @@ -0,0 +1,144 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class InsightCapabilitySummary(object): + """ + Describes supported insight types and their capabilities. + """ + + #: A constant which can be used with the insight_type property of a InsightCapabilitySummary. + #: This constant has a value of "QUERY_INSIGHT" + INSIGHT_TYPE_QUERY_INSIGHT = "QUERY_INSIGHT" + + def __init__(self, **kwargs): + """ + Initializes a new InsightCapabilitySummary object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param insight_type: + The value to assign to the insight_type property of this InsightCapabilitySummary. + Allowed values for this property are: "QUERY_INSIGHT", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type insight_type: str + + :param description: + The value to assign to the description property of this InsightCapabilitySummary. + :type description: str + + :param data_type_capabilities: + The value to assign to the data_type_capabilities property of this InsightCapabilitySummary. + :type data_type_capabilities: list[oci.psql.models.InsightDataTypeCapability] + + """ + self.swagger_types = { + 'insight_type': 'str', + 'description': 'str', + 'data_type_capabilities': 'list[InsightDataTypeCapability]' + } + self.attribute_map = { + 'insight_type': 'insightType', + 'description': 'description', + 'data_type_capabilities': 'dataTypeCapabilities' + } + self._insight_type = None + self._description = None + self._data_type_capabilities = None + + @property + def insight_type(self): + """ + **[Required]** Gets the insight_type of this InsightCapabilitySummary. + Echo of the requested insight type. + + Allowed values for this property are: "QUERY_INSIGHT", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The insight_type of this InsightCapabilitySummary. + :rtype: str + """ + return self._insight_type + + @insight_type.setter + def insight_type(self, insight_type): + """ + Sets the insight_type of this InsightCapabilitySummary. + Echo of the requested insight type. + + + :param insight_type: The insight_type of this InsightCapabilitySummary. + :type: str + """ + allowed_values = ["QUERY_INSIGHT"] + if not value_allowed_none_or_none_sentinel(insight_type, allowed_values): + insight_type = 'UNKNOWN_ENUM_VALUE' + self._insight_type = insight_type + + @property + def description(self): + """ + Gets the description of this InsightCapabilitySummary. + Human-readable description of the insight type. + + + :return: The description of this InsightCapabilitySummary. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this InsightCapabilitySummary. + Human-readable description of the insight type. + + + :param description: The description of this InsightCapabilitySummary. + :type: str + """ + self._description = description + + @property + def data_type_capabilities(self): + """ + **[Required]** Gets the data_type_capabilities of this InsightCapabilitySummary. + Supported insight data types for this insight type. + + + :return: The data_type_capabilities of this InsightCapabilitySummary. + :rtype: list[oci.psql.models.InsightDataTypeCapability] + """ + return self._data_type_capabilities + + @data_type_capabilities.setter + def data_type_capabilities(self, data_type_capabilities): + """ + Sets the data_type_capabilities of this InsightCapabilitySummary. + Supported insight data types for this insight type. + + + :param data_type_capabilities: The data_type_capabilities of this InsightCapabilitySummary. + :type: list[oci.psql.models.InsightDataTypeCapability] + """ + self._data_type_capabilities = data_type_capabilities + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/models/insight_data_contract.py b/src/oci/psql/models/insight_data_contract.py new file mode 100644 index 0000000000..9c151ced59 --- /dev/null +++ b/src/oci/psql/models/insight_data_contract.py @@ -0,0 +1,121 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class InsightDataContract(object): + """ + Describes the response data format returned for an insight type. + """ + + #: A constant which can be used with the kind property of a InsightDataContract. + #: This constant has a value of "TIME_SERIES" + KIND_TIME_SERIES = "TIME_SERIES" + + #: A constant which can be used with the kind property of a InsightDataContract. + #: This constant has a value of "TABLE" + KIND_TABLE = "TABLE" + + #: A constant which can be used with the kind property of a InsightDataContract. + #: This constant has a value of "SUMMARY" + KIND_SUMMARY = "SUMMARY" + + def __init__(self, **kwargs): + """ + Initializes a new InsightDataContract object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param kind: + The value to assign to the kind property of this InsightDataContract. + Allowed values for this property are: "TIME_SERIES", "TABLE", "SUMMARY", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type kind: str + + :param unit: + The value to assign to the unit property of this InsightDataContract. + :type unit: str + + """ + self.swagger_types = { + 'kind': 'str', + 'unit': 'str' + } + self.attribute_map = { + 'kind': 'kind', + 'unit': 'unit' + } + self._kind = None + self._unit = None + + @property + def kind(self): + """ + **[Required]** Gets the kind of this InsightDataContract. + Indicates the structure of the insight data payload. + + Allowed values for this property are: "TIME_SERIES", "TABLE", "SUMMARY", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The kind of this InsightDataContract. + :rtype: str + """ + return self._kind + + @kind.setter + def kind(self, kind): + """ + Sets the kind of this InsightDataContract. + Indicates the structure of the insight data payload. + + + :param kind: The kind of this InsightDataContract. + :type: str + """ + allowed_values = ["TIME_SERIES", "TABLE", "SUMMARY"] + if not value_allowed_none_or_none_sentinel(kind, allowed_values): + kind = 'UNKNOWN_ENUM_VALUE' + self._kind = kind + + @property + def unit(self): + """ + Gets the unit of this InsightDataContract. + Optional unit associated with numeric values. + + + :return: The unit of this InsightDataContract. + :rtype: str + """ + return self._unit + + @unit.setter + def unit(self, unit): + """ + Sets the unit of this InsightDataContract. + Optional unit associated with numeric values. + + + :param unit: The unit of this InsightDataContract. + :type: str + """ + self._unit = unit + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/models/insight_data_type_capability.py b/src/oci/psql/models/insight_data_type_capability.py new file mode 100644 index 0000000000..709181bba9 --- /dev/null +++ b/src/oci/psql/models/insight_data_type_capability.py @@ -0,0 +1,310 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class InsightDataTypeCapability(object): + """ + Capability metadata for a specific insight data type. + """ + + #: A constant which can be used with the insight_data_type property of a InsightDataTypeCapability. + #: This constant has a value of "AAS_TIME_SERIES" + INSIGHT_DATA_TYPE_AAS_TIME_SERIES = "AAS_TIME_SERIES" + + #: A constant which can be used with the insight_data_type property of a InsightDataTypeCapability. + #: This constant has a value of "TOP_QUERIES" + INSIGHT_DATA_TYPE_TOP_QUERIES = "TOP_QUERIES" + + def __init__(self, **kwargs): + """ + Initializes a new InsightDataTypeCapability object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param insight_data_type: + The value to assign to the insight_data_type property of this InsightDataTypeCapability. + Allowed values for this property are: "AAS_TIME_SERIES", "TOP_QUERIES", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type insight_data_type: str + + :param description: + The value to assign to the description property of this InsightDataTypeCapability. + :type description: str + + :param data_contract: + The value to assign to the data_contract property of this InsightDataTypeCapability. + :type data_contract: oci.psql.models.InsightDataContract + + :param date_time_range_support: + The value to assign to the date_time_range_support property of this InsightDataTypeCapability. + :type date_time_range_support: oci.psql.models.DateTimeRangeCapability + + :param granularity: + The value to assign to the granularity property of this InsightDataTypeCapability. + :type granularity: oci.psql.models.GranularityCapability + + :param filters: + The value to assign to the filters property of this InsightDataTypeCapability. + :type filters: list[oci.psql.models.InsightFilterCapability] + + :param sorting: + The value to assign to the sorting property of this InsightDataTypeCapability. + :type sorting: oci.psql.models.SortingCapability + + :param pagination: + The value to assign to the pagination property of this InsightDataTypeCapability. + :type pagination: oci.psql.models.PaginationCapability + + :param limits: + The value to assign to the limits property of this InsightDataTypeCapability. + :type limits: oci.psql.models.InsightLimits + + """ + self.swagger_types = { + 'insight_data_type': 'str', + 'description': 'str', + 'data_contract': 'InsightDataContract', + 'date_time_range_support': 'DateTimeRangeCapability', + 'granularity': 'GranularityCapability', + 'filters': 'list[InsightFilterCapability]', + 'sorting': 'SortingCapability', + 'pagination': 'PaginationCapability', + 'limits': 'InsightLimits' + } + self.attribute_map = { + 'insight_data_type': 'insightDataType', + 'description': 'description', + 'data_contract': 'dataContract', + 'date_time_range_support': 'dateTimeRangeSupport', + 'granularity': 'granularity', + 'filters': 'filters', + 'sorting': 'sorting', + 'pagination': 'pagination', + 'limits': 'limits' + } + self._insight_data_type = None + self._description = None + self._data_contract = None + self._date_time_range_support = None + self._granularity = None + self._filters = None + self._sorting = None + self._pagination = None + self._limits = None + + @property + def insight_data_type(self): + """ + **[Required]** Gets the insight_data_type of this InsightDataTypeCapability. + Insight data type identifier (for example, AAS_TIME_SERIES). + + Allowed values for this property are: "AAS_TIME_SERIES", "TOP_QUERIES", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The insight_data_type of this InsightDataTypeCapability. + :rtype: str + """ + return self._insight_data_type + + @insight_data_type.setter + def insight_data_type(self, insight_data_type): + """ + Sets the insight_data_type of this InsightDataTypeCapability. + Insight data type identifier (for example, AAS_TIME_SERIES). + + + :param insight_data_type: The insight_data_type of this InsightDataTypeCapability. + :type: str + """ + allowed_values = ["AAS_TIME_SERIES", "TOP_QUERIES"] + if not value_allowed_none_or_none_sentinel(insight_data_type, allowed_values): + insight_data_type = 'UNKNOWN_ENUM_VALUE' + self._insight_data_type = insight_data_type + + @property + def description(self): + """ + Gets the description of this InsightDataTypeCapability. + Human-readable description of the insight data type. + + + :return: The description of this InsightDataTypeCapability. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this InsightDataTypeCapability. + Human-readable description of the insight data type. + + + :param description: The description of this InsightDataTypeCapability. + :type: str + """ + self._description = description + + @property + def data_contract(self): + """ + **[Required]** Gets the data_contract of this InsightDataTypeCapability. + + :return: The data_contract of this InsightDataTypeCapability. + :rtype: oci.psql.models.InsightDataContract + """ + return self._data_contract + + @data_contract.setter + def data_contract(self, data_contract): + """ + Sets the data_contract of this InsightDataTypeCapability. + + :param data_contract: The data_contract of this InsightDataTypeCapability. + :type: oci.psql.models.InsightDataContract + """ + self._data_contract = data_contract + + @property + def date_time_range_support(self): + """ + Gets the date_time_range_support of this InsightDataTypeCapability. + + :return: The date_time_range_support of this InsightDataTypeCapability. + :rtype: oci.psql.models.DateTimeRangeCapability + """ + return self._date_time_range_support + + @date_time_range_support.setter + def date_time_range_support(self, date_time_range_support): + """ + Sets the date_time_range_support of this InsightDataTypeCapability. + + :param date_time_range_support: The date_time_range_support of this InsightDataTypeCapability. + :type: oci.psql.models.DateTimeRangeCapability + """ + self._date_time_range_support = date_time_range_support + + @property + def granularity(self): + """ + Gets the granularity of this InsightDataTypeCapability. + + :return: The granularity of this InsightDataTypeCapability. + :rtype: oci.psql.models.GranularityCapability + """ + return self._granularity + + @granularity.setter + def granularity(self, granularity): + """ + Sets the granularity of this InsightDataTypeCapability. + + :param granularity: The granularity of this InsightDataTypeCapability. + :type: oci.psql.models.GranularityCapability + """ + self._granularity = granularity + + @property + def filters(self): + """ + Gets the filters of this InsightDataTypeCapability. + Supported filters for this insight data type. + + + :return: The filters of this InsightDataTypeCapability. + :rtype: list[oci.psql.models.InsightFilterCapability] + """ + return self._filters + + @filters.setter + def filters(self, filters): + """ + Sets the filters of this InsightDataTypeCapability. + Supported filters for this insight data type. + + + :param filters: The filters of this InsightDataTypeCapability. + :type: list[oci.psql.models.InsightFilterCapability] + """ + self._filters = filters + + @property + def sorting(self): + """ + Gets the sorting of this InsightDataTypeCapability. + + :return: The sorting of this InsightDataTypeCapability. + :rtype: oci.psql.models.SortingCapability + """ + return self._sorting + + @sorting.setter + def sorting(self, sorting): + """ + Sets the sorting of this InsightDataTypeCapability. + + :param sorting: The sorting of this InsightDataTypeCapability. + :type: oci.psql.models.SortingCapability + """ + self._sorting = sorting + + @property + def pagination(self): + """ + Gets the pagination of this InsightDataTypeCapability. + + :return: The pagination of this InsightDataTypeCapability. + :rtype: oci.psql.models.PaginationCapability + """ + return self._pagination + + @pagination.setter + def pagination(self, pagination): + """ + Sets the pagination of this InsightDataTypeCapability. + + :param pagination: The pagination of this InsightDataTypeCapability. + :type: oci.psql.models.PaginationCapability + """ + self._pagination = pagination + + @property + def limits(self): + """ + Gets the limits of this InsightDataTypeCapability. + + :return: The limits of this InsightDataTypeCapability. + :rtype: oci.psql.models.InsightLimits + """ + return self._limits + + @limits.setter + def limits(self, limits): + """ + Sets the limits of this InsightDataTypeCapability. + + :param limits: The limits of this InsightDataTypeCapability. + :type: oci.psql.models.InsightLimits + """ + self._limits = limits + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/models/insight_filter_capability.py b/src/oci/psql/models/insight_filter_capability.py new file mode 100644 index 0000000000..d8d2304486 --- /dev/null +++ b/src/oci/psql/models/insight_filter_capability.py @@ -0,0 +1,163 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class InsightFilterCapability(object): + """ + Describes a supported filter for an insight type. + """ + + def __init__(self, **kwargs): + """ + Initializes a new InsightFilterCapability object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this InsightFilterCapability. + :type name: str + + :param type: + The value to assign to the type property of this InsightFilterCapability. + :type type: str + + :param values: + The value to assign to the values property of this InsightFilterCapability. + :type values: list[str] + + :param can_use_partial_match: + The value to assign to the can_use_partial_match property of this InsightFilterCapability. + :type can_use_partial_match: bool + + """ + self.swagger_types = { + 'name': 'str', + 'type': 'str', + 'values': 'list[str]', + 'can_use_partial_match': 'bool' + } + self.attribute_map = { + 'name': 'name', + 'type': 'type', + 'values': 'values', + 'can_use_partial_match': 'canUsePartialMatch' + } + self._name = None + self._type = None + self._values = None + self._can_use_partial_match = None + + @property + def name(self): + """ + **[Required]** Gets the name of this InsightFilterCapability. + Name of the filter parameter. + + + :return: The name of this InsightFilterCapability. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this InsightFilterCapability. + Name of the filter parameter. + + + :param name: The name of this InsightFilterCapability. + :type: str + """ + self._name = name + + @property + def type(self): + """ + **[Required]** Gets the type of this InsightFilterCapability. + Data type of the filter parameter. + + + :return: The type of this InsightFilterCapability. + :rtype: str + """ + return self._type + + @type.setter + def type(self, type): + """ + Sets the type of this InsightFilterCapability. + Data type of the filter parameter. + + + :param type: The type of this InsightFilterCapability. + :type: str + """ + self._type = type + + @property + def values(self): + """ + Gets the values of this InsightFilterCapability. + Allowed values for enum-based filters. + + + :return: The values of this InsightFilterCapability. + :rtype: list[str] + """ + return self._values + + @values.setter + def values(self, values): + """ + Sets the values of this InsightFilterCapability. + Allowed values for enum-based filters. + + + :param values: The values of this InsightFilterCapability. + :type: list[str] + """ + self._values = values + + @property + def can_use_partial_match(self): + """ + Gets the can_use_partial_match of this InsightFilterCapability. + Indicates whether partial matching is supported. + + + :return: The can_use_partial_match of this InsightFilterCapability. + :rtype: bool + """ + return self._can_use_partial_match + + @can_use_partial_match.setter + def can_use_partial_match(self, can_use_partial_match): + """ + Sets the can_use_partial_match of this InsightFilterCapability. + Indicates whether partial matching is supported. + + + :param can_use_partial_match: The can_use_partial_match of this InsightFilterCapability. + :type: bool + """ + self._can_use_partial_match = can_use_partial_match + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/models/insight_limits.py b/src/oci/psql/models/insight_limits.py new file mode 100644 index 0000000000..0fb17d6477 --- /dev/null +++ b/src/oci/psql/models/insight_limits.py @@ -0,0 +1,101 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class InsightLimits(object): + """ + Defines limits applicable to an insight type. + """ + + def __init__(self, **kwargs): + """ + Initializes a new InsightLimits object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param max_time_range_days: + The value to assign to the max_time_range_days property of this InsightLimits. + :type max_time_range_days: int + + :param max_rows: + The value to assign to the max_rows property of this InsightLimits. + :type max_rows: int + + """ + self.swagger_types = { + 'max_time_range_days': 'int', + 'max_rows': 'int' + } + self.attribute_map = { + 'max_time_range_days': 'maxTimeRangeDays', + 'max_rows': 'maxRows' + } + self._max_time_range_days = None + self._max_rows = None + + @property + def max_time_range_days(self): + """ + Gets the max_time_range_days of this InsightLimits. + Maximum allowed time range in days. + + + :return: The max_time_range_days of this InsightLimits. + :rtype: int + """ + return self._max_time_range_days + + @max_time_range_days.setter + def max_time_range_days(self, max_time_range_days): + """ + Sets the max_time_range_days of this InsightLimits. + Maximum allowed time range in days. + + + :param max_time_range_days: The max_time_range_days of this InsightLimits. + :type: int + """ + self._max_time_range_days = max_time_range_days + + @property + def max_rows(self): + """ + Gets the max_rows of this InsightLimits. + Maximum number of rows returned. + + + :return: The max_rows of this InsightLimits. + :rtype: int + """ + return self._max_rows + + @max_rows.setter + def max_rows(self, max_rows): + """ + Sets the max_rows of this InsightLimits. + Maximum number of rows returned. + + + :param max_rows: The max_rows of this InsightLimits. + :type: int + """ + self._max_rows = max_rows + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/models/kerberos_auth_details.py b/src/oci/psql/models/kerberos_auth_details.py new file mode 100644 index 0000000000..b4313cc07d --- /dev/null +++ b/src/oci/psql/models/kerberos_auth_details.py @@ -0,0 +1,107 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class KerberosAuthDetails(object): + """ + Kerberos Authentication details for the database system. + """ + + #: A constant which can be used with the kind property of a KerberosAuthDetails. + #: This constant has a value of "ENABLED" + KIND_ENABLED = "ENABLED" + + #: A constant which can be used with the kind property of a KerberosAuthDetails. + #: This constant has a value of "DISABLED" + KIND_DISABLED = "DISABLED" + + def __init__(self, **kwargs): + """ + Initializes a new KerberosAuthDetails object with values from keyword arguments. This class has the following subclasses and if you are using this class as input + to a service operations then you should favor using a subclass over the base class: + + * :class:`~oci.psql.models.DisabledKerberosAuthDetails` + * :class:`~oci.psql.models.EnabledKerberosAuthDetails` + + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param kind: + The value to assign to the kind property of this KerberosAuthDetails. + Allowed values for this property are: "ENABLED", "DISABLED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type kind: str + + """ + self.swagger_types = { + 'kind': 'str' + } + self.attribute_map = { + 'kind': 'kind' + } + self._kind = None + + @staticmethod + def get_subtype(object_dictionary): + """ + Given the hash representation of a subtype of this class, + use the info in the hash to return the class of the subtype. + """ + type = object_dictionary['kind'] + + if type == 'DISABLED': + return 'DisabledKerberosAuthDetails' + + if type == 'ENABLED': + return 'EnabledKerberosAuthDetails' + else: + return 'KerberosAuthDetails' + + @property + def kind(self): + """ + **[Required]** Gets the kind of this KerberosAuthDetails. + Specifies the management of Kerberos Authentication for the dbSystem. + + Allowed values for this property are: "ENABLED", "DISABLED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The kind of this KerberosAuthDetails. + :rtype: str + """ + return self._kind + + @kind.setter + def kind(self, kind): + """ + Sets the kind of this KerberosAuthDetails. + Specifies the management of Kerberos Authentication for the dbSystem. + + + :param kind: The kind of this KerberosAuthDetails. + :type: str + """ + allowed_values = ["ENABLED", "DISABLED"] + if not value_allowed_none_or_none_sentinel(kind, allowed_values): + kind = 'UNKNOWN_ENUM_VALUE' + self._kind = kind + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/models/kerberos_credential.py b/src/oci/psql/models/kerberos_credential.py new file mode 100644 index 0000000000..a2c967704f --- /dev/null +++ b/src/oci/psql/models/kerberos_credential.py @@ -0,0 +1,144 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class KerberosCredential(object): + """ + Kerberos Credential details as OCI Vault Secret for the keytab. + """ + + def __init__(self, **kwargs): + """ + Initializes a new KerberosCredential object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param realm_name: + The value to assign to the realm_name property of this KerberosCredential. + :type realm_name: str + + :param keytab_secret_id: + The value to assign to the keytab_secret_id property of this KerberosCredential. + :type keytab_secret_id: str + + :param keytab_secret_version: + The value to assign to the keytab_secret_version property of this KerberosCredential. + :type keytab_secret_version: int + + """ + self.swagger_types = { + 'realm_name': 'str', + 'keytab_secret_id': 'str', + 'keytab_secret_version': 'int' + } + self.attribute_map = { + 'realm_name': 'realmName', + 'keytab_secret_id': 'keytabSecretId', + 'keytab_secret_version': 'keytabSecretVersion' + } + self._realm_name = None + self._keytab_secret_id = None + self._keytab_secret_version = None + + @property + def realm_name(self): + """ + **[Required]** Gets the realm_name of this KerberosCredential. + Kerberos realm name. + https://docs.oracle.com/cd/E36784_01/html/E37126/kplanning-27.html + Realm names can consist of any ASCII string. Usually, the realm name is the same as your DNS domain name + except that the realm name is in uppercase. This convention helps differentiate problems with the Kerberos + service from problems with the DNS namespace, while keeping a name that is familiar. You can use any string, + but configuration and maintenance might then require more work. Use realm names that follow the standard + Internet naming structure. + + + :return: The realm_name of this KerberosCredential. + :rtype: str + """ + return self._realm_name + + @realm_name.setter + def realm_name(self, realm_name): + """ + Sets the realm_name of this KerberosCredential. + Kerberos realm name. + https://docs.oracle.com/cd/E36784_01/html/E37126/kplanning-27.html + Realm names can consist of any ASCII string. Usually, the realm name is the same as your DNS domain name + except that the realm name is in uppercase. This convention helps differentiate problems with the Kerberos + service from problems with the DNS namespace, while keeping a name that is familiar. You can use any string, + but configuration and maintenance might then require more work. Use realm names that follow the standard + Internet naming structure. + + + :param realm_name: The realm_name of this KerberosCredential. + :type: str + """ + self._realm_name = realm_name + + @property + def keytab_secret_id(self): + """ + **[Required]** Gets the keytab_secret_id of this KerberosCredential. + The OCID of the secret where the Kerberos keytab file is stored as base64 text. + + + :return: The keytab_secret_id of this KerberosCredential. + :rtype: str + """ + return self._keytab_secret_id + + @keytab_secret_id.setter + def keytab_secret_id(self, keytab_secret_id): + """ + Sets the keytab_secret_id of this KerberosCredential. + The OCID of the secret where the Kerberos keytab file is stored as base64 text. + + + :param keytab_secret_id: The keytab_secret_id of this KerberosCredential. + :type: str + """ + self._keytab_secret_id = keytab_secret_id + + @property + def keytab_secret_version(self): + """ + **[Required]** Gets the keytab_secret_version of this KerberosCredential. + The secret version of the stored Kerberos keytab file. + + + :return: The keytab_secret_version of this KerberosCredential. + :rtype: int + """ + return self._keytab_secret_version + + @keytab_secret_version.setter + def keytab_secret_version(self, keytab_secret_version): + """ + Sets the keytab_secret_version of this KerberosCredential. + The secret version of the stored Kerberos keytab file. + + + :param keytab_secret_version: The keytab_secret_version of this KerberosCredential. + :type: int + """ + self._keytab_secret_version = keytab_secret_version + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/models/none_source_details.py b/src/oci/psql/models/none_source_details.py index 1be78c653b..f4a59f1125 100644 --- a/src/oci/psql/models/none_source_details.py +++ b/src/oci/psql/models/none_source_details.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param source_type: The value to assign to the source_type property of this NoneSourceDetails. - Allowed values for this property are: "BACKUP", "NONE" + Allowed values for this property are: "BACKUP", "NONE", "DB_SYSTEM" :type source_type: str """ diff --git a/src/oci/psql/models/odsp_insight.py b/src/oci/psql/models/odsp_insight.py new file mode 100644 index 0000000000..fb5e3b3bff --- /dev/null +++ b/src/oci/psql/models/odsp_insight.py @@ -0,0 +1,113 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class OdspInsight(object): + """ + Details for a single ODSP insight. + """ + + #: A constant which can be used with the insight_type property of a OdspInsight. + #: This constant has a value of "QUERY_INSIGHT" + INSIGHT_TYPE_QUERY_INSIGHT = "QUERY_INSIGHT" + + def __init__(self, **kwargs): + """ + Initializes a new OdspInsight object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param insight_type: + The value to assign to the insight_type property of this OdspInsight. + Allowed values for this property are: "QUERY_INSIGHT", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type insight_type: str + + :param retention_period_in_days: + The value to assign to the retention_period_in_days property of this OdspInsight. + :type retention_period_in_days: int + + """ + self.swagger_types = { + 'insight_type': 'str', + 'retention_period_in_days': 'int' + } + self.attribute_map = { + 'insight_type': 'insightType', + 'retention_period_in_days': 'retentionPeriodInDays' + } + self._insight_type = None + self._retention_period_in_days = None + + @property + def insight_type(self): + """ + **[Required]** Gets the insight_type of this OdspInsight. + Type of Insight collected for the database system. + + Allowed values for this property are: "QUERY_INSIGHT", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The insight_type of this OdspInsight. + :rtype: str + """ + return self._insight_type + + @insight_type.setter + def insight_type(self, insight_type): + """ + Sets the insight_type of this OdspInsight. + Type of Insight collected for the database system. + + + :param insight_type: The insight_type of this OdspInsight. + :type: str + """ + allowed_values = ["QUERY_INSIGHT"] + if not value_allowed_none_or_none_sentinel(insight_type, allowed_values): + insight_type = 'UNKNOWN_ENUM_VALUE' + self._insight_type = insight_type + + @property + def retention_period_in_days(self): + """ + Gets the retention_period_in_days of this OdspInsight. + Retention period for Insight data, in days. Current supported value is 7 days. the system default is 7 days. + + + :return: The retention_period_in_days of this OdspInsight. + :rtype: int + """ + return self._retention_period_in_days + + @retention_period_in_days.setter + def retention_period_in_days(self, retention_period_in_days): + """ + Sets the retention_period_in_days of this OdspInsight. + Retention period for Insight data, in days. Current supported value is 7 days. the system default is 7 days. + + + :param retention_period_in_days: The retention_period_in_days of this OdspInsight. + :type: int + """ + self._retention_period_in_days = retention_period_in_days + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/models/odsp_insight_details.py b/src/oci/psql/models/odsp_insight_details.py new file mode 100644 index 0000000000..d64a134ebf --- /dev/null +++ b/src/oci/psql/models/odsp_insight_details.py @@ -0,0 +1,107 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class OdspInsightDetails(object): + """ + ODSP Insight details for the database system. + """ + + #: A constant which can be used with the kind property of a OdspInsightDetails. + #: This constant has a value of "ENABLED" + KIND_ENABLED = "ENABLED" + + #: A constant which can be used with the kind property of a OdspInsightDetails. + #: This constant has a value of "DISABLED" + KIND_DISABLED = "DISABLED" + + def __init__(self, **kwargs): + """ + Initializes a new OdspInsightDetails object with values from keyword arguments. This class has the following subclasses and if you are using this class as input + to a service operations then you should favor using a subclass over the base class: + + * :class:`~oci.psql.models.DisabledInsightDetails` + * :class:`~oci.psql.models.EnabledInsightDetails` + + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param kind: + The value to assign to the kind property of this OdspInsightDetails. + Allowed values for this property are: "ENABLED", "DISABLED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type kind: str + + """ + self.swagger_types = { + 'kind': 'str' + } + self.attribute_map = { + 'kind': 'kind' + } + self._kind = None + + @staticmethod + def get_subtype(object_dictionary): + """ + Given the hash representation of a subtype of this class, + use the info in the hash to return the class of the subtype. + """ + type = object_dictionary['kind'] + + if type == 'DISABLED': + return 'DisabledInsightDetails' + + if type == 'ENABLED': + return 'EnabledInsightDetails' + else: + return 'OdspInsightDetails' + + @property + def kind(self): + """ + **[Required]** Gets the kind of this OdspInsightDetails. + Specifies the management of Insight for the dbSystem. + + Allowed values for this property are: "ENABLED", "DISABLED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The kind of this OdspInsightDetails. + :rtype: str + """ + return self._kind + + @kind.setter + def kind(self, kind): + """ + Sets the kind of this OdspInsightDetails. + Specifies the management of Insight for the dbSystem. + + + :param kind: The kind of this OdspInsightDetails. + :type: str + """ + allowed_values = ["ENABLED", "DISABLED"] + if not value_allowed_none_or_none_sentinel(kind, allowed_values): + kind = 'UNKNOWN_ENUM_VALUE' + self._kind = kind + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/models/pagination_capability.py b/src/oci/psql/models/pagination_capability.py new file mode 100644 index 0000000000..0842a6e9e8 --- /dev/null +++ b/src/oci/psql/models/pagination_capability.py @@ -0,0 +1,132 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class PaginationCapability(object): + """ + Describes pagination support for an insight type. + """ + + def __init__(self, **kwargs): + """ + Initializes a new PaginationCapability object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param is_supported: + The value to assign to the is_supported property of this PaginationCapability. + :type is_supported: bool + + :param max_limit: + The value to assign to the max_limit property of this PaginationCapability. + :type max_limit: int + + :param default_limit: + The value to assign to the default_limit property of this PaginationCapability. + :type default_limit: int + + """ + self.swagger_types = { + 'is_supported': 'bool', + 'max_limit': 'int', + 'default_limit': 'int' + } + self.attribute_map = { + 'is_supported': 'isSupported', + 'max_limit': 'maxLimit', + 'default_limit': 'defaultLimit' + } + self._is_supported = None + self._max_limit = None + self._default_limit = None + + @property + def is_supported(self): + """ + **[Required]** Gets the is_supported of this PaginationCapability. + Indicates whether pagination is supported. + + + :return: The is_supported of this PaginationCapability. + :rtype: bool + """ + return self._is_supported + + @is_supported.setter + def is_supported(self, is_supported): + """ + Sets the is_supported of this PaginationCapability. + Indicates whether pagination is supported. + + + :param is_supported: The is_supported of this PaginationCapability. + :type: bool + """ + self._is_supported = is_supported + + @property + def max_limit(self): + """ + Gets the max_limit of this PaginationCapability. + Maximum number of items per page. + + + :return: The max_limit of this PaginationCapability. + :rtype: int + """ + return self._max_limit + + @max_limit.setter + def max_limit(self, max_limit): + """ + Sets the max_limit of this PaginationCapability. + Maximum number of items per page. + + + :param max_limit: The max_limit of this PaginationCapability. + :type: int + """ + self._max_limit = max_limit + + @property + def default_limit(self): + """ + Gets the default_limit of this PaginationCapability. + Default number of items per page. + + + :return: The default_limit of this PaginationCapability. + :rtype: int + """ + return self._default_limit + + @default_limit.setter + def default_limit(self, default_limit): + """ + Sets the default_limit of this PaginationCapability. + Default number of items per page. + + + :param default_limit: The default_limit of this PaginationCapability. + :type: int + """ + self._default_limit = default_limit + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/models/primary_db_system_source_details.py b/src/oci/psql/models/primary_db_system_source_details.py new file mode 100644 index 0000000000..19e4b96a91 --- /dev/null +++ b/src/oci/psql/models/primary_db_system_source_details.py @@ -0,0 +1,80 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + +from .source_details import SourceDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class PrimaryDbSystemSourceDetails(SourceDetails): + """ + Details of the primary database system. + """ + + def __init__(self, **kwargs): + """ + Initializes a new PrimaryDbSystemSourceDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.psql.models.PrimaryDbSystemSourceDetails.source_type` attribute + of this class is ``DB_SYSTEM`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source_type: + The value to assign to the source_type property of this PrimaryDbSystemSourceDetails. + Allowed values for this property are: "BACKUP", "NONE", "DB_SYSTEM" + :type source_type: str + + :param primary_db_system_id: + The value to assign to the primary_db_system_id property of this PrimaryDbSystemSourceDetails. + :type primary_db_system_id: str + + """ + self.swagger_types = { + 'source_type': 'str', + 'primary_db_system_id': 'str' + } + self.attribute_map = { + 'source_type': 'sourceType', + 'primary_db_system_id': 'primaryDbSystemId' + } + self._source_type = None + self._primary_db_system_id = None + self._source_type = 'DB_SYSTEM' + + @property + def primary_db_system_id(self): + """ + **[Required]** Gets the primary_db_system_id of this PrimaryDbSystemSourceDetails. + The [OCID] of the primary database system. + + + :return: The primary_db_system_id of this PrimaryDbSystemSourceDetails. + :rtype: str + """ + return self._primary_db_system_id + + @primary_db_system_id.setter + def primary_db_system_id(self, primary_db_system_id): + """ + Sets the primary_db_system_id of this PrimaryDbSystemSourceDetails. + The [OCID] of the primary database system. + + + :param primary_db_system_id: The primary_db_system_id of this PrimaryDbSystemSourceDetails. + :type: str + """ + self._primary_db_system_id = primary_db_system_id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/models/replication_config.py b/src/oci/psql/models/replication_config.py new file mode 100644 index 0000000000..5bd9d5c185 --- /dev/null +++ b/src/oci/psql/models/replication_config.py @@ -0,0 +1,106 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ReplicationConfig(object): + """ + Replication configuration that is applicable on database systems with the PRIMARY_DB_SYSTEM + role. + + This configuration does not have any effect on database systems with other roles. + """ + + def __init__(self, **kwargs): + """ + Initializes a new ReplicationConfig object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param is_rpo_enforced: + The value to assign to the is_rpo_enforced property of this ReplicationConfig. + :type is_rpo_enforced: bool + + :param rpo_in_seconds: + The value to assign to the rpo_in_seconds property of this ReplicationConfig. + :type rpo_in_seconds: int + + """ + self.swagger_types = { + 'is_rpo_enforced': 'bool', + 'rpo_in_seconds': 'int' + } + self.attribute_map = { + 'is_rpo_enforced': 'isRpoEnforced', + 'rpo_in_seconds': 'rpoInSeconds' + } + self._is_rpo_enforced = None + self._rpo_in_seconds = None + + @property + def is_rpo_enforced(self): + """ + **[Required]** Gets the is_rpo_enforced of this ReplicationConfig. + Specifies if Recovery point objective (RPO) enforcement is enabled on the database system. + + + :return: The is_rpo_enforced of this ReplicationConfig. + :rtype: bool + """ + return self._is_rpo_enforced + + @is_rpo_enforced.setter + def is_rpo_enforced(self, is_rpo_enforced): + """ + Sets the is_rpo_enforced of this ReplicationConfig. + Specifies if Recovery point objective (RPO) enforcement is enabled on the database system. + + + :param is_rpo_enforced: The is_rpo_enforced of this ReplicationConfig. + :type: bool + """ + self._is_rpo_enforced = is_rpo_enforced + + @property + def rpo_in_seconds(self): + """ + **[Required]** Gets the rpo_in_seconds of this ReplicationConfig. + Specifies the Recovery point objective (RPO) in seconds that will be enforced, if the + `isRpoEnforced` flag is true. + + + :return: The rpo_in_seconds of this ReplicationConfig. + :rtype: int + """ + return self._rpo_in_seconds + + @rpo_in_seconds.setter + def rpo_in_seconds(self, rpo_in_seconds): + """ + Sets the rpo_in_seconds of this ReplicationConfig. + Specifies the Recovery point objective (RPO) in seconds that will be enforced, if the + `isRpoEnforced` flag is true. + + + :param rpo_in_seconds: The rpo_in_seconds of this ReplicationConfig. + :type: int + """ + self._rpo_in_seconds = rpo_in_seconds + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/models/sorting_capability.py b/src/oci/psql/models/sorting_capability.py new file mode 100644 index 0000000000..3dffbfbad2 --- /dev/null +++ b/src/oci/psql/models/sorting_capability.py @@ -0,0 +1,128 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class SortingCapability(object): + """ + Describes sorting support for an insight type. + """ + + def __init__(self, **kwargs): + """ + Initializes a new SortingCapability object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param is_supported: + The value to assign to the is_supported property of this SortingCapability. + :type is_supported: bool + + :param fields: + The value to assign to the fields property of this SortingCapability. + :type fields: list[str] + + :param default_sort: + The value to assign to the default_sort property of this SortingCapability. + :type default_sort: oci.psql.models.SortingDefault + + """ + self.swagger_types = { + 'is_supported': 'bool', + 'fields': 'list[str]', + 'default_sort': 'SortingDefault' + } + self.attribute_map = { + 'is_supported': 'isSupported', + 'fields': 'fields', + 'default_sort': 'defaultSort' + } + self._is_supported = None + self._fields = None + self._default_sort = None + + @property + def is_supported(self): + """ + **[Required]** Gets the is_supported of this SortingCapability. + Indicates whether sorting is supported. + + + :return: The is_supported of this SortingCapability. + :rtype: bool + """ + return self._is_supported + + @is_supported.setter + def is_supported(self, is_supported): + """ + Sets the is_supported of this SortingCapability. + Indicates whether sorting is supported. + + + :param is_supported: The is_supported of this SortingCapability. + :type: bool + """ + self._is_supported = is_supported + + @property + def fields(self): + """ + Gets the fields of this SortingCapability. + Fields that can be used for sorting. + + + :return: The fields of this SortingCapability. + :rtype: list[str] + """ + return self._fields + + @fields.setter + def fields(self, fields): + """ + Sets the fields of this SortingCapability. + Fields that can be used for sorting. + + + :param fields: The fields of this SortingCapability. + :type: list[str] + """ + self._fields = fields + + @property + def default_sort(self): + """ + Gets the default_sort of this SortingCapability. + + :return: The default_sort of this SortingCapability. + :rtype: oci.psql.models.SortingDefault + """ + return self._default_sort + + @default_sort.setter + def default_sort(self, default_sort): + """ + Sets the default_sort of this SortingCapability. + + :param default_sort: The default_sort of this SortingCapability. + :type: oci.psql.models.SortingDefault + """ + self._default_sort = default_sort + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/models/sorting_default.py b/src/oci/psql/models/sorting_default.py new file mode 100644 index 0000000000..5b40ec0758 --- /dev/null +++ b/src/oci/psql/models/sorting_default.py @@ -0,0 +1,117 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class SortingDefault(object): + """ + Default sorting behavior for an insight type. + """ + + #: A constant which can be used with the order property of a SortingDefault. + #: This constant has a value of "ASC" + ORDER_ASC = "ASC" + + #: A constant which can be used with the order property of a SortingDefault. + #: This constant has a value of "DESC" + ORDER_DESC = "DESC" + + def __init__(self, **kwargs): + """ + Initializes a new SortingDefault object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param field: + The value to assign to the field property of this SortingDefault. + :type field: str + + :param order: + The value to assign to the order property of this SortingDefault. + Allowed values for this property are: "ASC", "DESC", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type order: str + + """ + self.swagger_types = { + 'field': 'str', + 'order': 'str' + } + self.attribute_map = { + 'field': 'field', + 'order': 'order' + } + self._field = None + self._order = None + + @property + def field(self): + """ + Gets the field of this SortingDefault. + Default field used for sorting. + + + :return: The field of this SortingDefault. + :rtype: str + """ + return self._field + + @field.setter + def field(self, field): + """ + Sets the field of this SortingDefault. + Default field used for sorting. + + + :param field: The field of this SortingDefault. + :type: str + """ + self._field = field + + @property + def order(self): + """ + Gets the order of this SortingDefault. + Default sort order. + + Allowed values for this property are: "ASC", "DESC", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The order of this SortingDefault. + :rtype: str + """ + return self._order + + @order.setter + def order(self, order): + """ + Sets the order of this SortingDefault. + Default sort order. + + + :param order: The order of this SortingDefault. + :type: str + """ + allowed_values = ["ASC", "DESC"] + if not value_allowed_none_or_none_sentinel(order, allowed_values): + order = 'UNKNOWN_ENUM_VALUE' + self._order = order + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/models/source_details.py b/src/oci/psql/models/source_details.py index 7df6f42b3b..159de153d2 100644 --- a/src/oci/psql/models/source_details.py +++ b/src/oci/psql/models/source_details.py @@ -23,19 +23,24 @@ class SourceDetails(object): #: This constant has a value of "NONE" SOURCE_TYPE_NONE = "NONE" + #: A constant which can be used with the source_type property of a SourceDetails. + #: This constant has a value of "DB_SYSTEM" + SOURCE_TYPE_DB_SYSTEM = "DB_SYSTEM" + def __init__(self, **kwargs): """ Initializes a new SourceDetails object with values from keyword arguments. This class has the following subclasses and if you are using this class as input to a service operations then you should favor using a subclass over the base class: * :class:`~oci.psql.models.BackupSourceDetails` + * :class:`~oci.psql.models.PrimaryDbSystemSourceDetails` * :class:`~oci.psql.models.NoneSourceDetails` The following keyword arguments are supported (corresponding to the getters/setters of this class): :param source_type: The value to assign to the source_type property of this SourceDetails. - Allowed values for this property are: "BACKUP", "NONE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "BACKUP", "NONE", "DB_SYSTEM", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type source_type: str @@ -59,6 +64,9 @@ def get_subtype(object_dictionary): if type == 'BACKUP': return 'BackupSourceDetails' + if type == 'DB_SYSTEM': + return 'PrimaryDbSystemSourceDetails' + if type == 'NONE': return 'NoneSourceDetails' else: @@ -70,7 +78,7 @@ def source_type(self): **[Required]** Gets the source_type of this SourceDetails. The source descriminator. - Allowed values for this property are: "BACKUP", "NONE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "BACKUP", "NONE", "DB_SYSTEM", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -89,7 +97,7 @@ def source_type(self, source_type): :param source_type: The source_type of this SourceDetails. :type: str """ - allowed_values = ["BACKUP", "NONE"] + allowed_values = ["BACKUP", "NONE", "DB_SYSTEM"] if not value_allowed_none_or_none_sentinel(source_type, allowed_values): source_type = 'UNKNOWN_ENUM_VALUE' self._source_type = source_type diff --git a/src/oci/psql/models/start_db_system_details.py b/src/oci/psql/models/start_db_system_details.py new file mode 100644 index 0000000000..e4acb88303 --- /dev/null +++ b/src/oci/psql/models/start_db_system_details.py @@ -0,0 +1,163 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class StartDbSystemDetails(object): + """ + DB System start parameters to update ocpu, memory, shape and configuration. + """ + + def __init__(self, **kwargs): + """ + Initializes a new StartDbSystemDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param instance_ocpu_count: + The value to assign to the instance_ocpu_count property of this StartDbSystemDetails. + :type instance_ocpu_count: int + + :param instance_memory_size_in_gbs: + The value to assign to the instance_memory_size_in_gbs property of this StartDbSystemDetails. + :type instance_memory_size_in_gbs: int + + :param shape: + The value to assign to the shape property of this StartDbSystemDetails. + :type shape: str + + :param config_id: + The value to assign to the config_id property of this StartDbSystemDetails. + :type config_id: str + + """ + self.swagger_types = { + 'instance_ocpu_count': 'int', + 'instance_memory_size_in_gbs': 'int', + 'shape': 'str', + 'config_id': 'str' + } + self.attribute_map = { + 'instance_ocpu_count': 'instanceOcpuCount', + 'instance_memory_size_in_gbs': 'instanceMemorySizeInGBs', + 'shape': 'shape', + 'config_id': 'configId' + } + self._instance_ocpu_count = None + self._instance_memory_size_in_gbs = None + self._shape = None + self._config_id = None + + @property + def instance_ocpu_count(self): + """ + Gets the instance_ocpu_count of this StartDbSystemDetails. + The total number of OCPUs available to each database system node. + + + :return: The instance_ocpu_count of this StartDbSystemDetails. + :rtype: int + """ + return self._instance_ocpu_count + + @instance_ocpu_count.setter + def instance_ocpu_count(self, instance_ocpu_count): + """ + Sets the instance_ocpu_count of this StartDbSystemDetails. + The total number of OCPUs available to each database system node. + + + :param instance_ocpu_count: The instance_ocpu_count of this StartDbSystemDetails. + :type: int + """ + self._instance_ocpu_count = instance_ocpu_count + + @property + def instance_memory_size_in_gbs(self): + """ + Gets the instance_memory_size_in_gbs of this StartDbSystemDetails. + The total amount of memory available to each database system node, in gigabytes. + + + :return: The instance_memory_size_in_gbs of this StartDbSystemDetails. + :rtype: int + """ + return self._instance_memory_size_in_gbs + + @instance_memory_size_in_gbs.setter + def instance_memory_size_in_gbs(self, instance_memory_size_in_gbs): + """ + Sets the instance_memory_size_in_gbs of this StartDbSystemDetails. + The total amount of memory available to each database system node, in gigabytes. + + + :param instance_memory_size_in_gbs: The instance_memory_size_in_gbs of this StartDbSystemDetails. + :type: int + """ + self._instance_memory_size_in_gbs = instance_memory_size_in_gbs + + @property + def shape(self): + """ + Gets the shape of this StartDbSystemDetails. + The name of the shape for the database system nodes. Example: `VM.Standard.E4.Flex` + + + :return: The shape of this StartDbSystemDetails. + :rtype: str + """ + return self._shape + + @shape.setter + def shape(self, shape): + """ + Sets the shape of this StartDbSystemDetails. + The name of the shape for the database system nodes. Example: `VM.Standard.E4.Flex` + + + :param shape: The shape of this StartDbSystemDetails. + :type: str + """ + self._shape = shape + + @property + def config_id(self): + """ + Gets the config_id of this StartDbSystemDetails. + The updated configId for the database system. + + + :return: The config_id of this StartDbSystemDetails. + :rtype: str + """ + return self._config_id + + @config_id.setter + def config_id(self, config_id): + """ + Sets the config_id of this StartDbSystemDetails. + The updated configId for the database system. + + + :param config_id: The config_id of this StartDbSystemDetails. + :type: str + """ + self._config_id = config_id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/models/switch_over_details.py b/src/oci/psql/models/switch_over_details.py new file mode 100644 index 0000000000..191ce67376 --- /dev/null +++ b/src/oci/psql/models/switch_over_details.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class SwitchOverDetails(object): + """ + The information required to swap role between the primary and an existing replica database system. + """ + + def __init__(self, **kwargs): + """ + Initializes a new SwitchOverDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param replica_db_system_id: + The value to assign to the replica_db_system_id property of this SwitchOverDetails. + :type replica_db_system_id: str + + """ + self.swagger_types = { + 'replica_db_system_id': 'str' + } + self.attribute_map = { + 'replica_db_system_id': 'replicaDbSystemId' + } + self._replica_db_system_id = None + + @property + def replica_db_system_id(self): + """ + **[Required]** Gets the replica_db_system_id of this SwitchOverDetails. + The OCID of the replica database system that will get the primary role after switchover. + + + :return: The replica_db_system_id of this SwitchOverDetails. + :rtype: str + """ + return self._replica_db_system_id + + @replica_db_system_id.setter + def replica_db_system_id(self, replica_db_system_id): + """ + Sets the replica_db_system_id of this SwitchOverDetails. + The OCID of the replica database system that will get the primary role after switchover. + + + :param replica_db_system_id: The replica_db_system_id of this SwitchOverDetails. + :type: str + """ + self._replica_db_system_id = replica_db_system_id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/models/update_db_system_details.py b/src/oci/psql/models/update_db_system_details.py index 6d6a82851b..bacc2b169b 100644 --- a/src/oci/psql/models/update_db_system_details.py +++ b/src/oci/psql/models/update_db_system_details.py @@ -52,10 +52,22 @@ def __init__(self, **kwargs): The value to assign to the storage_details property of this UpdateDbSystemDetails. :type storage_details: oci.psql.models.UpdateStorageDetailsParams + :param replication_config: + The value to assign to the replication_config property of this UpdateDbSystemDetails. + :type replication_config: oci.psql.models.UpdateReplicationConfigDetails + :param network_details: The value to assign to the network_details property of this UpdateDbSystemDetails. :type network_details: oci.psql.models.UpdateNetworkDetails + :param kerberos_auth_details: + The value to assign to the kerberos_auth_details property of this UpdateDbSystemDetails. + :type kerberos_auth_details: oci.psql.models.KerberosAuthDetails + + :param odsp_insight_details: + The value to assign to the odsp_insight_details property of this UpdateDbSystemDetails. + :type odsp_insight_details: oci.psql.models.OdspInsightDetails + :param freeform_tags: The value to assign to the freeform_tags property of this UpdateDbSystemDetails. :type freeform_tags: dict(str, str) @@ -74,7 +86,10 @@ def __init__(self, **kwargs): 'db_configuration_params': 'UpdateDbConfigParams', 'management_policy': 'ManagementPolicyDetails', 'storage_details': 'UpdateStorageDetailsParams', + 'replication_config': 'UpdateReplicationConfigDetails', 'network_details': 'UpdateNetworkDetails', + 'kerberos_auth_details': 'KerberosAuthDetails', + 'odsp_insight_details': 'OdspInsightDetails', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))' } @@ -87,7 +102,10 @@ def __init__(self, **kwargs): 'db_configuration_params': 'dbConfigurationParams', 'management_policy': 'managementPolicy', 'storage_details': 'storageDetails', + 'replication_config': 'replicationConfig', 'network_details': 'networkDetails', + 'kerberos_auth_details': 'kerberosAuthDetails', + 'odsp_insight_details': 'odspInsightDetails', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags' } @@ -99,7 +117,10 @@ def __init__(self, **kwargs): self._db_configuration_params = None self._management_policy = None self._storage_details = None + self._replication_config = None self._network_details = None + self._kerberos_auth_details = None + self._odsp_insight_details = None self._freeform_tags = None self._defined_tags = None @@ -285,6 +306,26 @@ def storage_details(self, storage_details): """ self._storage_details = storage_details + @property + def replication_config(self): + """ + Gets the replication_config of this UpdateDbSystemDetails. + + :return: The replication_config of this UpdateDbSystemDetails. + :rtype: oci.psql.models.UpdateReplicationConfigDetails + """ + return self._replication_config + + @replication_config.setter + def replication_config(self, replication_config): + """ + Sets the replication_config of this UpdateDbSystemDetails. + + :param replication_config: The replication_config of this UpdateDbSystemDetails. + :type: oci.psql.models.UpdateReplicationConfigDetails + """ + self._replication_config = replication_config + @property def network_details(self): """ @@ -305,6 +346,46 @@ def network_details(self, network_details): """ self._network_details = network_details + @property + def kerberos_auth_details(self): + """ + Gets the kerberos_auth_details of this UpdateDbSystemDetails. + + :return: The kerberos_auth_details of this UpdateDbSystemDetails. + :rtype: oci.psql.models.KerberosAuthDetails + """ + return self._kerberos_auth_details + + @kerberos_auth_details.setter + def kerberos_auth_details(self, kerberos_auth_details): + """ + Sets the kerberos_auth_details of this UpdateDbSystemDetails. + + :param kerberos_auth_details: The kerberos_auth_details of this UpdateDbSystemDetails. + :type: oci.psql.models.KerberosAuthDetails + """ + self._kerberos_auth_details = kerberos_auth_details + + @property + def odsp_insight_details(self): + """ + Gets the odsp_insight_details of this UpdateDbSystemDetails. + + :return: The odsp_insight_details of this UpdateDbSystemDetails. + :rtype: oci.psql.models.OdspInsightDetails + """ + return self._odsp_insight_details + + @odsp_insight_details.setter + def odsp_insight_details(self, odsp_insight_details): + """ + Sets the odsp_insight_details of this UpdateDbSystemDetails. + + :param odsp_insight_details: The odsp_insight_details of this UpdateDbSystemDetails. + :type: oci.psql.models.OdspInsightDetails + """ + self._odsp_insight_details = odsp_insight_details + @property def freeform_tags(self): """ diff --git a/src/oci/psql/models/update_replication_config_details.py b/src/oci/psql/models/update_replication_config_details.py new file mode 100644 index 0000000000..4ab4d0bad9 --- /dev/null +++ b/src/oci/psql/models/update_replication_config_details.py @@ -0,0 +1,108 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class UpdateReplicationConfigDetails(object): + """ + Details of the replication configuration that is applicable when database system gets the + PRIMARY_DB_SYSTEM role. + + This configuration does not have any effect on database systems with other roles. + """ + + def __init__(self, **kwargs): + """ + Initializes a new UpdateReplicationConfigDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param is_rpo_enforced: + The value to assign to the is_rpo_enforced property of this UpdateReplicationConfigDetails. + :type is_rpo_enforced: bool + + :param rpo_in_seconds: + The value to assign to the rpo_in_seconds property of this UpdateReplicationConfigDetails. + :type rpo_in_seconds: int + + """ + self.swagger_types = { + 'is_rpo_enforced': 'bool', + 'rpo_in_seconds': 'int' + } + self.attribute_map = { + 'is_rpo_enforced': 'isRpoEnforced', + 'rpo_in_seconds': 'rpoInSeconds' + } + self._is_rpo_enforced = None + self._rpo_in_seconds = None + + @property + def is_rpo_enforced(self): + """ + Gets the is_rpo_enforced of this UpdateReplicationConfigDetails. + Specify if Recovery point objective (RPO) enforcement needs to be enabled on the database + system. + + + :return: The is_rpo_enforced of this UpdateReplicationConfigDetails. + :rtype: bool + """ + return self._is_rpo_enforced + + @is_rpo_enforced.setter + def is_rpo_enforced(self, is_rpo_enforced): + """ + Sets the is_rpo_enforced of this UpdateReplicationConfigDetails. + Specify if Recovery point objective (RPO) enforcement needs to be enabled on the database + system. + + + :param is_rpo_enforced: The is_rpo_enforced of this UpdateReplicationConfigDetails. + :type: bool + """ + self._is_rpo_enforced = is_rpo_enforced + + @property + def rpo_in_seconds(self): + """ + Gets the rpo_in_seconds of this UpdateReplicationConfigDetails. + Specifies the Recovery point objective (RPO) in seconds that will be enforced, if the + `isRpoEnforced` flag is true. + + + :return: The rpo_in_seconds of this UpdateReplicationConfigDetails. + :rtype: int + """ + return self._rpo_in_seconds + + @rpo_in_seconds.setter + def rpo_in_seconds(self, rpo_in_seconds): + """ + Sets the rpo_in_seconds of this UpdateReplicationConfigDetails. + Specifies the Recovery point objective (RPO) in seconds that will be enforced, if the + `isRpoEnforced` flag is true. + + + :param rpo_in_seconds: The rpo_in_seconds of this UpdateReplicationConfigDetails. + :type: int + """ + self._rpo_in_seconds = rpo_in_seconds + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/postgresql_client.py b/src/oci/psql/postgresql_client.py index 9ba76d959a..45517c7380 100644 --- a/src/oci/psql/postgresql_client.py +++ b/src/oci/psql/postgresql_client.py @@ -617,6 +617,252 @@ def change_db_system_compartment(self, db_system_id, change_db_system_compartmen api_reference_link=api_reference_link, required_arguments=required_arguments) + def change_role_to_replica(self, change_role_to_replica_details, db_system_id, **kwargs): + """ + Changes a standalone database system's role to warm-standby replica, converting it into a replica database system that replicates data from the specified primary database system. + + + :param oci.psql.models.ChangeRoleToReplicaDetails change_role_to_replica_details: (required) + Change a standalone database system's role to warm-standby replica parameters. + + :param str db_system_id: (required) + A unique identifier for the database system. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you provide matches the resource's current etag value. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, `retrytoken` could be expired or invalidated. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use change_role_to_replica API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['dbSystemId'] + resource_path = "/dbSystems/{dbSystemId}/actions/changeRoleToReplica" + method = "POST" + operation_name = "change_role_to_replica" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/postgresql/20220915/DbSystem/ChangeRoleToReplica" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id", + "opc_retry_token" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"change_role_to_replica got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "dbSystemId": db_system_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=change_role_to_replica_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=change_role_to_replica_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def change_role_to_standalone(self, change_role_to_standalone_details, db_system_id, **kwargs): + """ + Convert a replica database system into a standalone database system. + + + :param oci.psql.models.ChangeRoleToStandaloneDetails change_role_to_standalone_details: (required) + Change a replica database system's role to standalone parameters. + + :param str db_system_id: (required) + A unique identifier for the database system. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you provide matches the resource's current etag value. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, `retrytoken` could be expired or invalidated. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use change_role_to_standalone API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['dbSystemId'] + resource_path = "/dbSystems/{dbSystemId}/actions/changeRoleToStandalone" + method = "POST" + operation_name = "change_role_to_standalone" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/postgresql/20220915/DbSystem/ChangeRoleToStandalone" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id", + "opc_retry_token" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"change_role_to_standalone got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "dbSystemId": db_system_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=change_role_to_standalone_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=change_role_to_standalone_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + def create_backup(self, create_backup_details, **kwargs): """ Creates a new backup. @@ -2512,44 +2758,23 @@ def list_configurations(self, **kwargs): api_reference_link=api_reference_link, required_arguments=required_arguments) - def list_db_systems(self, **kwargs): + def list_db_system_replicas(self, db_system_id, **kwargs): """ - Returns a list of database systems. - - - :param str compartment_id: (optional) - The ID of the compartment in which to list resources. - - :param str lifecycle_state: (optional) - A filter to return only resources if their `lifecycleState` matches the given `lifecycleState`. - - Allowed values are: "CREATING", "UPDATING", "ACTIVE", "INACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION" + Returns a list of replica database systems. - :param str display_name: (optional) - A filter to return only resources that match the entire display name given. - :param str id: (optional) + :param str db_system_id: (required) A unique identifier for the database system. + :param str opc_request_id: (optional) + The client request ID for tracing. + :param int limit: (optional) The maximum number of items to return. :param str page: (optional) A token representing the position at which to start retrieving results. This must come from the `opc-next-page` header field of a previous response. - :param str sort_order: (optional) - The sort order to use, either 'ASC' or 'DESC'. - - Allowed values are: "ASC", "DESC" - - :param str sort_by: (optional) - The field to sort by. Only one sort order may be provided. Default order for timeCreated is descending. Default order for displayName is ascending. - - Allowed values are: "timeCreated", "displayName" - - :param str opc_request_id: (optional) - The client request ID for tracing. - :param obj retry_strategy: (optional) A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. @@ -2566,7 +2791,154 @@ def list_db_systems(self, **kwargs): enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. By default, strict url encoding for path params is disabled - :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.psql.models.DbSystemCollection` + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.psql.models.DbSystemReplicaCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_db_system_replicas API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['dbSystemId'] + resource_path = "/dbSystems/{dbSystemId}/replicas" + method = "GET" + operation_name = "list_db_system_replicas" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/postgresql/20220915/DbSystemReplicaCollection/ListDbSystemReplicas" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id", + "limit", + "page" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_db_system_replicas got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "dbSystemId": db_system_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + query_params = { + "limit": kwargs.get("limit", missing), + "page": kwargs.get("page", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="DbSystemReplicaCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="DbSystemReplicaCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_db_systems(self, **kwargs): + """ + Returns a list of database systems. + + + :param str compartment_id: (optional) + The ID of the compartment in which to list resources. + + :param str lifecycle_state: (optional) + A filter to return only resources if their `lifecycleState` matches the given `lifecycleState`. + + Allowed values are: "CREATING", "UPDATING", "ACTIVE", "INACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION" + + :param str display_name: (optional) + A filter to return only resources that match the entire display name given. + + :param str id: (optional) + A unique identifier for the database system. + + :param int limit: (optional) + The maximum number of items to return. + + :param str page: (optional) + A token representing the position at which to start retrieving results. This must come from the `opc-next-page` header field of a previous response. + + :param str sort_order: (optional) + The sort order to use, either 'ASC' or 'DESC'. + + Allowed values are: "ASC", "DESC" + + :param str sort_by: (optional) + The field to sort by. Only one sort order may be provided. Default order for timeCreated is descending. Default order for displayName is ascending. + + Allowed values are: "timeCreated", "displayName" + + :param str system_role: (optional) + A filter to return only DbSystem resources if their `systemRole` matches the given value. + + Allowed values are: "STANDALONE_DB_SYSTEM", "PRIMARY_DB_SYSTEM", "WARM_STANDBY_DB_SYSTEM", "PILOT_LIGHT_DB_SYSTEM" + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.psql.models.DbSystemCollection` :rtype: :class:`~oci.response.Response` :example: @@ -2592,6 +2964,7 @@ def list_db_systems(self, **kwargs): "page", "sort_order", "sort_by", + "system_role", "opc_request_id" ] extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] @@ -2620,6 +2993,13 @@ def list_db_systems(self, **kwargs): f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" ) + if 'system_role' in kwargs: + system_role_allowed_values = ["STANDALONE_DB_SYSTEM", "PRIMARY_DB_SYSTEM", "WARM_STANDBY_DB_SYSTEM", "PILOT_LIGHT_DB_SYSTEM"] + if kwargs['system_role'] not in system_role_allowed_values: + raise ValueError( + f"Invalid value for `system_role`, must be one of { system_role_allowed_values }" + ) + query_params = { "compartmentId": kwargs.get("compartment_id", missing), "lifecycleState": kwargs.get("lifecycle_state", missing), @@ -2628,7 +3008,8 @@ def list_db_systems(self, **kwargs): "limit": kwargs.get("limit", missing), "page": kwargs.get("page", missing), "sortOrder": kwargs.get("sort_order", missing), - "sortBy": kwargs.get("sort_by", missing) + "sortBy": kwargs.get("sort_by", missing), + "systemRole": kwargs.get("system_role", missing) } query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} @@ -2853,6 +3234,117 @@ def list_default_configurations(self, **kwargs): api_reference_link=api_reference_link, required_arguments=required_arguments) + def list_insight_capabilities(self, **kwargs): + """ + Returns the supported insight types and their capabilities. + This API allows clients to discover: + - Supported insight types + - Supported insight data types for each insight type + - Filters, sorting, pagination, limits, and data contracts + required to use the unified insights API. + + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param int limit: (optional) + The maximum number of items to return. + + :param str page: (optional) + A token representing the position at which to start retrieving results. This must come from the `opc-next-page` header field of a previous response. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.psql.models.InsightCapabilityCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_insight_capabilities API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = [] + resource_path = "/insightCapabilities" + method = "GET" + operation_name = "list_insight_capabilities" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/postgresql/20220915/InsightCapabilitySummary/ListInsightCapabilities" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id", + "limit", + "page" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_insight_capabilities got unknown kwargs: {extra_kwargs!r}") + + query_params = { + "limit": kwargs.get("limit", missing), + "page": kwargs.get("page", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="InsightCapabilityCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="InsightCapabilityCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + def list_shapes(self, **kwargs): """ Returns the list of shapes allowed in the region. @@ -3941,6 +4433,370 @@ def restore_db_system(self, db_system_id, restore_db_system_details, **kwargs): api_reference_link=api_reference_link, required_arguments=required_arguments) + def start_db_system(self, db_system_id, start_db_system_details, **kwargs): + """ + Start the DB System. + + + :param str db_system_id: (required) + A unique identifier for the database system. + + :param oci.psql.models.StartDbSystemDetails start_db_system_details: (required) + The information to be updated the DB System while starting DB System after stop. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you provide matches the resource's current etag value. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, `retrytoken` could be expired or invalidated. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use start_db_system API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['dbSystemId'] + resource_path = "/dbSystems/{dbSystemId}/actions/start" + method = "POST" + operation_name = "start_db_system" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/postgresql/20220915/DbSystem/StartDbSystem" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id", + "opc_retry_token" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"start_db_system got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "dbSystemId": db_system_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=start_db_system_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=start_db_system_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def stop_db_system(self, db_system_id, **kwargs): + """ + Stop the DB System. + + + :param str db_system_id: (required) + A unique identifier for the database system. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you provide matches the resource's current etag value. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, `retrytoken` could be expired or invalidated. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use stop_db_system API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['dbSystemId'] + resource_path = "/dbSystems/{dbSystemId}/actions/stop" + method = "POST" + operation_name = "stop_db_system" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/postgresql/20220915/DbSystem/StopDbSystem" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id", + "opc_retry_token" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"stop_db_system got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "dbSystemId": db_system_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def switch_over(self, switch_over_details, db_system_id, **kwargs): + """ + Switchover the roles between a primary database system and its replica, making the replica the new primary and the original primary become its replica. + + + :param oci.psql.models.SwitchOverDetails switch_over_details: (required) + Switchover the primary and replica role parameters. + + :param str db_system_id: (required) + A unique identifier for the database system. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you provide matches the resource's current etag value. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, `retrytoken` could be expired or invalidated. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use switch_over API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['dbSystemId'] + resource_path = "/dbSystems/{dbSystemId}/actions/switchover" + method = "POST" + operation_name = "switch_over" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/postgresql/20220915/DbSystem/SwitchOver" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id", + "opc_retry_token" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"switch_over got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "dbSystemId": db_system_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=switch_over_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=switch_over_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + def update_backup(self, backup_id, update_backup_details, **kwargs): """ Updates the backup. diff --git a/src/oci/psql/postgresql_client_composite_operations.py b/src/oci/psql/postgresql_client_composite_operations.py index d82991d477..111e3584ad 100644 --- a/src/oci/psql/postgresql_client_composite_operations.py +++ b/src/oci/psql/postgresql_client_composite_operations.py @@ -151,6 +151,90 @@ def change_db_system_compartment_and_wait_for_state(self, db_system_id, change_d except Exception as e: raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def change_role_to_replica_and_wait_for_state(self, change_role_to_replica_details, db_system_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.psql.PostgresqlClient.change_role_to_replica` and waits for the :py:class:`~oci.psql.models.WorkRequest` + to enter the given state(s). + + :param oci.psql.models.ChangeRoleToReplicaDetails change_role_to_replica_details: (required) + Change a standalone database system's role to warm-standby replica parameters. + + :param str db_system_id: (required) + A unique identifier for the database system. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.psql.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.psql.PostgresqlClient.change_role_to_replica` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.change_role_to_replica(change_role_to_replica_details, db_system_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def change_role_to_standalone_and_wait_for_state(self, change_role_to_standalone_details, db_system_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.psql.PostgresqlClient.change_role_to_standalone` and waits for the :py:class:`~oci.psql.models.WorkRequest` + to enter the given state(s). + + :param oci.psql.models.ChangeRoleToStandaloneDetails change_role_to_standalone_details: (required) + Change a replica database system's role to standalone parameters. + + :param str db_system_id: (required) + A unique identifier for the database system. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.psql.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.psql.PostgresqlClient.change_role_to_standalone` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.change_role_to_standalone(change_role_to_standalone_details, db_system_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def create_backup_and_wait_for_state(self, create_backup_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): """ Calls :py:func:`~oci.psql.PostgresqlClient.create_backup` and waits for the :py:class:`~oci.psql.models.WorkRequest` @@ -634,6 +718,129 @@ def restore_db_system_and_wait_for_state(self, db_system_id, restore_db_system_d except Exception as e: raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def start_db_system_and_wait_for_state(self, db_system_id, start_db_system_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.psql.PostgresqlClient.start_db_system` and waits for the :py:class:`~oci.psql.models.WorkRequest` + to enter the given state(s). + + :param str db_system_id: (required) + A unique identifier for the database system. + + :param oci.psql.models.StartDbSystemDetails start_db_system_details: (required) + The information to be updated the DB System while starting DB System after stop. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.psql.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.psql.PostgresqlClient.start_db_system` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.start_db_system(db_system_id, start_db_system_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def stop_db_system_and_wait_for_state(self, db_system_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.psql.PostgresqlClient.stop_db_system` and waits for the :py:class:`~oci.psql.models.WorkRequest` + to enter the given state(s). + + :param str db_system_id: (required) + A unique identifier for the database system. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.psql.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.psql.PostgresqlClient.stop_db_system` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.stop_db_system(db_system_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def switch_over_and_wait_for_state(self, switch_over_details, db_system_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.psql.PostgresqlClient.switch_over` and waits for the :py:class:`~oci.psql.models.WorkRequest` + to enter the given state(s). + + :param oci.psql.models.SwitchOverDetails switch_over_details: (required) + Switchover the primary and replica role parameters. + + :param str db_system_id: (required) + A unique identifier for the database system. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.psql.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.psql.PostgresqlClient.switch_over` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.switch_over(switch_over_details, db_system_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def update_backup_and_wait_for_state(self, backup_id, update_backup_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): """ Calls :py:func:`~oci.psql.PostgresqlClient.update_backup` and waits for the :py:class:`~oci.psql.models.Backup` acted upon diff --git a/src/oci/tenant_manager_control_plane/__init__.py b/src/oci/tenant_manager_control_plane/__init__.py index 6d878e3a3e..d568e5f73f 100644 --- a/src/oci/tenant_manager_control_plane/__init__.py +++ b/src/oci/tenant_manager_control_plane/__init__.py @@ -15,6 +15,8 @@ from .governance_client_composite_operations import GovernanceClientCompositeOperations from .link_client import LinkClient from .link_client_composite_operations import LinkClientCompositeOperations +from .link_features_client import LinkFeaturesClient +from .link_features_client_composite_operations import LinkFeaturesClientCompositeOperations from .orders_client import OrdersClient from .orders_client_composite_operations import OrdersClientCompositeOperations from .organization_client import OrganizationClient @@ -29,4 +31,4 @@ from .work_request_client_composite_operations import WorkRequestClientCompositeOperations from . import models -__all__ = ["DomainClient", "DomainClientCompositeOperations", "DomainGovernanceClient", "DomainGovernanceClientCompositeOperations", "GovernanceClient", "GovernanceClientCompositeOperations", "LinkClient", "LinkClientCompositeOperations", "OrdersClient", "OrdersClientCompositeOperations", "OrganizationClient", "OrganizationClientCompositeOperations", "RecipientInvitationClient", "RecipientInvitationClientCompositeOperations", "SenderInvitationClient", "SenderInvitationClientCompositeOperations", "SubscriptionClient", "SubscriptionClientCompositeOperations", "WorkRequestClient", "WorkRequestClientCompositeOperations", "models"] +__all__ = ["DomainClient", "DomainClientCompositeOperations", "DomainGovernanceClient", "DomainGovernanceClientCompositeOperations", "GovernanceClient", "GovernanceClientCompositeOperations", "LinkClient", "LinkClientCompositeOperations", "LinkFeaturesClient", "LinkFeaturesClientCompositeOperations", "OrdersClient", "OrdersClientCompositeOperations", "OrganizationClient", "OrganizationClientCompositeOperations", "RecipientInvitationClient", "RecipientInvitationClientCompositeOperations", "SenderInvitationClient", "SenderInvitationClientCompositeOperations", "SubscriptionClient", "SubscriptionClientCompositeOperations", "WorkRequestClient", "WorkRequestClientCompositeOperations", "models"] diff --git a/src/oci/tenant_manager_control_plane/link_client.py b/src/oci/tenant_manager_control_plane/link_client.py index 2cd7e62dc7..dd936cccf5 100644 --- a/src/oci/tenant_manager_control_plane/link_client.py +++ b/src/oci/tenant_manager_control_plane/link_client.py @@ -337,6 +337,111 @@ def get_link(self, link_id, **kwargs): api_reference_link=api_reference_link, required_arguments=required_arguments) + def get_link_with_tenancy_names(self, link_id, **kwargs): + """ + Gets information about the link along with the parent and child tenancy names. + + + :param str link_id: (required) + OCID of the link to retrieve. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.tenant_manager_control_plane.models.LinkWithTenancyNames` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_link_with_tenancy_names API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['linkId'] + resource_path = "/links/{linkId}/tenancyNames" + method = "GET" + operation_name = "get_link_with_tenancy_names" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/organizations/20230401/LinkWithTenancyNames/GetLinkWithTenancyNames" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"get_link_with_tenancy_names got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "linkId": link_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="LinkWithTenancyNames", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="LinkWithTenancyNames", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + def list_links(self, **kwargs): """ Return a (paginated) list of links. @@ -348,6 +453,9 @@ def list_links(self, **kwargs): :param str child_tenancy_id: (optional) The ID of the child tenancy this link is associated with. + :param str feature: (optional) + The feature associated with this link. + :param str lifecycle_state: (optional) The lifecycle state of the resource. @@ -403,6 +511,7 @@ def list_links(self, **kwargs): "retry_strategy", "parent_tenancy_id", "child_tenancy_id", + "feature", "lifecycle_state", "opc_request_id", "page", @@ -431,6 +540,7 @@ def list_links(self, **kwargs): query_params = { "parentTenancyId": kwargs.get("parent_tenancy_id", missing), "childTenancyId": kwargs.get("child_tenancy_id", missing), + "feature": kwargs.get("feature", missing), "lifecycleState": kwargs.get("lifecycle_state", missing), "page": kwargs.get("page", missing), "limit": kwargs.get("limit", missing), diff --git a/src/oci/tenant_manager_control_plane/link_features_client.py b/src/oci/tenant_manager_control_plane/link_features_client.py new file mode 100644 index 0000000000..e7f8053cfb --- /dev/null +++ b/src/oci/tenant_manager_control_plane/link_features_client.py @@ -0,0 +1,225 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230401 + +from __future__ import absolute_import + +from oci._vendor import requests # noqa: F401 +from oci._vendor import six + +from oci import retry, circuit_breaker # noqa: F401 +from oci.base_client import BaseClient +from oci.config import get_config_value_or_default, validate_config +from oci.signer import Signer +from oci.util import Sentinel, get_signer_from_authentication_type, AUTHENTICATION_TYPE_FIELD_NAME +from oci.exceptions import InvalidDeveloperToolConfiguration +from oci.developer_tool_configuration import OCI_SDK_ENABLED_SERVICES_SET +from .models import tenant_manager_control_plane_type_mapping +missing = Sentinel("Missing") + + +class LinkFeaturesClient(object): + """ + Use the Organizations API to consolidate multiple OCI tenancies into an organization, and centrally manage your tenancies and organization resources. For more information, see [Organization Management Overview](/iaas/Content/General/Concepts/organization_management_overview.htm). + """ + + def __init__(self, config, **kwargs): + """ + Creates a new service client + + :param dict config: + Configuration keys and values as per `SDK and Tool Configuration `__. + The :py:meth:`~oci.config.from_file` method can be used to load configuration from a file. Alternatively, a ``dict`` can be passed. You can validate_config + the dict using :py:meth:`~oci.config.validate_config` + + :param str service_endpoint: (optional) + The endpoint of the service to call using this client. For example ``https://iaas.us-ashburn-1.oraclecloud.com``. If this keyword argument is + not provided then it will be derived using the region in the config parameter. You should only provide this keyword argument if you have an explicit + need to specify a service endpoint. + + :param timeout: (optional) + The connection and read timeouts for the client. The default values are connection timeout 10 seconds and read timeout 60 seconds. This keyword argument can be provided + as a single float, in which case the value provided is used for both the read and connection timeouts, or as a tuple of two floats. If + a tuple is provided then the first value is used as the connection timeout and the second value as the read timeout. + :type timeout: float or tuple(float, float) + + :param signer: (optional) + The signer to use when signing requests made by the service client. The default is to use a :py:class:`~oci.signer.Signer` based on the values + provided in the config parameter. + + One use case for this parameter is for `Instance Principals authentication `__ + by passing an instance of :py:class:`~oci.auth.signers.InstancePrincipalsSecurityTokenSigner` as the value for this keyword argument + :type signer: :py:class:`~oci.signer.AbstractBaseSigner` + + :param obj retry_strategy: (optional) + A retry strategy to apply to all calls made by this service client (i.e. at the client level). There is no retry strategy applied by default. + Retry strategies can also be applied at the operation level by passing a ``retry_strategy`` keyword argument as part of calling the operation. + Any value provided at the operation level will override whatever is specified at the client level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` + is also available. The specifics of the default retry strategy are described `here `__. + + :param obj circuit_breaker_strategy: (optional) + A circuit breaker strategy to apply to all calls made by this service client (i.e. at the client level). + This client uses :py:data:`~oci.circuit_breaker.DEFAULT_CIRCUIT_BREAKER_STRATEGY` as default if no circuit breaker strategy is provided. + The specifics of circuit breaker strategy are described `here `__. + + :param function circuit_breaker_callback: (optional) + Callback function to receive any exceptions triggerred by the circuit breaker. + + :param bool client_level_realm_specific_endpoint_template_enabled: (optional) + A boolean flag to indicate whether or not this client should be created with realm specific endpoint template enabled or disable. By default, this will be set as None. + + :param allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this client should allow control characters in the response object. By default, the client will not + allow control characters to be in the response object. + + :param enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this client should enable strict url encoding in path params of a request. + By default, the client will not enable strict url encoding + """ + if not OCI_SDK_ENABLED_SERVICES_SET.is_service_enabled("tenant_manager_control_plane"): + raise InvalidDeveloperToolConfiguration("The Developer Tool Configuration has disabled this service, this behavior is controlled by OCI_SDK_ENABLED_SERVICES_SET variable. Please check if your local developer-tool-configuration file configured the service you're targeting or contact the cloud provider on the availability of this service") + + validate_config(config, signer=kwargs.get('signer')) + if 'signer' in kwargs: + signer = kwargs['signer'] + + elif AUTHENTICATION_TYPE_FIELD_NAME in config: + signer = get_signer_from_authentication_type(config) + + else: + signer = Signer( + tenancy=config["tenancy"], + user=config["user"], + fingerprint=config["fingerprint"], + private_key_file_location=config.get("key_file"), + pass_phrase=get_config_value_or_default(config, "pass_phrase"), + private_key_content=config.get("key_content") + ) + + base_client_init_kwargs = { + 'regional_client': True, + 'service_endpoint': kwargs.get('service_endpoint'), + 'base_path': '/20230401', + 'service_endpoint_template': 'https://organizations.{region}.oci.{secondLevelDomain}', + 'service_endpoint_template_per_realm': { }, # noqa: E201 E202 + 'service_uses_dualstack_endpoints_by_default': False, + 'skip_deserialization': kwargs.get('skip_deserialization', False), + 'circuit_breaker_strategy': kwargs.get('circuit_breaker_strategy', circuit_breaker.GLOBAL_CIRCUIT_BREAKER_STRATEGY), + 'client_level_realm_specific_endpoint_template_enabled': kwargs.get('client_level_realm_specific_endpoint_template_enabled'), + 'client_level_dualstack_endpoints_enabled': kwargs.get('client_level_dualstack_endpoints_enabled') + } + if 'timeout' in kwargs: + base_client_init_kwargs['timeout'] = kwargs.get('timeout') + if base_client_init_kwargs.get('circuit_breaker_strategy') is None: + base_client_init_kwargs['circuit_breaker_strategy'] = circuit_breaker.DEFAULT_CIRCUIT_BREAKER_STRATEGY + if 'allow_control_chars' in kwargs: + base_client_init_kwargs['allow_control_chars'] = kwargs.get('allow_control_chars') + if 'enable_strict_url_encoding' in kwargs: + base_client_init_kwargs['enable_strict_url_encoding'] = kwargs.get('enable_strict_url_encoding') + self.base_client = BaseClient("link_features", config, signer, tenant_manager_control_plane_type_mapping, **base_client_init_kwargs) + self.retry_strategy = kwargs.get('retry_strategy') + self.circuit_breaker_callback = kwargs.get('circuit_breaker_callback') + + def list_link_features(self, compartment_id, **kwargs): + """ + Return a list of link features. + + + :param str compartment_id: (required) + The ID of the compartment in which to list resources. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.tenant_manager_control_plane.models.LinkFeaturesCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_link_features API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['compartmentId'] + resource_path = "/linkFeatures" + method = "GET" + operation_name = "list_link_features" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/organizations/20230401/LinkFeaturesCollection/ListLinkFeatures" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_link_features got unknown kwargs: {extra_kwargs!r}") + + query_params = { + "compartmentId": compartment_id + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="LinkFeaturesCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="LinkFeaturesCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) diff --git a/src/oci/tenant_manager_control_plane/link_features_client_composite_operations.py b/src/oci/tenant_manager_control_plane/link_features_client_composite_operations.py new file mode 100644 index 0000000000..687250499b --- /dev/null +++ b/src/oci/tenant_manager_control_plane/link_features_client_composite_operations.py @@ -0,0 +1,26 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230401 + +import oci # noqa: F401 +from oci.util import WAIT_RESOURCE_NOT_FOUND # noqa: F401 + + +class LinkFeaturesClientCompositeOperations(object): + """ + This class provides a wrapper around :py:class:`~oci.tenant_manager_control_plane.LinkFeaturesClient` and offers convenience methods + for operations that would otherwise need to be chained together. For example, instead of performing an action + on a resource (e.g. launching an instance, creating a load balancer) and then using a waiter to wait for the resource + to enter a given state, you can call a single method in this class to accomplish the same functionality + """ + + def __init__(self, client, **kwargs): + """ + Creates a new LinkFeaturesClientCompositeOperations object + + :param LinkFeaturesClient client: + The service client which will be wrapped by this object + """ + self.client = client diff --git a/src/oci/tenant_manager_control_plane/models/__init__.py b/src/oci/tenant_manager_control_plane/models/__init__.py index 76a5c361e1..2aef50aefb 100644 --- a/src/oci/tenant_manager_control_plane/models/__init__.py +++ b/src/oci/tenant_manager_control_plane/models/__init__.py @@ -34,9 +34,13 @@ from .domain_governance_collection import DomainGovernanceCollection from .domain_governance_summary import DomainGovernanceSummary from .domain_summary import DomainSummary +from .invitation_feature import InvitationFeature from .link import Link from .link_collection import LinkCollection +from .link_feature_summary import LinkFeatureSummary +from .link_features_collection import LinkFeaturesCollection from .link_summary import LinkSummary +from .link_with_tenancy_names import LinkWithTenancyNames from .order import Order from .organization import Organization from .organization_collection import OrganizationCollection @@ -48,7 +52,6 @@ from .recipient_invitation import RecipientInvitation from .recipient_invitation_collection import RecipientInvitationCollection from .recipient_invitation_summary import RecipientInvitationSummary -from .revive_workflow_instance_details import ReviveWorkflowInstanceDetails from .sender_invitation import SenderInvitation from .sender_invitation_collection import SenderInvitationCollection from .sender_invitation_summary import SenderInvitationSummary @@ -107,9 +110,13 @@ "DomainGovernanceCollection": DomainGovernanceCollection, "DomainGovernanceSummary": DomainGovernanceSummary, "DomainSummary": DomainSummary, + "InvitationFeature": InvitationFeature, "Link": Link, "LinkCollection": LinkCollection, + "LinkFeatureSummary": LinkFeatureSummary, + "LinkFeaturesCollection": LinkFeaturesCollection, "LinkSummary": LinkSummary, + "LinkWithTenancyNames": LinkWithTenancyNames, "Order": Order, "Organization": Organization, "OrganizationCollection": OrganizationCollection, @@ -121,7 +128,6 @@ "RecipientInvitation": RecipientInvitation, "RecipientInvitationCollection": RecipientInvitationCollection, "RecipientInvitationSummary": RecipientInvitationSummary, - "ReviveWorkflowInstanceDetails": ReviveWorkflowInstanceDetails, "SenderInvitation": SenderInvitation, "SenderInvitationCollection": SenderInvitationCollection, "SenderInvitationSummary": SenderInvitationSummary, diff --git a/src/oci/tenant_manager_control_plane/models/create_child_tenancy_details.py b/src/oci/tenant_manager_control_plane/models/create_child_tenancy_details.py index 3e4a9742de..83ae7a75a3 100644 --- a/src/oci/tenant_manager_control_plane/models/create_child_tenancy_details.py +++ b/src/oci/tenant_manager_control_plane/models/create_child_tenancy_details.py @@ -57,6 +57,10 @@ def __init__(self, **kwargs): The value to assign to the subscription_id property of this CreateChildTenancyDetails. :type subscription_id: str + :param features: + The value to assign to the features property of this CreateChildTenancyDetails. + :type features: list[str] + """ self.swagger_types = { 'compartment_id': 'str', @@ -65,7 +69,8 @@ def __init__(self, **kwargs): 'admin_email': 'str', 'policy_name': 'str', 'governance_status': 'str', - 'subscription_id': 'str' + 'subscription_id': 'str', + 'features': 'list[str]' } self.attribute_map = { 'compartment_id': 'compartmentId', @@ -74,7 +79,8 @@ def __init__(self, **kwargs): 'admin_email': 'adminEmail', 'policy_name': 'policyName', 'governance_status': 'governanceStatus', - 'subscription_id': 'subscriptionId' + 'subscription_id': 'subscriptionId', + 'features': 'features' } self._compartment_id = None self._tenancy_name = None @@ -83,6 +89,7 @@ def __init__(self, **kwargs): self._policy_name = None self._governance_status = None self._subscription_id = None + self._features = None @property def compartment_id(self): @@ -259,6 +266,30 @@ def subscription_id(self, subscription_id): """ self._subscription_id = subscription_id + @property + def features(self): + """ + Gets the features of this CreateChildTenancyDetails. + List of features that the child and parent tenancies will have links for. Link with feature CORE will always be created. + + + :return: The features of this CreateChildTenancyDetails. + :rtype: list[str] + """ + return self._features + + @features.setter + def features(self, features): + """ + Sets the features of this CreateChildTenancyDetails. + List of features that the child and parent tenancies will have links for. Link with feature CORE will always be created. + + + :param features: The features of this CreateChildTenancyDetails. + :type: list[str] + """ + self._features = features + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/tenant_manager_control_plane/models/create_sender_invitation_details.py b/src/oci/tenant_manager_control_plane/models/create_sender_invitation_details.py index 9f1599a6a4..e9e646eccb 100644 --- a/src/oci/tenant_manager_control_plane/models/create_sender_invitation_details.py +++ b/src/oci/tenant_manager_control_plane/models/create_sender_invitation_details.py @@ -40,6 +40,10 @@ def __init__(self, **kwargs): The value to assign to the subjects property of this CreateSenderInvitationDetails. :type subjects: list[oci.tenant_manager_control_plane.models.InvitationSubject] + :param features: + The value to assign to the features property of this CreateSenderInvitationDetails. + :type features: list[str] + :param freeform_tags: The value to assign to the freeform_tags property of this CreateSenderInvitationDetails. :type freeform_tags: dict(str, str) @@ -55,6 +59,7 @@ def __init__(self, **kwargs): 'recipient_email_address': 'str', 'display_name': 'str', 'subjects': 'list[InvitationSubject]', + 'features': 'list[str]', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))' } @@ -64,6 +69,7 @@ def __init__(self, **kwargs): 'recipient_email_address': 'recipientEmailAddress', 'display_name': 'displayName', 'subjects': 'subjects', + 'features': 'features', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags' } @@ -72,6 +78,7 @@ def __init__(self, **kwargs): self._recipient_email_address = None self._display_name = None self._subjects = None + self._features = None self._freeform_tags = None self._defined_tags = None @@ -195,6 +202,30 @@ def subjects(self, subjects): """ self._subjects = subjects + @property + def features(self): + """ + Gets the features of this CreateSenderInvitationDetails. + List of features that the invitation is being sent for. Each feature would create one link, of that type. + + + :return: The features of this CreateSenderInvitationDetails. + :rtype: list[str] + """ + return self._features + + @features.setter + def features(self, features): + """ + Sets the features of this CreateSenderInvitationDetails. + List of features that the invitation is being sent for. Each feature would create one link, of that type. + + + :param features: The features of this CreateSenderInvitationDetails. + :type: list[str] + """ + self._features = features + @property def freeform_tags(self): """ diff --git a/src/oci/tenant_manager_control_plane/models/domain.py b/src/oci/tenant_manager_control_plane/models/domain.py index 342eb9faf7..00d56a51f2 100644 --- a/src/oci/tenant_manager_control_plane/models/domain.py +++ b/src/oci/tenant_manager_control_plane/models/domain.py @@ -76,6 +76,10 @@ def __init__(self, **kwargs): The value to assign to the owner_id property of this Domain. :type owner_id: str + :param compartment_id: + The value to assign to the compartment_id property of this Domain. + :type compartment_id: str + :param lifecycle_state: The value to assign to the lifecycle_state property of this Domain. Allowed values for this property are: "ACTIVE", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. @@ -117,6 +121,7 @@ def __init__(self, **kwargs): 'id': 'str', 'domain_name': 'str', 'owner_id': 'str', + 'compartment_id': 'str', 'lifecycle_state': 'str', 'status': 'str', 'txt_record': 'str', @@ -130,6 +135,7 @@ def __init__(self, **kwargs): 'id': 'id', 'domain_name': 'domainName', 'owner_id': 'ownerId', + 'compartment_id': 'compartmentId', 'lifecycle_state': 'lifecycleState', 'status': 'status', 'txt_record': 'txtRecord', @@ -142,6 +148,7 @@ def __init__(self, **kwargs): self._id = None self._domain_name = None self._owner_id = None + self._compartment_id = None self._lifecycle_state = None self._status = None self._txt_record = None @@ -223,6 +230,30 @@ def owner_id(self, owner_id): """ self._owner_id = owner_id + @property + def compartment_id(self): + """ + Gets the compartment_id of this Domain. + The OCID of the tenancy that has started the registration process for this domain. + + + :return: The compartment_id of this Domain. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this Domain. + The OCID of the tenancy that has started the registration process for this domain. + + + :param compartment_id: The compartment_id of this Domain. + :type: str + """ + self._compartment_id = compartment_id + @property def lifecycle_state(self): """ diff --git a/src/oci/tenant_manager_control_plane/models/domain_governance.py b/src/oci/tenant_manager_control_plane/models/domain_governance.py index e5aff60ae7..018f494318 100644 --- a/src/oci/tenant_manager_control_plane/models/domain_governance.py +++ b/src/oci/tenant_manager_control_plane/models/domain_governance.py @@ -36,6 +36,10 @@ def __init__(self, **kwargs): The value to assign to the owner_id property of this DomainGovernance. :type owner_id: str + :param compartment_id: + The value to assign to the compartment_id property of this DomainGovernance. + :type compartment_id: str + :param domain_id: The value to assign to the domain_id property of this DomainGovernance. :type domain_id: str @@ -86,6 +90,7 @@ def __init__(self, **kwargs): self.swagger_types = { 'id': 'str', 'owner_id': 'str', + 'compartment_id': 'str', 'domain_id': 'str', 'lifecycle_state': 'str', 'is_governance_enabled': 'bool', @@ -101,6 +106,7 @@ def __init__(self, **kwargs): self.attribute_map = { 'id': 'id', 'owner_id': 'ownerId', + 'compartment_id': 'compartmentId', 'domain_id': 'domainId', 'lifecycle_state': 'lifecycleState', 'is_governance_enabled': 'isGovernanceEnabled', @@ -115,6 +121,7 @@ def __init__(self, **kwargs): } self._id = None self._owner_id = None + self._compartment_id = None self._domain_id = None self._lifecycle_state = None self._is_governance_enabled = None @@ -175,6 +182,30 @@ def owner_id(self, owner_id): """ self._owner_id = owner_id + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this DomainGovernance. + The OCID of the tenancy that owns this domain governance entity. + + + :return: The compartment_id of this DomainGovernance. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this DomainGovernance. + The OCID of the tenancy that owns this domain governance entity. + + + :param compartment_id: The compartment_id of this DomainGovernance. + :type: str + """ + self._compartment_id = compartment_id + @property def domain_id(self): """ diff --git a/src/oci/tenant_manager_control_plane/models/domain_governance_summary.py b/src/oci/tenant_manager_control_plane/models/domain_governance_summary.py index 76b066e966..4f104c2d40 100644 --- a/src/oci/tenant_manager_control_plane/models/domain_governance_summary.py +++ b/src/oci/tenant_manager_control_plane/models/domain_governance_summary.py @@ -28,6 +28,10 @@ def __init__(self, **kwargs): The value to assign to the owner_id property of this DomainGovernanceSummary. :type owner_id: str + :param compartment_id: + The value to assign to the compartment_id property of this DomainGovernanceSummary. + :type compartment_id: str + :param domain_id: The value to assign to the domain_id property of this DomainGovernanceSummary. :type domain_id: str @@ -76,6 +80,7 @@ def __init__(self, **kwargs): self.swagger_types = { 'id': 'str', 'owner_id': 'str', + 'compartment_id': 'str', 'domain_id': 'str', 'lifecycle_state': 'str', 'is_governance_enabled': 'bool', @@ -91,6 +96,7 @@ def __init__(self, **kwargs): self.attribute_map = { 'id': 'id', 'owner_id': 'ownerId', + 'compartment_id': 'compartmentId', 'domain_id': 'domainId', 'lifecycle_state': 'lifecycleState', 'is_governance_enabled': 'isGovernanceEnabled', @@ -105,6 +111,7 @@ def __init__(self, **kwargs): } self._id = None self._owner_id = None + self._compartment_id = None self._domain_id = None self._lifecycle_state = None self._is_governance_enabled = None @@ -165,6 +172,30 @@ def owner_id(self, owner_id): """ self._owner_id = owner_id + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this DomainGovernanceSummary. + The OCID of the tenancy that has started the registration process for this domain. + + + :return: The compartment_id of this DomainGovernanceSummary. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this DomainGovernanceSummary. + The OCID of the tenancy that has started the registration process for this domain. + + + :param compartment_id: The compartment_id of this DomainGovernanceSummary. + :type: str + """ + self._compartment_id = compartment_id + @property def domain_id(self): """ diff --git a/src/oci/tenant_manager_control_plane/models/domain_summary.py b/src/oci/tenant_manager_control_plane/models/domain_summary.py index ee445ad903..2ebb925e80 100644 --- a/src/oci/tenant_manager_control_plane/models/domain_summary.py +++ b/src/oci/tenant_manager_control_plane/models/domain_summary.py @@ -32,6 +32,10 @@ def __init__(self, **kwargs): The value to assign to the owner_id property of this DomainSummary. :type owner_id: str + :param compartment_id: + The value to assign to the compartment_id property of this DomainSummary. + :type compartment_id: str + :param lifecycle_state: The value to assign to the lifecycle_state property of this DomainSummary. :type lifecycle_state: str @@ -69,6 +73,7 @@ def __init__(self, **kwargs): 'id': 'str', 'domain_name': 'str', 'owner_id': 'str', + 'compartment_id': 'str', 'lifecycle_state': 'str', 'status': 'str', 'txt_record': 'str', @@ -82,6 +87,7 @@ def __init__(self, **kwargs): 'id': 'id', 'domain_name': 'domainName', 'owner_id': 'ownerId', + 'compartment_id': 'compartmentId', 'lifecycle_state': 'lifecycleState', 'status': 'status', 'txt_record': 'txtRecord', @@ -94,6 +100,7 @@ def __init__(self, **kwargs): self._id = None self._domain_name = None self._owner_id = None + self._compartment_id = None self._lifecycle_state = None self._status = None self._txt_record = None @@ -175,6 +182,30 @@ def owner_id(self, owner_id): """ self._owner_id = owner_id + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this DomainSummary. + The OCID of the tenancy that has started the registration process for this domain. + + + :return: The compartment_id of this DomainSummary. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this DomainSummary. + The OCID of the tenancy that has started the registration process for this domain. + + + :param compartment_id: The compartment_id of this DomainSummary. + :type: str + """ + self._compartment_id = compartment_id + @property def lifecycle_state(self): """ diff --git a/src/oci/tenant_manager_control_plane/models/invitation_feature.py b/src/oci/tenant_manager_control_plane/models/invitation_feature.py new file mode 100644 index 0000000000..93eebc7d03 --- /dev/null +++ b/src/oci/tenant_manager_control_plane/models/invitation_feature.py @@ -0,0 +1,164 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230401 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class InvitationFeature(object): + """ + The feature model for sender invitation. + """ + + #: A constant which can be used with the status property of a InvitationFeature. + #: This constant has a value of "PENDING" + STATUS_PENDING = "PENDING" + + #: A constant which can be used with the status property of a InvitationFeature. + #: This constant has a value of "CANCELED" + STATUS_CANCELED = "CANCELED" + + #: A constant which can be used with the status property of a InvitationFeature. + #: This constant has a value of "ACCEPTED" + STATUS_ACCEPTED = "ACCEPTED" + + #: A constant which can be used with the status property of a InvitationFeature. + #: This constant has a value of "EXPIRED" + STATUS_EXPIRED = "EXPIRED" + + #: A constant which can be used with the status property of a InvitationFeature. + #: This constant has a value of "FAILED" + STATUS_FAILED = "FAILED" + + #: A constant which can be used with the status property of a InvitationFeature. + #: This constant has a value of "NOT_APPLICABLE" + STATUS_NOT_APPLICABLE = "NOT_APPLICABLE" + + def __init__(self, **kwargs): + """ + Initializes a new InvitationFeature object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this InvitationFeature. + :type name: str + + :param recipient_invitation_id: + The value to assign to the recipient_invitation_id property of this InvitationFeature. + :type recipient_invitation_id: str + + :param status: + The value to assign to the status property of this InvitationFeature. + Allowed values for this property are: "PENDING", "CANCELED", "ACCEPTED", "EXPIRED", "FAILED", "NOT_APPLICABLE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type status: str + + """ + self.swagger_types = { + 'name': 'str', + 'recipient_invitation_id': 'str', + 'status': 'str' + } + self.attribute_map = { + 'name': 'name', + 'recipient_invitation_id': 'recipientInvitationId', + 'status': 'status' + } + self._name = None + self._recipient_invitation_id = None + self._status = None + + @property + def name(self): + """ + Gets the name of this InvitationFeature. + Name of the feature. + + + :return: The name of this InvitationFeature. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this InvitationFeature. + Name of the feature. + + + :param name: The name of this InvitationFeature. + :type: str + """ + self._name = name + + @property + def recipient_invitation_id(self): + """ + Gets the recipient_invitation_id of this InvitationFeature. + recipientInvitationId for this feature. + + + :return: The recipient_invitation_id of this InvitationFeature. + :rtype: str + """ + return self._recipient_invitation_id + + @recipient_invitation_id.setter + def recipient_invitation_id(self, recipient_invitation_id): + """ + Sets the recipient_invitation_id of this InvitationFeature. + recipientInvitationId for this feature. + + + :param recipient_invitation_id: The recipient_invitation_id of this InvitationFeature. + :type: str + """ + self._recipient_invitation_id = recipient_invitation_id + + @property + def status(self): + """ + Gets the status of this InvitationFeature. + Status of the sender invitation. + + Allowed values for this property are: "PENDING", "CANCELED", "ACCEPTED", "EXPIRED", "FAILED", "NOT_APPLICABLE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The status of this InvitationFeature. + :rtype: str + """ + return self._status + + @status.setter + def status(self, status): + """ + Sets the status of this InvitationFeature. + Status of the sender invitation. + + + :param status: The status of this InvitationFeature. + :type: str + """ + allowed_values = ["PENDING", "CANCELED", "ACCEPTED", "EXPIRED", "FAILED", "NOT_APPLICABLE"] + if not value_allowed_none_or_none_sentinel(status, allowed_values): + status = 'UNKNOWN_ENUM_VALUE' + self._status = status + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/tenant_manager_control_plane/models/link.py b/src/oci/tenant_manager_control_plane/models/link.py index 57fb852190..d0f0be570f 100644 --- a/src/oci/tenant_manager_control_plane/models/link.py +++ b/src/oci/tenant_manager_control_plane/models/link.py @@ -74,6 +74,10 @@ def __init__(self, **kwargs): The value to assign to the time_terminated property of this Link. :type time_terminated: datetime + :param feature: + The value to assign to the feature property of this Link. + :type feature: str + """ self.swagger_types = { 'id': 'str', @@ -82,7 +86,8 @@ def __init__(self, **kwargs): 'lifecycle_state': 'str', 'time_created': 'datetime', 'time_updated': 'datetime', - 'time_terminated': 'datetime' + 'time_terminated': 'datetime', + 'feature': 'str' } self.attribute_map = { 'id': 'id', @@ -91,7 +96,8 @@ def __init__(self, **kwargs): 'lifecycle_state': 'lifecycleState', 'time_created': 'timeCreated', 'time_updated': 'timeUpdated', - 'time_terminated': 'timeTerminated' + 'time_terminated': 'timeTerminated', + 'feature': 'feature' } self._id = None self._parent_tenancy_id = None @@ -100,6 +106,7 @@ def __init__(self, **kwargs): self._time_created = None self._time_updated = None self._time_terminated = None + self._feature = None @property def id(self): @@ -275,6 +282,30 @@ def time_terminated(self, time_terminated): """ self._time_terminated = time_terminated + @property + def feature(self): + """ + Gets the feature of this Link. + The feature associated with this link. Default value is CORE. + + + :return: The feature of this Link. + :rtype: str + """ + return self._feature + + @feature.setter + def feature(self, feature): + """ + Sets the feature of this Link. + The feature associated with this link. Default value is CORE. + + + :param feature: The feature of this Link. + :type: str + """ + self._feature = feature + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/tenant_manager_control_plane/models/link_feature_summary.py b/src/oci/tenant_manager_control_plane/models/link_feature_summary.py new file mode 100644 index 0000000000..6af315d7fd --- /dev/null +++ b/src/oci/tenant_manager_control_plane/models/link_feature_summary.py @@ -0,0 +1,194 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230401 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class LinkFeatureSummary(object): + """ + Result of a query request for a list of link features. Contains LinkFeature items. + """ + + def __init__(self, **kwargs): + """ + Initializes a new LinkFeatureSummary object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param feature: + The value to assign to the feature property of this LinkFeatureSummary. + :type feature: str + + :param display_name: + The value to assign to the display_name property of this LinkFeatureSummary. + :type display_name: str + + :param description: + The value to assign to the description property of this LinkFeatureSummary. + :type description: str + + :param partner_service_console_url: + The value to assign to the partner_service_console_url property of this LinkFeatureSummary. + :type partner_service_console_url: str + + :param user_guide_url: + The value to assign to the user_guide_url property of this LinkFeatureSummary. + :type user_guide_url: str + + """ + self.swagger_types = { + 'feature': 'str', + 'display_name': 'str', + 'description': 'str', + 'partner_service_console_url': 'str', + 'user_guide_url': 'str' + } + self.attribute_map = { + 'feature': 'feature', + 'display_name': 'displayName', + 'description': 'description', + 'partner_service_console_url': 'partnerServiceConsoleUrl', + 'user_guide_url': 'userGuideUrl' + } + self._feature = None + self._display_name = None + self._description = None + self._partner_service_console_url = None + self._user_guide_url = None + + @property + def feature(self): + """ + **[Required]** Gets the feature of this LinkFeatureSummary. + The feature associated with this link. Default value is CORE. + + + :return: The feature of this LinkFeatureSummary. + :rtype: str + """ + return self._feature + + @feature.setter + def feature(self, feature): + """ + Sets the feature of this LinkFeatureSummary. + The feature associated with this link. Default value is CORE. + + + :param feature: The feature of this LinkFeatureSummary. + :type: str + """ + self._feature = feature + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this LinkFeatureSummary. + Display name of the feature. + + + :return: The display_name of this LinkFeatureSummary. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this LinkFeatureSummary. + Display name of the feature. + + + :param display_name: The display_name of this LinkFeatureSummary. + :type: str + """ + self._display_name = display_name + + @property + def description(self): + """ + **[Required]** Gets the description of this LinkFeatureSummary. + Description of the feature. + + + :return: The description of this LinkFeatureSummary. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this LinkFeatureSummary. + Description of the feature. + + + :param description: The description of this LinkFeatureSummary. + :type: str + """ + self._description = description + + @property + def partner_service_console_url(self): + """ + Gets the partner_service_console_url of this LinkFeatureSummary. + ConsoleUrl of the feature. + + + :return: The partner_service_console_url of this LinkFeatureSummary. + :rtype: str + """ + return self._partner_service_console_url + + @partner_service_console_url.setter + def partner_service_console_url(self, partner_service_console_url): + """ + Sets the partner_service_console_url of this LinkFeatureSummary. + ConsoleUrl of the feature. + + + :param partner_service_console_url: The partner_service_console_url of this LinkFeatureSummary. + :type: str + """ + self._partner_service_console_url = partner_service_console_url + + @property + def user_guide_url(self): + """ + Gets the user_guide_url of this LinkFeatureSummary. + UserGuideUrl of the feature. + + + :return: The user_guide_url of this LinkFeatureSummary. + :rtype: str + """ + return self._user_guide_url + + @user_guide_url.setter + def user_guide_url(self, user_guide_url): + """ + Sets the user_guide_url of this LinkFeatureSummary. + UserGuideUrl of the feature. + + + :param user_guide_url: The user_guide_url of this LinkFeatureSummary. + :type: str + """ + self._user_guide_url = user_guide_url + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/opensearch/models/customer_logging_details.py b/src/oci/tenant_manager_control_plane/models/link_features_collection.py similarity index 50% rename from src/oci/opensearch/models/customer_logging_details.py rename to src/oci/tenant_manager_control_plane/models/link_features_collection.py index 871a8ac7d6..5ca43175ff 100644 --- a/src/oci/opensearch/models/customer_logging_details.py +++ b/src/oci/tenant_manager_control_plane/models/link_features_collection.py @@ -2,7 +2,7 @@ # Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. # This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. -# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20180828 +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230401 from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 @@ -10,52 +10,52 @@ @init_model_state_from_kwargs -class CustomerLoggingDetails(object): +class LinkFeaturesCollection(object): """ - Customer logging configuration + Result of a query request for a list of link features. Contains LinkFeature items. """ def __init__(self, **kwargs): """ - Initializes a new CustomerLoggingDetails object with values from keyword arguments. + Initializes a new LinkFeaturesCollection object with values from keyword arguments. The following keyword arguments are supported (corresponding to the getters/setters of this class): - :param log_retention_days: - The value to assign to the log_retention_days property of this CustomerLoggingDetails. - :type log_retention_days: int + :param items: + The value to assign to the items property of this LinkFeaturesCollection. + :type items: list[oci.tenant_manager_control_plane.models.LinkFeatureSummary] """ self.swagger_types = { - 'log_retention_days': 'int' + 'items': 'list[LinkFeatureSummary]' } self.attribute_map = { - 'log_retention_days': 'logRetentionDays' + 'items': 'items' } - self._log_retention_days = None + self._items = None @property - def log_retention_days(self): + def items(self): """ - **[Required]** Gets the log_retention_days of this CustomerLoggingDetails. - the age of an index after which the index will get deleted by ISM policy + **[Required]** Gets the items of this LinkFeaturesCollection. + Array containing LinkFeature items. - :return: The log_retention_days of this CustomerLoggingDetails. - :rtype: int + :return: The items of this LinkFeaturesCollection. + :rtype: list[oci.tenant_manager_control_plane.models.LinkFeatureSummary] """ - return self._log_retention_days + return self._items - @log_retention_days.setter - def log_retention_days(self, log_retention_days): + @items.setter + def items(self, items): """ - Sets the log_retention_days of this CustomerLoggingDetails. - the age of an index after which the index will get deleted by ISM policy + Sets the items of this LinkFeaturesCollection. + Array containing LinkFeature items. - :param log_retention_days: The log_retention_days of this CustomerLoggingDetails. - :type: int + :param items: The items of this LinkFeaturesCollection. + :type: list[oci.tenant_manager_control_plane.models.LinkFeatureSummary] """ - self._log_retention_days = log_retention_days + self._items = items def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/tenant_manager_control_plane/models/link_summary.py b/src/oci/tenant_manager_control_plane/models/link_summary.py index 1491ba2c9d..21aa0039b1 100644 --- a/src/oci/tenant_manager_control_plane/models/link_summary.py +++ b/src/oci/tenant_manager_control_plane/models/link_summary.py @@ -78,6 +78,10 @@ def __init__(self, **kwargs): The value to assign to the system_tags property of this LinkSummary. :type system_tags: dict(str, dict(str, object)) + :param feature: + The value to assign to the feature property of this LinkSummary. + :type feature: str + """ self.swagger_types = { 'id': 'str', @@ -87,7 +91,8 @@ def __init__(self, **kwargs): 'time_created': 'datetime', 'time_updated': 'datetime', 'time_terminated': 'datetime', - 'system_tags': 'dict(str, dict(str, object))' + 'system_tags': 'dict(str, dict(str, object))', + 'feature': 'str' } self.attribute_map = { 'id': 'id', @@ -97,7 +102,8 @@ def __init__(self, **kwargs): 'time_created': 'timeCreated', 'time_updated': 'timeUpdated', 'time_terminated': 'timeTerminated', - 'system_tags': 'systemTags' + 'system_tags': 'systemTags', + 'feature': 'feature' } self._id = None self._parent_tenancy_id = None @@ -107,6 +113,7 @@ def __init__(self, **kwargs): self._time_updated = None self._time_terminated = None self._system_tags = None + self._feature = None @property def id(self): @@ -308,6 +315,30 @@ def system_tags(self, system_tags): """ self._system_tags = system_tags + @property + def feature(self): + """ + Gets the feature of this LinkSummary. + The feature associated with this link. Default value is CORE. + + + :return: The feature of this LinkSummary. + :rtype: str + """ + return self._feature + + @feature.setter + def feature(self, feature): + """ + Sets the feature of this LinkSummary. + The feature associated with this link. Default value is CORE. + + + :param feature: The feature of this LinkSummary. + :type: str + """ + self._feature = feature + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/tenant_manager_control_plane/models/link_with_tenancy_names.py b/src/oci/tenant_manager_control_plane/models/link_with_tenancy_names.py new file mode 100644 index 0000000000..701b1acaa8 --- /dev/null +++ b/src/oci/tenant_manager_control_plane/models/link_with_tenancy_names.py @@ -0,0 +1,381 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230401 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class LinkWithTenancyNames(object): + """ + A link between a parent tenancy and a child tenancy, including the parent and child tenancy names. + """ + + #: A constant which can be used with the lifecycle_state property of a LinkWithTenancyNames. + #: This constant has a value of "CREATING" + LIFECYCLE_STATE_CREATING = "CREATING" + + #: A constant which can be used with the lifecycle_state property of a LinkWithTenancyNames. + #: This constant has a value of "ACTIVE" + LIFECYCLE_STATE_ACTIVE = "ACTIVE" + + #: A constant which can be used with the lifecycle_state property of a LinkWithTenancyNames. + #: This constant has a value of "INACTIVE" + LIFECYCLE_STATE_INACTIVE = "INACTIVE" + + #: A constant which can be used with the lifecycle_state property of a LinkWithTenancyNames. + #: This constant has a value of "UPDATING" + LIFECYCLE_STATE_UPDATING = "UPDATING" + + #: A constant which can be used with the lifecycle_state property of a LinkWithTenancyNames. + #: This constant has a value of "FAILED" + LIFECYCLE_STATE_FAILED = "FAILED" + + #: A constant which can be used with the lifecycle_state property of a LinkWithTenancyNames. + #: This constant has a value of "TERMINATED" + LIFECYCLE_STATE_TERMINATED = "TERMINATED" + + def __init__(self, **kwargs): + """ + Initializes a new LinkWithTenancyNames object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param parent_tenancy_name: + The value to assign to the parent_tenancy_name property of this LinkWithTenancyNames. + :type parent_tenancy_name: str + + :param child_tenancy_name: + The value to assign to the child_tenancy_name property of this LinkWithTenancyNames. + :type child_tenancy_name: str + + :param id: + The value to assign to the id property of this LinkWithTenancyNames. + :type id: str + + :param parent_tenancy_id: + The value to assign to the parent_tenancy_id property of this LinkWithTenancyNames. + :type parent_tenancy_id: str + + :param child_tenancy_id: + The value to assign to the child_tenancy_id property of this LinkWithTenancyNames. + :type child_tenancy_id: str + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this LinkWithTenancyNames. + Allowed values for this property are: "CREATING", "ACTIVE", "INACTIVE", "UPDATING", "FAILED", "TERMINATED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + :param time_created: + The value to assign to the time_created property of this LinkWithTenancyNames. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this LinkWithTenancyNames. + :type time_updated: datetime + + :param time_terminated: + The value to assign to the time_terminated property of this LinkWithTenancyNames. + :type time_terminated: datetime + + :param feature: + The value to assign to the feature property of this LinkWithTenancyNames. + :type feature: str + + """ + self.swagger_types = { + 'parent_tenancy_name': 'str', + 'child_tenancy_name': 'str', + 'id': 'str', + 'parent_tenancy_id': 'str', + 'child_tenancy_id': 'str', + 'lifecycle_state': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'time_terminated': 'datetime', + 'feature': 'str' + } + self.attribute_map = { + 'parent_tenancy_name': 'parentTenancyName', + 'child_tenancy_name': 'childTenancyName', + 'id': 'id', + 'parent_tenancy_id': 'parentTenancyId', + 'child_tenancy_id': 'childTenancyId', + 'lifecycle_state': 'lifecycleState', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'time_terminated': 'timeTerminated', + 'feature': 'feature' + } + self._parent_tenancy_name = None + self._child_tenancy_name = None + self._id = None + self._parent_tenancy_id = None + self._child_tenancy_id = None + self._lifecycle_state = None + self._time_created = None + self._time_updated = None + self._time_terminated = None + self._feature = None + + @property + def parent_tenancy_name(self): + """ + **[Required]** Gets the parent_tenancy_name of this LinkWithTenancyNames. + Name of the parent tenancy. + + + :return: The parent_tenancy_name of this LinkWithTenancyNames. + :rtype: str + """ + return self._parent_tenancy_name + + @parent_tenancy_name.setter + def parent_tenancy_name(self, parent_tenancy_name): + """ + Sets the parent_tenancy_name of this LinkWithTenancyNames. + Name of the parent tenancy. + + + :param parent_tenancy_name: The parent_tenancy_name of this LinkWithTenancyNames. + :type: str + """ + self._parent_tenancy_name = parent_tenancy_name + + @property + def child_tenancy_name(self): + """ + **[Required]** Gets the child_tenancy_name of this LinkWithTenancyNames. + Name of the child tenancy. + + + :return: The child_tenancy_name of this LinkWithTenancyNames. + :rtype: str + """ + return self._child_tenancy_name + + @child_tenancy_name.setter + def child_tenancy_name(self, child_tenancy_name): + """ + Sets the child_tenancy_name of this LinkWithTenancyNames. + Name of the child tenancy. + + + :param child_tenancy_name: The child_tenancy_name of this LinkWithTenancyNames. + :type: str + """ + self._child_tenancy_name = child_tenancy_name + + @property + def id(self): + """ + **[Required]** Gets the id of this LinkWithTenancyNames. + OCID of the link. + + + :return: The id of this LinkWithTenancyNames. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this LinkWithTenancyNames. + OCID of the link. + + + :param id: The id of this LinkWithTenancyNames. + :type: str + """ + self._id = id + + @property + def parent_tenancy_id(self): + """ + **[Required]** Gets the parent_tenancy_id of this LinkWithTenancyNames. + OCID of the parent tenancy. + + + :return: The parent_tenancy_id of this LinkWithTenancyNames. + :rtype: str + """ + return self._parent_tenancy_id + + @parent_tenancy_id.setter + def parent_tenancy_id(self, parent_tenancy_id): + """ + Sets the parent_tenancy_id of this LinkWithTenancyNames. + OCID of the parent tenancy. + + + :param parent_tenancy_id: The parent_tenancy_id of this LinkWithTenancyNames. + :type: str + """ + self._parent_tenancy_id = parent_tenancy_id + + @property + def child_tenancy_id(self): + """ + **[Required]** Gets the child_tenancy_id of this LinkWithTenancyNames. + OCID of the child tenancy. + + + :return: The child_tenancy_id of this LinkWithTenancyNames. + :rtype: str + """ + return self._child_tenancy_id + + @child_tenancy_id.setter + def child_tenancy_id(self, child_tenancy_id): + """ + Sets the child_tenancy_id of this LinkWithTenancyNames. + OCID of the child tenancy. + + + :param child_tenancy_id: The child_tenancy_id of this LinkWithTenancyNames. + :type: str + """ + self._child_tenancy_id = child_tenancy_id + + @property + def lifecycle_state(self): + """ + Gets the lifecycle_state of this LinkWithTenancyNames. + Lifecycle state of the link. + + Allowed values for this property are: "CREATING", "ACTIVE", "INACTIVE", "UPDATING", "FAILED", "TERMINATED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this LinkWithTenancyNames. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this LinkWithTenancyNames. + Lifecycle state of the link. + + + :param lifecycle_state: The lifecycle_state of this LinkWithTenancyNames. + :type: str + """ + allowed_values = ["CREATING", "ACTIVE", "INACTIVE", "UPDATING", "FAILED", "TERMINATED"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + + @property + def time_created(self): + """ + **[Required]** Gets the time_created of this LinkWithTenancyNames. + Date-time when this link was created. + + + :return: The time_created of this LinkWithTenancyNames. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this LinkWithTenancyNames. + Date-time when this link was created. + + + :param time_created: The time_created of this LinkWithTenancyNames. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + Gets the time_updated of this LinkWithTenancyNames. + Date-time when this link was last updated. + + + :return: The time_updated of this LinkWithTenancyNames. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this LinkWithTenancyNames. + Date-time when this link was last updated. + + + :param time_updated: The time_updated of this LinkWithTenancyNames. + :type: datetime + """ + self._time_updated = time_updated + + @property + def time_terminated(self): + """ + Gets the time_terminated of this LinkWithTenancyNames. + Date-time when this link was terminated. + + + :return: The time_terminated of this LinkWithTenancyNames. + :rtype: datetime + """ + return self._time_terminated + + @time_terminated.setter + def time_terminated(self, time_terminated): + """ + Sets the time_terminated of this LinkWithTenancyNames. + Date-time when this link was terminated. + + + :param time_terminated: The time_terminated of this LinkWithTenancyNames. + :type: datetime + """ + self._time_terminated = time_terminated + + @property + def feature(self): + """ + Gets the feature of this LinkWithTenancyNames. + The feature associated with this link. Default value is CORE. + + + :return: The feature of this LinkWithTenancyNames. + :rtype: str + """ + return self._feature + + @feature.setter + def feature(self, feature): + """ + Sets the feature of this LinkWithTenancyNames. + The feature associated with this link. Default value is CORE. + + + :param feature: The feature of this LinkWithTenancyNames. + :type: str + """ + self._feature = feature + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/tenant_manager_control_plane/models/recipient_invitation.py b/src/oci/tenant_manager_control_plane/models/recipient_invitation.py index 88d5d62b7e..d7d03bc7e2 100644 --- a/src/oci/tenant_manager_control_plane/models/recipient_invitation.py +++ b/src/oci/tenant_manager_control_plane/models/recipient_invitation.py @@ -116,6 +116,10 @@ def __init__(self, **kwargs): The value to assign to the recipient_email_address property of this RecipientInvitation. :type recipient_email_address: str + :param features: + The value to assign to the features property of this RecipientInvitation. + :type features: list[str] + :param freeform_tags: The value to assign to the freeform_tags property of this RecipientInvitation. :type freeform_tags: dict(str, str) @@ -141,6 +145,7 @@ def __init__(self, **kwargs): 'time_created': 'datetime', 'time_updated': 'datetime', 'recipient_email_address': 'str', + 'features': 'list[str]', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', 'system_tags': 'dict(str, dict(str, object))' @@ -157,6 +162,7 @@ def __init__(self, **kwargs): 'time_created': 'timeCreated', 'time_updated': 'timeUpdated', 'recipient_email_address': 'recipientEmailAddress', + 'features': 'features', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', 'system_tags': 'systemTags' @@ -172,6 +178,7 @@ def __init__(self, **kwargs): self._time_created = None self._time_updated = None self._recipient_email_address = None + self._features = None self._freeform_tags = None self._defined_tags = None self._system_tags = None @@ -452,6 +459,30 @@ def recipient_email_address(self, recipient_email_address): """ self._recipient_email_address = recipient_email_address + @property + def features(self): + """ + Gets the features of this RecipientInvitation. + List of features that the invitation is being sent for. Each feature would create one link, of that type. + + + :return: The features of this RecipientInvitation. + :rtype: list[str] + """ + return self._features + + @features.setter + def features(self, features): + """ + Sets the features of this RecipientInvitation. + List of features that the invitation is being sent for. Each feature would create one link, of that type. + + + :param features: The features of this RecipientInvitation. + :type: list[str] + """ + self._features = features + @property def freeform_tags(self): """ diff --git a/src/oci/tenant_manager_control_plane/models/recipient_invitation_summary.py b/src/oci/tenant_manager_control_plane/models/recipient_invitation_summary.py index ea038c7795..c629611581 100644 --- a/src/oci/tenant_manager_control_plane/models/recipient_invitation_summary.py +++ b/src/oci/tenant_manager_control_plane/models/recipient_invitation_summary.py @@ -116,6 +116,10 @@ def __init__(self, **kwargs): The value to assign to the recipient_email_address property of this RecipientInvitationSummary. :type recipient_email_address: str + :param features: + The value to assign to the features property of this RecipientInvitationSummary. + :type features: list[str] + :param freeform_tags: The value to assign to the freeform_tags property of this RecipientInvitationSummary. :type freeform_tags: dict(str, str) @@ -141,6 +145,7 @@ def __init__(self, **kwargs): 'time_created': 'datetime', 'time_updated': 'datetime', 'recipient_email_address': 'str', + 'features': 'list[str]', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', 'system_tags': 'dict(str, dict(str, object))' @@ -157,6 +162,7 @@ def __init__(self, **kwargs): 'time_created': 'timeCreated', 'time_updated': 'timeUpdated', 'recipient_email_address': 'recipientEmailAddress', + 'features': 'features', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', 'system_tags': 'systemTags' @@ -172,6 +178,7 @@ def __init__(self, **kwargs): self._time_created = None self._time_updated = None self._recipient_email_address = None + self._features = None self._freeform_tags = None self._defined_tags = None self._system_tags = None @@ -452,6 +459,30 @@ def recipient_email_address(self, recipient_email_address): """ self._recipient_email_address = recipient_email_address + @property + def features(self): + """ + Gets the features of this RecipientInvitationSummary. + List of features that the invitation is being sent for. Each feature would create one link, of that type. + + + :return: The features of this RecipientInvitationSummary. + :rtype: list[str] + """ + return self._features + + @features.setter + def features(self, features): + """ + Sets the features of this RecipientInvitationSummary. + List of features that the invitation is being sent for. Each feature would create one link, of that type. + + + :param features: The features of this RecipientInvitationSummary. + :type: list[str] + """ + self._features = features + @property def freeform_tags(self): """ diff --git a/src/oci/tenant_manager_control_plane/models/revive_workflow_instance_details.py b/src/oci/tenant_manager_control_plane/models/revive_workflow_instance_details.py deleted file mode 100644 index a4d361dc29..0000000000 --- a/src/oci/tenant_manager_control_plane/models/revive_workflow_instance_details.py +++ /dev/null @@ -1,101 +0,0 @@ -# coding: utf-8 -# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. -# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. - -# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230401 - - -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 -from oci.decorators import init_model_state_from_kwargs - - -@init_model_state_from_kwargs -class ReviveWorkflowInstanceDetails(object): - """ - The parameters for reviving failed workflow - """ - - def __init__(self, **kwargs): - """ - Initializes a new ReviveWorkflowInstanceDetails object with values from keyword arguments. - The following keyword arguments are supported (corresponding to the getters/setters of this class): - - :param workflow_instance_id: - The value to assign to the workflow_instance_id property of this ReviveWorkflowInstanceDetails. - :type workflow_instance_id: str - - :param workflow_instance_name: - The value to assign to the workflow_instance_name property of this ReviveWorkflowInstanceDetails. - :type workflow_instance_name: str - - """ - self.swagger_types = { - 'workflow_instance_id': 'str', - 'workflow_instance_name': 'str' - } - self.attribute_map = { - 'workflow_instance_id': 'workflowInstanceId', - 'workflow_instance_name': 'workflowInstanceName' - } - self._workflow_instance_id = None - self._workflow_instance_name = None - - @property - def workflow_instance_id(self): - """ - Gets the workflow_instance_id of this ReviveWorkflowInstanceDetails. - Id of failed workflow - - - :return: The workflow_instance_id of this ReviveWorkflowInstanceDetails. - :rtype: str - """ - return self._workflow_instance_id - - @workflow_instance_id.setter - def workflow_instance_id(self, workflow_instance_id): - """ - Sets the workflow_instance_id of this ReviveWorkflowInstanceDetails. - Id of failed workflow - - - :param workflow_instance_id: The workflow_instance_id of this ReviveWorkflowInstanceDetails. - :type: str - """ - self._workflow_instance_id = workflow_instance_id - - @property - def workflow_instance_name(self): - """ - Gets the workflow_instance_name of this ReviveWorkflowInstanceDetails. - Service specific workflow instance name - - - :return: The workflow_instance_name of this ReviveWorkflowInstanceDetails. - :rtype: str - """ - return self._workflow_instance_name - - @workflow_instance_name.setter - def workflow_instance_name(self, workflow_instance_name): - """ - Sets the workflow_instance_name of this ReviveWorkflowInstanceDetails. - Service specific workflow instance name - - - :param workflow_instance_name: The workflow_instance_name of this ReviveWorkflowInstanceDetails. - :type: str - """ - self._workflow_instance_name = workflow_instance_name - - def __repr__(self): - return formatted_flat_dict(self) - - def __eq__(self, other): - if other is None: - return False - - return self.__dict__ == other.__dict__ - - def __ne__(self, other): - return not self == other diff --git a/src/oci/tenant_manager_control_plane/models/sender_invitation.py b/src/oci/tenant_manager_control_plane/models/sender_invitation.py index 3528775727..43bc9a5e7c 100644 --- a/src/oci/tenant_manager_control_plane/models/sender_invitation.py +++ b/src/oci/tenant_manager_control_plane/models/sender_invitation.py @@ -59,6 +59,10 @@ class SenderInvitation(object): #: This constant has a value of "FAILED" STATUS_FAILED = "FAILED" + #: A constant which can be used with the status property of a SenderInvitation. + #: This constant has a value of "NOT_APPLICABLE" + STATUS_NOT_APPLICABLE = "NOT_APPLICABLE" + def __init__(self, **kwargs): """ Initializes a new SenderInvitation object with values from keyword arguments. @@ -92,7 +96,7 @@ def __init__(self, **kwargs): :param status: The value to assign to the status property of this SenderInvitation. - Allowed values for this property are: "PENDING", "CANCELED", "ACCEPTED", "EXPIRED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "PENDING", "CANCELED", "ACCEPTED", "EXPIRED", "FAILED", "NOT_APPLICABLE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type status: str @@ -112,6 +116,10 @@ def __init__(self, **kwargs): The value to assign to the recipient_email_address property of this SenderInvitation. :type recipient_email_address: str + :param invitation_features: + The value to assign to the invitation_features property of this SenderInvitation. + :type invitation_features: list[oci.tenant_manager_control_plane.models.InvitationFeature] + :param freeform_tags: The value to assign to the freeform_tags property of this SenderInvitation. :type freeform_tags: dict(str, str) @@ -137,6 +145,7 @@ def __init__(self, **kwargs): 'time_created': 'datetime', 'time_updated': 'datetime', 'recipient_email_address': 'str', + 'invitation_features': 'list[InvitationFeature]', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', 'system_tags': 'dict(str, dict(str, object))' @@ -153,6 +162,7 @@ def __init__(self, **kwargs): 'time_created': 'timeCreated', 'time_updated': 'timeUpdated', 'recipient_email_address': 'recipientEmailAddress', + 'invitation_features': 'invitationFeatures', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', 'system_tags': 'systemTags' @@ -168,6 +178,7 @@ def __init__(self, **kwargs): self._time_created = None self._time_updated = None self._recipient_email_address = None + self._invitation_features = None self._freeform_tags = None self._defined_tags = None self._system_tags = None @@ -328,7 +339,7 @@ def status(self): **[Required]** Gets the status of this SenderInvitation. Status of the sender invitation. - Allowed values for this property are: "PENDING", "CANCELED", "ACCEPTED", "EXPIRED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "PENDING", "CANCELED", "ACCEPTED", "EXPIRED", "FAILED", "NOT_APPLICABLE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -347,7 +358,7 @@ def status(self, status): :param status: The status of this SenderInvitation. :type: str """ - allowed_values = ["PENDING", "CANCELED", "ACCEPTED", "EXPIRED", "FAILED"] + allowed_values = ["PENDING", "CANCELED", "ACCEPTED", "EXPIRED", "FAILED", "NOT_APPLICABLE"] if not value_allowed_none_or_none_sentinel(status, allowed_values): status = 'UNKNOWN_ENUM_VALUE' self._status = status @@ -448,6 +459,30 @@ def recipient_email_address(self, recipient_email_address): """ self._recipient_email_address = recipient_email_address + @property + def invitation_features(self): + """ + Gets the invitation_features of this SenderInvitation. + List of features that the invitation is being sent for. Each feature would create one link, of that type. + + + :return: The invitation_features of this SenderInvitation. + :rtype: list[oci.tenant_manager_control_plane.models.InvitationFeature] + """ + return self._invitation_features + + @invitation_features.setter + def invitation_features(self, invitation_features): + """ + Sets the invitation_features of this SenderInvitation. + List of features that the invitation is being sent for. Each feature would create one link, of that type. + + + :param invitation_features: The invitation_features of this SenderInvitation. + :type: list[oci.tenant_manager_control_plane.models.InvitationFeature] + """ + self._invitation_features = invitation_features + @property def freeform_tags(self): """ diff --git a/src/oci/tenant_manager_control_plane/models/sender_invitation_summary.py b/src/oci/tenant_manager_control_plane/models/sender_invitation_summary.py index 13c2fb94ef..c63c01ac56 100644 --- a/src/oci/tenant_manager_control_plane/models/sender_invitation_summary.py +++ b/src/oci/tenant_manager_control_plane/models/sender_invitation_summary.py @@ -59,6 +59,10 @@ class SenderInvitationSummary(object): #: This constant has a value of "FAILED" STATUS_FAILED = "FAILED" + #: A constant which can be used with the status property of a SenderInvitationSummary. + #: This constant has a value of "NOT_APPLICABLE" + STATUS_NOT_APPLICABLE = "NOT_APPLICABLE" + def __init__(self, **kwargs): """ Initializes a new SenderInvitationSummary object with values from keyword arguments. @@ -96,7 +100,7 @@ def __init__(self, **kwargs): :param status: The value to assign to the status property of this SenderInvitationSummary. - Allowed values for this property are: "PENDING", "CANCELED", "ACCEPTED", "EXPIRED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "PENDING", "CANCELED", "ACCEPTED", "EXPIRED", "FAILED", "NOT_APPLICABLE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type status: str @@ -112,6 +116,10 @@ def __init__(self, **kwargs): The value to assign to the recipient_email_address property of this SenderInvitationSummary. :type recipient_email_address: str + :param invitation_features: + The value to assign to the invitation_features property of this SenderInvitationSummary. + :type invitation_features: list[oci.tenant_manager_control_plane.models.InvitationFeature] + :param freeform_tags: The value to assign to the freeform_tags property of this SenderInvitationSummary. :type freeform_tags: dict(str, str) @@ -137,6 +145,7 @@ def __init__(self, **kwargs): 'time_created': 'datetime', 'time_updated': 'datetime', 'recipient_email_address': 'str', + 'invitation_features': 'list[InvitationFeature]', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', 'system_tags': 'dict(str, dict(str, object))' @@ -153,6 +162,7 @@ def __init__(self, **kwargs): 'time_created': 'timeCreated', 'time_updated': 'timeUpdated', 'recipient_email_address': 'recipientEmailAddress', + 'invitation_features': 'invitationFeatures', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', 'system_tags': 'systemTags' @@ -168,6 +178,7 @@ def __init__(self, **kwargs): self._time_created = None self._time_updated = None self._recipient_email_address = None + self._invitation_features = None self._freeform_tags = None self._defined_tags = None self._system_tags = None @@ -352,7 +363,7 @@ def status(self): **[Required]** Gets the status of this SenderInvitationSummary. Status of the sender invitation. - Allowed values for this property are: "PENDING", "CANCELED", "ACCEPTED", "EXPIRED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "PENDING", "CANCELED", "ACCEPTED", "EXPIRED", "FAILED", "NOT_APPLICABLE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -371,7 +382,7 @@ def status(self, status): :param status: The status of this SenderInvitationSummary. :type: str """ - allowed_values = ["PENDING", "CANCELED", "ACCEPTED", "EXPIRED", "FAILED"] + allowed_values = ["PENDING", "CANCELED", "ACCEPTED", "EXPIRED", "FAILED", "NOT_APPLICABLE"] if not value_allowed_none_or_none_sentinel(status, allowed_values): status = 'UNKNOWN_ENUM_VALUE' self._status = status @@ -448,6 +459,30 @@ def recipient_email_address(self, recipient_email_address): """ self._recipient_email_address = recipient_email_address + @property + def invitation_features(self): + """ + Gets the invitation_features of this SenderInvitationSummary. + List of features that the invitation is being sent for. Each feature would create one link, of that type. + + + :return: The invitation_features of this SenderInvitationSummary. + :rtype: list[oci.tenant_manager_control_plane.models.InvitationFeature] + """ + return self._invitation_features + + @invitation_features.setter + def invitation_features(self, invitation_features): + """ + Sets the invitation_features of this SenderInvitationSummary. + List of features that the invitation is being sent for. Each feature would create one link, of that type. + + + :param invitation_features: The invitation_features of this SenderInvitationSummary. + :type: list[oci.tenant_manager_control_plane.models.InvitationFeature] + """ + self._invitation_features = invitation_features + @property def freeform_tags(self): """ diff --git a/src/oci/tenant_manager_control_plane/sender_invitation_client.py b/src/oci/tenant_manager_control_plane/sender_invitation_client.py index e020a6ff40..b7801d264c 100644 --- a/src/oci/tenant_manager_control_plane/sender_invitation_client.py +++ b/src/oci/tenant_manager_control_plane/sender_invitation_client.py @@ -469,7 +469,7 @@ def list_sender_invitations(self, compartment_id, **kwargs): :param str status: (optional) The status of the sender invitation. - Allowed values are: "PENDING", "CANCELED", "ACCEPTED", "EXPIRED", "FAILED" + Allowed values are: "PENDING", "CANCELED", "ACCEPTED", "EXPIRED", "FAILED", "NOT_APPLICABLE" :param str display_name: (optional) A filter to return only resources that match the entire display name given. @@ -553,7 +553,7 @@ def list_sender_invitations(self, compartment_id, **kwargs): ) if 'status' in kwargs: - status_allowed_values = ["PENDING", "CANCELED", "ACCEPTED", "EXPIRED", "FAILED"] + status_allowed_values = ["PENDING", "CANCELED", "ACCEPTED", "EXPIRED", "FAILED", "NOT_APPLICABLE"] if kwargs['status'] not in status_allowed_values: raise ValueError( f"Invalid value for `status`, must be one of { status_allowed_values }" diff --git a/src/oci/version.py b/src/oci/version.py index 3da0a063ca..32580a18ce 100644 --- a/src/oci/version.py +++ b/src/oci/version.py @@ -2,4 +2,4 @@ # Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. # This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. -__version__ = "2.178.0" +__version__ = "2.179.0" From df3758132aa97227869f8f025d060df882916965 Mon Sep 17 00:00:00 2001 From: OCI DEX Release Bot Automation Date: Tue, 23 Jun 2026 02:15:32 +0000 Subject: [PATCH 03/11] Releasing version 2.180.0 Co-authored-by: Harsh Kumar --- CHANGELOG.rst | 23 +++ docs/api/apigateway.rst | 1 + ...i.apigateway.models.OAuth2LoginBackend.rst | 11 ++ docs/api/container_engine.rst | 1 + ...e.models.VirtualNodePoolCyclingDetails.rst | 11 ++ docs/api/integration.rst | 1 + ...dels.RemoveLogAnalyticsLogGroupDetails.rst | 11 ++ src/oci/apigateway/api_gateway_client.py | 4 +- ...api_gateway_client_composite_operations.py | 45 ++++++ src/oci/apigateway/models/__init__.py | 2 + .../models/api_specification_route_backend.py | 14 +- .../models/dynamic_routing_backend.py | 2 +- src/oci/apigateway/models/http_backend.py | 2 +- src/oci/apigateway/models/json_web_key.py | 2 +- .../models/o_auth2_login_backend.py | 49 ++++++ .../models/o_auth2_logout_backend.py | 2 +- ...uth2_response_validation_failure_policy.py | 39 ++++- .../models/oracle_function_backend.py | 2 +- .../models/stock_response_backend.py | 2 +- src/oci/container_engine/models/__init__.py | 2 + .../create_virtual_node_pool_details.py | 31 +++- .../update_virtual_node_pool_details.py | 31 +++- .../models/virtual_node_pool.py | 31 +++- .../virtual_node_pool_cycling_details.py | 140 ++++++++++++++++++ .../models/virtual_node_pool_summary.py | 31 +++- .../container_engine/models/work_request.py | 10 +- .../models/work_request_summary.py | 10 +- .../database/models/autonomous_database.py | 62 ++++++++ .../autonomous_database_standby_summary.py | 35 ++++- .../models/autonomous_database_summary.py | 31 ++++ .../database/models/autonomous_dw_database.py | 31 ++++ src/oci/dns/dns_client.py | 12 +- .../create_resolver_endpoint_details.py | 58 +++++++- .../create_resolver_vnic_endpoint_details.py | 45 +++++- src/oci/dns/models/create_zone_details.py | 8 +- src/oci/dns/models/resolver_endpoint.py | 120 ++++++++++++++- .../dns/models/resolver_endpoint_summary.py | 120 ++++++++++++++- src/oci/dns/models/resolver_vnic_endpoint.py | 129 +++++++++++++++- .../models/resolver_vnic_endpoint_summary.py | 129 +++++++++++++++- src/oci/dns/models/steering_policy.py | 10 +- src/oci/dns/models/steering_policy_summary.py | 10 +- .../update_resolver_endpoint_details.py | 58 +++++++- .../update_resolver_vnic_endpoint_details.py | 45 +++++- src/oci/dns/models/update_zone_details.py | 8 +- src/oci/dns/models/zone.py | 8 +- src/oci/dns/models/zone_summary.py | 8 +- .../integration_instance_client.py | 10 +- src/oci/integration/models/__init__.py | 2 + .../add_log_analytics_log_group_details.py | 47 +++++- .../models/integration_instance.py | 35 ++++- .../models/integration_instance_summary.py | 35 ++++- .../remove_log_analytics_log_group_details.py | 83 +++++++++++ src/oci/integration/models/work_request.py | 14 +- .../models/work_request_summary.py | 14 +- .../models/create_schedule_details.py | 10 +- src/oci/resource_scheduler/models/schedule.py | 10 +- .../models/schedule_summary.py | 10 +- .../models/update_schedule_details.py | 10 +- .../resource_scheduler/models/work_request.py | 10 +- .../models/work_request_summary.py | 10 +- src/oci/resource_scheduler/schedule_client.py | 9 +- .../schedule_client_composite_operations.py | 2 +- src/oci/version.py | 2 +- 63 files changed, 1652 insertions(+), 98 deletions(-) create mode 100644 docs/api/apigateway/models/oci.apigateway.models.OAuth2LoginBackend.rst create mode 100644 docs/api/container_engine/models/oci.container_engine.models.VirtualNodePoolCyclingDetails.rst create mode 100644 docs/api/integration/models/oci.integration.models.RemoveLogAnalyticsLogGroupDetails.rst create mode 100644 src/oci/apigateway/models/o_auth2_login_backend.py create mode 100644 src/oci/container_engine/models/virtual_node_pool_cycling_details.py create mode 100644 src/oci/integration/models/remove_log_analytics_log_group_details.py diff --git a/CHANGELOG.rst b/CHANGELOG.rst index aa37bc4ac7..a626773dbd 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -4,6 +4,29 @@ All notable changes to this project will be documented in this file. The format is based on `Keep a Changelog `_. +==================== +2.180.0 - 2026-06-23 +==================== + +Added +----- +* Support for static redirect paths in OAuth2 and OpenID Connect authentication policies in the API Gateway service +* Support for returning SDK resources and etags during SDK updates in the API Gateway service +* Support for virtual node pool cycling in the Kubernetes Engine service +* Support for access types on Autonomous AI Database Serverless instances in the Database service +* Support for external logical zones on Autonomous AI Database Serverless instances and local Autonomous Data Guard standby databases in the Database service +* Support for scheduled backups of Autonomous Database Dedicated resources in the Resource Scheduler service +* Support for action-type filtering of resource types in the Resource Scheduler service +* Support for Log Analytics log groups on Oracle Process Automation (OPA) instances attached to Integration instances in the Integration service +* Support for Zero Trust Packet Routing (ZPR) security attributes on DNS resolver endpoints in the DNS service +* Support for free-form and defined tags on DNS resolver endpoints in the DNS service +* Support for resolver, private endpoint, and VNIC identifiers in DNS resolver endpoint responses in the DNS service +* Support for the UPDATING lifecycle state on DNS steering policies in the DNS service + +Breaking +-------- +* Return type of method `update_sdk` changed from `None` to `oci.apigateway.models.Sdk` in the API Gateway service + ==================== 2.179.0 - 2026-06-16 ==================== diff --git a/docs/api/apigateway.rst b/docs/api/apigateway.rst index 2584744dc7..27d1625289 100644 --- a/docs/api/apigateway.rst +++ b/docs/api/apigateway.rst @@ -114,6 +114,7 @@ Apigateway oci.apigateway.models.MutualTlsDetails oci.apigateway.models.NoCache oci.apigateway.models.NoContentValidation + oci.apigateway.models.OAuth2LoginBackend oci.apigateway.models.OAuth2LogoutBackend oci.apigateway.models.OAuth2ResponseValidationFailurePolicy oci.apigateway.models.OracleFunctionBackend diff --git a/docs/api/apigateway/models/oci.apigateway.models.OAuth2LoginBackend.rst b/docs/api/apigateway/models/oci.apigateway.models.OAuth2LoginBackend.rst new file mode 100644 index 0000000000..3d96ccfad5 --- /dev/null +++ b/docs/api/apigateway/models/oci.apigateway.models.OAuth2LoginBackend.rst @@ -0,0 +1,11 @@ +OAuth2LoginBackend +================== + +.. currentmodule:: oci.apigateway.models + +.. autoclass:: OAuth2LoginBackend + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/container_engine.rst b/docs/api/container_engine.rst index b91219d3e9..091170fd37 100644 --- a/docs/api/container_engine.rst +++ b/docs/api/container_engine.rst @@ -112,6 +112,7 @@ Container Engine oci.container_engine.models.UpdateWorkloadMappingDetails oci.container_engine.models.VirtualNode oci.container_engine.models.VirtualNodePool + oci.container_engine.models.VirtualNodePoolCyclingDetails oci.container_engine.models.VirtualNodePoolSummary oci.container_engine.models.VirtualNodeSummary oci.container_engine.models.VirtualNodeTags diff --git a/docs/api/container_engine/models/oci.container_engine.models.VirtualNodePoolCyclingDetails.rst b/docs/api/container_engine/models/oci.container_engine.models.VirtualNodePoolCyclingDetails.rst new file mode 100644 index 0000000000..b6edb182c8 --- /dev/null +++ b/docs/api/container_engine/models/oci.container_engine.models.VirtualNodePoolCyclingDetails.rst @@ -0,0 +1,11 @@ +VirtualNodePoolCyclingDetails +============================= + +.. currentmodule:: oci.container_engine.models + +.. autoclass:: VirtualNodePoolCyclingDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/integration.rst b/docs/api/integration.rst index 41b11d95ef..f3d4ae4bcb 100644 --- a/docs/api/integration.rst +++ b/docs/api/integration.rst @@ -40,6 +40,7 @@ Integration oci.integration.models.OutboundConnection oci.integration.models.PrivateEndpointOutboundConnection oci.integration.models.PublicEndpointDetails + oci.integration.models.RemoveLogAnalyticsLogGroupDetails oci.integration.models.UpdateCustomEndpointDetails oci.integration.models.UpdateIntegrationInstanceDetails oci.integration.models.VirtualCloudNetwork diff --git a/docs/api/integration/models/oci.integration.models.RemoveLogAnalyticsLogGroupDetails.rst b/docs/api/integration/models/oci.integration.models.RemoveLogAnalyticsLogGroupDetails.rst new file mode 100644 index 0000000000..bfd28fdc09 --- /dev/null +++ b/docs/api/integration/models/oci.integration.models.RemoveLogAnalyticsLogGroupDetails.rst @@ -0,0 +1,11 @@ +RemoveLogAnalyticsLogGroupDetails +================================= + +.. currentmodule:: oci.integration.models + +.. autoclass:: RemoveLogAnalyticsLogGroupDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/src/oci/apigateway/api_gateway_client.py b/src/oci/apigateway/api_gateway_client.py index 782d77cc57..0b365b6c78 100644 --- a/src/oci/apigateway/api_gateway_client.py +++ b/src/oci/apigateway/api_gateway_client.py @@ -3376,7 +3376,7 @@ def update_sdk(self, sdk_id, update_sdk_details, **kwargs): enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. By default, strict url encoding for path params is disabled - :return: A :class:`~oci.response.Response` object with data of type None + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.apigateway.models.Sdk` :rtype: :class:`~oci.response.Response` :example: @@ -3443,6 +3443,7 @@ def update_sdk(self, sdk_id, update_sdk_details, **kwargs): query_params=query_params, header_params=header_params, body=update_sdk_details, + response_type="Sdk", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, @@ -3456,6 +3457,7 @@ def update_sdk(self, sdk_id, update_sdk_details, **kwargs): query_params=query_params, header_params=header_params, body=update_sdk_details, + response_type="Sdk", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, diff --git a/src/oci/apigateway/api_gateway_client_composite_operations.py b/src/oci/apigateway/api_gateway_client_composite_operations.py index 27a1277216..f1d4255523 100644 --- a/src/oci/apigateway/api_gateway_client_composite_operations.py +++ b/src/oci/apigateway/api_gateway_client_composite_operations.py @@ -678,3 +678,48 @@ def update_certificate_and_wait_for_state(self, certificate_id, update_certifica return result_to_return except Exception as e: raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def update_sdk_and_wait_for_state(self, sdk_id, update_sdk_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.apigateway.ApiGatewayClient.update_sdk` and waits for the :py:class:`~oci.apigateway.models.Sdk` acted upon + to enter the given state(s). + + :param str sdk_id: (required) + The ocid of the SDK. + + :param oci.apigateway.models.UpdateSdkDetails update_sdk_details: (required) + The information to be updated. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.apigateway.models.Sdk.lifecycle_state` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.apigateway.ApiGatewayClient.update_sdk` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.update_sdk(sdk_id, update_sdk_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + sdk_id = operation_result.data.id + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_sdk(sdk_id), # noqa: F821 + evaluate_response=lambda r: getattr(r.data, 'lifecycle_state') and getattr(r.data, 'lifecycle_state').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except (NameError, TypeError) as e: + if not e.args: + e.args = ('',) + e.args = e.args + ('This composite operation is currently not supported in the SDK. Please use the operation from the service client and use waiters as an alternative. For more information on waiters, visit: "https://docs.oracle.com/en-us/iaas/tools/python/latest/api/waiters.html"', ) + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) diff --git a/src/oci/apigateway/models/__init__.py b/src/oci/apigateway/models/__init__.py index 31b105fff0..3d5b33df8a 100644 --- a/src/oci/apigateway/models/__init__.py +++ b/src/oci/apigateway/models/__init__.py @@ -92,6 +92,7 @@ from .mutual_tls_details import MutualTlsDetails from .no_cache import NoCache from .no_content_validation import NoContentValidation +from .o_auth2_login_backend import OAuth2LoginBackend from .o_auth2_logout_backend import OAuth2LogoutBackend from .o_auth2_response_validation_failure_policy import OAuth2ResponseValidationFailurePolicy from .oracle_function_backend import OracleFunctionBackend @@ -256,6 +257,7 @@ "MutualTlsDetails": MutualTlsDetails, "NoCache": NoCache, "NoContentValidation": NoContentValidation, + "OAuth2LoginBackend": OAuth2LoginBackend, "OAuth2LogoutBackend": OAuth2LogoutBackend, "OAuth2ResponseValidationFailurePolicy": OAuth2ResponseValidationFailurePolicy, "OracleFunctionBackend": OracleFunctionBackend, diff --git a/src/oci/apigateway/models/api_specification_route_backend.py b/src/oci/apigateway/models/api_specification_route_backend.py index b67713efde..b224a0638a 100644 --- a/src/oci/apigateway/models/api_specification_route_backend.py +++ b/src/oci/apigateway/models/api_specification_route_backend.py @@ -35,6 +35,10 @@ class ApiSpecificationRouteBackend(object): #: This constant has a value of "OAUTH2_LOGOUT_BACKEND" TYPE_OAUTH2_LOGOUT_BACKEND = "OAUTH2_LOGOUT_BACKEND" + #: A constant which can be used with the type property of a ApiSpecificationRouteBackend. + #: This constant has a value of "OAUTH2_LOGIN_BACKEND" + TYPE_OAUTH2_LOGIN_BACKEND = "OAUTH2_LOGIN_BACKEND" + def __init__(self, **kwargs): """ Initializes a new ApiSpecificationRouteBackend object with values from keyword arguments. This class has the following subclasses and if you are using this class as input @@ -44,13 +48,14 @@ def __init__(self, **kwargs): * :class:`~oci.apigateway.models.HTTPBackend` * :class:`~oci.apigateway.models.OracleFunctionBackend` * :class:`~oci.apigateway.models.StockResponseBackend` + * :class:`~oci.apigateway.models.OAuth2LoginBackend` * :class:`~oci.apigateway.models.DynamicRoutingBackend` The following keyword arguments are supported (corresponding to the getters/setters of this class): :param type: The value to assign to the type property of this ApiSpecificationRouteBackend. - Allowed values for this property are: "ORACLE_FUNCTIONS_BACKEND", "HTTP_BACKEND", "STOCK_RESPONSE_BACKEND", "DYNAMIC_ROUTING_BACKEND", "OAUTH2_LOGOUT_BACKEND", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "ORACLE_FUNCTIONS_BACKEND", "HTTP_BACKEND", "STOCK_RESPONSE_BACKEND", "DYNAMIC_ROUTING_BACKEND", "OAUTH2_LOGOUT_BACKEND", "OAUTH2_LOGIN_BACKEND", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type type: str @@ -83,6 +88,9 @@ def get_subtype(object_dictionary): if type == 'STOCK_RESPONSE_BACKEND': return 'StockResponseBackend' + if type == 'OAUTH2_LOGIN_BACKEND': + return 'OAuth2LoginBackend' + if type == 'DYNAMIC_ROUTING_BACKEND': return 'DynamicRoutingBackend' else: @@ -94,7 +102,7 @@ def type(self): **[Required]** Gets the type of this ApiSpecificationRouteBackend. Type of the API backend. - Allowed values for this property are: "ORACLE_FUNCTIONS_BACKEND", "HTTP_BACKEND", "STOCK_RESPONSE_BACKEND", "DYNAMIC_ROUTING_BACKEND", "OAUTH2_LOGOUT_BACKEND", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "ORACLE_FUNCTIONS_BACKEND", "HTTP_BACKEND", "STOCK_RESPONSE_BACKEND", "DYNAMIC_ROUTING_BACKEND", "OAUTH2_LOGOUT_BACKEND", "OAUTH2_LOGIN_BACKEND", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -113,7 +121,7 @@ def type(self, type): :param type: The type of this ApiSpecificationRouteBackend. :type: str """ - allowed_values = ["ORACLE_FUNCTIONS_BACKEND", "HTTP_BACKEND", "STOCK_RESPONSE_BACKEND", "DYNAMIC_ROUTING_BACKEND", "OAUTH2_LOGOUT_BACKEND"] + allowed_values = ["ORACLE_FUNCTIONS_BACKEND", "HTTP_BACKEND", "STOCK_RESPONSE_BACKEND", "DYNAMIC_ROUTING_BACKEND", "OAUTH2_LOGOUT_BACKEND", "OAUTH2_LOGIN_BACKEND"] if not value_allowed_none_or_none_sentinel(type, allowed_values): type = 'UNKNOWN_ENUM_VALUE' self._type = type diff --git a/src/oci/apigateway/models/dynamic_routing_backend.py b/src/oci/apigateway/models/dynamic_routing_backend.py index 3c2ac81e06..85972e203a 100644 --- a/src/oci/apigateway/models/dynamic_routing_backend.py +++ b/src/oci/apigateway/models/dynamic_routing_backend.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param type: The value to assign to the type property of this DynamicRoutingBackend. - Allowed values for this property are: "ORACLE_FUNCTIONS_BACKEND", "HTTP_BACKEND", "STOCK_RESPONSE_BACKEND", "DYNAMIC_ROUTING_BACKEND", "OAUTH2_LOGOUT_BACKEND" + Allowed values for this property are: "ORACLE_FUNCTIONS_BACKEND", "HTTP_BACKEND", "STOCK_RESPONSE_BACKEND", "DYNAMIC_ROUTING_BACKEND", "OAUTH2_LOGOUT_BACKEND", "OAUTH2_LOGIN_BACKEND" :type type: str :param selection_source: diff --git a/src/oci/apigateway/models/http_backend.py b/src/oci/apigateway/models/http_backend.py index 5cfb510003..5cc21f61a8 100644 --- a/src/oci/apigateway/models/http_backend.py +++ b/src/oci/apigateway/models/http_backend.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param type: The value to assign to the type property of this HTTPBackend. - Allowed values for this property are: "ORACLE_FUNCTIONS_BACKEND", "HTTP_BACKEND", "STOCK_RESPONSE_BACKEND", "DYNAMIC_ROUTING_BACKEND", "OAUTH2_LOGOUT_BACKEND" + Allowed values for this property are: "ORACLE_FUNCTIONS_BACKEND", "HTTP_BACKEND", "STOCK_RESPONSE_BACKEND", "DYNAMIC_ROUTING_BACKEND", "OAUTH2_LOGOUT_BACKEND", "OAUTH2_LOGIN_BACKEND" :type type: str :param url: diff --git a/src/oci/apigateway/models/json_web_key.py b/src/oci/apigateway/models/json_web_key.py index b8c64fc374..b62c3ca967 100644 --- a/src/oci/apigateway/models/json_web_key.py +++ b/src/oci/apigateway/models/json_web_key.py @@ -197,7 +197,7 @@ def key_ops(self, key_ops): @property def alg(self): """ - **[Required]** Gets the alg of this JsonWebKey. + Gets the alg of this JsonWebKey. The algorithm intended for use with this key. diff --git a/src/oci/apigateway/models/o_auth2_login_backend.py b/src/oci/apigateway/models/o_auth2_login_backend.py new file mode 100644 index 0000000000..8729e22896 --- /dev/null +++ b/src/oci/apigateway/models/o_auth2_login_backend.py @@ -0,0 +1,49 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190501 + +from .api_specification_route_backend import ApiSpecificationRouteBackend +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class OAuth2LoginBackend(ApiSpecificationRouteBackend): + """ + Backend which completes OAuth2/OIDC flow post redirection from Idp. + """ + + def __init__(self, **kwargs): + """ + Initializes a new OAuth2LoginBackend object with values from keyword arguments. The default value of the :py:attr:`~oci.apigateway.models.OAuth2LoginBackend.type` attribute + of this class is ``OAUTH2_LOGIN_BACKEND`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param type: + The value to assign to the type property of this OAuth2LoginBackend. + Allowed values for this property are: "ORACLE_FUNCTIONS_BACKEND", "HTTP_BACKEND", "STOCK_RESPONSE_BACKEND", "DYNAMIC_ROUTING_BACKEND", "OAUTH2_LOGOUT_BACKEND", "OAUTH2_LOGIN_BACKEND" + :type type: str + + """ + self.swagger_types = { + 'type': 'str' + } + self.attribute_map = { + 'type': 'type' + } + self._type = None + self._type = 'OAUTH2_LOGIN_BACKEND' + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/apigateway/models/o_auth2_logout_backend.py b/src/oci/apigateway/models/o_auth2_logout_backend.py index 37961a4ffa..93652d541a 100644 --- a/src/oci/apigateway/models/o_auth2_logout_backend.py +++ b/src/oci/apigateway/models/o_auth2_logout_backend.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param type: The value to assign to the type property of this OAuth2LogoutBackend. - Allowed values for this property are: "ORACLE_FUNCTIONS_BACKEND", "HTTP_BACKEND", "STOCK_RESPONSE_BACKEND", "DYNAMIC_ROUTING_BACKEND", "OAUTH2_LOGOUT_BACKEND" + Allowed values for this property are: "ORACLE_FUNCTIONS_BACKEND", "HTTP_BACKEND", "STOCK_RESPONSE_BACKEND", "DYNAMIC_ROUTING_BACKEND", "OAUTH2_LOGOUT_BACKEND", "OAUTH2_LOGIN_BACKEND" :type type: str :param allowed_post_logout_uris: diff --git a/src/oci/apigateway/models/o_auth2_response_validation_failure_policy.py b/src/oci/apigateway/models/o_auth2_response_validation_failure_policy.py index 7bba51e370..6d939ef536 100644 --- a/src/oci/apigateway/models/o_auth2_response_validation_failure_policy.py +++ b/src/oci/apigateway/models/o_auth2_response_validation_failure_policy.py @@ -73,6 +73,10 @@ def __init__(self, **kwargs): The value to assign to the logout_path property of this OAuth2ResponseValidationFailurePolicy. :type logout_path: str + :param login_path: + The value to assign to the login_path property of this OAuth2ResponseValidationFailurePolicy. + :type login_path: str + """ self.swagger_types = { 'type': 'str', @@ -85,7 +89,8 @@ def __init__(self, **kwargs): 'use_pkce': 'bool', 'response_type': 'str', 'fallback_redirect_path': 'str', - 'logout_path': 'str' + 'logout_path': 'str', + 'login_path': 'str' } self.attribute_map = { 'type': 'type', @@ -98,7 +103,8 @@ def __init__(self, **kwargs): 'use_pkce': 'usePkce', 'response_type': 'responseType', 'fallback_redirect_path': 'fallbackRedirectPath', - 'logout_path': 'logoutPath' + 'logout_path': 'logoutPath', + 'login_path': 'loginPath' } self._type = None self._client_details = None @@ -111,6 +117,7 @@ def __init__(self, **kwargs): self._response_type = None self._fallback_redirect_path = None self._logout_path = None + self._login_path = None self._type = 'OAUTH2' @property @@ -353,6 +360,34 @@ def logout_path(self, logout_path): """ self._logout_path = logout_path + @property + def login_path(self): + """ + Gets the login_path of this OAuth2ResponseValidationFailurePolicy. + The path (relative to the deployment) where the Identity Provider + will redirect the user after authentication. This path must match + a route in the specification that uses the OAUTH2_LOGIN_BACKEND. + + + :return: The login_path of this OAuth2ResponseValidationFailurePolicy. + :rtype: str + """ + return self._login_path + + @login_path.setter + def login_path(self, login_path): + """ + Sets the login_path of this OAuth2ResponseValidationFailurePolicy. + The path (relative to the deployment) where the Identity Provider + will redirect the user after authentication. This path must match + a route in the specification that uses the OAUTH2_LOGIN_BACKEND. + + + :param login_path: The login_path of this OAuth2ResponseValidationFailurePolicy. + :type: str + """ + self._login_path = login_path + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/apigateway/models/oracle_function_backend.py b/src/oci/apigateway/models/oracle_function_backend.py index 9281ee1803..3619ac500e 100644 --- a/src/oci/apigateway/models/oracle_function_backend.py +++ b/src/oci/apigateway/models/oracle_function_backend.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param type: The value to assign to the type property of this OracleFunctionBackend. - Allowed values for this property are: "ORACLE_FUNCTIONS_BACKEND", "HTTP_BACKEND", "STOCK_RESPONSE_BACKEND", "DYNAMIC_ROUTING_BACKEND", "OAUTH2_LOGOUT_BACKEND" + Allowed values for this property are: "ORACLE_FUNCTIONS_BACKEND", "HTTP_BACKEND", "STOCK_RESPONSE_BACKEND", "DYNAMIC_ROUTING_BACKEND", "OAUTH2_LOGOUT_BACKEND", "OAUTH2_LOGIN_BACKEND" :type type: str :param function_id: diff --git a/src/oci/apigateway/models/stock_response_backend.py b/src/oci/apigateway/models/stock_response_backend.py index 0127f0f109..eef1b6767f 100644 --- a/src/oci/apigateway/models/stock_response_backend.py +++ b/src/oci/apigateway/models/stock_response_backend.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param type: The value to assign to the type property of this StockResponseBackend. - Allowed values for this property are: "ORACLE_FUNCTIONS_BACKEND", "HTTP_BACKEND", "STOCK_RESPONSE_BACKEND", "DYNAMIC_ROUTING_BACKEND", "OAUTH2_LOGOUT_BACKEND" + Allowed values for this property are: "ORACLE_FUNCTIONS_BACKEND", "HTTP_BACKEND", "STOCK_RESPONSE_BACKEND", "DYNAMIC_ROUTING_BACKEND", "OAUTH2_LOGOUT_BACKEND", "OAUTH2_LOGIN_BACKEND" :type type: str :param body: diff --git a/src/oci/container_engine/models/__init__.py b/src/oci/container_engine/models/__init__.py index 53ed76ef44..4b44a01229 100644 --- a/src/oci/container_engine/models/__init__.py +++ b/src/oci/container_engine/models/__init__.py @@ -100,6 +100,7 @@ from .update_workload_mapping_details import UpdateWorkloadMappingDetails from .virtual_node import VirtualNode from .virtual_node_pool import VirtualNodePool +from .virtual_node_pool_cycling_details import VirtualNodePoolCyclingDetails from .virtual_node_pool_summary import VirtualNodePoolSummary from .virtual_node_summary import VirtualNodeSummary from .virtual_node_tags import VirtualNodeTags @@ -207,6 +208,7 @@ "UpdateWorkloadMappingDetails": UpdateWorkloadMappingDetails, "VirtualNode": VirtualNode, "VirtualNodePool": VirtualNodePool, + "VirtualNodePoolCyclingDetails": VirtualNodePoolCyclingDetails, "VirtualNodePoolSummary": VirtualNodePoolSummary, "VirtualNodeSummary": VirtualNodeSummary, "VirtualNodeTags": VirtualNodeTags, diff --git a/src/oci/container_engine/models/create_virtual_node_pool_details.py b/src/oci/container_engine/models/create_virtual_node_pool_details.py index 47ac45f545..f05da9c078 100644 --- a/src/oci/container_engine/models/create_virtual_node_pool_details.py +++ b/src/oci/container_engine/models/create_virtual_node_pool_details.py @@ -68,6 +68,10 @@ def __init__(self, **kwargs): The value to assign to the virtual_node_tags property of this CreateVirtualNodePoolDetails. :type virtual_node_tags: oci.container_engine.models.VirtualNodeTags + :param virtual_node_pool_cycling_details: + The value to assign to the virtual_node_pool_cycling_details property of this CreateVirtualNodePoolDetails. + :type virtual_node_pool_cycling_details: oci.container_engine.models.VirtualNodePoolCyclingDetails + """ self.swagger_types = { 'compartment_id': 'str', @@ -81,7 +85,8 @@ def __init__(self, **kwargs): 'pod_configuration': 'PodConfiguration', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', - 'virtual_node_tags': 'VirtualNodeTags' + 'virtual_node_tags': 'VirtualNodeTags', + 'virtual_node_pool_cycling_details': 'VirtualNodePoolCyclingDetails' } self.attribute_map = { 'compartment_id': 'compartmentId', @@ -95,7 +100,8 @@ def __init__(self, **kwargs): 'pod_configuration': 'podConfiguration', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', - 'virtual_node_tags': 'virtualNodeTags' + 'virtual_node_tags': 'virtualNodeTags', + 'virtual_node_pool_cycling_details': 'virtualNodePoolCyclingDetails' } self._compartment_id = None self._cluster_id = None @@ -109,6 +115,7 @@ def __init__(self, **kwargs): self._freeform_tags = None self._defined_tags = None self._virtual_node_tags = None + self._virtual_node_pool_cycling_details = None @property def compartment_id(self): @@ -410,6 +417,26 @@ def virtual_node_tags(self, virtual_node_tags): """ self._virtual_node_tags = virtual_node_tags + @property + def virtual_node_pool_cycling_details(self): + """ + Gets the virtual_node_pool_cycling_details of this CreateVirtualNodePoolDetails. + + :return: The virtual_node_pool_cycling_details of this CreateVirtualNodePoolDetails. + :rtype: oci.container_engine.models.VirtualNodePoolCyclingDetails + """ + return self._virtual_node_pool_cycling_details + + @virtual_node_pool_cycling_details.setter + def virtual_node_pool_cycling_details(self, virtual_node_pool_cycling_details): + """ + Sets the virtual_node_pool_cycling_details of this CreateVirtualNodePoolDetails. + + :param virtual_node_pool_cycling_details: The virtual_node_pool_cycling_details of this CreateVirtualNodePoolDetails. + :type: oci.container_engine.models.VirtualNodePoolCyclingDetails + """ + self._virtual_node_pool_cycling_details = virtual_node_pool_cycling_details + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/container_engine/models/update_virtual_node_pool_details.py b/src/oci/container_engine/models/update_virtual_node_pool_details.py index 1ac59ea07a..23f2b19448 100644 --- a/src/oci/container_engine/models/update_virtual_node_pool_details.py +++ b/src/oci/container_engine/models/update_virtual_node_pool_details.py @@ -60,6 +60,10 @@ def __init__(self, **kwargs): The value to assign to the virtual_node_tags property of this UpdateVirtualNodePoolDetails. :type virtual_node_tags: oci.container_engine.models.VirtualNodeTags + :param virtual_node_pool_cycling_details: + The value to assign to the virtual_node_pool_cycling_details property of this UpdateVirtualNodePoolDetails. + :type virtual_node_pool_cycling_details: oci.container_engine.models.VirtualNodePoolCyclingDetails + """ self.swagger_types = { 'display_name': 'str', @@ -71,7 +75,8 @@ def __init__(self, **kwargs): 'pod_configuration': 'PodConfiguration', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', - 'virtual_node_tags': 'VirtualNodeTags' + 'virtual_node_tags': 'VirtualNodeTags', + 'virtual_node_pool_cycling_details': 'VirtualNodePoolCyclingDetails' } self.attribute_map = { 'display_name': 'displayName', @@ -83,7 +88,8 @@ def __init__(self, **kwargs): 'pod_configuration': 'podConfiguration', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', - 'virtual_node_tags': 'virtualNodeTags' + 'virtual_node_tags': 'virtualNodeTags', + 'virtual_node_pool_cycling_details': 'virtualNodePoolCyclingDetails' } self._display_name = None self._initial_virtual_node_labels = None @@ -95,6 +101,7 @@ def __init__(self, **kwargs): self._freeform_tags = None self._defined_tags = None self._virtual_node_tags = None + self._virtual_node_pool_cycling_details = None @property def display_name(self): @@ -348,6 +355,26 @@ def virtual_node_tags(self, virtual_node_tags): """ self._virtual_node_tags = virtual_node_tags + @property + def virtual_node_pool_cycling_details(self): + """ + Gets the virtual_node_pool_cycling_details of this UpdateVirtualNodePoolDetails. + + :return: The virtual_node_pool_cycling_details of this UpdateVirtualNodePoolDetails. + :rtype: oci.container_engine.models.VirtualNodePoolCyclingDetails + """ + return self._virtual_node_pool_cycling_details + + @virtual_node_pool_cycling_details.setter + def virtual_node_pool_cycling_details(self, virtual_node_pool_cycling_details): + """ + Sets the virtual_node_pool_cycling_details of this UpdateVirtualNodePoolDetails. + + :param virtual_node_pool_cycling_details: The virtual_node_pool_cycling_details of this UpdateVirtualNodePoolDetails. + :type: oci.container_engine.models.VirtualNodePoolCyclingDetails + """ + self._virtual_node_pool_cycling_details = virtual_node_pool_cycling_details + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/container_engine/models/virtual_node_pool.py b/src/oci/container_engine/models/virtual_node_pool.py index b7586c55c9..b57f04c989 100644 --- a/src/oci/container_engine/models/virtual_node_pool.py +++ b/src/oci/container_engine/models/virtual_node_pool.py @@ -126,6 +126,10 @@ def __init__(self, **kwargs): The value to assign to the virtual_node_tags property of this VirtualNodePool. :type virtual_node_tags: oci.container_engine.models.VirtualNodeTags + :param virtual_node_pool_cycling_details: + The value to assign to the virtual_node_pool_cycling_details property of this VirtualNodePool. + :type virtual_node_pool_cycling_details: oci.container_engine.models.VirtualNodePoolCyclingDetails + """ self.swagger_types = { 'id': 'str', @@ -146,7 +150,8 @@ def __init__(self, **kwargs): 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', 'system_tags': 'dict(str, dict(str, object))', - 'virtual_node_tags': 'VirtualNodeTags' + 'virtual_node_tags': 'VirtualNodeTags', + 'virtual_node_pool_cycling_details': 'VirtualNodePoolCyclingDetails' } self.attribute_map = { 'id': 'id', @@ -167,7 +172,8 @@ def __init__(self, **kwargs): 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', 'system_tags': 'systemTags', - 'virtual_node_tags': 'virtualNodeTags' + 'virtual_node_tags': 'virtualNodeTags', + 'virtual_node_pool_cycling_details': 'virtualNodePoolCyclingDetails' } self._id = None self._compartment_id = None @@ -188,6 +194,7 @@ def __init__(self, **kwargs): self._defined_tags = None self._system_tags = None self._virtual_node_tags = None + self._virtual_node_pool_cycling_details = None @property def id(self): @@ -665,6 +672,26 @@ def virtual_node_tags(self, virtual_node_tags): """ self._virtual_node_tags = virtual_node_tags + @property + def virtual_node_pool_cycling_details(self): + """ + Gets the virtual_node_pool_cycling_details of this VirtualNodePool. + + :return: The virtual_node_pool_cycling_details of this VirtualNodePool. + :rtype: oci.container_engine.models.VirtualNodePoolCyclingDetails + """ + return self._virtual_node_pool_cycling_details + + @virtual_node_pool_cycling_details.setter + def virtual_node_pool_cycling_details(self, virtual_node_pool_cycling_details): + """ + Sets the virtual_node_pool_cycling_details of this VirtualNodePool. + + :param virtual_node_pool_cycling_details: The virtual_node_pool_cycling_details of this VirtualNodePool. + :type: oci.container_engine.models.VirtualNodePoolCyclingDetails + """ + self._virtual_node_pool_cycling_details = virtual_node_pool_cycling_details + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/container_engine/models/virtual_node_pool_cycling_details.py b/src/oci/container_engine/models/virtual_node_pool_cycling_details.py new file mode 100644 index 0000000000..04f8eb93ee --- /dev/null +++ b/src/oci/container_engine/models/virtual_node_pool_cycling_details.py @@ -0,0 +1,140 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20180222 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class VirtualNodePoolCyclingDetails(object): + """ + Virtual Node Pool Cycling Details + """ + + def __init__(self, **kwargs): + """ + Initializes a new VirtualNodePoolCyclingDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param maximum_unavailable: + The value to assign to the maximum_unavailable property of this VirtualNodePoolCyclingDetails. + :type maximum_unavailable: str + + :param maximum_surge: + The value to assign to the maximum_surge property of this VirtualNodePoolCyclingDetails. + :type maximum_surge: str + + :param is_virtual_node_cycling_enabled: + The value to assign to the is_virtual_node_cycling_enabled property of this VirtualNodePoolCyclingDetails. + :type is_virtual_node_cycling_enabled: bool + + """ + self.swagger_types = { + 'maximum_unavailable': 'str', + 'maximum_surge': 'str', + 'is_virtual_node_cycling_enabled': 'bool' + } + self.attribute_map = { + 'maximum_unavailable': 'maximumUnavailable', + 'maximum_surge': 'maximumSurge', + 'is_virtual_node_cycling_enabled': 'isVirtualNodeCyclingEnabled' + } + self._maximum_unavailable = None + self._maximum_surge = None + self._is_virtual_node_cycling_enabled = None + + @property + def maximum_unavailable(self): + """ + Gets the maximum_unavailable of this VirtualNodePoolCyclingDetails. + Maximum active virtual nodes that would be terminated from virtual nodepool during the cycling virtual nodepool process. + OKE supports both integer and percentage input. + Defaults to 0, Ranges from 0 to Virtual Nodepool size or 0% to 100% + + + :return: The maximum_unavailable of this VirtualNodePoolCyclingDetails. + :rtype: str + """ + return self._maximum_unavailable + + @maximum_unavailable.setter + def maximum_unavailable(self, maximum_unavailable): + """ + Sets the maximum_unavailable of this VirtualNodePoolCyclingDetails. + Maximum active virtual nodes that would be terminated from virtual nodepool during the cycling virtual nodepool process. + OKE supports both integer and percentage input. + Defaults to 0, Ranges from 0 to Virtual Nodepool size or 0% to 100% + + + :param maximum_unavailable: The maximum_unavailable of this VirtualNodePoolCyclingDetails. + :type: str + """ + self._maximum_unavailable = maximum_unavailable + + @property + def maximum_surge(self): + """ + Gets the maximum_surge of this VirtualNodePoolCyclingDetails. + Maximum additional new virtual nodes that would be temporarily created and added to virtual nodepool during the cycling virtual nodepool process. + OKE supports both integer and percentage input. + Defaults to 1, Ranges from 0 to Virtual Nodepool size or 0% to 100% + + + :return: The maximum_surge of this VirtualNodePoolCyclingDetails. + :rtype: str + """ + return self._maximum_surge + + @maximum_surge.setter + def maximum_surge(self, maximum_surge): + """ + Sets the maximum_surge of this VirtualNodePoolCyclingDetails. + Maximum additional new virtual nodes that would be temporarily created and added to virtual nodepool during the cycling virtual nodepool process. + OKE supports both integer and percentage input. + Defaults to 1, Ranges from 0 to Virtual Nodepool size or 0% to 100% + + + :param maximum_surge: The maximum_surge of this VirtualNodePoolCyclingDetails. + :type: str + """ + self._maximum_surge = maximum_surge + + @property + def is_virtual_node_cycling_enabled(self): + """ + Gets the is_virtual_node_cycling_enabled of this VirtualNodePoolCyclingDetails. + If virtual nodes in the virtual nodepool will be cycled to have new changes. + + + :return: The is_virtual_node_cycling_enabled of this VirtualNodePoolCyclingDetails. + :rtype: bool + """ + return self._is_virtual_node_cycling_enabled + + @is_virtual_node_cycling_enabled.setter + def is_virtual_node_cycling_enabled(self, is_virtual_node_cycling_enabled): + """ + Sets the is_virtual_node_cycling_enabled of this VirtualNodePoolCyclingDetails. + If virtual nodes in the virtual nodepool will be cycled to have new changes. + + + :param is_virtual_node_cycling_enabled: The is_virtual_node_cycling_enabled of this VirtualNodePoolCyclingDetails. + :type: bool + """ + self._is_virtual_node_cycling_enabled = is_virtual_node_cycling_enabled + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/container_engine/models/virtual_node_pool_summary.py b/src/oci/container_engine/models/virtual_node_pool_summary.py index fae3ffbd19..74c4032424 100644 --- a/src/oci/container_engine/models/virtual_node_pool_summary.py +++ b/src/oci/container_engine/models/virtual_node_pool_summary.py @@ -126,6 +126,10 @@ def __init__(self, **kwargs): The value to assign to the virtual_node_tags property of this VirtualNodePoolSummary. :type virtual_node_tags: oci.container_engine.models.VirtualNodeTags + :param virtual_node_pool_cycling_details: + The value to assign to the virtual_node_pool_cycling_details property of this VirtualNodePoolSummary. + :type virtual_node_pool_cycling_details: oci.container_engine.models.VirtualNodePoolCyclingDetails + """ self.swagger_types = { 'id': 'str', @@ -146,7 +150,8 @@ def __init__(self, **kwargs): 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', 'system_tags': 'dict(str, dict(str, object))', - 'virtual_node_tags': 'VirtualNodeTags' + 'virtual_node_tags': 'VirtualNodeTags', + 'virtual_node_pool_cycling_details': 'VirtualNodePoolCyclingDetails' } self.attribute_map = { 'id': 'id', @@ -167,7 +172,8 @@ def __init__(self, **kwargs): 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', 'system_tags': 'systemTags', - 'virtual_node_tags': 'virtualNodeTags' + 'virtual_node_tags': 'virtualNodeTags', + 'virtual_node_pool_cycling_details': 'virtualNodePoolCyclingDetails' } self._id = None self._compartment_id = None @@ -188,6 +194,7 @@ def __init__(self, **kwargs): self._defined_tags = None self._system_tags = None self._virtual_node_tags = None + self._virtual_node_pool_cycling_details = None @property def id(self): @@ -665,6 +672,26 @@ def virtual_node_tags(self, virtual_node_tags): """ self._virtual_node_tags = virtual_node_tags + @property + def virtual_node_pool_cycling_details(self): + """ + Gets the virtual_node_pool_cycling_details of this VirtualNodePoolSummary. + + :return: The virtual_node_pool_cycling_details of this VirtualNodePoolSummary. + :rtype: oci.container_engine.models.VirtualNodePoolCyclingDetails + """ + return self._virtual_node_pool_cycling_details + + @virtual_node_pool_cycling_details.setter + def virtual_node_pool_cycling_details(self, virtual_node_pool_cycling_details): + """ + Sets the virtual_node_pool_cycling_details of this VirtualNodePoolSummary. + + :param virtual_node_pool_cycling_details: The virtual_node_pool_cycling_details of this VirtualNodePoolSummary. + :type: oci.container_engine.models.VirtualNodePoolCyclingDetails + """ + self._virtual_node_pool_cycling_details = virtual_node_pool_cycling_details + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/container_engine/models/work_request.py b/src/oci/container_engine/models/work_request.py index 6dab81379d..db40d23141 100644 --- a/src/oci/container_engine/models/work_request.py +++ b/src/oci/container_engine/models/work_request.py @@ -71,6 +71,10 @@ class WorkRequest(object): #: This constant has a value of "VIRTUALNODE_DELETE" OPERATION_TYPE_VIRTUALNODE_DELETE = "VIRTUALNODE_DELETE" + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "VIRTUALNODEPOOL_CYCLING" + OPERATION_TYPE_VIRTUALNODEPOOL_CYCLING = "VIRTUALNODEPOOL_CYCLING" + #: A constant which can be used with the operation_type property of a WorkRequest. #: This constant has a value of "ENABLE_ADDON" OPERATION_TYPE_ENABLE_ADDON = "ENABLE_ADDON" @@ -138,7 +142,7 @@ def __init__(self, **kwargs): :param operation_type: The value to assign to the operation_type property of this WorkRequest. - Allowed values for this property are: "CLUSTER_CREATE", "CLUSTER_UPDATE", "CLUSTER_DELETE", "CREATE_NAMESPACE", "NODEPOOL_CREATE", "NODEPOOL_UPDATE", "NODEPOOL_DELETE", "NODEPOOL_RECONCILE", "NODEPOOL_CYCLING", "WORKREQUEST_CANCEL", "VIRTUALNODEPOOL_CREATE", "VIRTUALNODEPOOL_UPDATE", "VIRTUALNODEPOOL_DELETE", "VIRTUALNODE_DELETE", "ENABLE_ADDON", "UPDATE_ADDON", "DISABLE_ADDON", "RECONCILE_ADDON", "CLUSTER_NODE_REBOOT", "CLUSTER_NODE_REPLACE_BOOT_VOLUME", "START_PUBLIC_API_ENDPOINT_DECOMMISSION", "ROLLBACK_PUBLIC_API_ENDPOINT_DECOMMISSION", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CLUSTER_CREATE", "CLUSTER_UPDATE", "CLUSTER_DELETE", "CREATE_NAMESPACE", "NODEPOOL_CREATE", "NODEPOOL_UPDATE", "NODEPOOL_DELETE", "NODEPOOL_RECONCILE", "NODEPOOL_CYCLING", "WORKREQUEST_CANCEL", "VIRTUALNODEPOOL_CREATE", "VIRTUALNODEPOOL_UPDATE", "VIRTUALNODEPOOL_DELETE", "VIRTUALNODE_DELETE", "VIRTUALNODEPOOL_CYCLING", "ENABLE_ADDON", "UPDATE_ADDON", "DISABLE_ADDON", "RECONCILE_ADDON", "CLUSTER_NODE_REBOOT", "CLUSTER_NODE_REPLACE_BOOT_VOLUME", "START_PUBLIC_API_ENDPOINT_DECOMMISSION", "ROLLBACK_PUBLIC_API_ENDPOINT_DECOMMISSION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type operation_type: str @@ -228,7 +232,7 @@ def operation_type(self): Gets the operation_type of this WorkRequest. The type of work the work request is doing. - Allowed values for this property are: "CLUSTER_CREATE", "CLUSTER_UPDATE", "CLUSTER_DELETE", "CREATE_NAMESPACE", "NODEPOOL_CREATE", "NODEPOOL_UPDATE", "NODEPOOL_DELETE", "NODEPOOL_RECONCILE", "NODEPOOL_CYCLING", "WORKREQUEST_CANCEL", "VIRTUALNODEPOOL_CREATE", "VIRTUALNODEPOOL_UPDATE", "VIRTUALNODEPOOL_DELETE", "VIRTUALNODE_DELETE", "ENABLE_ADDON", "UPDATE_ADDON", "DISABLE_ADDON", "RECONCILE_ADDON", "CLUSTER_NODE_REBOOT", "CLUSTER_NODE_REPLACE_BOOT_VOLUME", "START_PUBLIC_API_ENDPOINT_DECOMMISSION", "ROLLBACK_PUBLIC_API_ENDPOINT_DECOMMISSION", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CLUSTER_CREATE", "CLUSTER_UPDATE", "CLUSTER_DELETE", "CREATE_NAMESPACE", "NODEPOOL_CREATE", "NODEPOOL_UPDATE", "NODEPOOL_DELETE", "NODEPOOL_RECONCILE", "NODEPOOL_CYCLING", "WORKREQUEST_CANCEL", "VIRTUALNODEPOOL_CREATE", "VIRTUALNODEPOOL_UPDATE", "VIRTUALNODEPOOL_DELETE", "VIRTUALNODE_DELETE", "VIRTUALNODEPOOL_CYCLING", "ENABLE_ADDON", "UPDATE_ADDON", "DISABLE_ADDON", "RECONCILE_ADDON", "CLUSTER_NODE_REBOOT", "CLUSTER_NODE_REPLACE_BOOT_VOLUME", "START_PUBLIC_API_ENDPOINT_DECOMMISSION", "ROLLBACK_PUBLIC_API_ENDPOINT_DECOMMISSION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -247,7 +251,7 @@ def operation_type(self, operation_type): :param operation_type: The operation_type of this WorkRequest. :type: str """ - allowed_values = ["CLUSTER_CREATE", "CLUSTER_UPDATE", "CLUSTER_DELETE", "CREATE_NAMESPACE", "NODEPOOL_CREATE", "NODEPOOL_UPDATE", "NODEPOOL_DELETE", "NODEPOOL_RECONCILE", "NODEPOOL_CYCLING", "WORKREQUEST_CANCEL", "VIRTUALNODEPOOL_CREATE", "VIRTUALNODEPOOL_UPDATE", "VIRTUALNODEPOOL_DELETE", "VIRTUALNODE_DELETE", "ENABLE_ADDON", "UPDATE_ADDON", "DISABLE_ADDON", "RECONCILE_ADDON", "CLUSTER_NODE_REBOOT", "CLUSTER_NODE_REPLACE_BOOT_VOLUME", "START_PUBLIC_API_ENDPOINT_DECOMMISSION", "ROLLBACK_PUBLIC_API_ENDPOINT_DECOMMISSION"] + allowed_values = ["CLUSTER_CREATE", "CLUSTER_UPDATE", "CLUSTER_DELETE", "CREATE_NAMESPACE", "NODEPOOL_CREATE", "NODEPOOL_UPDATE", "NODEPOOL_DELETE", "NODEPOOL_RECONCILE", "NODEPOOL_CYCLING", "WORKREQUEST_CANCEL", "VIRTUALNODEPOOL_CREATE", "VIRTUALNODEPOOL_UPDATE", "VIRTUALNODEPOOL_DELETE", "VIRTUALNODE_DELETE", "VIRTUALNODEPOOL_CYCLING", "ENABLE_ADDON", "UPDATE_ADDON", "DISABLE_ADDON", "RECONCILE_ADDON", "CLUSTER_NODE_REBOOT", "CLUSTER_NODE_REPLACE_BOOT_VOLUME", "START_PUBLIC_API_ENDPOINT_DECOMMISSION", "ROLLBACK_PUBLIC_API_ENDPOINT_DECOMMISSION"] if not value_allowed_none_or_none_sentinel(operation_type, allowed_values): operation_type = 'UNKNOWN_ENUM_VALUE' self._operation_type = operation_type diff --git a/src/oci/container_engine/models/work_request_summary.py b/src/oci/container_engine/models/work_request_summary.py index 35d0ad79ff..0093ab2037 100644 --- a/src/oci/container_engine/models/work_request_summary.py +++ b/src/oci/container_engine/models/work_request_summary.py @@ -71,6 +71,10 @@ class WorkRequestSummary(object): #: This constant has a value of "VIRTUALNODE_DELETE" OPERATION_TYPE_VIRTUALNODE_DELETE = "VIRTUALNODE_DELETE" + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "VIRTUALNODEPOOL_CYCLING" + OPERATION_TYPE_VIRTUALNODEPOOL_CYCLING = "VIRTUALNODEPOOL_CYCLING" + #: A constant which can be used with the operation_type property of a WorkRequestSummary. #: This constant has a value of "ENABLE_ADDON" OPERATION_TYPE_ENABLE_ADDON = "ENABLE_ADDON" @@ -138,7 +142,7 @@ def __init__(self, **kwargs): :param operation_type: The value to assign to the operation_type property of this WorkRequestSummary. - Allowed values for this property are: "CLUSTER_CREATE", "CLUSTER_UPDATE", "CLUSTER_DELETE", "CREATE_NAMESPACE", "NODEPOOL_CREATE", "NODEPOOL_UPDATE", "NODEPOOL_DELETE", "NODEPOOL_RECONCILE", "NODEPOOL_CYCLING", "WORKREQUEST_CANCEL", "VIRTUALNODEPOOL_CREATE", "VIRTUALNODEPOOL_UPDATE", "VIRTUALNODEPOOL_DELETE", "VIRTUALNODE_DELETE", "ENABLE_ADDON", "UPDATE_ADDON", "DISABLE_ADDON", "RECONCILE_ADDON", "CLUSTER_NODE_REBOOT", "CLUSTER_NODE_REPLACE_BOOT_VOLUME", "START_PUBLIC_API_ENDPOINT_DECOMMISSION", "ROLLBACK_PUBLIC_API_ENDPOINT_DECOMMISSION", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CLUSTER_CREATE", "CLUSTER_UPDATE", "CLUSTER_DELETE", "CREATE_NAMESPACE", "NODEPOOL_CREATE", "NODEPOOL_UPDATE", "NODEPOOL_DELETE", "NODEPOOL_RECONCILE", "NODEPOOL_CYCLING", "WORKREQUEST_CANCEL", "VIRTUALNODEPOOL_CREATE", "VIRTUALNODEPOOL_UPDATE", "VIRTUALNODEPOOL_DELETE", "VIRTUALNODE_DELETE", "VIRTUALNODEPOOL_CYCLING", "ENABLE_ADDON", "UPDATE_ADDON", "DISABLE_ADDON", "RECONCILE_ADDON", "CLUSTER_NODE_REBOOT", "CLUSTER_NODE_REPLACE_BOOT_VOLUME", "START_PUBLIC_API_ENDPOINT_DECOMMISSION", "ROLLBACK_PUBLIC_API_ENDPOINT_DECOMMISSION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type operation_type: str @@ -228,7 +232,7 @@ def operation_type(self): Gets the operation_type of this WorkRequestSummary. The type of work the work request is doing. - Allowed values for this property are: "CLUSTER_CREATE", "CLUSTER_UPDATE", "CLUSTER_DELETE", "CREATE_NAMESPACE", "NODEPOOL_CREATE", "NODEPOOL_UPDATE", "NODEPOOL_DELETE", "NODEPOOL_RECONCILE", "NODEPOOL_CYCLING", "WORKREQUEST_CANCEL", "VIRTUALNODEPOOL_CREATE", "VIRTUALNODEPOOL_UPDATE", "VIRTUALNODEPOOL_DELETE", "VIRTUALNODE_DELETE", "ENABLE_ADDON", "UPDATE_ADDON", "DISABLE_ADDON", "RECONCILE_ADDON", "CLUSTER_NODE_REBOOT", "CLUSTER_NODE_REPLACE_BOOT_VOLUME", "START_PUBLIC_API_ENDPOINT_DECOMMISSION", "ROLLBACK_PUBLIC_API_ENDPOINT_DECOMMISSION", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CLUSTER_CREATE", "CLUSTER_UPDATE", "CLUSTER_DELETE", "CREATE_NAMESPACE", "NODEPOOL_CREATE", "NODEPOOL_UPDATE", "NODEPOOL_DELETE", "NODEPOOL_RECONCILE", "NODEPOOL_CYCLING", "WORKREQUEST_CANCEL", "VIRTUALNODEPOOL_CREATE", "VIRTUALNODEPOOL_UPDATE", "VIRTUALNODEPOOL_DELETE", "VIRTUALNODE_DELETE", "VIRTUALNODEPOOL_CYCLING", "ENABLE_ADDON", "UPDATE_ADDON", "DISABLE_ADDON", "RECONCILE_ADDON", "CLUSTER_NODE_REBOOT", "CLUSTER_NODE_REPLACE_BOOT_VOLUME", "START_PUBLIC_API_ENDPOINT_DECOMMISSION", "ROLLBACK_PUBLIC_API_ENDPOINT_DECOMMISSION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -247,7 +251,7 @@ def operation_type(self, operation_type): :param operation_type: The operation_type of this WorkRequestSummary. :type: str """ - allowed_values = ["CLUSTER_CREATE", "CLUSTER_UPDATE", "CLUSTER_DELETE", "CREATE_NAMESPACE", "NODEPOOL_CREATE", "NODEPOOL_UPDATE", "NODEPOOL_DELETE", "NODEPOOL_RECONCILE", "NODEPOOL_CYCLING", "WORKREQUEST_CANCEL", "VIRTUALNODEPOOL_CREATE", "VIRTUALNODEPOOL_UPDATE", "VIRTUALNODEPOOL_DELETE", "VIRTUALNODE_DELETE", "ENABLE_ADDON", "UPDATE_ADDON", "DISABLE_ADDON", "RECONCILE_ADDON", "CLUSTER_NODE_REBOOT", "CLUSTER_NODE_REPLACE_BOOT_VOLUME", "START_PUBLIC_API_ENDPOINT_DECOMMISSION", "ROLLBACK_PUBLIC_API_ENDPOINT_DECOMMISSION"] + allowed_values = ["CLUSTER_CREATE", "CLUSTER_UPDATE", "CLUSTER_DELETE", "CREATE_NAMESPACE", "NODEPOOL_CREATE", "NODEPOOL_UPDATE", "NODEPOOL_DELETE", "NODEPOOL_RECONCILE", "NODEPOOL_CYCLING", "WORKREQUEST_CANCEL", "VIRTUALNODEPOOL_CREATE", "VIRTUALNODEPOOL_UPDATE", "VIRTUALNODEPOOL_DELETE", "VIRTUALNODE_DELETE", "VIRTUALNODEPOOL_CYCLING", "ENABLE_ADDON", "UPDATE_ADDON", "DISABLE_ADDON", "RECONCILE_ADDON", "CLUSTER_NODE_REBOOT", "CLUSTER_NODE_REPLACE_BOOT_VOLUME", "START_PUBLIC_API_ENDPOINT_DECOMMISSION", "ROLLBACK_PUBLIC_API_ENDPOINT_DECOMMISSION"] if not value_allowed_none_or_none_sentinel(operation_type, allowed_values): operation_type = 'UNKNOWN_ENUM_VALUE' self._operation_type = operation_type diff --git a/src/oci/database/models/autonomous_database.py b/src/oci/database/models/autonomous_database.py index 5431e3500b..a67c95f627 100644 --- a/src/oci/database/models/autonomous_database.py +++ b/src/oci/database/models/autonomous_database.py @@ -328,6 +328,10 @@ def __init__(self, **kwargs): Initializes a new AutonomousDatabase object with values from keyword arguments. The following keyword arguments are supported (corresponding to the getters/setters of this class): + :param external_location_zone: + The value to assign to the external_location_zone property of this AutonomousDatabase. + :type external_location_zone: str + :param id: The value to assign to the id property of this AutonomousDatabase. :type id: str @@ -886,6 +890,10 @@ def __init__(self, **kwargs): The value to assign to the remote_disaster_recovery_configuration property of this AutonomousDatabase. :type remote_disaster_recovery_configuration: oci.database.models.DisasterRecoveryConfiguration + :param access_types: + The value to assign to the access_types property of this AutonomousDatabase. + :type access_types: list[str] + :param net_services_architecture: The value to assign to the net_services_architecture property of this AutonomousDatabase. Allowed values for this property are: "DEDICATED", "SHARED", "DRCP", 'UNKNOWN_ENUM_VALUE'. @@ -920,6 +928,7 @@ def __init__(self, **kwargs): """ self.swagger_types = { + 'external_location_zone': 'str', 'id': 'str', 'compartment_id': 'str', 'subscription_id': 'str', @@ -1051,6 +1060,7 @@ def __init__(self, **kwargs): 'disaster_recovery_region_type': 'str', 'time_disaster_recovery_role_changed': 'datetime', 'remote_disaster_recovery_configuration': 'DisasterRecoveryConfiguration', + 'access_types': 'list[str]', 'net_services_architecture': 'str', 'availability_domain': 'str', 'cluster_placement_group_id': 'str', @@ -1060,6 +1070,7 @@ def __init__(self, **kwargs): 'local_adg_resource_pool_leader_id': 'str' } self.attribute_map = { + 'external_location_zone': 'externalLocationZone', 'id': 'id', 'compartment_id': 'compartmentId', 'subscription_id': 'subscriptionId', @@ -1191,6 +1202,7 @@ def __init__(self, **kwargs): 'disaster_recovery_region_type': 'disasterRecoveryRegionType', 'time_disaster_recovery_role_changed': 'timeDisasterRecoveryRoleChanged', 'remote_disaster_recovery_configuration': 'remoteDisasterRecoveryConfiguration', + 'access_types': 'accessTypes', 'net_services_architecture': 'netServicesArchitecture', 'availability_domain': 'availabilityDomain', 'cluster_placement_group_id': 'clusterPlacementGroupId', @@ -1199,6 +1211,7 @@ def __init__(self, **kwargs): 'additional_attributes': 'additionalAttributes', 'local_adg_resource_pool_leader_id': 'localAdgResourcePoolLeaderId' } + self._external_location_zone = None self._id = None self._compartment_id = None self._subscription_id = None @@ -1330,6 +1343,7 @@ def __init__(self, **kwargs): self._disaster_recovery_region_type = None self._time_disaster_recovery_role_changed = None self._remote_disaster_recovery_configuration = None + self._access_types = None self._net_services_architecture = None self._availability_domain = None self._cluster_placement_group_id = None @@ -1338,6 +1352,30 @@ def __init__(self, **kwargs): self._additional_attributes = None self._local_adg_resource_pool_leader_id = None + @property + def external_location_zone(self): + """ + Gets the external_location_zone of this AutonomousDatabase. + The external logical zone where the Autonomous AI Database Serverless instance is located (Intended for multicloud use). + + + :return: The external_location_zone of this AutonomousDatabase. + :rtype: str + """ + return self._external_location_zone + + @external_location_zone.setter + def external_location_zone(self, external_location_zone): + """ + Sets the external_location_zone of this AutonomousDatabase. + The external logical zone where the Autonomous AI Database Serverless instance is located (Intended for multicloud use). + + + :param external_location_zone: The external_location_zone of this AutonomousDatabase. + :type: str + """ + self._external_location_zone = external_location_zone + @property def id(self): """ @@ -4878,6 +4916,30 @@ def remote_disaster_recovery_configuration(self, remote_disaster_recovery_config """ self._remote_disaster_recovery_configuration = remote_disaster_recovery_configuration + @property + def access_types(self): + """ + Gets the access_types of this AutonomousDatabase. + List of access types for an Autonomous AI Database. + + + :return: The access_types of this AutonomousDatabase. + :rtype: list[str] + """ + return self._access_types + + @access_types.setter + def access_types(self, access_types): + """ + Sets the access_types of this AutonomousDatabase. + List of access types for an Autonomous AI Database. + + + :param access_types: The access_types of this AutonomousDatabase. + :type: list[str] + """ + self._access_types = access_types + @property def net_services_architecture(self): """ diff --git a/src/oci/database/models/autonomous_database_standby_summary.py b/src/oci/database/models/autonomous_database_standby_summary.py index fa17bcc8b2..6114ed1a82 100644 --- a/src/oci/database/models/autonomous_database_standby_summary.py +++ b/src/oci/database/models/autonomous_database_standby_summary.py @@ -146,6 +146,10 @@ def __init__(self, **kwargs): The value to assign to the availability_domain property of this AutonomousDatabaseStandbySummary. :type availability_domain: str + :param external_location_zone: + The value to assign to the external_location_zone property of this AutonomousDatabaseStandbySummary. + :type external_location_zone: str + """ self.swagger_types = { 'lag_time_in_seconds': 'int', @@ -156,7 +160,8 @@ def __init__(self, **kwargs): 'time_maintenance_begin': 'datetime', 'time_maintenance_end': 'datetime', 'maintenance_target_component': 'str', - 'availability_domain': 'str' + 'availability_domain': 'str', + 'external_location_zone': 'str' } self.attribute_map = { 'lag_time_in_seconds': 'lagTimeInSeconds', @@ -167,7 +172,8 @@ def __init__(self, **kwargs): 'time_maintenance_begin': 'timeMaintenanceBegin', 'time_maintenance_end': 'timeMaintenanceEnd', 'maintenance_target_component': 'maintenanceTargetComponent', - 'availability_domain': 'availabilityDomain' + 'availability_domain': 'availabilityDomain', + 'external_location_zone': 'externalLocationZone' } self._lag_time_in_seconds = None self._lifecycle_state = None @@ -178,6 +184,7 @@ def __init__(self, **kwargs): self._time_maintenance_end = None self._maintenance_target_component = None self._availability_domain = None + self._external_location_zone = None @property def lag_time_in_seconds(self): @@ -401,6 +408,30 @@ def availability_domain(self, availability_domain): """ self._availability_domain = availability_domain + @property + def external_location_zone(self): + """ + Gets the external_location_zone of this AutonomousDatabaseStandbySummary. + The external logical zone where the local Autonomous Data Guard is located (Intended for multicloud use). + + + :return: The external_location_zone of this AutonomousDatabaseStandbySummary. + :rtype: str + """ + return self._external_location_zone + + @external_location_zone.setter + def external_location_zone(self, external_location_zone): + """ + Sets the external_location_zone of this AutonomousDatabaseStandbySummary. + The external logical zone where the local Autonomous Data Guard is located (Intended for multicloud use). + + + :param external_location_zone: The external_location_zone of this AutonomousDatabaseStandbySummary. + :type: str + """ + self._external_location_zone = external_location_zone + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/database/models/autonomous_database_summary.py b/src/oci/database/models/autonomous_database_summary.py index bc2635ee9e..3e9d171e03 100644 --- a/src/oci/database/models/autonomous_database_summary.py +++ b/src/oci/database/models/autonomous_database_summary.py @@ -888,6 +888,10 @@ def __init__(self, **kwargs): The value to assign to the remote_disaster_recovery_configuration property of this AutonomousDatabaseSummary. :type remote_disaster_recovery_configuration: oci.database.models.DisasterRecoveryConfiguration + :param access_types: + The value to assign to the access_types property of this AutonomousDatabaseSummary. + :type access_types: list[str] + :param net_services_architecture: The value to assign to the net_services_architecture property of this AutonomousDatabaseSummary. Allowed values for this property are: "DEDICATED", "SHARED", "DRCP", 'UNKNOWN_ENUM_VALUE'. @@ -1053,6 +1057,7 @@ def __init__(self, **kwargs): 'disaster_recovery_region_type': 'str', 'time_disaster_recovery_role_changed': 'datetime', 'remote_disaster_recovery_configuration': 'DisasterRecoveryConfiguration', + 'access_types': 'list[str]', 'net_services_architecture': 'str', 'availability_domain': 'str', 'cluster_placement_group_id': 'str', @@ -1193,6 +1198,7 @@ def __init__(self, **kwargs): 'disaster_recovery_region_type': 'disasterRecoveryRegionType', 'time_disaster_recovery_role_changed': 'timeDisasterRecoveryRoleChanged', 'remote_disaster_recovery_configuration': 'remoteDisasterRecoveryConfiguration', + 'access_types': 'accessTypes', 'net_services_architecture': 'netServicesArchitecture', 'availability_domain': 'availabilityDomain', 'cluster_placement_group_id': 'clusterPlacementGroupId', @@ -1332,6 +1338,7 @@ def __init__(self, **kwargs): self._disaster_recovery_region_type = None self._time_disaster_recovery_role_changed = None self._remote_disaster_recovery_configuration = None + self._access_types = None self._net_services_architecture = None self._availability_domain = None self._cluster_placement_group_id = None @@ -4880,6 +4887,30 @@ def remote_disaster_recovery_configuration(self, remote_disaster_recovery_config """ self._remote_disaster_recovery_configuration = remote_disaster_recovery_configuration + @property + def access_types(self): + """ + Gets the access_types of this AutonomousDatabaseSummary. + List of access types for an Autonomous AI Database. + + + :return: The access_types of this AutonomousDatabaseSummary. + :rtype: list[str] + """ + return self._access_types + + @access_types.setter + def access_types(self, access_types): + """ + Sets the access_types of this AutonomousDatabaseSummary. + List of access types for an Autonomous AI Database. + + + :param access_types: The access_types of this AutonomousDatabaseSummary. + :type: list[str] + """ + self._access_types = access_types + @property def net_services_architecture(self): """ diff --git a/src/oci/database/models/autonomous_dw_database.py b/src/oci/database/models/autonomous_dw_database.py index 4ed88e9ed7..c7bb53b083 100644 --- a/src/oci/database/models/autonomous_dw_database.py +++ b/src/oci/database/models/autonomous_dw_database.py @@ -869,6 +869,10 @@ def __init__(self, **kwargs): The value to assign to the remote_disaster_recovery_configuration property of this AutonomousDwDatabase. :type remote_disaster_recovery_configuration: oci.database.models.DisasterRecoveryConfiguration + :param access_types: + The value to assign to the access_types property of this AutonomousDwDatabase. + :type access_types: list[str] + :param net_services_architecture: The value to assign to the net_services_architecture property of this AutonomousDwDatabase. Allowed values for this property are: "DEDICATED", "SHARED", "DRCP" @@ -1032,6 +1036,7 @@ def __init__(self, **kwargs): 'disaster_recovery_region_type': 'str', 'time_disaster_recovery_role_changed': 'datetime', 'remote_disaster_recovery_configuration': 'DisasterRecoveryConfiguration', + 'access_types': 'list[str]', 'net_services_architecture': 'str', 'availability_domain': 'str', 'cluster_placement_group_id': 'str', @@ -1172,6 +1177,7 @@ def __init__(self, **kwargs): 'disaster_recovery_region_type': 'disasterRecoveryRegionType', 'time_disaster_recovery_role_changed': 'timeDisasterRecoveryRoleChanged', 'remote_disaster_recovery_configuration': 'remoteDisasterRecoveryConfiguration', + 'access_types': 'accessTypes', 'net_services_architecture': 'netServicesArchitecture', 'availability_domain': 'availabilityDomain', 'cluster_placement_group_id': 'clusterPlacementGroupId', @@ -1311,6 +1317,7 @@ def __init__(self, **kwargs): self._disaster_recovery_region_type = None self._time_disaster_recovery_role_changed = None self._remote_disaster_recovery_configuration = None + self._access_types = None self._net_services_architecture = None self._availability_domain = None self._cluster_placement_group_id = None @@ -4876,6 +4883,30 @@ def remote_disaster_recovery_configuration(self, remote_disaster_recovery_config """ self._remote_disaster_recovery_configuration = remote_disaster_recovery_configuration + @property + def access_types(self): + """ + Gets the access_types of this AutonomousDwDatabase. + List of access types for an Autonomous AI Database. + + + :return: The access_types of this AutonomousDwDatabase. + :rtype: list[str] + """ + return self._access_types + + @access_types.setter + def access_types(self, access_types): + """ + Sets the access_types of this AutonomousDwDatabase. + List of access types for an Autonomous AI Database. + + + :param access_types: The access_types of this AutonomousDwDatabase. + :type: list[str] + """ + self._access_types = access_types + @property def net_services_architecture(self): """ diff --git a/src/oci/dns/dns_client.py b/src/oci/dns/dns_client.py index 09f9599063..d44e194381 100644 --- a/src/oci/dns/dns_client.py +++ b/src/oci/dns/dns_client.py @@ -1584,7 +1584,7 @@ def create_zone(self, create_zone_details, **kwargs): :param obj retry_strategy: (optional) A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. - This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it. + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. The specifics of the default retry strategy are described `here `__. To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. @@ -1652,6 +1652,8 @@ def create_zone(self, create_zone_details, **kwargs): operation_retry_strategy=kwargs.get('retry_strategy'), client_retry_strategy=self.retry_strategy ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY if retry_strategy: if not isinstance(retry_strategy, retry.NoneRetryStrategy): @@ -1720,7 +1722,7 @@ def create_zone_from_zone_file(self, compartment_id, create_zone_from_zone_file_ :param obj retry_strategy: (optional) A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. - This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it. + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. The specifics of the default retry strategy are described `here `__. To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. @@ -1816,6 +1818,8 @@ def create_zone_from_zone_file(self, compartment_id, create_zone_from_zone_file_ operation_retry_strategy=kwargs.get('retry_strategy'), client_retry_strategy=self.retry_strategy ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY if retry_strategy: if not isinstance(retry_strategy, retry.NoneRetryStrategy): @@ -5277,7 +5281,7 @@ def list_steering_policies(self, compartment_id, **kwargs): :param str lifecycle_state: (optional) The state of a resource. - Allowed values are: "ACTIVE", "CREATING", "DELETED", "DELETING" + Allowed values are: "ACTIVE", "CREATING", "UPDATING", "DELETED", "DELETING" :param str sort_by: (optional) The field by which to sort steering policies. If unspecified, defaults to `timeCreated`. @@ -5349,7 +5353,7 @@ def list_steering_policies(self, compartment_id, **kwargs): f"list_steering_policies got unknown kwargs: {extra_kwargs!r}") if 'lifecycle_state' in kwargs: - lifecycle_state_allowed_values = ["ACTIVE", "CREATING", "DELETED", "DELETING"] + lifecycle_state_allowed_values = ["ACTIVE", "CREATING", "UPDATING", "DELETED", "DELETING"] if kwargs['lifecycle_state'] not in lifecycle_state_allowed_values: raise ValueError( f"Invalid value for `lifecycle_state`, must be one of { lifecycle_state_allowed_values }" diff --git a/src/oci/dns/models/create_resolver_endpoint_details.py b/src/oci/dns/models/create_resolver_endpoint_details.py index 0902a4525b..abcf25d191 100644 --- a/src/oci/dns/models/create_resolver_endpoint_details.py +++ b/src/oci/dns/models/create_resolver_endpoint_details.py @@ -55,6 +55,14 @@ def __init__(self, **kwargs): The value to assign to the listening_address property of this CreateResolverEndpointDetails. :type listening_address: str + :param freeform_tags: + The value to assign to the freeform_tags property of this CreateResolverEndpointDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this CreateResolverEndpointDetails. + :type defined_tags: dict(str, dict(str, object)) + """ self.swagger_types = { 'name': 'str', @@ -62,7 +70,9 @@ def __init__(self, **kwargs): 'forwarding_address': 'str', 'is_forwarding': 'bool', 'is_listening': 'bool', - 'listening_address': 'str' + 'listening_address': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' } self.attribute_map = { 'name': 'name', @@ -70,7 +80,9 @@ def __init__(self, **kwargs): 'forwarding_address': 'forwardingAddress', 'is_forwarding': 'isForwarding', 'is_listening': 'isListening', - 'listening_address': 'listeningAddress' + 'listening_address': 'listeningAddress', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' } self._name = None self._endpoint_type = None @@ -78,6 +90,8 @@ def __init__(self, **kwargs): self._is_forwarding = None self._is_listening = None self._listening_address = None + self._freeform_tags = None + self._defined_tags = None @staticmethod def get_subtype(object_dictionary): @@ -247,6 +261,46 @@ def listening_address(self, listening_address): """ self._listening_address = listening_address + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this CreateResolverEndpointDetails. + + :return: The freeform_tags of this CreateResolverEndpointDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this CreateResolverEndpointDetails. + + :param freeform_tags: The freeform_tags of this CreateResolverEndpointDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this CreateResolverEndpointDetails. + + :return: The defined_tags of this CreateResolverEndpointDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this CreateResolverEndpointDetails. + + :param defined_tags: The defined_tags of this CreateResolverEndpointDetails. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/dns/models/create_resolver_vnic_endpoint_details.py b/src/oci/dns/models/create_resolver_vnic_endpoint_details.py index 4dcde82805..552bd003c2 100644 --- a/src/oci/dns/models/create_resolver_vnic_endpoint_details.py +++ b/src/oci/dns/models/create_resolver_vnic_endpoint_details.py @@ -50,6 +50,14 @@ def __init__(self, **kwargs): The value to assign to the listening_address property of this CreateResolverVnicEndpointDetails. :type listening_address: str + :param freeform_tags: + The value to assign to the freeform_tags property of this CreateResolverVnicEndpointDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this CreateResolverVnicEndpointDetails. + :type defined_tags: dict(str, dict(str, object)) + :param subnet_id: The value to assign to the subnet_id property of this CreateResolverVnicEndpointDetails. :type subnet_id: str @@ -58,6 +66,10 @@ def __init__(self, **kwargs): The value to assign to the nsg_ids property of this CreateResolverVnicEndpointDetails. :type nsg_ids: list[str] + :param security_attributes: + The value to assign to the security_attributes property of this CreateResolverVnicEndpointDetails. + :type security_attributes: dict(str, dict(str, object)) + """ self.swagger_types = { 'name': 'str', @@ -66,8 +78,11 @@ def __init__(self, **kwargs): 'is_forwarding': 'bool', 'is_listening': 'bool', 'listening_address': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', 'subnet_id': 'str', - 'nsg_ids': 'list[str]' + 'nsg_ids': 'list[str]', + 'security_attributes': 'dict(str, dict(str, object))' } self.attribute_map = { 'name': 'name', @@ -76,8 +91,11 @@ def __init__(self, **kwargs): 'is_forwarding': 'isForwarding', 'is_listening': 'isListening', 'listening_address': 'listeningAddress', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', 'subnet_id': 'subnetId', - 'nsg_ids': 'nsgIds' + 'nsg_ids': 'nsgIds', + 'security_attributes': 'securityAttributes' } self._name = None self._endpoint_type = None @@ -85,8 +103,11 @@ def __init__(self, **kwargs): self._is_forwarding = None self._is_listening = None self._listening_address = None + self._freeform_tags = None + self._defined_tags = None self._subnet_id = None self._nsg_ids = None + self._security_attributes = None self._endpoint_type = 'VNIC' @property @@ -139,6 +160,26 @@ def nsg_ids(self, nsg_ids): """ self._nsg_ids = nsg_ids + @property + def security_attributes(self): + """ + Gets the security_attributes of this CreateResolverVnicEndpointDetails. + + :return: The security_attributes of this CreateResolverVnicEndpointDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this CreateResolverVnicEndpointDetails. + + :param security_attributes: The security_attributes of this CreateResolverVnicEndpointDetails. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/dns/models/create_zone_details.py b/src/oci/dns/models/create_zone_details.py index a1f1096aa7..d2c840da6f 100644 --- a/src/oci/dns/models/create_zone_details.py +++ b/src/oci/dns/models/create_zone_details.py @@ -299,7 +299,9 @@ def external_downstreams(self, external_downstreams): def resolution_mode(self): """ Gets the resolution_mode of this CreateZoneDetails. - The resolution mode of a zone defines behavior related to how query responses can be handled. + The resolution mode of a zone defines behavior related to how query responses can be handled. See `Private DNS Zone Transparency`__ for more information. + + __ https://docs.oracle.com/iaas/Content/DNS/Tasks/privatedns.htm#use-cases__resolution Allowed values for this property are: "STATIC", "TRANSPARENT", "RTYPE_TRANSPARENT" @@ -313,7 +315,9 @@ def resolution_mode(self): def resolution_mode(self, resolution_mode): """ Sets the resolution_mode of this CreateZoneDetails. - The resolution mode of a zone defines behavior related to how query responses can be handled. + The resolution mode of a zone defines behavior related to how query responses can be handled. See `Private DNS Zone Transparency`__ for more information. + + __ https://docs.oracle.com/iaas/Content/DNS/Tasks/privatedns.htm#use-cases__resolution :param resolution_mode: The resolution_mode of this CreateZoneDetails. diff --git a/src/oci/dns/models/resolver_endpoint.py b/src/oci/dns/models/resolver_endpoint.py index a5faecbe3d..b3d1f540e1 100644 --- a/src/oci/dns/models/resolver_endpoint.py +++ b/src/oci/dns/models/resolver_endpoint.py @@ -80,6 +80,14 @@ def __init__(self, **kwargs): The value to assign to the listening_address property of this ResolverEndpoint. :type listening_address: str + :param id: + The value to assign to the id property of this ResolverEndpoint. + :type id: str + + :param resolver_id: + The value to assign to the resolver_id property of this ResolverEndpoint. + :type resolver_id: str + :param compartment_id: The value to assign to the compartment_id property of this ResolverEndpoint. :type compartment_id: str @@ -102,6 +110,14 @@ def __init__(self, **kwargs): The value to assign to the _self property of this ResolverEndpoint. :type _self: str + :param freeform_tags: + The value to assign to the freeform_tags property of this ResolverEndpoint. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this ResolverEndpoint. + :type defined_tags: dict(str, dict(str, object)) + """ self.swagger_types = { 'name': 'str', @@ -110,11 +126,15 @@ def __init__(self, **kwargs): 'is_forwarding': 'bool', 'is_listening': 'bool', 'listening_address': 'str', + 'id': 'str', + 'resolver_id': 'str', 'compartment_id': 'str', 'time_created': 'datetime', 'time_updated': 'datetime', 'lifecycle_state': 'str', - '_self': 'str' + '_self': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' } self.attribute_map = { 'name': 'name', @@ -123,11 +143,15 @@ def __init__(self, **kwargs): 'is_forwarding': 'isForwarding', 'is_listening': 'isListening', 'listening_address': 'listeningAddress', + 'id': 'id', + 'resolver_id': 'resolverId', 'compartment_id': 'compartmentId', 'time_created': 'timeCreated', 'time_updated': 'timeUpdated', 'lifecycle_state': 'lifecycleState', - '_self': 'self' + '_self': 'self', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' } self._name = None self._endpoint_type = None @@ -135,11 +159,15 @@ def __init__(self, **kwargs): self._is_forwarding = None self._is_listening = None self._listening_address = None + self._id = None + self._resolver_id = None self._compartment_id = None self._time_created = None self._time_updated = None self._lifecycle_state = None self.__self = None + self._freeform_tags = None + self._defined_tags = None @staticmethod def get_subtype(object_dictionary): @@ -308,6 +336,54 @@ def listening_address(self, listening_address): """ self._listening_address = listening_address + @property + def id(self): + """ + **[Required]** Gets the id of this ResolverEndpoint. + The OCID of the resolver endpoint. + + + :return: The id of this ResolverEndpoint. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this ResolverEndpoint. + The OCID of the resolver endpoint. + + + :param id: The id of this ResolverEndpoint. + :type: str + """ + self._id = id + + @property + def resolver_id(self): + """ + **[Required]** Gets the resolver_id of this ResolverEndpoint. + The OCID of the resolver. + + + :return: The resolver_id of this ResolverEndpoint. + :rtype: str + """ + return self._resolver_id + + @resolver_id.setter + def resolver_id(self, resolver_id): + """ + Sets the resolver_id of this ResolverEndpoint. + The OCID of the resolver. + + + :param resolver_id: The resolver_id of this ResolverEndpoint. + :type: str + """ + self._resolver_id = resolver_id + @property def compartment_id(self): """ @@ -448,6 +524,46 @@ def _self(self, _self): """ self.__self = _self + @property + def freeform_tags(self): + """ + **[Required]** Gets the freeform_tags of this ResolverEndpoint. + + :return: The freeform_tags of this ResolverEndpoint. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this ResolverEndpoint. + + :param freeform_tags: The freeform_tags of this ResolverEndpoint. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + **[Required]** Gets the defined_tags of this ResolverEndpoint. + + :return: The defined_tags of this ResolverEndpoint. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this ResolverEndpoint. + + :param defined_tags: The defined_tags of this ResolverEndpoint. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/dns/models/resolver_endpoint_summary.py b/src/oci/dns/models/resolver_endpoint_summary.py index 91c050086c..f4ac97c3dd 100644 --- a/src/oci/dns/models/resolver_endpoint_summary.py +++ b/src/oci/dns/models/resolver_endpoint_summary.py @@ -80,6 +80,14 @@ def __init__(self, **kwargs): The value to assign to the listening_address property of this ResolverEndpointSummary. :type listening_address: str + :param id: + The value to assign to the id property of this ResolverEndpointSummary. + :type id: str + + :param resolver_id: + The value to assign to the resolver_id property of this ResolverEndpointSummary. + :type resolver_id: str + :param compartment_id: The value to assign to the compartment_id property of this ResolverEndpointSummary. :type compartment_id: str @@ -102,6 +110,14 @@ def __init__(self, **kwargs): The value to assign to the _self property of this ResolverEndpointSummary. :type _self: str + :param freeform_tags: + The value to assign to the freeform_tags property of this ResolverEndpointSummary. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this ResolverEndpointSummary. + :type defined_tags: dict(str, dict(str, object)) + """ self.swagger_types = { 'name': 'str', @@ -110,11 +126,15 @@ def __init__(self, **kwargs): 'is_forwarding': 'bool', 'is_listening': 'bool', 'listening_address': 'str', + 'id': 'str', + 'resolver_id': 'str', 'compartment_id': 'str', 'time_created': 'datetime', 'time_updated': 'datetime', 'lifecycle_state': 'str', - '_self': 'str' + '_self': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' } self.attribute_map = { 'name': 'name', @@ -123,11 +143,15 @@ def __init__(self, **kwargs): 'is_forwarding': 'isForwarding', 'is_listening': 'isListening', 'listening_address': 'listeningAddress', + 'id': 'id', + 'resolver_id': 'resolverId', 'compartment_id': 'compartmentId', 'time_created': 'timeCreated', 'time_updated': 'timeUpdated', 'lifecycle_state': 'lifecycleState', - '_self': 'self' + '_self': 'self', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' } self._name = None self._endpoint_type = None @@ -135,11 +159,15 @@ def __init__(self, **kwargs): self._is_forwarding = None self._is_listening = None self._listening_address = None + self._id = None + self._resolver_id = None self._compartment_id = None self._time_created = None self._time_updated = None self._lifecycle_state = None self.__self = None + self._freeform_tags = None + self._defined_tags = None @staticmethod def get_subtype(object_dictionary): @@ -308,6 +336,54 @@ def listening_address(self, listening_address): """ self._listening_address = listening_address + @property + def id(self): + """ + **[Required]** Gets the id of this ResolverEndpointSummary. + The OCID of the resolver endpoint. + + + :return: The id of this ResolverEndpointSummary. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this ResolverEndpointSummary. + The OCID of the resolver endpoint. + + + :param id: The id of this ResolverEndpointSummary. + :type: str + """ + self._id = id + + @property + def resolver_id(self): + """ + **[Required]** Gets the resolver_id of this ResolverEndpointSummary. + The OCID of the resolver. + + + :return: The resolver_id of this ResolverEndpointSummary. + :rtype: str + """ + return self._resolver_id + + @resolver_id.setter + def resolver_id(self, resolver_id): + """ + Sets the resolver_id of this ResolverEndpointSummary. + The OCID of the resolver. + + + :param resolver_id: The resolver_id of this ResolverEndpointSummary. + :type: str + """ + self._resolver_id = resolver_id + @property def compartment_id(self): """ @@ -448,6 +524,46 @@ def _self(self, _self): """ self.__self = _self + @property + def freeform_tags(self): + """ + **[Required]** Gets the freeform_tags of this ResolverEndpointSummary. + + :return: The freeform_tags of this ResolverEndpointSummary. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this ResolverEndpointSummary. + + :param freeform_tags: The freeform_tags of this ResolverEndpointSummary. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + **[Required]** Gets the defined_tags of this ResolverEndpointSummary. + + :return: The defined_tags of this ResolverEndpointSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this ResolverEndpointSummary. + + :param defined_tags: The defined_tags of this ResolverEndpointSummary. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/dns/models/resolver_vnic_endpoint.py b/src/oci/dns/models/resolver_vnic_endpoint.py index 9106004095..6a11ce787d 100644 --- a/src/oci/dns/models/resolver_vnic_endpoint.py +++ b/src/oci/dns/models/resolver_vnic_endpoint.py @@ -49,6 +49,14 @@ def __init__(self, **kwargs): The value to assign to the listening_address property of this ResolverVnicEndpoint. :type listening_address: str + :param id: + The value to assign to the id property of this ResolverVnicEndpoint. + :type id: str + + :param resolver_id: + The value to assign to the resolver_id property of this ResolverVnicEndpoint. + :type resolver_id: str + :param compartment_id: The value to assign to the compartment_id property of this ResolverVnicEndpoint. :type compartment_id: str @@ -70,6 +78,14 @@ def __init__(self, **kwargs): The value to assign to the _self property of this ResolverVnicEndpoint. :type _self: str + :param freeform_tags: + The value to assign to the freeform_tags property of this ResolverVnicEndpoint. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this ResolverVnicEndpoint. + :type defined_tags: dict(str, dict(str, object)) + :param subnet_id: The value to assign to the subnet_id property of this ResolverVnicEndpoint. :type subnet_id: str @@ -78,6 +94,18 @@ def __init__(self, **kwargs): The value to assign to the nsg_ids property of this ResolverVnicEndpoint. :type nsg_ids: list[str] + :param security_attributes: + The value to assign to the security_attributes property of this ResolverVnicEndpoint. + :type security_attributes: dict(str, dict(str, object)) + + :param pe_id: + The value to assign to the pe_id property of this ResolverVnicEndpoint. + :type pe_id: str + + :param vnic_id: + The value to assign to the vnic_id property of this ResolverVnicEndpoint. + :type vnic_id: str + """ self.swagger_types = { 'name': 'str', @@ -86,13 +114,20 @@ def __init__(self, **kwargs): 'is_forwarding': 'bool', 'is_listening': 'bool', 'listening_address': 'str', + 'id': 'str', + 'resolver_id': 'str', 'compartment_id': 'str', 'time_created': 'datetime', 'time_updated': 'datetime', 'lifecycle_state': 'str', '_self': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', 'subnet_id': 'str', - 'nsg_ids': 'list[str]' + 'nsg_ids': 'list[str]', + 'security_attributes': 'dict(str, dict(str, object))', + 'pe_id': 'str', + 'vnic_id': 'str' } self.attribute_map = { 'name': 'name', @@ -101,13 +136,20 @@ def __init__(self, **kwargs): 'is_forwarding': 'isForwarding', 'is_listening': 'isListening', 'listening_address': 'listeningAddress', + 'id': 'id', + 'resolver_id': 'resolverId', 'compartment_id': 'compartmentId', 'time_created': 'timeCreated', 'time_updated': 'timeUpdated', 'lifecycle_state': 'lifecycleState', '_self': 'self', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', 'subnet_id': 'subnetId', - 'nsg_ids': 'nsgIds' + 'nsg_ids': 'nsgIds', + 'security_attributes': 'securityAttributes', + 'pe_id': 'peId', + 'vnic_id': 'vnicId' } self._name = None self._endpoint_type = None @@ -115,13 +157,20 @@ def __init__(self, **kwargs): self._is_forwarding = None self._is_listening = None self._listening_address = None + self._id = None + self._resolver_id = None self._compartment_id = None self._time_created = None self._time_updated = None self._lifecycle_state = None self.__self = None + self._freeform_tags = None + self._defined_tags = None self._subnet_id = None self._nsg_ids = None + self._security_attributes = None + self._pe_id = None + self._vnic_id = None self._endpoint_type = 'VNIC' @property @@ -174,6 +223,82 @@ def nsg_ids(self, nsg_ids): """ self._nsg_ids = nsg_ids + @property + def security_attributes(self): + """ + Gets the security_attributes of this ResolverVnicEndpoint. + + :return: The security_attributes of this ResolverVnicEndpoint. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this ResolverVnicEndpoint. + + :param security_attributes: The security_attributes of this ResolverVnicEndpoint. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + + @property + def pe_id(self): + """ + Gets the pe_id of this ResolverVnicEndpoint. + The `OCID`__ of the private endpoint resource that this resolver endpoint corresponds to. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The pe_id of this ResolverVnicEndpoint. + :rtype: str + """ + return self._pe_id + + @pe_id.setter + def pe_id(self, pe_id): + """ + Sets the pe_id of this ResolverVnicEndpoint. + The `OCID`__ of the private endpoint resource that this resolver endpoint corresponds to. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param pe_id: The pe_id of this ResolverVnicEndpoint. + :type: str + """ + self._pe_id = pe_id + + @property + def vnic_id(self): + """ + Gets the vnic_id of this ResolverVnicEndpoint. + The `OCID`__ of the VNIC resource that this resolver endpoint corresponds to. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The vnic_id of this ResolverVnicEndpoint. + :rtype: str + """ + return self._vnic_id + + @vnic_id.setter + def vnic_id(self, vnic_id): + """ + Sets the vnic_id of this ResolverVnicEndpoint. + The `OCID`__ of the VNIC resource that this resolver endpoint corresponds to. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param vnic_id: The vnic_id of this ResolverVnicEndpoint. + :type: str + """ + self._vnic_id = vnic_id + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/dns/models/resolver_vnic_endpoint_summary.py b/src/oci/dns/models/resolver_vnic_endpoint_summary.py index 09786c5c30..77229ea2e7 100644 --- a/src/oci/dns/models/resolver_vnic_endpoint_summary.py +++ b/src/oci/dns/models/resolver_vnic_endpoint_summary.py @@ -49,6 +49,14 @@ def __init__(self, **kwargs): The value to assign to the listening_address property of this ResolverVnicEndpointSummary. :type listening_address: str + :param id: + The value to assign to the id property of this ResolverVnicEndpointSummary. + :type id: str + + :param resolver_id: + The value to assign to the resolver_id property of this ResolverVnicEndpointSummary. + :type resolver_id: str + :param compartment_id: The value to assign to the compartment_id property of this ResolverVnicEndpointSummary. :type compartment_id: str @@ -70,10 +78,30 @@ def __init__(self, **kwargs): The value to assign to the _self property of this ResolverVnicEndpointSummary. :type _self: str + :param freeform_tags: + The value to assign to the freeform_tags property of this ResolverVnicEndpointSummary. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this ResolverVnicEndpointSummary. + :type defined_tags: dict(str, dict(str, object)) + :param subnet_id: The value to assign to the subnet_id property of this ResolverVnicEndpointSummary. :type subnet_id: str + :param security_attributes: + The value to assign to the security_attributes property of this ResolverVnicEndpointSummary. + :type security_attributes: dict(str, dict(str, object)) + + :param pe_id: + The value to assign to the pe_id property of this ResolverVnicEndpointSummary. + :type pe_id: str + + :param vnic_id: + The value to assign to the vnic_id property of this ResolverVnicEndpointSummary. + :type vnic_id: str + """ self.swagger_types = { 'name': 'str', @@ -82,12 +110,19 @@ def __init__(self, **kwargs): 'is_forwarding': 'bool', 'is_listening': 'bool', 'listening_address': 'str', + 'id': 'str', + 'resolver_id': 'str', 'compartment_id': 'str', 'time_created': 'datetime', 'time_updated': 'datetime', 'lifecycle_state': 'str', '_self': 'str', - 'subnet_id': 'str' + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'subnet_id': 'str', + 'security_attributes': 'dict(str, dict(str, object))', + 'pe_id': 'str', + 'vnic_id': 'str' } self.attribute_map = { 'name': 'name', @@ -96,12 +131,19 @@ def __init__(self, **kwargs): 'is_forwarding': 'isForwarding', 'is_listening': 'isListening', 'listening_address': 'listeningAddress', + 'id': 'id', + 'resolver_id': 'resolverId', 'compartment_id': 'compartmentId', 'time_created': 'timeCreated', 'time_updated': 'timeUpdated', 'lifecycle_state': 'lifecycleState', '_self': 'self', - 'subnet_id': 'subnetId' + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'subnet_id': 'subnetId', + 'security_attributes': 'securityAttributes', + 'pe_id': 'peId', + 'vnic_id': 'vnicId' } self._name = None self._endpoint_type = None @@ -109,12 +151,19 @@ def __init__(self, **kwargs): self._is_forwarding = None self._is_listening = None self._listening_address = None + self._id = None + self._resolver_id = None self._compartment_id = None self._time_created = None self._time_updated = None self._lifecycle_state = None self.__self = None + self._freeform_tags = None + self._defined_tags = None self._subnet_id = None + self._security_attributes = None + self._pe_id = None + self._vnic_id = None self._endpoint_type = 'VNIC' @property @@ -141,6 +190,82 @@ def subnet_id(self, subnet_id): """ self._subnet_id = subnet_id + @property + def security_attributes(self): + """ + **[Required]** Gets the security_attributes of this ResolverVnicEndpointSummary. + + :return: The security_attributes of this ResolverVnicEndpointSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this ResolverVnicEndpointSummary. + + :param security_attributes: The security_attributes of this ResolverVnicEndpointSummary. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + + @property + def pe_id(self): + """ + Gets the pe_id of this ResolverVnicEndpointSummary. + The `OCID`__ of the private endpoint resource that this resolver endpoint corresponds to. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The pe_id of this ResolverVnicEndpointSummary. + :rtype: str + """ + return self._pe_id + + @pe_id.setter + def pe_id(self, pe_id): + """ + Sets the pe_id of this ResolverVnicEndpointSummary. + The `OCID`__ of the private endpoint resource that this resolver endpoint corresponds to. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param pe_id: The pe_id of this ResolverVnicEndpointSummary. + :type: str + """ + self._pe_id = pe_id + + @property + def vnic_id(self): + """ + Gets the vnic_id of this ResolverVnicEndpointSummary. + The `OCID`__ of the VNIC resource that this resolver endpoint corresponds to. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The vnic_id of this ResolverVnicEndpointSummary. + :rtype: str + """ + return self._vnic_id + + @vnic_id.setter + def vnic_id(self, vnic_id): + """ + Sets the vnic_id of this ResolverVnicEndpointSummary. + The `OCID`__ of the VNIC resource that this resolver endpoint corresponds to. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param vnic_id: The vnic_id of this ResolverVnicEndpointSummary. + :type: str + """ + self._vnic_id = vnic_id + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/dns/models/steering_policy.py b/src/oci/dns/models/steering_policy.py index 3a3f2dd34c..772503a3f9 100644 --- a/src/oci/dns/models/steering_policy.py +++ b/src/oci/dns/models/steering_policy.py @@ -49,6 +49,10 @@ class SteeringPolicy(object): #: This constant has a value of "CREATING" LIFECYCLE_STATE_CREATING = "CREATING" + #: A constant which can be used with the lifecycle_state property of a SteeringPolicy. + #: This constant has a value of "UPDATING" + LIFECYCLE_STATE_UPDATING = "UPDATING" + #: A constant which can be used with the lifecycle_state property of a SteeringPolicy. #: This constant has a value of "DELETED" LIFECYCLE_STATE_DELETED = "DELETED" @@ -114,7 +118,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this SteeringPolicy. - Allowed values for this property are: "ACTIVE", "CREATING", "DELETED", "DELETING", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "ACTIVE", "CREATING", "UPDATING", "DELETED", "DELETING", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str @@ -613,7 +617,7 @@ def lifecycle_state(self): **[Required]** Gets the lifecycle_state of this SteeringPolicy. The current state of the resource. - Allowed values for this property are: "ACTIVE", "CREATING", "DELETED", "DELETING", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "ACTIVE", "CREATING", "UPDATING", "DELETED", "DELETING", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -632,7 +636,7 @@ def lifecycle_state(self, lifecycle_state): :param lifecycle_state: The lifecycle_state of this SteeringPolicy. :type: str """ - allowed_values = ["ACTIVE", "CREATING", "DELETED", "DELETING"] + allowed_values = ["ACTIVE", "CREATING", "UPDATING", "DELETED", "DELETING"] if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): lifecycle_state = 'UNKNOWN_ENUM_VALUE' self._lifecycle_state = lifecycle_state diff --git a/src/oci/dns/models/steering_policy_summary.py b/src/oci/dns/models/steering_policy_summary.py index 144db5a507..023ab37cc0 100644 --- a/src/oci/dns/models/steering_policy_summary.py +++ b/src/oci/dns/models/steering_policy_summary.py @@ -49,6 +49,10 @@ class SteeringPolicySummary(object): #: This constant has a value of "CREATING" LIFECYCLE_STATE_CREATING = "CREATING" + #: A constant which can be used with the lifecycle_state property of a SteeringPolicySummary. + #: This constant has a value of "UPDATING" + LIFECYCLE_STATE_UPDATING = "UPDATING" + #: A constant which can be used with the lifecycle_state property of a SteeringPolicySummary. #: This constant has a value of "DELETED" LIFECYCLE_STATE_DELETED = "DELETED" @@ -106,7 +110,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this SteeringPolicySummary. - Allowed values for this property are: "ACTIVE", "CREATING", "DELETED", "DELETING", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "ACTIVE", "CREATING", "UPDATING", "DELETED", "DELETING", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str @@ -539,7 +543,7 @@ def lifecycle_state(self): **[Required]** Gets the lifecycle_state of this SteeringPolicySummary. The current state of the resource. - Allowed values for this property are: "ACTIVE", "CREATING", "DELETED", "DELETING", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "ACTIVE", "CREATING", "UPDATING", "DELETED", "DELETING", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -558,7 +562,7 @@ def lifecycle_state(self, lifecycle_state): :param lifecycle_state: The lifecycle_state of this SteeringPolicySummary. :type: str """ - allowed_values = ["ACTIVE", "CREATING", "DELETED", "DELETING"] + allowed_values = ["ACTIVE", "CREATING", "UPDATING", "DELETED", "DELETING"] if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): lifecycle_state = 'UNKNOWN_ENUM_VALUE' self._lifecycle_state = lifecycle_state diff --git a/src/oci/dns/models/update_resolver_endpoint_details.py b/src/oci/dns/models/update_resolver_endpoint_details.py index 22e859b037..455843a11f 100644 --- a/src/oci/dns/models/update_resolver_endpoint_details.py +++ b/src/oci/dns/models/update_resolver_endpoint_details.py @@ -35,14 +35,28 @@ def __init__(self, **kwargs): Allowed values for this property are: "VNIC" :type endpoint_type: str + :param freeform_tags: + The value to assign to the freeform_tags property of this UpdateResolverEndpointDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this UpdateResolverEndpointDetails. + :type defined_tags: dict(str, dict(str, object)) + """ self.swagger_types = { - 'endpoint_type': 'str' + 'endpoint_type': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' } self.attribute_map = { - 'endpoint_type': 'endpointType' + 'endpoint_type': 'endpointType', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' } self._endpoint_type = None + self._freeform_tags = None + self._defined_tags = None @staticmethod def get_subtype(object_dictionary): @@ -88,6 +102,46 @@ def endpoint_type(self, endpoint_type): ) self._endpoint_type = endpoint_type + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this UpdateResolverEndpointDetails. + + :return: The freeform_tags of this UpdateResolverEndpointDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this UpdateResolverEndpointDetails. + + :param freeform_tags: The freeform_tags of this UpdateResolverEndpointDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this UpdateResolverEndpointDetails. + + :return: The defined_tags of this UpdateResolverEndpointDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this UpdateResolverEndpointDetails. + + :param defined_tags: The defined_tags of this UpdateResolverEndpointDetails. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/dns/models/update_resolver_vnic_endpoint_details.py b/src/oci/dns/models/update_resolver_vnic_endpoint_details.py index 84e370a267..2e5f652b30 100644 --- a/src/oci/dns/models/update_resolver_vnic_endpoint_details.py +++ b/src/oci/dns/models/update_resolver_vnic_endpoint_details.py @@ -28,21 +28,42 @@ def __init__(self, **kwargs): Allowed values for this property are: "VNIC" :type endpoint_type: str + :param freeform_tags: + The value to assign to the freeform_tags property of this UpdateResolverVnicEndpointDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this UpdateResolverVnicEndpointDetails. + :type defined_tags: dict(str, dict(str, object)) + :param nsg_ids: The value to assign to the nsg_ids property of this UpdateResolverVnicEndpointDetails. :type nsg_ids: list[str] + :param security_attributes: + The value to assign to the security_attributes property of this UpdateResolverVnicEndpointDetails. + :type security_attributes: dict(str, dict(str, object)) + """ self.swagger_types = { 'endpoint_type': 'str', - 'nsg_ids': 'list[str]' + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'nsg_ids': 'list[str]', + 'security_attributes': 'dict(str, dict(str, object))' } self.attribute_map = { 'endpoint_type': 'endpointType', - 'nsg_ids': 'nsgIds' + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'nsg_ids': 'nsgIds', + 'security_attributes': 'securityAttributes' } self._endpoint_type = None + self._freeform_tags = None + self._defined_tags = None self._nsg_ids = None + self._security_attributes = None self._endpoint_type = 'VNIC' @property @@ -71,6 +92,26 @@ def nsg_ids(self, nsg_ids): """ self._nsg_ids = nsg_ids + @property + def security_attributes(self): + """ + Gets the security_attributes of this UpdateResolverVnicEndpointDetails. + + :return: The security_attributes of this UpdateResolverVnicEndpointDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this UpdateResolverVnicEndpointDetails. + + :param security_attributes: The security_attributes of this UpdateResolverVnicEndpointDetails. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/dns/models/update_zone_details.py b/src/oci/dns/models/update_zone_details.py index d7963148fb..e529635e54 100644 --- a/src/oci/dns/models/update_zone_details.py +++ b/src/oci/dns/models/update_zone_details.py @@ -168,7 +168,9 @@ def defined_tags(self, defined_tags): def resolution_mode(self): """ Gets the resolution_mode of this UpdateZoneDetails. - The resolution mode of a zone defines behavior related to how query responses can be handled. + The resolution mode of a zone defines behavior related to how query responses can be handled. See `Private DNS Zone Transparency`__ for more information. + + __ https://docs.oracle.com/iaas/Content/DNS/Tasks/privatedns.htm#use-cases__resolution Allowed values for this property are: "STATIC", "TRANSPARENT", "RTYPE_TRANSPARENT" @@ -182,7 +184,9 @@ def resolution_mode(self): def resolution_mode(self, resolution_mode): """ Sets the resolution_mode of this UpdateZoneDetails. - The resolution mode of a zone defines behavior related to how query responses can be handled. + The resolution mode of a zone defines behavior related to how query responses can be handled. See `Private DNS Zone Transparency`__ for more information. + + __ https://docs.oracle.com/iaas/Content/DNS/Tasks/privatedns.htm#use-cases__resolution :param resolution_mode: The resolution_mode of this UpdateZoneDetails. diff --git a/src/oci/dns/models/zone.py b/src/oci/dns/models/zone.py index 47a64e7e64..7613cca34e 100644 --- a/src/oci/dns/models/zone.py +++ b/src/oci/dns/models/zone.py @@ -457,7 +457,9 @@ def defined_tags(self, defined_tags): def resolution_mode(self): """ **[Required]** Gets the resolution_mode of this Zone. - The resolution mode of a zone defines behavior related to how query responses can be handled. + The resolution mode of a zone defines behavior related to how query responses can be handled. See `Private DNS Zone Transparency`__ for more information. + + __ https://docs.oracle.com/iaas/Content/DNS/Tasks/privatedns.htm#use-cases__resolution Allowed values for this property are: "STATIC", "TRANSPARENT", "RTYPE_TRANSPARENT", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -472,7 +474,9 @@ def resolution_mode(self): def resolution_mode(self, resolution_mode): """ Sets the resolution_mode of this Zone. - The resolution mode of a zone defines behavior related to how query responses can be handled. + The resolution mode of a zone defines behavior related to how query responses can be handled. See `Private DNS Zone Transparency`__ for more information. + + __ https://docs.oracle.com/iaas/Content/DNS/Tasks/privatedns.htm#use-cases__resolution :param resolution_mode: The resolution_mode of this Zone. diff --git a/src/oci/dns/models/zone_summary.py b/src/oci/dns/models/zone_summary.py index 51b97c4e55..092adcd217 100644 --- a/src/oci/dns/models/zone_summary.py +++ b/src/oci/dns/models/zone_summary.py @@ -429,7 +429,9 @@ def defined_tags(self, defined_tags): def resolution_mode(self): """ **[Required]** Gets the resolution_mode of this ZoneSummary. - The resolution mode of a zone defines behavior related to how query responses can be handled. + The resolution mode of a zone defines behavior related to how query responses can be handled. See `Private DNS Zone Transparency`__ for more information. + + __ https://docs.oracle.com/iaas/Content/DNS/Tasks/privatedns.htm#use-cases__resolution Allowed values for this property are: "STATIC", "TRANSPARENT", "RTYPE_TRANSPARENT", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -444,7 +446,9 @@ def resolution_mode(self): def resolution_mode(self, resolution_mode): """ Sets the resolution_mode of this ZoneSummary. - The resolution mode of a zone defines behavior related to how query responses can be handled. + The resolution mode of a zone defines behavior related to how query responses can be handled. See `Private DNS Zone Transparency`__ for more information. + + __ https://docs.oracle.com/iaas/Content/DNS/Tasks/privatedns.htm#use-cases__resolution :param resolution_mode: The resolution_mode of this ZoneSummary. diff --git a/src/oci/integration/integration_instance_client.py b/src/oci/integration/integration_instance_client.py index c577515a84..37ef61e731 100644 --- a/src/oci/integration/integration_instance_client.py +++ b/src/oci/integration/integration_instance_client.py @@ -2329,13 +2329,16 @@ def list_work_requests(self, compartment_id, **kwargs): def remove_log_analytics_log_group(self, integration_instance_id, **kwargs): """ - Removes Log Analytics logGroup, if enabled for given integrationInstance. Since only single LogGroup can be enabled - for integration instance, no additional details are required to be includes in the request. + Removes Log Analytics logGroup, if enabled for given integrationInstance. + Also used for removing Log Analytics log Group for attached OPA instance. :param str integration_instance_id: (required) Unique Integration Instance identifier. + :param oci.integration.models.RemoveLogAnalyticsLogGroupDetails remove_log_analytics_log_group_details: (optional) + Details to remove Log Group for given integration instance or Process Automation attached to integration instance. + :param str if_match: (optional) For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the @@ -2388,6 +2391,7 @@ def remove_log_analytics_log_group(self, integration_instance_id, **kwargs): "allow_control_chars", "enable_strict_url_encoding", "retry_strategy", + "remove_log_analytics_log_group_details", "if_match", "opc_request_id", "opc_retry_token" @@ -2434,6 +2438,7 @@ def remove_log_analytics_log_group(self, integration_instance_id, **kwargs): method=method, path_params=path_params, header_params=header_params, + body=kwargs.get('remove_log_analytics_log_group_details'), allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, @@ -2445,6 +2450,7 @@ def remove_log_analytics_log_group(self, integration_instance_id, **kwargs): method=method, path_params=path_params, header_params=header_params, + body=kwargs.get('remove_log_analytics_log_group_details'), allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, diff --git a/src/oci/integration/models/__init__.py b/src/oci/integration/models/__init__.py index a20d67eeb3..99cad7a9a3 100644 --- a/src/oci/integration/models/__init__.py +++ b/src/oci/integration/models/__init__.py @@ -28,6 +28,7 @@ from .outbound_connection import OutboundConnection from .private_endpoint_outbound_connection import PrivateEndpointOutboundConnection from .public_endpoint_details import PublicEndpointDetails +from .remove_log_analytics_log_group_details import RemoveLogAnalyticsLogGroupDetails from .update_custom_endpoint_details import UpdateCustomEndpointDetails from .update_integration_instance_details import UpdateIntegrationInstanceDetails from .virtual_cloud_network import VirtualCloudNetwork @@ -61,6 +62,7 @@ "OutboundConnection": OutboundConnection, "PrivateEndpointOutboundConnection": PrivateEndpointOutboundConnection, "PublicEndpointDetails": PublicEndpointDetails, + "RemoveLogAnalyticsLogGroupDetails": RemoveLogAnalyticsLogGroupDetails, "UpdateCustomEndpointDetails": UpdateCustomEndpointDetails, "UpdateIntegrationInstanceDetails": UpdateIntegrationInstanceDetails, "VirtualCloudNetwork": VirtualCloudNetwork, diff --git a/src/oci/integration/models/add_log_analytics_log_group_details.py b/src/oci/integration/models/add_log_analytics_log_group_details.py index 518c687de5..600127c505 100644 --- a/src/oci/integration/models/add_log_analytics_log_group_details.py +++ b/src/oci/integration/models/add_log_analytics_log_group_details.py @@ -16,6 +16,10 @@ class AddLogAnalyticsLogGroupDetails(object): Some actions may not be applicable to specific integration types. """ + #: A constant which can be used with the attachment_type property of a AddLogAnalyticsLogGroupDetails. + #: This constant has a value of "PROCESS_AUTOMATION" + ATTACHMENT_TYPE_PROCESS_AUTOMATION = "PROCESS_AUTOMATION" + def __init__(self, **kwargs): """ Initializes a new AddLogAnalyticsLogGroupDetails object with values from keyword arguments. @@ -25,14 +29,22 @@ def __init__(self, **kwargs): The value to assign to the log_group_id property of this AddLogAnalyticsLogGroupDetails. :type log_group_id: str + :param attachment_type: + The value to assign to the attachment_type property of this AddLogAnalyticsLogGroupDetails. + Allowed values for this property are: "PROCESS_AUTOMATION" + :type attachment_type: str + """ self.swagger_types = { - 'log_group_id': 'str' + 'log_group_id': 'str', + 'attachment_type': 'str' } self.attribute_map = { - 'log_group_id': 'logGroupId' + 'log_group_id': 'logGroupId', + 'attachment_type': 'attachmentType' } self._log_group_id = None + self._attachment_type = None @property def log_group_id(self): @@ -58,6 +70,37 @@ def log_group_id(self, log_group_id): """ self._log_group_id = log_group_id + @property + def attachment_type(self): + """ + Gets the attachment_type of this AddLogAnalyticsLogGroupDetails. + Type of attachment. Supported at this include PROCESS_AUTOMATION + + Allowed values for this property are: "PROCESS_AUTOMATION" + + + :return: The attachment_type of this AddLogAnalyticsLogGroupDetails. + :rtype: str + """ + return self._attachment_type + + @attachment_type.setter + def attachment_type(self, attachment_type): + """ + Sets the attachment_type of this AddLogAnalyticsLogGroupDetails. + Type of attachment. Supported at this include PROCESS_AUTOMATION + + + :param attachment_type: The attachment_type of this AddLogAnalyticsLogGroupDetails. + :type: str + """ + allowed_values = ["PROCESS_AUTOMATION"] + if not value_allowed_none_or_none_sentinel(attachment_type, allowed_values): + raise ValueError( + f"Invalid value for `attachment_type`, must be None or one of {allowed_values}" + ) + self._attachment_type = attachment_type + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/integration/models/integration_instance.py b/src/oci/integration/models/integration_instance.py index a4c35109f6..4eae56ae46 100644 --- a/src/oci/integration/models/integration_instance.py +++ b/src/oci/integration/models/integration_instance.py @@ -234,6 +234,10 @@ def __init__(self, **kwargs): The value to assign to the log_group_id property of this IntegrationInstance. :type log_group_id: str + :param process_automation_log_group_id: + The value to assign to the process_automation_log_group_id property of this IntegrationInstance. + :type process_automation_log_group_id: str + """ self.swagger_types = { 'id': 'str', @@ -266,7 +270,8 @@ def __init__(self, **kwargs): 'is_disaster_recovery_enabled': 'bool', 'disaster_recovery_details': 'DisasterRecoveryDetails', 'data_retention_period': 'str', - 'log_group_id': 'str' + 'log_group_id': 'str', + 'process_automation_log_group_id': 'str' } self.attribute_map = { 'id': 'id', @@ -299,7 +304,8 @@ def __init__(self, **kwargs): 'is_disaster_recovery_enabled': 'isDisasterRecoveryEnabled', 'disaster_recovery_details': 'disasterRecoveryDetails', 'data_retention_period': 'dataRetentionPeriod', - 'log_group_id': 'logGroupId' + 'log_group_id': 'logGroupId', + 'process_automation_log_group_id': 'processAutomationLogGroupId' } self._id = None self._display_name = None @@ -332,6 +338,7 @@ def __init__(self, **kwargs): self._disaster_recovery_details = None self._data_retention_period = None self._log_group_id = None + self._process_automation_log_group_id = None @property def id(self): @@ -1111,6 +1118,30 @@ def log_group_id(self, log_group_id): """ self._log_group_id = log_group_id + @property + def process_automation_log_group_id(self): + """ + Gets the process_automation_log_group_id of this IntegrationInstance. + OCID of LogAnalytics LogGroup, enabled for given Process Automation attached to integration instance. + + + :return: The process_automation_log_group_id of this IntegrationInstance. + :rtype: str + """ + return self._process_automation_log_group_id + + @process_automation_log_group_id.setter + def process_automation_log_group_id(self, process_automation_log_group_id): + """ + Sets the process_automation_log_group_id of this IntegrationInstance. + OCID of LogAnalytics LogGroup, enabled for given Process Automation attached to integration instance. + + + :param process_automation_log_group_id: The process_automation_log_group_id of this IntegrationInstance. + :type: str + """ + self._process_automation_log_group_id = process_automation_log_group_id + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/integration/models/integration_instance_summary.py b/src/oci/integration/models/integration_instance_summary.py index 723bd76696..f5883acf95 100644 --- a/src/oci/integration/models/integration_instance_summary.py +++ b/src/oci/integration/models/integration_instance_summary.py @@ -222,6 +222,10 @@ def __init__(self, **kwargs): The value to assign to the log_group_id property of this IntegrationInstanceSummary. :type log_group_id: str + :param process_automation_log_group_id: + The value to assign to the process_automation_log_group_id property of this IntegrationInstanceSummary. + :type process_automation_log_group_id: str + """ self.swagger_types = { 'id': 'str', @@ -251,7 +255,8 @@ def __init__(self, **kwargs): 'private_endpoint_outbound_connection': 'OutboundConnection', 'is_disaster_recovery_enabled': 'bool', 'data_retention_period': 'str', - 'log_group_id': 'str' + 'log_group_id': 'str', + 'process_automation_log_group_id': 'str' } self.attribute_map = { 'id': 'id', @@ -281,7 +286,8 @@ def __init__(self, **kwargs): 'private_endpoint_outbound_connection': 'privateEndpointOutboundConnection', 'is_disaster_recovery_enabled': 'isDisasterRecoveryEnabled', 'data_retention_period': 'dataRetentionPeriod', - 'log_group_id': 'logGroupId' + 'log_group_id': 'logGroupId', + 'process_automation_log_group_id': 'processAutomationLogGroupId' } self._id = None self._display_name = None @@ -311,6 +317,7 @@ def __init__(self, **kwargs): self._is_disaster_recovery_enabled = None self._data_retention_period = None self._log_group_id = None + self._process_automation_log_group_id = None @property def id(self): @@ -1026,6 +1033,30 @@ def log_group_id(self, log_group_id): """ self._log_group_id = log_group_id + @property + def process_automation_log_group_id(self): + """ + Gets the process_automation_log_group_id of this IntegrationInstanceSummary. + OCID of LogAnalytics LogGroup, enabled for given Process Automation attached to integration instance. + + + :return: The process_automation_log_group_id of this IntegrationInstanceSummary. + :rtype: str + """ + return self._process_automation_log_group_id + + @process_automation_log_group_id.setter + def process_automation_log_group_id(self, process_automation_log_group_id): + """ + Sets the process_automation_log_group_id of this IntegrationInstanceSummary. + OCID of LogAnalytics LogGroup, enabled for given Process Automation attached to integration instance. + + + :param process_automation_log_group_id: The process_automation_log_group_id of this IntegrationInstanceSummary. + :type: str + """ + self._process_automation_log_group_id = process_automation_log_group_id + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/integration/models/remove_log_analytics_log_group_details.py b/src/oci/integration/models/remove_log_analytics_log_group_details.py new file mode 100644 index 0000000000..cb63eb9c95 --- /dev/null +++ b/src/oci/integration/models/remove_log_analytics_log_group_details.py @@ -0,0 +1,83 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190131 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class RemoveLogAnalyticsLogGroupDetails(object): + """ + Input payload to remove Log Analytics Log Group for given IntegrationInstance or its supported attachments. + Some actions may not be applicable to specific integration types. + """ + + #: A constant which can be used with the attachment_type property of a RemoveLogAnalyticsLogGroupDetails. + #: This constant has a value of "PROCESS_AUTOMATION" + ATTACHMENT_TYPE_PROCESS_AUTOMATION = "PROCESS_AUTOMATION" + + def __init__(self, **kwargs): + """ + Initializes a new RemoveLogAnalyticsLogGroupDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param attachment_type: + The value to assign to the attachment_type property of this RemoveLogAnalyticsLogGroupDetails. + Allowed values for this property are: "PROCESS_AUTOMATION" + :type attachment_type: str + + """ + self.swagger_types = { + 'attachment_type': 'str' + } + self.attribute_map = { + 'attachment_type': 'attachmentType' + } + self._attachment_type = None + + @property + def attachment_type(self): + """ + Gets the attachment_type of this RemoveLogAnalyticsLogGroupDetails. + Type of attachment. Supported at this include PROCESS_AUTOMATION + + Allowed values for this property are: "PROCESS_AUTOMATION" + + + :return: The attachment_type of this RemoveLogAnalyticsLogGroupDetails. + :rtype: str + """ + return self._attachment_type + + @attachment_type.setter + def attachment_type(self, attachment_type): + """ + Sets the attachment_type of this RemoveLogAnalyticsLogGroupDetails. + Type of attachment. Supported at this include PROCESS_AUTOMATION + + + :param attachment_type: The attachment_type of this RemoveLogAnalyticsLogGroupDetails. + :type: str + """ + allowed_values = ["PROCESS_AUTOMATION"] + if not value_allowed_none_or_none_sentinel(attachment_type, allowed_values): + raise ValueError( + f"Invalid value for `attachment_type`, must be None or one of {allowed_values}" + ) + self._attachment_type = attachment_type + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/integration/models/work_request.py b/src/oci/integration/models/work_request.py index f069b84507..268bda222e 100644 --- a/src/oci/integration/models/work_request.py +++ b/src/oci/integration/models/work_request.py @@ -59,6 +59,14 @@ class WorkRequest(object): #: This constant has a value of "CONVERT_INSTANCE" OPERATION_TYPE_CONVERT_INSTANCE = "CONVERT_INSTANCE" + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "ADD_OPA_LOG_ANALYTICS_LOG_GROUP" + OPERATION_TYPE_ADD_OPA_LOG_ANALYTICS_LOG_GROUP = "ADD_OPA_LOG_ANALYTICS_LOG_GROUP" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "DELETE_OPA_LOG_ANALYTICS_LOG_GROUP" + OPERATION_TYPE_DELETE_OPA_LOG_ANALYTICS_LOG_GROUP = "DELETE_OPA_LOG_ANALYTICS_LOG_GROUP" + #: A constant which can be used with the operation_type property of a WorkRequest. #: This constant has a value of "BEGIN_MIGRATION" OPERATION_TYPE_BEGIN_MIGRATION = "BEGIN_MIGRATION" @@ -118,7 +126,7 @@ def __init__(self, **kwargs): :param operation_type: The value to assign to the operation_type property of this WorkRequest. - Allowed values for this property are: "CREATE_INTEGRATION_INSTANCE", "UPDATE_INTEGRATION_INSTANCE", "STOP_INTEGRATION_INSTANCE", "START_INTEGRATION_INSTANCE", "DELETE_INTEGRATION_INSTANCE", "CHANGE_PRIVATE_ENDPOINT_OUTBOUND_CONNECTION", "ENABLE_PROCESS_AUTOMATION", "DISABLE_PROCESS_AUTOMATION", "ADD_LOG_ANALYTICS_LOG_GROUP", "DELETE_LOG_ANALYTICS_LOG_GROUP", "CONVERT_INSTANCE", "BEGIN_MIGRATION", "COMPLETE_MIGRATION", "ROLLBACK_MIGRATION", "EXTEND_DATA_RETENTION", "DISASTER_RECOVERY_FAILOVER", "CREATE_CUSTOM_ENDPOINT", "DELETE_CUSTOM_ENDPOINT", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATE_INTEGRATION_INSTANCE", "UPDATE_INTEGRATION_INSTANCE", "STOP_INTEGRATION_INSTANCE", "START_INTEGRATION_INSTANCE", "DELETE_INTEGRATION_INSTANCE", "CHANGE_PRIVATE_ENDPOINT_OUTBOUND_CONNECTION", "ENABLE_PROCESS_AUTOMATION", "DISABLE_PROCESS_AUTOMATION", "ADD_LOG_ANALYTICS_LOG_GROUP", "DELETE_LOG_ANALYTICS_LOG_GROUP", "CONVERT_INSTANCE", "ADD_OPA_LOG_ANALYTICS_LOG_GROUP", "DELETE_OPA_LOG_ANALYTICS_LOG_GROUP", "BEGIN_MIGRATION", "COMPLETE_MIGRATION", "ROLLBACK_MIGRATION", "EXTEND_DATA_RETENTION", "DISASTER_RECOVERY_FAILOVER", "CREATE_CUSTOM_ENDPOINT", "DELETE_CUSTOM_ENDPOINT", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type operation_type: str @@ -195,7 +203,7 @@ def operation_type(self): **[Required]** Gets the operation_type of this WorkRequest. Type of the work request. - Allowed values for this property are: "CREATE_INTEGRATION_INSTANCE", "UPDATE_INTEGRATION_INSTANCE", "STOP_INTEGRATION_INSTANCE", "START_INTEGRATION_INSTANCE", "DELETE_INTEGRATION_INSTANCE", "CHANGE_PRIVATE_ENDPOINT_OUTBOUND_CONNECTION", "ENABLE_PROCESS_AUTOMATION", "DISABLE_PROCESS_AUTOMATION", "ADD_LOG_ANALYTICS_LOG_GROUP", "DELETE_LOG_ANALYTICS_LOG_GROUP", "CONVERT_INSTANCE", "BEGIN_MIGRATION", "COMPLETE_MIGRATION", "ROLLBACK_MIGRATION", "EXTEND_DATA_RETENTION", "DISASTER_RECOVERY_FAILOVER", "CREATE_CUSTOM_ENDPOINT", "DELETE_CUSTOM_ENDPOINT", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATE_INTEGRATION_INSTANCE", "UPDATE_INTEGRATION_INSTANCE", "STOP_INTEGRATION_INSTANCE", "START_INTEGRATION_INSTANCE", "DELETE_INTEGRATION_INSTANCE", "CHANGE_PRIVATE_ENDPOINT_OUTBOUND_CONNECTION", "ENABLE_PROCESS_AUTOMATION", "DISABLE_PROCESS_AUTOMATION", "ADD_LOG_ANALYTICS_LOG_GROUP", "DELETE_LOG_ANALYTICS_LOG_GROUP", "CONVERT_INSTANCE", "ADD_OPA_LOG_ANALYTICS_LOG_GROUP", "DELETE_OPA_LOG_ANALYTICS_LOG_GROUP", "BEGIN_MIGRATION", "COMPLETE_MIGRATION", "ROLLBACK_MIGRATION", "EXTEND_DATA_RETENTION", "DISASTER_RECOVERY_FAILOVER", "CREATE_CUSTOM_ENDPOINT", "DELETE_CUSTOM_ENDPOINT", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -214,7 +222,7 @@ def operation_type(self, operation_type): :param operation_type: The operation_type of this WorkRequest. :type: str """ - allowed_values = ["CREATE_INTEGRATION_INSTANCE", "UPDATE_INTEGRATION_INSTANCE", "STOP_INTEGRATION_INSTANCE", "START_INTEGRATION_INSTANCE", "DELETE_INTEGRATION_INSTANCE", "CHANGE_PRIVATE_ENDPOINT_OUTBOUND_CONNECTION", "ENABLE_PROCESS_AUTOMATION", "DISABLE_PROCESS_AUTOMATION", "ADD_LOG_ANALYTICS_LOG_GROUP", "DELETE_LOG_ANALYTICS_LOG_GROUP", "CONVERT_INSTANCE", "BEGIN_MIGRATION", "COMPLETE_MIGRATION", "ROLLBACK_MIGRATION", "EXTEND_DATA_RETENTION", "DISASTER_RECOVERY_FAILOVER", "CREATE_CUSTOM_ENDPOINT", "DELETE_CUSTOM_ENDPOINT"] + allowed_values = ["CREATE_INTEGRATION_INSTANCE", "UPDATE_INTEGRATION_INSTANCE", "STOP_INTEGRATION_INSTANCE", "START_INTEGRATION_INSTANCE", "DELETE_INTEGRATION_INSTANCE", "CHANGE_PRIVATE_ENDPOINT_OUTBOUND_CONNECTION", "ENABLE_PROCESS_AUTOMATION", "DISABLE_PROCESS_AUTOMATION", "ADD_LOG_ANALYTICS_LOG_GROUP", "DELETE_LOG_ANALYTICS_LOG_GROUP", "CONVERT_INSTANCE", "ADD_OPA_LOG_ANALYTICS_LOG_GROUP", "DELETE_OPA_LOG_ANALYTICS_LOG_GROUP", "BEGIN_MIGRATION", "COMPLETE_MIGRATION", "ROLLBACK_MIGRATION", "EXTEND_DATA_RETENTION", "DISASTER_RECOVERY_FAILOVER", "CREATE_CUSTOM_ENDPOINT", "DELETE_CUSTOM_ENDPOINT"] if not value_allowed_none_or_none_sentinel(operation_type, allowed_values): operation_type = 'UNKNOWN_ENUM_VALUE' self._operation_type = operation_type diff --git a/src/oci/integration/models/work_request_summary.py b/src/oci/integration/models/work_request_summary.py index 5ee6ead58a..54ade7a39e 100644 --- a/src/oci/integration/models/work_request_summary.py +++ b/src/oci/integration/models/work_request_summary.py @@ -59,6 +59,14 @@ class WorkRequestSummary(object): #: This constant has a value of "CONVERT_INSTANCE" OPERATION_TYPE_CONVERT_INSTANCE = "CONVERT_INSTANCE" + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "ADD_OPA_LOG_ANALYTICS_LOG_GROUP" + OPERATION_TYPE_ADD_OPA_LOG_ANALYTICS_LOG_GROUP = "ADD_OPA_LOG_ANALYTICS_LOG_GROUP" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "DELETE_OPA_LOG_ANALYTICS_LOG_GROUP" + OPERATION_TYPE_DELETE_OPA_LOG_ANALYTICS_LOG_GROUP = "DELETE_OPA_LOG_ANALYTICS_LOG_GROUP" + #: A constant which can be used with the operation_type property of a WorkRequestSummary. #: This constant has a value of "BEGIN_MIGRATION" OPERATION_TYPE_BEGIN_MIGRATION = "BEGIN_MIGRATION" @@ -118,7 +126,7 @@ def __init__(self, **kwargs): :param operation_type: The value to assign to the operation_type property of this WorkRequestSummary. - Allowed values for this property are: "CREATE_INTEGRATION_INSTANCE", "UPDATE_INTEGRATION_INSTANCE", "STOP_INTEGRATION_INSTANCE", "START_INTEGRATION_INSTANCE", "DELETE_INTEGRATION_INSTANCE", "CHANGE_PRIVATE_ENDPOINT_OUTBOUND_CONNECTION", "ENABLE_PROCESS_AUTOMATION", "DISABLE_PROCESS_AUTOMATION", "ADD_LOG_ANALYTICS_LOG_GROUP", "DELETE_LOG_ANALYTICS_LOG_GROUP", "CONVERT_INSTANCE", "BEGIN_MIGRATION", "COMPLETE_MIGRATION", "ROLLBACK_MIGRATION", "EXTEND_DATA_RETENTION", "DISASTER_RECOVERY_FAILOVER", "CREATE_CUSTOM_ENDPOINT", "DELETE_CUSTOM_ENDPOINT", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATE_INTEGRATION_INSTANCE", "UPDATE_INTEGRATION_INSTANCE", "STOP_INTEGRATION_INSTANCE", "START_INTEGRATION_INSTANCE", "DELETE_INTEGRATION_INSTANCE", "CHANGE_PRIVATE_ENDPOINT_OUTBOUND_CONNECTION", "ENABLE_PROCESS_AUTOMATION", "DISABLE_PROCESS_AUTOMATION", "ADD_LOG_ANALYTICS_LOG_GROUP", "DELETE_LOG_ANALYTICS_LOG_GROUP", "CONVERT_INSTANCE", "ADD_OPA_LOG_ANALYTICS_LOG_GROUP", "DELETE_OPA_LOG_ANALYTICS_LOG_GROUP", "BEGIN_MIGRATION", "COMPLETE_MIGRATION", "ROLLBACK_MIGRATION", "EXTEND_DATA_RETENTION", "DISASTER_RECOVERY_FAILOVER", "CREATE_CUSTOM_ENDPOINT", "DELETE_CUSTOM_ENDPOINT", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type operation_type: str @@ -195,7 +203,7 @@ def operation_type(self): **[Required]** Gets the operation_type of this WorkRequestSummary. Type of the work request. - Allowed values for this property are: "CREATE_INTEGRATION_INSTANCE", "UPDATE_INTEGRATION_INSTANCE", "STOP_INTEGRATION_INSTANCE", "START_INTEGRATION_INSTANCE", "DELETE_INTEGRATION_INSTANCE", "CHANGE_PRIVATE_ENDPOINT_OUTBOUND_CONNECTION", "ENABLE_PROCESS_AUTOMATION", "DISABLE_PROCESS_AUTOMATION", "ADD_LOG_ANALYTICS_LOG_GROUP", "DELETE_LOG_ANALYTICS_LOG_GROUP", "CONVERT_INSTANCE", "BEGIN_MIGRATION", "COMPLETE_MIGRATION", "ROLLBACK_MIGRATION", "EXTEND_DATA_RETENTION", "DISASTER_RECOVERY_FAILOVER", "CREATE_CUSTOM_ENDPOINT", "DELETE_CUSTOM_ENDPOINT", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATE_INTEGRATION_INSTANCE", "UPDATE_INTEGRATION_INSTANCE", "STOP_INTEGRATION_INSTANCE", "START_INTEGRATION_INSTANCE", "DELETE_INTEGRATION_INSTANCE", "CHANGE_PRIVATE_ENDPOINT_OUTBOUND_CONNECTION", "ENABLE_PROCESS_AUTOMATION", "DISABLE_PROCESS_AUTOMATION", "ADD_LOG_ANALYTICS_LOG_GROUP", "DELETE_LOG_ANALYTICS_LOG_GROUP", "CONVERT_INSTANCE", "ADD_OPA_LOG_ANALYTICS_LOG_GROUP", "DELETE_OPA_LOG_ANALYTICS_LOG_GROUP", "BEGIN_MIGRATION", "COMPLETE_MIGRATION", "ROLLBACK_MIGRATION", "EXTEND_DATA_RETENTION", "DISASTER_RECOVERY_FAILOVER", "CREATE_CUSTOM_ENDPOINT", "DELETE_CUSTOM_ENDPOINT", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -214,7 +222,7 @@ def operation_type(self, operation_type): :param operation_type: The operation_type of this WorkRequestSummary. :type: str """ - allowed_values = ["CREATE_INTEGRATION_INSTANCE", "UPDATE_INTEGRATION_INSTANCE", "STOP_INTEGRATION_INSTANCE", "START_INTEGRATION_INSTANCE", "DELETE_INTEGRATION_INSTANCE", "CHANGE_PRIVATE_ENDPOINT_OUTBOUND_CONNECTION", "ENABLE_PROCESS_AUTOMATION", "DISABLE_PROCESS_AUTOMATION", "ADD_LOG_ANALYTICS_LOG_GROUP", "DELETE_LOG_ANALYTICS_LOG_GROUP", "CONVERT_INSTANCE", "BEGIN_MIGRATION", "COMPLETE_MIGRATION", "ROLLBACK_MIGRATION", "EXTEND_DATA_RETENTION", "DISASTER_RECOVERY_FAILOVER", "CREATE_CUSTOM_ENDPOINT", "DELETE_CUSTOM_ENDPOINT"] + allowed_values = ["CREATE_INTEGRATION_INSTANCE", "UPDATE_INTEGRATION_INSTANCE", "STOP_INTEGRATION_INSTANCE", "START_INTEGRATION_INSTANCE", "DELETE_INTEGRATION_INSTANCE", "CHANGE_PRIVATE_ENDPOINT_OUTBOUND_CONNECTION", "ENABLE_PROCESS_AUTOMATION", "DISABLE_PROCESS_AUTOMATION", "ADD_LOG_ANALYTICS_LOG_GROUP", "DELETE_LOG_ANALYTICS_LOG_GROUP", "CONVERT_INSTANCE", "ADD_OPA_LOG_ANALYTICS_LOG_GROUP", "DELETE_OPA_LOG_ANALYTICS_LOG_GROUP", "BEGIN_MIGRATION", "COMPLETE_MIGRATION", "ROLLBACK_MIGRATION", "EXTEND_DATA_RETENTION", "DISASTER_RECOVERY_FAILOVER", "CREATE_CUSTOM_ENDPOINT", "DELETE_CUSTOM_ENDPOINT"] if not value_allowed_none_or_none_sentinel(operation_type, allowed_values): operation_type = 'UNKNOWN_ENUM_VALUE' self._operation_type = operation_type diff --git a/src/oci/resource_scheduler/models/create_schedule_details.py b/src/oci/resource_scheduler/models/create_schedule_details.py index 0c1250fe49..092ed6b3c1 100644 --- a/src/oci/resource_scheduler/models/create_schedule_details.py +++ b/src/oci/resource_scheduler/models/create_schedule_details.py @@ -23,6 +23,10 @@ class CreateScheduleDetails(object): #: This constant has a value of "STOP_RESOURCE" ACTION_STOP_RESOURCE = "STOP_RESOURCE" + #: A constant which can be used with the action property of a CreateScheduleDetails. + #: This constant has a value of "BACKUP_RESOURCE" + ACTION_BACKUP_RESOURCE = "BACKUP_RESOURCE" + #: A constant which can be used with the recurrence_type property of a CreateScheduleDetails. #: This constant has a value of "CRON" RECURRENCE_TYPE_CRON = "CRON" @@ -50,7 +54,7 @@ def __init__(self, **kwargs): :param action: The value to assign to the action property of this CreateScheduleDetails. - Allowed values for this property are: "START_RESOURCE", "STOP_RESOURCE" + Allowed values for this property are: "START_RESOURCE", "STOP_RESOURCE", "BACKUP_RESOURCE" :type action: str :param recurrence_details: @@ -210,7 +214,7 @@ def action(self): **[Required]** Gets the action of this CreateScheduleDetails. This is the action that will be executed by the schedule. - Allowed values for this property are: "START_RESOURCE", "STOP_RESOURCE" + Allowed values for this property are: "START_RESOURCE", "STOP_RESOURCE", "BACKUP_RESOURCE" :return: The action of this CreateScheduleDetails. @@ -228,7 +232,7 @@ def action(self, action): :param action: The action of this CreateScheduleDetails. :type: str """ - allowed_values = ["START_RESOURCE", "STOP_RESOURCE"] + allowed_values = ["START_RESOURCE", "STOP_RESOURCE", "BACKUP_RESOURCE"] if not value_allowed_none_or_none_sentinel(action, allowed_values): raise ValueError( f"Invalid value for `action`, must be None or one of {allowed_values}" diff --git a/src/oci/resource_scheduler/models/schedule.py b/src/oci/resource_scheduler/models/schedule.py index 6fc821d488..837588a785 100644 --- a/src/oci/resource_scheduler/models/schedule.py +++ b/src/oci/resource_scheduler/models/schedule.py @@ -30,6 +30,10 @@ class Schedule(object): #: This constant has a value of "STOP_RESOURCE" ACTION_STOP_RESOURCE = "STOP_RESOURCE" + #: A constant which can be used with the action property of a Schedule. + #: This constant has a value of "BACKUP_RESOURCE" + ACTION_BACKUP_RESOURCE = "BACKUP_RESOURCE" + #: A constant which can be used with the recurrence_type property of a Schedule. #: This constant has a value of "CRON" RECURRENCE_TYPE_CRON = "CRON" @@ -121,7 +125,7 @@ def __init__(self, **kwargs): :param action: The value to assign to the action property of this Schedule. - Allowed values for this property are: "START_RESOURCE", "STOP_RESOURCE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "START_RESOURCE", "STOP_RESOURCE", "BACKUP_RESOURCE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type action: str @@ -367,7 +371,7 @@ def action(self): **[Required]** Gets the action of this Schedule. This is the action that will be executed by the schedule. - Allowed values for this property are: "START_RESOURCE", "STOP_RESOURCE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "START_RESOURCE", "STOP_RESOURCE", "BACKUP_RESOURCE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -386,7 +390,7 @@ def action(self, action): :param action: The action of this Schedule. :type: str """ - allowed_values = ["START_RESOURCE", "STOP_RESOURCE"] + allowed_values = ["START_RESOURCE", "STOP_RESOURCE", "BACKUP_RESOURCE"] if not value_allowed_none_or_none_sentinel(action, allowed_values): action = 'UNKNOWN_ENUM_VALUE' self._action = action diff --git a/src/oci/resource_scheduler/models/schedule_summary.py b/src/oci/resource_scheduler/models/schedule_summary.py index 6056495024..98cea7d707 100644 --- a/src/oci/resource_scheduler/models/schedule_summary.py +++ b/src/oci/resource_scheduler/models/schedule_summary.py @@ -23,6 +23,10 @@ class ScheduleSummary(object): #: This constant has a value of "STOP_RESOURCE" ACTION_STOP_RESOURCE = "STOP_RESOURCE" + #: A constant which can be used with the action property of a ScheduleSummary. + #: This constant has a value of "BACKUP_RESOURCE" + ACTION_BACKUP_RESOURCE = "BACKUP_RESOURCE" + #: A constant which can be used with the recurrence_type property of a ScheduleSummary. #: This constant has a value of "CRON" RECURRENCE_TYPE_CRON = "CRON" @@ -82,7 +86,7 @@ def __init__(self, **kwargs): :param action: The value to assign to the action property of this ScheduleSummary. - Allowed values for this property are: "START_RESOURCE", "STOP_RESOURCE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "START_RESOURCE", "STOP_RESOURCE", "BACKUP_RESOURCE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type action: str @@ -306,7 +310,7 @@ def action(self): **[Required]** Gets the action of this ScheduleSummary. This is the action that will be executed by the schedule. - Allowed values for this property are: "START_RESOURCE", "STOP_RESOURCE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "START_RESOURCE", "STOP_RESOURCE", "BACKUP_RESOURCE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -325,7 +329,7 @@ def action(self, action): :param action: The action of this ScheduleSummary. :type: str """ - allowed_values = ["START_RESOURCE", "STOP_RESOURCE"] + allowed_values = ["START_RESOURCE", "STOP_RESOURCE", "BACKUP_RESOURCE"] if not value_allowed_none_or_none_sentinel(action, allowed_values): action = 'UNKNOWN_ENUM_VALUE' self._action = action diff --git a/src/oci/resource_scheduler/models/update_schedule_details.py b/src/oci/resource_scheduler/models/update_schedule_details.py index 51e19fe09d..3198785123 100644 --- a/src/oci/resource_scheduler/models/update_schedule_details.py +++ b/src/oci/resource_scheduler/models/update_schedule_details.py @@ -23,6 +23,10 @@ class UpdateScheduleDetails(object): #: This constant has a value of "STOP_RESOURCE" ACTION_STOP_RESOURCE = "STOP_RESOURCE" + #: A constant which can be used with the action property of a UpdateScheduleDetails. + #: This constant has a value of "BACKUP_RESOURCE" + ACTION_BACKUP_RESOURCE = "BACKUP_RESOURCE" + #: A constant which can be used with the recurrence_type property of a UpdateScheduleDetails. #: This constant has a value of "CRON" RECURRENCE_TYPE_CRON = "CRON" @@ -46,7 +50,7 @@ def __init__(self, **kwargs): :param action: The value to assign to the action property of this UpdateScheduleDetails. - Allowed values for this property are: "START_RESOURCE", "STOP_RESOURCE" + Allowed values for this property are: "START_RESOURCE", "STOP_RESOURCE", "BACKUP_RESOURCE" :type action: str :param recurrence_details: @@ -175,7 +179,7 @@ def action(self): Gets the action of this UpdateScheduleDetails. This is the action that will be executed by the schedule. - Allowed values for this property are: "START_RESOURCE", "STOP_RESOURCE" + Allowed values for this property are: "START_RESOURCE", "STOP_RESOURCE", "BACKUP_RESOURCE" :return: The action of this UpdateScheduleDetails. @@ -193,7 +197,7 @@ def action(self, action): :param action: The action of this UpdateScheduleDetails. :type: str """ - allowed_values = ["START_RESOURCE", "STOP_RESOURCE"] + allowed_values = ["START_RESOURCE", "STOP_RESOURCE", "BACKUP_RESOURCE"] if not value_allowed_none_or_none_sentinel(action, allowed_values): raise ValueError( f"Invalid value for `action`, must be None or one of {allowed_values}" diff --git a/src/oci/resource_scheduler/models/work_request.py b/src/oci/resource_scheduler/models/work_request.py index 00f54be925..5fdcdc591e 100644 --- a/src/oci/resource_scheduler/models/work_request.py +++ b/src/oci/resource_scheduler/models/work_request.py @@ -25,6 +25,10 @@ class WorkRequest(object): #: This constant has a value of "STOP_RESOURCE" OPERATION_TYPE_STOP_RESOURCE = "STOP_RESOURCE" + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "BACKUP_RESOURCE" + OPERATION_TYPE_BACKUP_RESOURCE = "BACKUP_RESOURCE" + #: A constant which can be used with the operation_type property of a WorkRequest. #: This constant has a value of "CHANGE_SCHEDULE_COMPARTMENT" OPERATION_TYPE_CHANGE_SCHEDULE_COMPARTMENT = "CHANGE_SCHEDULE_COMPARTMENT" @@ -76,7 +80,7 @@ def __init__(self, **kwargs): :param operation_type: The value to assign to the operation_type property of this WorkRequest. - Allowed values for this property are: "START_RESOURCE", "STOP_RESOURCE", "CHANGE_SCHEDULE_COMPARTMENT", "CREATE_SCHEDULE", "UPDATE_SCHEDULE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "START_RESOURCE", "STOP_RESOURCE", "BACKUP_RESOURCE", "CHANGE_SCHEDULE_COMPARTMENT", "CREATE_SCHEDULE", "UPDATE_SCHEDULE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type operation_type: str @@ -160,7 +164,7 @@ def operation_type(self): **[Required]** Gets the operation_type of this WorkRequest. The asynchronous operation tracked by this work request. - Allowed values for this property are: "START_RESOURCE", "STOP_RESOURCE", "CHANGE_SCHEDULE_COMPARTMENT", "CREATE_SCHEDULE", "UPDATE_SCHEDULE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "START_RESOURCE", "STOP_RESOURCE", "BACKUP_RESOURCE", "CHANGE_SCHEDULE_COMPARTMENT", "CREATE_SCHEDULE", "UPDATE_SCHEDULE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -179,7 +183,7 @@ def operation_type(self, operation_type): :param operation_type: The operation_type of this WorkRequest. :type: str """ - allowed_values = ["START_RESOURCE", "STOP_RESOURCE", "CHANGE_SCHEDULE_COMPARTMENT", "CREATE_SCHEDULE", "UPDATE_SCHEDULE"] + allowed_values = ["START_RESOURCE", "STOP_RESOURCE", "BACKUP_RESOURCE", "CHANGE_SCHEDULE_COMPARTMENT", "CREATE_SCHEDULE", "UPDATE_SCHEDULE"] if not value_allowed_none_or_none_sentinel(operation_type, allowed_values): operation_type = 'UNKNOWN_ENUM_VALUE' self._operation_type = operation_type diff --git a/src/oci/resource_scheduler/models/work_request_summary.py b/src/oci/resource_scheduler/models/work_request_summary.py index fd14cc34ad..8a7501e245 100644 --- a/src/oci/resource_scheduler/models/work_request_summary.py +++ b/src/oci/resource_scheduler/models/work_request_summary.py @@ -23,6 +23,10 @@ class WorkRequestSummary(object): #: This constant has a value of "STOP_RESOURCE" OPERATION_TYPE_STOP_RESOURCE = "STOP_RESOURCE" + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "BACKUP_RESOURCE" + OPERATION_TYPE_BACKUP_RESOURCE = "BACKUP_RESOURCE" + #: A constant which can be used with the operation_type property of a WorkRequestSummary. #: This constant has a value of "CHANGE_SCHEDULE_COMPARTMENT" OPERATION_TYPE_CHANGE_SCHEDULE_COMPARTMENT = "CHANGE_SCHEDULE_COMPARTMENT" @@ -74,7 +78,7 @@ def __init__(self, **kwargs): :param operation_type: The value to assign to the operation_type property of this WorkRequestSummary. - Allowed values for this property are: "START_RESOURCE", "STOP_RESOURCE", "CHANGE_SCHEDULE_COMPARTMENT", "CREATE_SCHEDULE", "UPDATE_SCHEDULE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "START_RESOURCE", "STOP_RESOURCE", "BACKUP_RESOURCE", "CHANGE_SCHEDULE_COMPARTMENT", "CREATE_SCHEDULE", "UPDATE_SCHEDULE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type operation_type: str @@ -158,7 +162,7 @@ def operation_type(self): Gets the operation_type of this WorkRequestSummary. This is the asynchronous operation tracked by this work request. - Allowed values for this property are: "START_RESOURCE", "STOP_RESOURCE", "CHANGE_SCHEDULE_COMPARTMENT", "CREATE_SCHEDULE", "UPDATE_SCHEDULE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "START_RESOURCE", "STOP_RESOURCE", "BACKUP_RESOURCE", "CHANGE_SCHEDULE_COMPARTMENT", "CREATE_SCHEDULE", "UPDATE_SCHEDULE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -177,7 +181,7 @@ def operation_type(self, operation_type): :param operation_type: The operation_type of this WorkRequestSummary. :type: str """ - allowed_values = ["START_RESOURCE", "STOP_RESOURCE", "CHANGE_SCHEDULE_COMPARTMENT", "CREATE_SCHEDULE", "UPDATE_SCHEDULE"] + allowed_values = ["START_RESOURCE", "STOP_RESOURCE", "BACKUP_RESOURCE", "CHANGE_SCHEDULE_COMPARTMENT", "CREATE_SCHEDULE", "UPDATE_SCHEDULE"] if not value_allowed_none_or_none_sentinel(operation_type, allowed_values): operation_type = 'UNKNOWN_ENUM_VALUE' self._operation_type = operation_type diff --git a/src/oci/resource_scheduler/schedule_client.py b/src/oci/resource_scheduler/schedule_client.py index d0a08862a0..347c5adb6b 100644 --- a/src/oci/resource_scheduler/schedule_client.py +++ b/src/oci/resource_scheduler/schedule_client.py @@ -370,7 +370,7 @@ def cancel_work_request(self, work_request_id, **kwargs): def change_schedule_compartment(self, schedule_id, change_schedule_compartment_details, **kwargs): """ - This API) moves a schedule into a different compartment within the same tenancy. For information about moving resources between + This API moves a schedule into a different compartment within the same tenancy. For information about moving resources between compartments, see `Moving Resources to a Different Compartment`__. __ https://docs.oracle.com/iaas/Content/Identity/Tasks/managingcompartments.htm#moveRes @@ -382,7 +382,7 @@ def change_schedule_compartment(self, schedule_id, change_schedule_compartment_d __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm :param oci.resource_scheduler.models.ChangeScheduleCompartmentDetails change_schedule_compartment_details: (required) - This is the change schedule compartment details that will be updated. + These are the change schedule compartment details that will be updated. :param str if_match: (optional) This is used for optimistic concurrency control. In the PUT or DELETE call for a resource, set the @@ -1084,6 +1084,9 @@ def list_resource_types(self, **kwargs): __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + :param str action_type: (optional) + This describes the Action Type + :param int limit: (optional) For list pagination. The maximum number of results per page, or items to return in a paginated \"List\" call. For important details about how pagination works, see @@ -1139,6 +1142,7 @@ def list_resource_types(self, **kwargs): "enable_strict_url_encoding", "retry_strategy", "compartment_id", + "action_type", "limit", "page", "opc_request_id" @@ -1150,6 +1154,7 @@ def list_resource_types(self, **kwargs): query_params = { "compartmentId": kwargs.get("compartment_id", missing), + "actionType": kwargs.get("action_type", missing), "limit": kwargs.get("limit", missing), "page": kwargs.get("page", missing) } diff --git a/src/oci/resource_scheduler/schedule_client_composite_operations.py b/src/oci/resource_scheduler/schedule_client_composite_operations.py index 63e6cc86a7..f03e155c42 100644 --- a/src/oci/resource_scheduler/schedule_client_composite_operations.py +++ b/src/oci/resource_scheduler/schedule_client_composite_operations.py @@ -80,7 +80,7 @@ def change_schedule_compartment_and_wait_for_state(self, schedule_id, change_sch __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm :param oci.resource_scheduler.models.ChangeScheduleCompartmentDetails change_schedule_compartment_details: (required) - This is the change schedule compartment details that will be updated. + These are the change schedule compartment details that will be updated. :param list[str] wait_for_states: An array of states to wait on. These should be valid values for :py:attr:`~oci.resource_scheduler.models.WorkRequest.status` diff --git a/src/oci/version.py b/src/oci/version.py index 32580a18ce..8abeeb63b0 100644 --- a/src/oci/version.py +++ b/src/oci/version.py @@ -2,4 +2,4 @@ # Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. # This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. -__version__ = "2.179.0" +__version__ = "2.180.0" From 1af5672e80d33d93dcb63c31ff943076c2aa0c4f Mon Sep 17 00:00:00 2001 From: OCI DEX Release Bot Automation Date: Mon, 29 Jun 2026 23:08:43 +0000 Subject: [PATCH 04/11] Releasing version 2.181.0 Co-authored-by: Harsh Kumar --- CHANGELOG.rst | 16 +++ docs/api/psql.rst | 6 + .../models/oci.psql.models.NonePitrPolicy.rst | 11 ++ .../models/oci.psql.models.PitrDetails.rst | 11 ++ .../models/oci.psql.models.PitrPolicy.rst | 11 ++ .../models/oci.psql.models.PitrTimeWindow.rst | 11 ++ ...odels.PointInTimeDbSystemSourceDetails.rst | 11 ++ .../oci.psql.models.StandardPitrPolicy.rst | 11 ++ docs/api/resource_manager.rst | 8 +- ...ailApiTokenConfigurationSourceProvider.rst | 11 ++ ...okenConfigurationSourceProviderSummary.rst | 11 ++ ...AppPasswordConfigurationSourceProvider.rst | 11 -- ...kenConfigurationSourceProviderDetails.rst} | 4 +- ...kenConfigurationSourceProviderDetails.rst} | 6 +- ...wordConfigurationSourceProviderDetails.rst | 11 -- pyproject.toml | 2 +- requirements.txt | 2 +- setup.py | 2 +- .../models/schedule_interval_trigger.py | 51 ++++++- src/oci/object_storage/models/bucket.py | 35 +++++ .../models/create_bucket_details.py | 35 +++++ .../models/update_bucket_details.py | 35 +++++ .../object_storage/object_storage_client.py | 13 ++ src/oci/psql/models/__init__.py | 12 ++ src/oci/psql/models/backup.py | 10 +- src/oci/psql/models/backup_source_details.py | 2 +- src/oci/psql/models/management_policy.py | 31 ++++- .../psql/models/management_policy_details.py | 31 ++++- src/oci/psql/models/none_pitr_policy.py | 49 +++++++ src/oci/psql/models/none_source_details.py | 2 +- src/oci/psql/models/pitr_details.py | 121 ++++++++++++++++ src/oci/psql/models/pitr_policy.py | 107 ++++++++++++++ src/oci/psql/models/pitr_time_window.py | 131 ++++++++++++++++++ .../point_in_time_db_system_source_details.py | 127 +++++++++++++++++ .../primary_db_system_source_details.py | 2 +- .../psql/models/restore_db_system_details.py | 47 ++++++- src/oci/psql/models/source_details.py | 14 +- src/oci/psql/models/standard_pitr_policy.py | 80 +++++++++++ src/oci/psql/postgresql_client.py | 114 ++++++++++++++- src/oci/resource_manager/models/__init__.py | 16 +-- ...pi_token_configuration_source_provider.py} | 64 +++++---- ..._configuration_source_provider_summary.py} | 51 ++++--- ...ess_token_configuration_source_provider.py | 16 ++- ...n_configuration_source_provider_summary.py | 7 + .../models/configuration_source_provider.py | 84 +++++++++-- .../configuration_source_provider_summary.py | 43 +++++- ..._configuration_source_provider_details.py} | 81 +++++------ ...e_configuration_source_provider_details.py | 12 +- ...ess_token_configuration_source_provider.py | 16 ++- ...n_configuration_source_provider_summary.py | 7 + ...ess_token_configuration_source_provider.py | 16 ++- ...n_configuration_source_provider_summary.py | 7 + ..._configuration_source_provider_details.py} | 83 +++++------ ...e_configuration_source_provider_details.py | 14 +- src/oci/version.py | 2 +- 55 files changed, 1500 insertions(+), 224 deletions(-) create mode 100644 docs/api/psql/models/oci.psql.models.NonePitrPolicy.rst create mode 100644 docs/api/psql/models/oci.psql.models.PitrDetails.rst create mode 100644 docs/api/psql/models/oci.psql.models.PitrPolicy.rst create mode 100644 docs/api/psql/models/oci.psql.models.PitrTimeWindow.rst create mode 100644 docs/api/psql/models/oci.psql.models.PointInTimeDbSystemSourceDetails.rst create mode 100644 docs/api/psql/models/oci.psql.models.StandardPitrPolicy.rst create mode 100644 docs/api/resource_manager/models/oci.resource_manager.models.BitbucketCloudEmailApiTokenConfigurationSourceProvider.rst create mode 100644 docs/api/resource_manager/models/oci.resource_manager.models.BitbucketCloudEmailApiTokenConfigurationSourceProviderSummary.rst delete mode 100644 docs/api/resource_manager/models/oci.resource_manager.models.BitbucketCloudUsernameAppPasswordConfigurationSourceProvider.rst rename docs/api/resource_manager/models/{oci.resource_manager.models.BitbucketCloudUsernameAppPasswordConfigurationSourceProviderSummary.rst => oci.resource_manager.models.CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails.rst} (60%) rename docs/api/resource_manager/models/{oci.resource_manager.models.CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails.rst => oci.resource_manager.models.UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails.rst} (56%) delete mode 100644 docs/api/resource_manager/models/oci.resource_manager.models.UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails.rst create mode 100644 src/oci/psql/models/none_pitr_policy.py create mode 100644 src/oci/psql/models/pitr_details.py create mode 100644 src/oci/psql/models/pitr_policy.py create mode 100644 src/oci/psql/models/pitr_time_window.py create mode 100644 src/oci/psql/models/point_in_time_db_system_source_details.py create mode 100644 src/oci/psql/models/standard_pitr_policy.py rename src/oci/resource_manager/models/{bitbucket_cloud_username_app_password_configuration_source_provider.py => bitbucket_cloud_email_api_token_configuration_source_provider.py} (68%) rename src/oci/resource_manager/models/{bitbucket_cloud_username_app_password_configuration_source_provider_summary.py => bitbucket_cloud_email_api_token_configuration_source_provider_summary.py} (69%) rename src/oci/resource_manager/models/{create_bitbucket_cloud_username_app_password_configuration_source_provider_details.py => create_bitbucket_cloud_email_api_token_configuration_source_provider_details.py} (61%) rename src/oci/resource_manager/models/{update_bitbucket_cloud_username_app_password_configuration_source_provider_details.py => update_bitbucket_cloud_email_api_token_configuration_source_provider_details.py} (57%) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index a626773dbd..702ade2229 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -4,6 +4,22 @@ All notable changes to this project will be documented in this file. The format is based on `Keep a Changelog `_. +==================== +2.181.0 - 2026-06-30 +==================== + +Added +----- +* Support for Bitbucket Cloud email and API token configuration source providers in the Resource Manager service +* Support for configurable randomization windows for schedules in the Data Science service +* Support for partner-provided Windows licensing in the Compute service +* Support for Key Management service (KMS) bucket key in the Object Storage service +* Support for Point-In-Time Recovery (PITR) in the PostgreSQL service + +Breaking +-------- +* The models `BitbucketCloudUsernameAppPasswordConfigurationSourceProviderSummary`, `BitbucketCloudUsernameAppPasswordConfigurationSourceProvider`, `CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails` and `UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails` were removed in the Resource Manager service + ==================== 2.180.0 - 2026-06-23 ==================== diff --git a/docs/api/psql.rst b/docs/api/psql.rst index b9194611fc..495fd269d5 100644 --- a/docs/api/psql.rst +++ b/docs/api/psql.rst @@ -80,6 +80,7 @@ Psql oci.psql.models.MonthlyBackupPolicy oci.psql.models.NetworkDetails oci.psql.models.NoneBackupPolicy + oci.psql.models.NonePitrPolicy oci.psql.models.NoneSourceDetails oci.psql.models.OciOptimizedStorageDetails oci.psql.models.OdspInsight @@ -95,7 +96,11 @@ Psql oci.psql.models.PatchRemoveInstruction oci.psql.models.PatchReplaceInstruction oci.psql.models.PatchRequireInstruction + oci.psql.models.PitrDetails + oci.psql.models.PitrPolicy + oci.psql.models.PitrTimeWindow oci.psql.models.PlainTextPasswordDetails + oci.psql.models.PointInTimeDbSystemSourceDetails oci.psql.models.PrimaryDbInstanceDetails oci.psql.models.PrimaryDbSystemSourceDetails oci.psql.models.ReplicationConfig @@ -110,6 +115,7 @@ Psql oci.psql.models.SortingDefault oci.psql.models.SourceBackupDetails oci.psql.models.SourceDetails + oci.psql.models.StandardPitrPolicy oci.psql.models.StartDbSystemDetails oci.psql.models.StorageDetails oci.psql.models.SwitchOverDetails diff --git a/docs/api/psql/models/oci.psql.models.NonePitrPolicy.rst b/docs/api/psql/models/oci.psql.models.NonePitrPolicy.rst new file mode 100644 index 0000000000..7d32afdb0a --- /dev/null +++ b/docs/api/psql/models/oci.psql.models.NonePitrPolicy.rst @@ -0,0 +1,11 @@ +NonePitrPolicy +============== + +.. currentmodule:: oci.psql.models + +.. autoclass:: NonePitrPolicy + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/psql/models/oci.psql.models.PitrDetails.rst b/docs/api/psql/models/oci.psql.models.PitrDetails.rst new file mode 100644 index 0000000000..0a443dad8d --- /dev/null +++ b/docs/api/psql/models/oci.psql.models.PitrDetails.rst @@ -0,0 +1,11 @@ +PitrDetails +=========== + +.. currentmodule:: oci.psql.models + +.. autoclass:: PitrDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/psql/models/oci.psql.models.PitrPolicy.rst b/docs/api/psql/models/oci.psql.models.PitrPolicy.rst new file mode 100644 index 0000000000..09cd840a32 --- /dev/null +++ b/docs/api/psql/models/oci.psql.models.PitrPolicy.rst @@ -0,0 +1,11 @@ +PitrPolicy +========== + +.. currentmodule:: oci.psql.models + +.. autoclass:: PitrPolicy + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/psql/models/oci.psql.models.PitrTimeWindow.rst b/docs/api/psql/models/oci.psql.models.PitrTimeWindow.rst new file mode 100644 index 0000000000..ea0f644fab --- /dev/null +++ b/docs/api/psql/models/oci.psql.models.PitrTimeWindow.rst @@ -0,0 +1,11 @@ +PitrTimeWindow +============== + +.. currentmodule:: oci.psql.models + +.. autoclass:: PitrTimeWindow + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/psql/models/oci.psql.models.PointInTimeDbSystemSourceDetails.rst b/docs/api/psql/models/oci.psql.models.PointInTimeDbSystemSourceDetails.rst new file mode 100644 index 0000000000..75db25401e --- /dev/null +++ b/docs/api/psql/models/oci.psql.models.PointInTimeDbSystemSourceDetails.rst @@ -0,0 +1,11 @@ +PointInTimeDbSystemSourceDetails +================================ + +.. currentmodule:: oci.psql.models + +.. autoclass:: PointInTimeDbSystemSourceDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/psql/models/oci.psql.models.StandardPitrPolicy.rst b/docs/api/psql/models/oci.psql.models.StandardPitrPolicy.rst new file mode 100644 index 0000000000..b2e2f30a7d --- /dev/null +++ b/docs/api/psql/models/oci.psql.models.StandardPitrPolicy.rst @@ -0,0 +1,11 @@ +StandardPitrPolicy +================== + +.. currentmodule:: oci.psql.models + +.. autoclass:: StandardPitrPolicy + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/resource_manager.rst b/docs/api/resource_manager.rst index e90695ff68..67a9232650 100644 --- a/docs/api/resource_manager.rst +++ b/docs/api/resource_manager.rst @@ -27,8 +27,8 @@ Resource Manager oci.resource_manager.models.AssociatedResourcesCollection oci.resource_manager.models.BitbucketCloudConfigSource oci.resource_manager.models.BitbucketCloudConfigSourceRecord - oci.resource_manager.models.BitbucketCloudUsernameAppPasswordConfigurationSourceProvider - oci.resource_manager.models.BitbucketCloudUsernameAppPasswordConfigurationSourceProviderSummary + oci.resource_manager.models.BitbucketCloudEmailApiTokenConfigurationSourceProvider + oci.resource_manager.models.BitbucketCloudEmailApiTokenConfigurationSourceProviderSummary oci.resource_manager.models.BitbucketServerAccessTokenConfigurationSourceProvider oci.resource_manager.models.BitbucketServerAccessTokenConfigurationSourceProviderSummary oci.resource_manager.models.BitbucketServerConfigSource @@ -47,7 +47,7 @@ Resource Manager oci.resource_manager.models.CreateApplyJobOperationDetails oci.resource_manager.models.CreateApplyRollbackJobOperationDetails oci.resource_manager.models.CreateBitbucketCloudConfigSourceDetails - oci.resource_manager.models.CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails + oci.resource_manager.models.CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails oci.resource_manager.models.CreateBitbucketServerAccessTokenConfigurationSourceProviderDetails oci.resource_manager.models.CreateBitbucketServerConfigSourceDetails oci.resource_manager.models.CreateCompartmentConfigSourceDetails @@ -121,7 +121,7 @@ Resource Manager oci.resource_manager.models.TerraformVersionCollection oci.resource_manager.models.TerraformVersionSummary oci.resource_manager.models.UpdateBitbucketCloudConfigSourceDetails - oci.resource_manager.models.UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails + oci.resource_manager.models.UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails oci.resource_manager.models.UpdateBitbucketServerAccessTokenConfigurationSourceProviderDetails oci.resource_manager.models.UpdateBitbucketServerConfigSourceDetails oci.resource_manager.models.UpdateConfigSourceDetails diff --git a/docs/api/resource_manager/models/oci.resource_manager.models.BitbucketCloudEmailApiTokenConfigurationSourceProvider.rst b/docs/api/resource_manager/models/oci.resource_manager.models.BitbucketCloudEmailApiTokenConfigurationSourceProvider.rst new file mode 100644 index 0000000000..8aa7f78577 --- /dev/null +++ b/docs/api/resource_manager/models/oci.resource_manager.models.BitbucketCloudEmailApiTokenConfigurationSourceProvider.rst @@ -0,0 +1,11 @@ +BitbucketCloudEmailApiTokenConfigurationSourceProvider +====================================================== + +.. currentmodule:: oci.resource_manager.models + +.. autoclass:: BitbucketCloudEmailApiTokenConfigurationSourceProvider + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/resource_manager/models/oci.resource_manager.models.BitbucketCloudEmailApiTokenConfigurationSourceProviderSummary.rst b/docs/api/resource_manager/models/oci.resource_manager.models.BitbucketCloudEmailApiTokenConfigurationSourceProviderSummary.rst new file mode 100644 index 0000000000..cab30dad4a --- /dev/null +++ b/docs/api/resource_manager/models/oci.resource_manager.models.BitbucketCloudEmailApiTokenConfigurationSourceProviderSummary.rst @@ -0,0 +1,11 @@ +BitbucketCloudEmailApiTokenConfigurationSourceProviderSummary +============================================================= + +.. currentmodule:: oci.resource_manager.models + +.. autoclass:: BitbucketCloudEmailApiTokenConfigurationSourceProviderSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/resource_manager/models/oci.resource_manager.models.BitbucketCloudUsernameAppPasswordConfigurationSourceProvider.rst b/docs/api/resource_manager/models/oci.resource_manager.models.BitbucketCloudUsernameAppPasswordConfigurationSourceProvider.rst deleted file mode 100644 index 49be9bc94a..0000000000 --- a/docs/api/resource_manager/models/oci.resource_manager.models.BitbucketCloudUsernameAppPasswordConfigurationSourceProvider.rst +++ /dev/null @@ -1,11 +0,0 @@ -BitbucketCloudUsernameAppPasswordConfigurationSourceProvider -============================================================ - -.. currentmodule:: oci.resource_manager.models - -.. autoclass:: BitbucketCloudUsernameAppPasswordConfigurationSourceProvider - :show-inheritance: - :special-members: __init__ - :members: - :undoc-members: - :inherited-members: \ No newline at end of file diff --git a/docs/api/resource_manager/models/oci.resource_manager.models.BitbucketCloudUsernameAppPasswordConfigurationSourceProviderSummary.rst b/docs/api/resource_manager/models/oci.resource_manager.models.CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails.rst similarity index 60% rename from docs/api/resource_manager/models/oci.resource_manager.models.BitbucketCloudUsernameAppPasswordConfigurationSourceProviderSummary.rst rename to docs/api/resource_manager/models/oci.resource_manager.models.CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails.rst index 32ecfef507..4147671900 100644 --- a/docs/api/resource_manager/models/oci.resource_manager.models.BitbucketCloudUsernameAppPasswordConfigurationSourceProviderSummary.rst +++ b/docs/api/resource_manager/models/oci.resource_manager.models.CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails.rst @@ -1,9 +1,9 @@ -BitbucketCloudUsernameAppPasswordConfigurationSourceProviderSummary +CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails =================================================================== .. currentmodule:: oci.resource_manager.models -.. autoclass:: BitbucketCloudUsernameAppPasswordConfigurationSourceProviderSummary +.. autoclass:: CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails :show-inheritance: :special-members: __init__ :members: diff --git a/docs/api/resource_manager/models/oci.resource_manager.models.CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails.rst b/docs/api/resource_manager/models/oci.resource_manager.models.UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails.rst similarity index 56% rename from docs/api/resource_manager/models/oci.resource_manager.models.CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails.rst rename to docs/api/resource_manager/models/oci.resource_manager.models.UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails.rst index 23d7d9752c..b4f387dbcb 100644 --- a/docs/api/resource_manager/models/oci.resource_manager.models.CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails.rst +++ b/docs/api/resource_manager/models/oci.resource_manager.models.UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails.rst @@ -1,9 +1,9 @@ -CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails -========================================================================= +UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails +=================================================================== .. currentmodule:: oci.resource_manager.models -.. autoclass:: CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails +.. autoclass:: UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails :show-inheritance: :special-members: __init__ :members: diff --git a/docs/api/resource_manager/models/oci.resource_manager.models.UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails.rst b/docs/api/resource_manager/models/oci.resource_manager.models.UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails.rst deleted file mode 100644 index 901891862a..0000000000 --- a/docs/api/resource_manager/models/oci.resource_manager.models.UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails.rst +++ /dev/null @@ -1,11 +0,0 @@ -UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails -========================================================================= - -.. currentmodule:: oci.resource_manager.models - -.. autoclass:: UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails - :show-inheritance: - :special-members: __init__ - :members: - :undoc-members: - :inherited-members: \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml index 1dc9fdf119..a70ad53c11 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -43,7 +43,7 @@ classifiers=[ dependencies = [ "certifi", "configparser==4.0.2 ; python_version < '3'", - "cryptography>=3.2.1,<47.0.0", + "cryptography>=3.2.1,<50.0.0", "pyOpenSSL>=17.5.0,<27.0.0", "python-dateutil>=2.5.3,<3.0.0", "pytz>=2016.10", diff --git a/requirements.txt b/requirements.txt index 8506afae0f..c2bfaf38dc 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,7 +1,7 @@ certifi coverage==4.5.2 cryptography==42.0.8; python_full_version == '3.9.0' or python_full_version == '3.9.1' -cryptography>=3.2.1,<47.0.0; python_full_version != '3.9.0' and python_full_version != '3.9.1' +cryptography>=3.2.1,<50.0.0; python_full_version != '3.9.0' and python_full_version != '3.9.1' flake8>=3.6.0,<6 mock==2.0.0 pyOpenSSL>=17.5.0,<27.0.0 diff --git a/setup.py b/setup.py index 30ebab4d4b..6645a47ecc 100644 --- a/setup.py +++ b/setup.py @@ -32,7 +32,7 @@ def open_relative(*path): requires = [ "certifi", "configparser==4.0.2 ; python_version < '3'", - "cryptography>=3.2.1,<47.0.0", + "cryptography>=3.2.1,<50.0.0", "pyOpenSSL>=17.5.0,<27.0.0", "python-dateutil>=2.5.3,<3.0.0", "pytz>=2016.10", diff --git a/src/oci/data_science/models/schedule_interval_trigger.py b/src/oci/data_science/models/schedule_interval_trigger.py index bf545eb9f8..78b6d053ae 100644 --- a/src/oci/data_science/models/schedule_interval_trigger.py +++ b/src/oci/data_science/models/schedule_interval_trigger.py @@ -53,6 +53,10 @@ def __init__(self, **kwargs): The value to assign to the interval property of this ScheduleIntervalTrigger. :type interval: int + :param initial_jitter_in_minutes: + The value to assign to the initial_jitter_in_minutes property of this ScheduleIntervalTrigger. + :type initial_jitter_in_minutes: int + :param is_random_start_time: The value to assign to the is_random_start_time property of this ScheduleIntervalTrigger. :type is_random_start_time: bool @@ -64,6 +68,7 @@ def __init__(self, **kwargs): 'time_end': 'datetime', 'frequency': 'str', 'interval': 'int', + 'initial_jitter_in_minutes': 'int', 'is_random_start_time': 'bool' } self.attribute_map = { @@ -72,6 +77,7 @@ def __init__(self, **kwargs): 'time_end': 'timeEnd', 'frequency': 'frequency', 'interval': 'interval', + 'initial_jitter_in_minutes': 'initialJitterInMinutes', 'is_random_start_time': 'isRandomStartTime' } self._trigger_type = None @@ -79,6 +85,7 @@ def __init__(self, **kwargs): self._time_end = None self._frequency = None self._interval = None + self._initial_jitter_in_minutes = None self._is_random_start_time = None self._trigger_type = 'INTERVAL' @@ -136,12 +143,48 @@ def interval(self, interval): """ self._interval = interval + @property + def initial_jitter_in_minutes(self): + """ + Gets the initial_jitter_in_minutes of this ScheduleIntervalTrigger. + Maximum number of minutes after timeStart that the scheduler may use to randomly select the first execution time. + This value is considered only when isRandomStartTime is true. + This value applies only to the initial execution; subsequent executions remain deterministic based on the resolved first trigger time. + If timeStart is null, the service resolves the effective start time using the current time. + The initial jitter window is then applied once to that resolved start time to determine the first execution time. + If not provided and isRandomStartTime is true, the service defaults the jitter window to half of the configured interval duration. + The value must not exceed the configured interval duration. + + + :return: The initial_jitter_in_minutes of this ScheduleIntervalTrigger. + :rtype: int + """ + return self._initial_jitter_in_minutes + + @initial_jitter_in_minutes.setter + def initial_jitter_in_minutes(self, initial_jitter_in_minutes): + """ + Sets the initial_jitter_in_minutes of this ScheduleIntervalTrigger. + Maximum number of minutes after timeStart that the scheduler may use to randomly select the first execution time. + This value is considered only when isRandomStartTime is true. + This value applies only to the initial execution; subsequent executions remain deterministic based on the resolved first trigger time. + If timeStart is null, the service resolves the effective start time using the current time. + The initial jitter window is then applied once to that resolved start time to determine the first execution time. + If not provided and isRandomStartTime is true, the service defaults the jitter window to half of the configured interval duration. + The value must not exceed the configured interval duration. + + + :param initial_jitter_in_minutes: The initial_jitter_in_minutes of this ScheduleIntervalTrigger. + :type: int + """ + self._initial_jitter_in_minutes = initial_jitter_in_minutes + @property def is_random_start_time(self): """ Gets the is_random_start_time of this ScheduleIntervalTrigger. - when true and timeStart is null, system generate a random start time between now and now + interval; - isRandomStartTime can be true if timeStart is null. + when true, system generates a randomized first start time between timeStart and timeStart + initialJitterInMinutes. + if timeStart is null, the current time is used as the base start time. :return: The is_random_start_time of this ScheduleIntervalTrigger. @@ -153,8 +196,8 @@ def is_random_start_time(self): def is_random_start_time(self, is_random_start_time): """ Sets the is_random_start_time of this ScheduleIntervalTrigger. - when true and timeStart is null, system generate a random start time between now and now + interval; - isRandomStartTime can be true if timeStart is null. + when true, system generates a randomized first start time between timeStart and timeStart + initialJitterInMinutes. + if timeStart is null, the current time is used as the base start time. :param is_random_start_time: The is_random_start_time of this ScheduleIntervalTrigger. diff --git a/src/oci/object_storage/models/bucket.py b/src/oci/object_storage/models/bucket.py index e87e8f10a3..3b0e95381a 100644 --- a/src/oci/object_storage/models/bucket.py +++ b/src/oci/object_storage/models/bucket.py @@ -133,6 +133,10 @@ def __init__(self, **kwargs): The value to assign to the kms_key_id property of this Bucket. :type kms_key_id: str + :param is_bucket_key_enabled: + The value to assign to the is_bucket_key_enabled property of this Bucket. + :type is_bucket_key_enabled: bool + :param object_lifecycle_policy_etag: The value to assign to the object_lifecycle_policy_etag property of this Bucket. :type object_lifecycle_policy_etag: str @@ -190,6 +194,7 @@ def __init__(self, **kwargs): 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', 'kms_key_id': 'str', + 'is_bucket_key_enabled': 'bool', 'object_lifecycle_policy_etag': 'str', 'approximate_count': 'int', 'approximate_size': 'int', @@ -214,6 +219,7 @@ def __init__(self, **kwargs): 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', 'kms_key_id': 'kmsKeyId', + 'is_bucket_key_enabled': 'isBucketKeyEnabled', 'object_lifecycle_policy_etag': 'objectLifecyclePolicyEtag', 'approximate_count': 'approximateCount', 'approximate_size': 'approximateSize', @@ -237,6 +243,7 @@ def __init__(self, **kwargs): self._freeform_tags = None self._defined_tags = None self._kms_key_id = None + self._is_bucket_key_enabled = None self._object_lifecycle_policy_etag = None self._approximate_count = None self._approximate_size = None @@ -625,6 +632,34 @@ def kms_key_id(self, kms_key_id): """ self._kms_key_id = kms_key_id + @property + def is_bucket_key_enabled(self): + """ + Gets the is_bucket_key_enabled of this Bucket. + Specifies whether Object Storage should use intermediate cached Bucket Encryption Keys with server-side + encryption using KMS (SSE-KMS) for new objects in the bucket. This reduces calls to OCI Vault Key Management + Service (KMS). Existing objects are not affected. + + + :return: The is_bucket_key_enabled of this Bucket. + :rtype: bool + """ + return self._is_bucket_key_enabled + + @is_bucket_key_enabled.setter + def is_bucket_key_enabled(self, is_bucket_key_enabled): + """ + Sets the is_bucket_key_enabled of this Bucket. + Specifies whether Object Storage should use intermediate cached Bucket Encryption Keys with server-side + encryption using KMS (SSE-KMS) for new objects in the bucket. This reduces calls to OCI Vault Key Management + Service (KMS). Existing objects are not affected. + + + :param is_bucket_key_enabled: The is_bucket_key_enabled of this Bucket. + :type: bool + """ + self._is_bucket_key_enabled = is_bucket_key_enabled + @property def object_lifecycle_policy_etag(self): """ diff --git a/src/oci/object_storage/models/create_bucket_details.py b/src/oci/object_storage/models/create_bucket_details.py index 0fb95a16f5..4eab3f0fa0 100644 --- a/src/oci/object_storage/models/create_bucket_details.py +++ b/src/oci/object_storage/models/create_bucket_details.py @@ -90,6 +90,10 @@ def __init__(self, **kwargs): The value to assign to the kms_key_id property of this CreateBucketDetails. :type kms_key_id: str + :param is_bucket_key_enabled: + The value to assign to the is_bucket_key_enabled property of this CreateBucketDetails. + :type is_bucket_key_enabled: bool + :param versioning: The value to assign to the versioning property of this CreateBucketDetails. Allowed values for this property are: "Enabled", "Disabled" @@ -114,6 +118,7 @@ def __init__(self, **kwargs): 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', 'kms_key_id': 'str', + 'is_bucket_key_enabled': 'bool', 'versioning': 'str', 'auto_tiering': 'str', 'bucket_scope': 'str' @@ -128,6 +133,7 @@ def __init__(self, **kwargs): 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', 'kms_key_id': 'kmsKeyId', + 'is_bucket_key_enabled': 'isBucketKeyEnabled', 'versioning': 'versioning', 'auto_tiering': 'autoTiering', 'bucket_scope': 'bucketScope' @@ -141,6 +147,7 @@ def __init__(self, **kwargs): self._freeform_tags = None self._defined_tags = None self._kms_key_id = None + self._is_bucket_key_enabled = None self._versioning = None self._auto_tiering = None self._bucket_scope = None @@ -423,6 +430,34 @@ def kms_key_id(self, kms_key_id): """ self._kms_key_id = kms_key_id + @property + def is_bucket_key_enabled(self): + """ + Gets the is_bucket_key_enabled of this CreateBucketDetails. + Specifies whether Object Storage should use intermediate cached Bucket Encryption Keys with server-side + encryption using KMS (SSE-KMS) for new objects in the bucket. This reduces calls to OCI Vault Key Management + Service (KMS). Existing objects are not affected. + + + :return: The is_bucket_key_enabled of this CreateBucketDetails. + :rtype: bool + """ + return self._is_bucket_key_enabled + + @is_bucket_key_enabled.setter + def is_bucket_key_enabled(self, is_bucket_key_enabled): + """ + Sets the is_bucket_key_enabled of this CreateBucketDetails. + Specifies whether Object Storage should use intermediate cached Bucket Encryption Keys with server-side + encryption using KMS (SSE-KMS) for new objects in the bucket. This reduces calls to OCI Vault Key Management + Service (KMS). Existing objects are not affected. + + + :param is_bucket_key_enabled: The is_bucket_key_enabled of this CreateBucketDetails. + :type: bool + """ + self._is_bucket_key_enabled = is_bucket_key_enabled + @property def versioning(self): """ diff --git a/src/oci/object_storage/models/update_bucket_details.py b/src/oci/object_storage/models/update_bucket_details.py index 6b96ce472e..5b4f68aa68 100644 --- a/src/oci/object_storage/models/update_bucket_details.py +++ b/src/oci/object_storage/models/update_bucket_details.py @@ -81,6 +81,10 @@ def __init__(self, **kwargs): The value to assign to the kms_key_id property of this UpdateBucketDetails. :type kms_key_id: str + :param is_bucket_key_enabled: + The value to assign to the is_bucket_key_enabled property of this UpdateBucketDetails. + :type is_bucket_key_enabled: bool + :param versioning: The value to assign to the versioning property of this UpdateBucketDetails. Allowed values for this property are: "Enabled", "Suspended" @@ -105,6 +109,7 @@ def __init__(self, **kwargs): 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', 'kms_key_id': 'str', + 'is_bucket_key_enabled': 'bool', 'versioning': 'str', 'auto_tiering': 'str', 'bucket_scope': 'str' @@ -119,6 +124,7 @@ def __init__(self, **kwargs): 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', 'kms_key_id': 'kmsKeyId', + 'is_bucket_key_enabled': 'isBucketKeyEnabled', 'versioning': 'versioning', 'auto_tiering': 'autoTiering', 'bucket_scope': 'bucketScope' @@ -132,6 +138,7 @@ def __init__(self, **kwargs): self._freeform_tags = None self._defined_tags = None self._kms_key_id = None + self._is_bucket_key_enabled = None self._versioning = None self._auto_tiering = None self._bucket_scope = None @@ -403,6 +410,34 @@ def kms_key_id(self, kms_key_id): """ self._kms_key_id = kms_key_id + @property + def is_bucket_key_enabled(self): + """ + Gets the is_bucket_key_enabled of this UpdateBucketDetails. + Specifies whether Object Storage should use intermediate cached Bucket Encryption Keys with server-side + encryption using KMS (SSE-KMS) for new objects in the bucket. This reduces calls to OCI Vault Key Management + Service (KMS). Existing objects are not affected. + + + :return: The is_bucket_key_enabled of this UpdateBucketDetails. + :rtype: bool + """ + return self._is_bucket_key_enabled + + @is_bucket_key_enabled.setter + def is_bucket_key_enabled(self, is_bucket_key_enabled): + """ + Sets the is_bucket_key_enabled of this UpdateBucketDetails. + Specifies whether Object Storage should use intermediate cached Bucket Encryption Keys with server-side + encryption using KMS (SSE-KMS) for new objects in the bucket. This reduces calls to OCI Vault Key Management + Service (KMS). Existing objects are not affected. + + + :param is_bucket_key_enabled: The is_bucket_key_enabled of this UpdateBucketDetails. + :type: bool + """ + self._is_bucket_key_enabled = is_bucket_key_enabled + @property def versioning(self): """ diff --git a/src/oci/object_storage/object_storage_client.py b/src/oci/object_storage/object_storage_client.py index e1911a2129..0a71e92c76 100644 --- a/src/oci/object_storage/object_storage_client.py +++ b/src/oci/object_storage/object_storage_client.py @@ -6342,6 +6342,8 @@ def reencrypt_bucket(self, namespace_name, bucket_name, **kwargs): assigned key. Similarly, you might want to re-encrypt all data encryption keys if the assigned key has been rotated to a new key version since objects were last added to the bucket. If you call this API and there is no kmsKeyId associated with the bucket, the call will fail. + Also, if you set isBucketKeyEnabled, you might want to re-encrypt all data encryption keys + using the bucket key. This will help reduce calls to OCI Vault KMS when older objects are downloaded. Calling this API starts a work request task to re-encrypt the data encryption key of all objects in the bucket. Only objects created before the time of the API call will be re-encrypted. The call can take a long time, depending on how many @@ -6357,6 +6359,9 @@ def reencrypt_bucket(self, namespace_name, bucket_name, **kwargs): The name of the bucket. Avoid entering confidential information. Example: `my-new-bucket1` + :param bool is_reencrypt_bucket_key_only: (optional) + If true, reencrypt only the intermediate bucket keys and skip everything else in the bucket. + :param str opc_client_request_id: (optional) The client request ID for tracing. @@ -6394,6 +6399,7 @@ def reencrypt_bucket(self, namespace_name, bucket_name, **kwargs): "allow_control_chars", "enable_strict_url_encoding", "retry_strategy", + "is_reencrypt_bucket_key_only", "opc_client_request_id" ] extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] @@ -6412,6 +6418,11 @@ def reencrypt_bucket(self, namespace_name, bucket_name, **kwargs): if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + query_params = { + "isReencryptBucketKeyOnly": kwargs.get("is_reencrypt_bucket_key_only", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + header_params = { "accept": "application/json", "content-type": "application/json", @@ -6435,6 +6446,7 @@ def reencrypt_bucket(self, namespace_name, bucket_name, **kwargs): resource_path=resource_path, method=method, path_params=path_params, + query_params=query_params, header_params=header_params, allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), @@ -6446,6 +6458,7 @@ def reencrypt_bucket(self, namespace_name, bucket_name, **kwargs): resource_path=resource_path, method=method, path_params=path_params, + query_params=query_params, header_params=header_params, allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), diff --git a/src/oci/psql/models/__init__.py b/src/oci/psql/models/__init__.py index 79ef35756f..a2eb26c0fb 100644 --- a/src/oci/psql/models/__init__.py +++ b/src/oci/psql/models/__init__.py @@ -68,6 +68,7 @@ from .monthly_backup_policy import MonthlyBackupPolicy from .network_details import NetworkDetails from .none_backup_policy import NoneBackupPolicy +from .none_pitr_policy import NonePitrPolicy from .none_source_details import NoneSourceDetails from .oci_optimized_storage_details import OciOptimizedStorageDetails from .odsp_insight import OdspInsight @@ -83,7 +84,11 @@ from .patch_remove_instruction import PatchRemoveInstruction from .patch_replace_instruction import PatchReplaceInstruction from .patch_require_instruction import PatchRequireInstruction +from .pitr_details import PitrDetails +from .pitr_policy import PitrPolicy +from .pitr_time_window import PitrTimeWindow from .plain_text_password_details import PlainTextPasswordDetails +from .point_in_time_db_system_source_details import PointInTimeDbSystemSourceDetails from .primary_db_instance_details import PrimaryDbInstanceDetails from .primary_db_system_source_details import PrimaryDbSystemSourceDetails from .replication_config import ReplicationConfig @@ -98,6 +103,7 @@ from .sorting_default import SortingDefault from .source_backup_details import SourceBackupDetails from .source_details import SourceDetails +from .standard_pitr_policy import StandardPitrPolicy from .start_db_system_details import StartDbSystemDetails from .storage_details import StorageDetails from .switch_over_details import SwitchOverDetails @@ -184,6 +190,7 @@ "MonthlyBackupPolicy": MonthlyBackupPolicy, "NetworkDetails": NetworkDetails, "NoneBackupPolicy": NoneBackupPolicy, + "NonePitrPolicy": NonePitrPolicy, "NoneSourceDetails": NoneSourceDetails, "OciOptimizedStorageDetails": OciOptimizedStorageDetails, "OdspInsight": OdspInsight, @@ -199,7 +206,11 @@ "PatchRemoveInstruction": PatchRemoveInstruction, "PatchReplaceInstruction": PatchReplaceInstruction, "PatchRequireInstruction": PatchRequireInstruction, + "PitrDetails": PitrDetails, + "PitrPolicy": PitrPolicy, + "PitrTimeWindow": PitrTimeWindow, "PlainTextPasswordDetails": PlainTextPasswordDetails, + "PointInTimeDbSystemSourceDetails": PointInTimeDbSystemSourceDetails, "PrimaryDbInstanceDetails": PrimaryDbInstanceDetails, "PrimaryDbSystemSourceDetails": PrimaryDbSystemSourceDetails, "ReplicationConfig": ReplicationConfig, @@ -214,6 +225,7 @@ "SortingDefault": SortingDefault, "SourceBackupDetails": SourceBackupDetails, "SourceDetails": SourceDetails, + "StandardPitrPolicy": StandardPitrPolicy, "StartDbSystemDetails": StartDbSystemDetails, "StorageDetails": StorageDetails, "SwitchOverDetails": SwitchOverDetails, diff --git a/src/oci/psql/models/backup.py b/src/oci/psql/models/backup.py index d124921aa7..398e227967 100644 --- a/src/oci/psql/models/backup.py +++ b/src/oci/psql/models/backup.py @@ -23,6 +23,10 @@ class Backup(object): #: This constant has a value of "MANUAL" SOURCE_TYPE_MANUAL = "MANUAL" + #: A constant which can be used with the source_type property of a Backup. + #: This constant has a value of "PITR" + SOURCE_TYPE_PITR = "PITR" + #: A constant which can be used with the source_type property of a Backup. #: This constant has a value of "COPIED" SOURCE_TYPE_COPIED = "COPIED" @@ -70,7 +74,7 @@ def __init__(self, **kwargs): :param source_type: The value to assign to the source_type property of this Backup. - Allowed values for this property are: "SCHEDULED", "MANUAL", "COPIED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "SCHEDULED", "MANUAL", "PITR", "COPIED", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type source_type: str @@ -319,7 +323,7 @@ def source_type(self): Gets the source_type of this Backup. Specifies whether the backup was created manually, taken on schedule defined in the a backup policy, or copied from the remote location. - Allowed values for this property are: "SCHEDULED", "MANUAL", "COPIED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "SCHEDULED", "MANUAL", "PITR", "COPIED", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -338,7 +342,7 @@ def source_type(self, source_type): :param source_type: The source_type of this Backup. :type: str """ - allowed_values = ["SCHEDULED", "MANUAL", "COPIED"] + allowed_values = ["SCHEDULED", "MANUAL", "PITR", "COPIED"] if not value_allowed_none_or_none_sentinel(source_type, allowed_values): source_type = 'UNKNOWN_ENUM_VALUE' self._source_type = source_type diff --git a/src/oci/psql/models/backup_source_details.py b/src/oci/psql/models/backup_source_details.py index 1df2c72ec4..c687af33e1 100644 --- a/src/oci/psql/models/backup_source_details.py +++ b/src/oci/psql/models/backup_source_details.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param source_type: The value to assign to the source_type property of this BackupSourceDetails. - Allowed values for this property are: "BACKUP", "NONE", "DB_SYSTEM" + Allowed values for this property are: "BACKUP", "NONE", "POINT_IN_TIME_DB_SYSTEM", "DB_SYSTEM" :type source_type: str :param backup_id: diff --git a/src/oci/psql/models/management_policy.py b/src/oci/psql/models/management_policy.py index b88800938f..5bf55560b8 100644 --- a/src/oci/psql/models/management_policy.py +++ b/src/oci/psql/models/management_policy.py @@ -28,17 +28,24 @@ def __init__(self, **kwargs): The value to assign to the backup_policy property of this ManagementPolicy. :type backup_policy: oci.psql.models.BackupPolicy + :param pitr_policy: + The value to assign to the pitr_policy property of this ManagementPolicy. + :type pitr_policy: oci.psql.models.PitrPolicy + """ self.swagger_types = { 'maintenance_window_start': 'str', - 'backup_policy': 'BackupPolicy' + 'backup_policy': 'BackupPolicy', + 'pitr_policy': 'PitrPolicy' } self.attribute_map = { 'maintenance_window_start': 'maintenanceWindowStart', - 'backup_policy': 'backupPolicy' + 'backup_policy': 'backupPolicy', + 'pitr_policy': 'pitrPolicy' } self._maintenance_window_start = None self._backup_policy = None + self._pitr_policy = None @property def maintenance_window_start(self): @@ -84,6 +91,26 @@ def backup_policy(self, backup_policy): """ self._backup_policy = backup_policy + @property + def pitr_policy(self): + """ + Gets the pitr_policy of this ManagementPolicy. + + :return: The pitr_policy of this ManagementPolicy. + :rtype: oci.psql.models.PitrPolicy + """ + return self._pitr_policy + + @pitr_policy.setter + def pitr_policy(self, pitr_policy): + """ + Sets the pitr_policy of this ManagementPolicy. + + :param pitr_policy: The pitr_policy of this ManagementPolicy. + :type: oci.psql.models.PitrPolicy + """ + self._pitr_policy = pitr_policy + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/psql/models/management_policy_details.py b/src/oci/psql/models/management_policy_details.py index e2d89935e2..3758fb6106 100644 --- a/src/oci/psql/models/management_policy_details.py +++ b/src/oci/psql/models/management_policy_details.py @@ -28,17 +28,24 @@ def __init__(self, **kwargs): The value to assign to the backup_policy property of this ManagementPolicyDetails. :type backup_policy: oci.psql.models.BackupPolicy + :param pitr_policy: + The value to assign to the pitr_policy property of this ManagementPolicyDetails. + :type pitr_policy: oci.psql.models.PitrPolicy + """ self.swagger_types = { 'maintenance_window_start': 'str', - 'backup_policy': 'BackupPolicy' + 'backup_policy': 'BackupPolicy', + 'pitr_policy': 'PitrPolicy' } self.attribute_map = { 'maintenance_window_start': 'maintenanceWindowStart', - 'backup_policy': 'backupPolicy' + 'backup_policy': 'backupPolicy', + 'pitr_policy': 'pitrPolicy' } self._maintenance_window_start = None self._backup_policy = None + self._pitr_policy = None @property def maintenance_window_start(self): @@ -92,6 +99,26 @@ def backup_policy(self, backup_policy): """ self._backup_policy = backup_policy + @property + def pitr_policy(self): + """ + Gets the pitr_policy of this ManagementPolicyDetails. + + :return: The pitr_policy of this ManagementPolicyDetails. + :rtype: oci.psql.models.PitrPolicy + """ + return self._pitr_policy + + @pitr_policy.setter + def pitr_policy(self, pitr_policy): + """ + Sets the pitr_policy of this ManagementPolicyDetails. + + :param pitr_policy: The pitr_policy of this ManagementPolicyDetails. + :type: oci.psql.models.PitrPolicy + """ + self._pitr_policy = pitr_policy + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/psql/models/none_pitr_policy.py b/src/oci/psql/models/none_pitr_policy.py new file mode 100644 index 0000000000..64475c956d --- /dev/null +++ b/src/oci/psql/models/none_pitr_policy.py @@ -0,0 +1,49 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + +from .pitr_policy import PitrPolicy +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class NonePitrPolicy(PitrPolicy): + """ + None point-in-time recovery policy. + """ + + def __init__(self, **kwargs): + """ + Initializes a new NonePitrPolicy object with values from keyword arguments. The default value of the :py:attr:`~oci.psql.models.NonePitrPolicy.kind` attribute + of this class is ``NONE`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param kind: + The value to assign to the kind property of this NonePitrPolicy. + Allowed values for this property are: "STANDARD", "NONE" + :type kind: str + + """ + self.swagger_types = { + 'kind': 'str' + } + self.attribute_map = { + 'kind': 'kind' + } + self._kind = None + self._kind = 'NONE' + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/models/none_source_details.py b/src/oci/psql/models/none_source_details.py index f4a59f1125..6ba996f339 100644 --- a/src/oci/psql/models/none_source_details.py +++ b/src/oci/psql/models/none_source_details.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param source_type: The value to assign to the source_type property of this NoneSourceDetails. - Allowed values for this property are: "BACKUP", "NONE", "DB_SYSTEM" + Allowed values for this property are: "BACKUP", "NONE", "POINT_IN_TIME_DB_SYSTEM", "DB_SYSTEM" :type source_type: str """ diff --git a/src/oci/psql/models/pitr_details.py b/src/oci/psql/models/pitr_details.py new file mode 100644 index 0000000000..dab5a5595e --- /dev/null +++ b/src/oci/psql/models/pitr_details.py @@ -0,0 +1,121 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class PitrDetails(object): + """ + Point-in-time recovery details + """ + + #: A constant which can be used with the pitr_state property of a PitrDetails. + #: This constant has a value of "ACTIVE" + PITR_STATE_ACTIVE = "ACTIVE" + + #: A constant which can be used with the pitr_state property of a PitrDetails. + #: This constant has a value of "UPDATING" + PITR_STATE_UPDATING = "UPDATING" + + #: A constant which can be used with the pitr_state property of a PitrDetails. + #: This constant has a value of "INACTIVE" + PITR_STATE_INACTIVE = "INACTIVE" + + def __init__(self, **kwargs): + """ + Initializes a new PitrDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param pitr_state: + The value to assign to the pitr_state property of this PitrDetails. + Allowed values for this property are: "ACTIVE", "UPDATING", "INACTIVE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type pitr_state: str + + :param recovery_time_windows: + The value to assign to the recovery_time_windows property of this PitrDetails. + :type recovery_time_windows: list[oci.psql.models.PitrTimeWindow] + + """ + self.swagger_types = { + 'pitr_state': 'str', + 'recovery_time_windows': 'list[PitrTimeWindow]' + } + self.attribute_map = { + 'pitr_state': 'pitrState', + 'recovery_time_windows': 'recoveryTimeWindows' + } + self._pitr_state = None + self._recovery_time_windows = None + + @property + def pitr_state(self): + """ + **[Required]** Gets the pitr_state of this PitrDetails. + The current state of the point-in-time recovery of the db system. + + Allowed values for this property are: "ACTIVE", "UPDATING", "INACTIVE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The pitr_state of this PitrDetails. + :rtype: str + """ + return self._pitr_state + + @pitr_state.setter + def pitr_state(self, pitr_state): + """ + Sets the pitr_state of this PitrDetails. + The current state of the point-in-time recovery of the db system. + + + :param pitr_state: The pitr_state of this PitrDetails. + :type: str + """ + allowed_values = ["ACTIVE", "UPDATING", "INACTIVE"] + if not value_allowed_none_or_none_sentinel(pitr_state, allowed_values): + pitr_state = 'UNKNOWN_ENUM_VALUE' + self._pitr_state = pitr_state + + @property + def recovery_time_windows(self): + """ + Gets the recovery_time_windows of this PitrDetails. + List of point-in-time recovery windows. + + + :return: The recovery_time_windows of this PitrDetails. + :rtype: list[oci.psql.models.PitrTimeWindow] + """ + return self._recovery_time_windows + + @recovery_time_windows.setter + def recovery_time_windows(self, recovery_time_windows): + """ + Sets the recovery_time_windows of this PitrDetails. + List of point-in-time recovery windows. + + + :param recovery_time_windows: The recovery_time_windows of this PitrDetails. + :type: list[oci.psql.models.PitrTimeWindow] + """ + self._recovery_time_windows = recovery_time_windows + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/models/pitr_policy.py b/src/oci/psql/models/pitr_policy.py new file mode 100644 index 0000000000..585bd519b9 --- /dev/null +++ b/src/oci/psql/models/pitr_policy.py @@ -0,0 +1,107 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class PitrPolicy(object): + """ + Point-in-time recovery policy. + """ + + #: A constant which can be used with the kind property of a PitrPolicy. + #: This constant has a value of "STANDARD" + KIND_STANDARD = "STANDARD" + + #: A constant which can be used with the kind property of a PitrPolicy. + #: This constant has a value of "NONE" + KIND_NONE = "NONE" + + def __init__(self, **kwargs): + """ + Initializes a new PitrPolicy object with values from keyword arguments. This class has the following subclasses and if you are using this class as input + to a service operations then you should favor using a subclass over the base class: + + * :class:`~oci.psql.models.StandardPitrPolicy` + * :class:`~oci.psql.models.NonePitrPolicy` + + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param kind: + The value to assign to the kind property of this PitrPolicy. + Allowed values for this property are: "STANDARD", "NONE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type kind: str + + """ + self.swagger_types = { + 'kind': 'str' + } + self.attribute_map = { + 'kind': 'kind' + } + self._kind = None + + @staticmethod + def get_subtype(object_dictionary): + """ + Given the hash representation of a subtype of this class, + use the info in the hash to return the class of the subtype. + """ + type = object_dictionary['kind'] + + if type == 'STANDARD': + return 'StandardPitrPolicy' + + if type == 'NONE': + return 'NonePitrPolicy' + else: + return 'PitrPolicy' + + @property + def kind(self): + """ + Gets the kind of this PitrPolicy. + The kind of recovery policy. + + Allowed values for this property are: "STANDARD", "NONE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The kind of this PitrPolicy. + :rtype: str + """ + return self._kind + + @kind.setter + def kind(self, kind): + """ + Sets the kind of this PitrPolicy. + The kind of recovery policy. + + + :param kind: The kind of this PitrPolicy. + :type: str + """ + allowed_values = ["STANDARD", "NONE"] + if not value_allowed_none_or_none_sentinel(kind, allowed_values): + kind = 'UNKNOWN_ENUM_VALUE' + self._kind = kind + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/models/pitr_time_window.py b/src/oci/psql/models/pitr_time_window.py new file mode 100644 index 0000000000..40618947aa --- /dev/null +++ b/src/oci/psql/models/pitr_time_window.py @@ -0,0 +1,131 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class PitrTimeWindow(object): + """ + Time interval for which point-in-time recovery (PITR) is supported. + The database can be restored to any timestamp between + `timeRecoveryWindowStart` and `timeRecoveryWindowEnd` (inclusive). + """ + + def __init__(self, **kwargs): + """ + Initializes a new PitrTimeWindow object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param time_recovery_window_start: + The value to assign to the time_recovery_window_start property of this PitrTimeWindow. + :type time_recovery_window_start: datetime + + :param time_recovery_window_end: + The value to assign to the time_recovery_window_end property of this PitrTimeWindow. + :type time_recovery_window_end: datetime + + """ + self.swagger_types = { + 'time_recovery_window_start': 'datetime', + 'time_recovery_window_end': 'datetime' + } + self.attribute_map = { + 'time_recovery_window_start': 'timeRecoveryWindowStart', + 'time_recovery_window_end': 'timeRecoveryWindowEnd' + } + self._time_recovery_window_start = None + self._time_recovery_window_end = None + + @property + def time_recovery_window_start(self): + """ + **[Required]** Gets the time_recovery_window_start of this PitrTimeWindow. + Earliest timestamp in the PITR window to which the database can be + restored. Timestamps earlier than this are not recoverable. + The value must be an `RFC 3339`__ + timestamp. + + Example: `2016-08-25T21:10:29Z` + + __ https://tools.ietf.org/html/rfc3339 + + + :return: The time_recovery_window_start of this PitrTimeWindow. + :rtype: datetime + """ + return self._time_recovery_window_start + + @time_recovery_window_start.setter + def time_recovery_window_start(self, time_recovery_window_start): + """ + Sets the time_recovery_window_start of this PitrTimeWindow. + Earliest timestamp in the PITR window to which the database can be + restored. Timestamps earlier than this are not recoverable. + The value must be an `RFC 3339`__ + timestamp. + + Example: `2016-08-25T21:10:29Z` + + __ https://tools.ietf.org/html/rfc3339 + + + :param time_recovery_window_start: The time_recovery_window_start of this PitrTimeWindow. + :type: datetime + """ + self._time_recovery_window_start = time_recovery_window_start + + @property + def time_recovery_window_end(self): + """ + **[Required]** Gets the time_recovery_window_end of this PitrTimeWindow. + Latest timestamp in the PITR window to which the database can be + restored. Timestamps later than this are not recoverable. + The value must be an `RFC 3339`__ + timestamp. + + Example: `2016-08-25T21:10:29Z` + + __ https://tools.ietf.org/html/rfc3339 + + + :return: The time_recovery_window_end of this PitrTimeWindow. + :rtype: datetime + """ + return self._time_recovery_window_end + + @time_recovery_window_end.setter + def time_recovery_window_end(self, time_recovery_window_end): + """ + Sets the time_recovery_window_end of this PitrTimeWindow. + Latest timestamp in the PITR window to which the database can be + restored. Timestamps later than this are not recoverable. + The value must be an `RFC 3339`__ + timestamp. + + Example: `2016-08-25T21:10:29Z` + + __ https://tools.ietf.org/html/rfc3339 + + + :param time_recovery_window_end: The time_recovery_window_end of this PitrTimeWindow. + :type: datetime + """ + self._time_recovery_window_end = time_recovery_window_end + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/models/point_in_time_db_system_source_details.py b/src/oci/psql/models/point_in_time_db_system_source_details.py new file mode 100644 index 0000000000..c539a00343 --- /dev/null +++ b/src/oci/psql/models/point_in_time_db_system_source_details.py @@ -0,0 +1,127 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + +from .source_details import SourceDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class PointInTimeDbSystemSourceDetails(SourceDetails): + """ + Details of database system point-in-time recovery. + """ + + def __init__(self, **kwargs): + """ + Initializes a new PointInTimeDbSystemSourceDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.psql.models.PointInTimeDbSystemSourceDetails.source_type` attribute + of this class is ``POINT_IN_TIME_DB_SYSTEM`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source_type: + The value to assign to the source_type property of this PointInTimeDbSystemSourceDetails. + Allowed values for this property are: "BACKUP", "NONE", "POINT_IN_TIME_DB_SYSTEM", "DB_SYSTEM" + :type source_type: str + + :param db_system_id: + The value to assign to the db_system_id property of this PointInTimeDbSystemSourceDetails. + :type db_system_id: str + + :param time_to_restore: + The value to assign to the time_to_restore property of this PointInTimeDbSystemSourceDetails. + :type time_to_restore: datetime + + """ + self.swagger_types = { + 'source_type': 'str', + 'db_system_id': 'str', + 'time_to_restore': 'datetime' + } + self.attribute_map = { + 'source_type': 'sourceType', + 'db_system_id': 'dbSystemId', + 'time_to_restore': 'timeToRestore' + } + self._source_type = None + self._db_system_id = None + self._time_to_restore = None + self._source_type = 'POINT_IN_TIME_DB_SYSTEM' + + @property + def db_system_id(self): + """ + **[Required]** Gets the db_system_id of this PointInTimeDbSystemSourceDetails. + The `OCID`__ of the source database system which will be used to perform point-in-time recovery. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The db_system_id of this PointInTimeDbSystemSourceDetails. + :rtype: str + """ + return self._db_system_id + + @db_system_id.setter + def db_system_id(self, db_system_id): + """ + Sets the db_system_id of this PointInTimeDbSystemSourceDetails. + The `OCID`__ of the source database system which will be used to perform point-in-time recovery. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param db_system_id: The db_system_id of this PointInTimeDbSystemSourceDetails. + :type: str + """ + self._db_system_id = db_system_id + + @property + def time_to_restore(self): + """ + **[Required]** Gets the time_to_restore of this PointInTimeDbSystemSourceDetails. + The target point-in-time of the source database system that will be restored, expressed in + `RFC 3339`__ timestamp format. + + Point-in-time recovery can only performed in granularity of seconds. + Example: `2016-08-25T21:10:29Z` + + __ https://tools.ietf.org/rfc/rfc3339 + + + :return: The time_to_restore of this PointInTimeDbSystemSourceDetails. + :rtype: datetime + """ + return self._time_to_restore + + @time_to_restore.setter + def time_to_restore(self, time_to_restore): + """ + Sets the time_to_restore of this PointInTimeDbSystemSourceDetails. + The target point-in-time of the source database system that will be restored, expressed in + `RFC 3339`__ timestamp format. + + Point-in-time recovery can only performed in granularity of seconds. + Example: `2016-08-25T21:10:29Z` + + __ https://tools.ietf.org/rfc/rfc3339 + + + :param time_to_restore: The time_to_restore of this PointInTimeDbSystemSourceDetails. + :type: datetime + """ + self._time_to_restore = time_to_restore + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/models/primary_db_system_source_details.py b/src/oci/psql/models/primary_db_system_source_details.py index 19e4b96a91..9f01154d6f 100644 --- a/src/oci/psql/models/primary_db_system_source_details.py +++ b/src/oci/psql/models/primary_db_system_source_details.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param source_type: The value to assign to the source_type property of this PrimaryDbSystemSourceDetails. - Allowed values for this property are: "BACKUP", "NONE", "DB_SYSTEM" + Allowed values for this property are: "BACKUP", "NONE", "POINT_IN_TIME_DB_SYSTEM", "DB_SYSTEM" :type source_type: str :param primary_db_system_id: diff --git a/src/oci/psql/models/restore_db_system_details.py b/src/oci/psql/models/restore_db_system_details.py index 6cc1b15069..da4751a573 100644 --- a/src/oci/psql/models/restore_db_system_details.py +++ b/src/oci/psql/models/restore_db_system_details.py @@ -28,22 +28,29 @@ def __init__(self, **kwargs): The value to assign to the ad property of this RestoreDbSystemDetails. :type ad: str + :param time_to_restore: + The value to assign to the time_to_restore property of this RestoreDbSystemDetails. + :type time_to_restore: datetime + """ self.swagger_types = { 'backup_id': 'str', - 'ad': 'str' + 'ad': 'str', + 'time_to_restore': 'datetime' } self.attribute_map = { 'backup_id': 'backupId', - 'ad': 'ad' + 'ad': 'ad', + 'time_to_restore': 'timeToRestore' } self._backup_id = None self._ad = None + self._time_to_restore = None @property def backup_id(self): """ - **[Required]** Gets the backup_id of this RestoreDbSystemDetails. + Gets the backup_id of this RestoreDbSystemDetails. The `OCID`__ of the database system backup. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm @@ -94,6 +101,40 @@ def ad(self, ad): """ self._ad = ad + @property + def time_to_restore(self): + """ + Gets the time_to_restore of this RestoreDbSystemDetails. + The target point-in-time that the database system restore can get started from, expressed in + `RFC 3339`__ timestamp format. + + Example: `2016-08-25T21:10:29.600Z` + + __ https://tools.ietf.org/rfc/rfc3339 + + + :return: The time_to_restore of this RestoreDbSystemDetails. + :rtype: datetime + """ + return self._time_to_restore + + @time_to_restore.setter + def time_to_restore(self, time_to_restore): + """ + Sets the time_to_restore of this RestoreDbSystemDetails. + The target point-in-time that the database system restore can get started from, expressed in + `RFC 3339`__ timestamp format. + + Example: `2016-08-25T21:10:29.600Z` + + __ https://tools.ietf.org/rfc/rfc3339 + + + :param time_to_restore: The time_to_restore of this RestoreDbSystemDetails. + :type: datetime + """ + self._time_to_restore = time_to_restore + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/psql/models/source_details.py b/src/oci/psql/models/source_details.py index 159de153d2..1e9e1587c8 100644 --- a/src/oci/psql/models/source_details.py +++ b/src/oci/psql/models/source_details.py @@ -23,6 +23,10 @@ class SourceDetails(object): #: This constant has a value of "NONE" SOURCE_TYPE_NONE = "NONE" + #: A constant which can be used with the source_type property of a SourceDetails. + #: This constant has a value of "POINT_IN_TIME_DB_SYSTEM" + SOURCE_TYPE_POINT_IN_TIME_DB_SYSTEM = "POINT_IN_TIME_DB_SYSTEM" + #: A constant which can be used with the source_type property of a SourceDetails. #: This constant has a value of "DB_SYSTEM" SOURCE_TYPE_DB_SYSTEM = "DB_SYSTEM" @@ -35,12 +39,13 @@ def __init__(self, **kwargs): * :class:`~oci.psql.models.BackupSourceDetails` * :class:`~oci.psql.models.PrimaryDbSystemSourceDetails` * :class:`~oci.psql.models.NoneSourceDetails` + * :class:`~oci.psql.models.PointInTimeDbSystemSourceDetails` The following keyword arguments are supported (corresponding to the getters/setters of this class): :param source_type: The value to assign to the source_type property of this SourceDetails. - Allowed values for this property are: "BACKUP", "NONE", "DB_SYSTEM", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "BACKUP", "NONE", "POINT_IN_TIME_DB_SYSTEM", "DB_SYSTEM", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type source_type: str @@ -69,6 +74,9 @@ def get_subtype(object_dictionary): if type == 'NONE': return 'NoneSourceDetails' + + if type == 'POINT_IN_TIME_DB_SYSTEM': + return 'PointInTimeDbSystemSourceDetails' else: return 'SourceDetails' @@ -78,7 +86,7 @@ def source_type(self): **[Required]** Gets the source_type of this SourceDetails. The source descriminator. - Allowed values for this property are: "BACKUP", "NONE", "DB_SYSTEM", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "BACKUP", "NONE", "POINT_IN_TIME_DB_SYSTEM", "DB_SYSTEM", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -97,7 +105,7 @@ def source_type(self, source_type): :param source_type: The source_type of this SourceDetails. :type: str """ - allowed_values = ["BACKUP", "NONE", "DB_SYSTEM"] + allowed_values = ["BACKUP", "NONE", "POINT_IN_TIME_DB_SYSTEM", "DB_SYSTEM"] if not value_allowed_none_or_none_sentinel(source_type, allowed_values): source_type = 'UNKNOWN_ENUM_VALUE' self._source_type = source_type diff --git a/src/oci/psql/models/standard_pitr_policy.py b/src/oci/psql/models/standard_pitr_policy.py new file mode 100644 index 0000000000..9b165445ac --- /dev/null +++ b/src/oci/psql/models/standard_pitr_policy.py @@ -0,0 +1,80 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220915 + +from .pitr_policy import PitrPolicy +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class StandardPitrPolicy(PitrPolicy): + """ + A standard point-in-time recovery policy. + """ + + def __init__(self, **kwargs): + """ + Initializes a new StandardPitrPolicy object with values from keyword arguments. The default value of the :py:attr:`~oci.psql.models.StandardPitrPolicy.kind` attribute + of this class is ``STANDARD`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param kind: + The value to assign to the kind property of this StandardPitrPolicy. + Allowed values for this property are: "STANDARD", "NONE" + :type kind: str + + :param restore_days: + The value to assign to the restore_days property of this StandardPitrPolicy. + :type restore_days: int + + """ + self.swagger_types = { + 'kind': 'str', + 'restore_days': 'int' + } + self.attribute_map = { + 'kind': 'kind', + 'restore_days': 'restoreDays' + } + self._kind = None + self._restore_days = None + self._kind = 'STANDARD' + + @property + def restore_days(self): + """ + **[Required]** Gets the restore_days of this StandardPitrPolicy. + The number of days the database system retains backups required for point-in-time recovery. + + + :return: The restore_days of this StandardPitrPolicy. + :rtype: int + """ + return self._restore_days + + @restore_days.setter + def restore_days(self, restore_days): + """ + Sets the restore_days of this StandardPitrPolicy. + The number of days the database system retains backups required for point-in-time recovery. + + + :param restore_days: The restore_days of this StandardPitrPolicy. + :type: int + """ + self._restore_days = restore_days + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/psql/postgresql_client.py b/src/oci/psql/postgresql_client.py index 45517c7380..8ba4897928 100644 --- a/src/oci/psql/postgresql_client.py +++ b/src/oci/psql/postgresql_client.py @@ -2169,6 +2169,111 @@ def get_default_configuration(self, default_configuration_id, **kwargs): api_reference_link=api_reference_link, required_arguments=required_arguments) + def get_pitr_details(self, db_system_id, **kwargs): + """ + Gets the database system PITR details. + + + :param str db_system_id: (required) + A unique identifier for the database system. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.psql.models.PitrDetails` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_pitr_details API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['dbSystemId'] + resource_path = "/dbSystems/{dbSystemId}/pitrDetails" + method = "GET" + operation_name = "get_pitr_details" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/postgresql/20220915/PitrDetails/GetPitrDetails" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"get_pitr_details got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "dbSystemId": db_system_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="PitrDetails", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="PitrDetails", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + def get_primary_db_instance(self, db_system_id, **kwargs): """ Gets the primary database instance node details. @@ -2430,6 +2535,9 @@ def list_backups(self, **kwargs): :param str opc_request_id: (optional) The client request ID for tracing. + :param str backup_source_type: (optional) + A filter to return only backups whose backupSourceType matches the given backupSourceType + :param obj retry_strategy: (optional) A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. @@ -2475,7 +2583,8 @@ def list_backups(self, **kwargs): "page", "sort_order", "sort_by", - "opc_request_id" + "opc_request_id", + "backup_source_type" ] extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] if extra_kwargs: @@ -2514,7 +2623,8 @@ def list_backups(self, **kwargs): "limit": kwargs.get("limit", missing), "page": kwargs.get("page", missing), "sortOrder": kwargs.get("sort_order", missing), - "sortBy": kwargs.get("sort_by", missing) + "sortBy": kwargs.get("sort_by", missing), + "backupSourceType": kwargs.get("backup_source_type", missing) } query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} diff --git a/src/oci/resource_manager/models/__init__.py b/src/oci/resource_manager/models/__init__.py index 2641ec006c..c414dbb54f 100644 --- a/src/oci/resource_manager/models/__init__.py +++ b/src/oci/resource_manager/models/__init__.py @@ -15,8 +15,8 @@ from .associated_resources_collection import AssociatedResourcesCollection from .bitbucket_cloud_config_source import BitbucketCloudConfigSource from .bitbucket_cloud_config_source_record import BitbucketCloudConfigSourceRecord -from .bitbucket_cloud_username_app_password_configuration_source_provider import BitbucketCloudUsernameAppPasswordConfigurationSourceProvider -from .bitbucket_cloud_username_app_password_configuration_source_provider_summary import BitbucketCloudUsernameAppPasswordConfigurationSourceProviderSummary +from .bitbucket_cloud_email_api_token_configuration_source_provider import BitbucketCloudEmailApiTokenConfigurationSourceProvider +from .bitbucket_cloud_email_api_token_configuration_source_provider_summary import BitbucketCloudEmailApiTokenConfigurationSourceProviderSummary from .bitbucket_server_access_token_configuration_source_provider import BitbucketServerAccessTokenConfigurationSourceProvider from .bitbucket_server_access_token_configuration_source_provider_summary import BitbucketServerAccessTokenConfigurationSourceProviderSummary from .bitbucket_server_config_source import BitbucketServerConfigSource @@ -35,7 +35,7 @@ from .create_apply_job_operation_details import CreateApplyJobOperationDetails from .create_apply_rollback_job_operation_details import CreateApplyRollbackJobOperationDetails from .create_bitbucket_cloud_config_source_details import CreateBitbucketCloudConfigSourceDetails -from .create_bitbucket_cloud_username_app_password_configuration_source_provider_details import CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails +from .create_bitbucket_cloud_email_api_token_configuration_source_provider_details import CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails from .create_bitbucket_server_access_token_configuration_source_provider_details import CreateBitbucketServerAccessTokenConfigurationSourceProviderDetails from .create_bitbucket_server_config_source_details import CreateBitbucketServerConfigSourceDetails from .create_compartment_config_source_details import CreateCompartmentConfigSourceDetails @@ -109,7 +109,7 @@ from .terraform_version_collection import TerraformVersionCollection from .terraform_version_summary import TerraformVersionSummary from .update_bitbucket_cloud_config_source_details import UpdateBitbucketCloudConfigSourceDetails -from .update_bitbucket_cloud_username_app_password_configuration_source_provider_details import UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails +from .update_bitbucket_cloud_email_api_token_configuration_source_provider_details import UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails from .update_bitbucket_server_access_token_configuration_source_provider_details import UpdateBitbucketServerAccessTokenConfigurationSourceProviderDetails from .update_bitbucket_server_config_source_details import UpdateBitbucketServerConfigSourceDetails from .update_config_source_details import UpdateConfigSourceDetails @@ -145,8 +145,8 @@ "AssociatedResourcesCollection": AssociatedResourcesCollection, "BitbucketCloudConfigSource": BitbucketCloudConfigSource, "BitbucketCloudConfigSourceRecord": BitbucketCloudConfigSourceRecord, - "BitbucketCloudUsernameAppPasswordConfigurationSourceProvider": BitbucketCloudUsernameAppPasswordConfigurationSourceProvider, - "BitbucketCloudUsernameAppPasswordConfigurationSourceProviderSummary": BitbucketCloudUsernameAppPasswordConfigurationSourceProviderSummary, + "BitbucketCloudEmailApiTokenConfigurationSourceProvider": BitbucketCloudEmailApiTokenConfigurationSourceProvider, + "BitbucketCloudEmailApiTokenConfigurationSourceProviderSummary": BitbucketCloudEmailApiTokenConfigurationSourceProviderSummary, "BitbucketServerAccessTokenConfigurationSourceProvider": BitbucketServerAccessTokenConfigurationSourceProvider, "BitbucketServerAccessTokenConfigurationSourceProviderSummary": BitbucketServerAccessTokenConfigurationSourceProviderSummary, "BitbucketServerConfigSource": BitbucketServerConfigSource, @@ -165,7 +165,7 @@ "CreateApplyJobOperationDetails": CreateApplyJobOperationDetails, "CreateApplyRollbackJobOperationDetails": CreateApplyRollbackJobOperationDetails, "CreateBitbucketCloudConfigSourceDetails": CreateBitbucketCloudConfigSourceDetails, - "CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails": CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails, + "CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails": CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails, "CreateBitbucketServerAccessTokenConfigurationSourceProviderDetails": CreateBitbucketServerAccessTokenConfigurationSourceProviderDetails, "CreateBitbucketServerConfigSourceDetails": CreateBitbucketServerConfigSourceDetails, "CreateCompartmentConfigSourceDetails": CreateCompartmentConfigSourceDetails, @@ -239,7 +239,7 @@ "TerraformVersionCollection": TerraformVersionCollection, "TerraformVersionSummary": TerraformVersionSummary, "UpdateBitbucketCloudConfigSourceDetails": UpdateBitbucketCloudConfigSourceDetails, - "UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails": UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails, + "UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails": UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails, "UpdateBitbucketServerAccessTokenConfigurationSourceProviderDetails": UpdateBitbucketServerAccessTokenConfigurationSourceProviderDetails, "UpdateBitbucketServerConfigSourceDetails": UpdateBitbucketServerConfigSourceDetails, "UpdateConfigSourceDetails": UpdateConfigSourceDetails, diff --git a/src/oci/resource_manager/models/bitbucket_cloud_username_app_password_configuration_source_provider.py b/src/oci/resource_manager/models/bitbucket_cloud_email_api_token_configuration_source_provider.py similarity index 68% rename from src/oci/resource_manager/models/bitbucket_cloud_username_app_password_configuration_source_provider.py rename to src/oci/resource_manager/models/bitbucket_cloud_email_api_token_configuration_source_provider.py index 29585e0864..4635cb89d2 100644 --- a/src/oci/resource_manager/models/bitbucket_cloud_username_app_password_configuration_source_provider.py +++ b/src/oci/resource_manager/models/bitbucket_cloud_email_api_token_configuration_source_provider.py @@ -10,74 +10,82 @@ @init_model_state_from_kwargs -class BitbucketCloudUsernameAppPasswordConfigurationSourceProvider(ConfigurationSourceProvider): +class BitbucketCloudEmailApiTokenConfigurationSourceProvider(ConfigurationSourceProvider): """ - The properties that define a configuration source provider of the type `BITBUCKET_CLOUD_USERNAME_APPPASSWORD`. - This type corresponds to a configuration source provider in Bitbucket cloud that is authenticated with a username and app password. + The properties that define a configuration source provider of the type `BITBUCKET_CLOUD_ACCESS_TOKEN`. + This type corresponds to a configuration source provider in Bitbucket Cloud that is authenticated with Atlassian account email and API token. """ def __init__(self, **kwargs): """ - Initializes a new BitbucketCloudUsernameAppPasswordConfigurationSourceProvider object with values from keyword arguments. The default value of the :py:attr:`~oci.resource_manager.models.BitbucketCloudUsernameAppPasswordConfigurationSourceProvider.config_source_provider_type` attribute - of this class is ``BITBUCKET_CLOUD_USERNAME_APPPASSWORD`` and it should not be changed. + Initializes a new BitbucketCloudEmailApiTokenConfigurationSourceProvider object with values from keyword arguments. The default value of the :py:attr:`~oci.resource_manager.models.BitbucketCloudEmailApiTokenConfigurationSourceProvider.config_source_provider_type` attribute + of this class is ``BITBUCKET_CLOUD_ACCESS_TOKEN`` and it should not be changed. The following keyword arguments are supported (corresponding to the getters/setters of this class): :param id: - The value to assign to the id property of this BitbucketCloudUsernameAppPasswordConfigurationSourceProvider. + The value to assign to the id property of this BitbucketCloudEmailApiTokenConfigurationSourceProvider. :type id: str :param compartment_id: - The value to assign to the compartment_id property of this BitbucketCloudUsernameAppPasswordConfigurationSourceProvider. + The value to assign to the compartment_id property of this BitbucketCloudEmailApiTokenConfigurationSourceProvider. :type compartment_id: str :param display_name: - The value to assign to the display_name property of this BitbucketCloudUsernameAppPasswordConfigurationSourceProvider. + The value to assign to the display_name property of this BitbucketCloudEmailApiTokenConfigurationSourceProvider. :type display_name: str :param description: - The value to assign to the description property of this BitbucketCloudUsernameAppPasswordConfigurationSourceProvider. + The value to assign to the description property of this BitbucketCloudEmailApiTokenConfigurationSourceProvider. :type description: str :param time_created: - The value to assign to the time_created property of this BitbucketCloudUsernameAppPasswordConfigurationSourceProvider. + The value to assign to the time_created property of this BitbucketCloudEmailApiTokenConfigurationSourceProvider. :type time_created: datetime :param lifecycle_state: - The value to assign to the lifecycle_state property of this BitbucketCloudUsernameAppPasswordConfigurationSourceProvider. + The value to assign to the lifecycle_state property of this BitbucketCloudEmailApiTokenConfigurationSourceProvider. Allowed values for this property are: "ACTIVE" :type lifecycle_state: str :param config_source_provider_type: - The value to assign to the config_source_provider_type property of this BitbucketCloudUsernameAppPasswordConfigurationSourceProvider. - Allowed values for this property are: "BITBUCKET_CLOUD_USERNAME_APPPASSWORD", "BITBUCKET_SERVER_ACCESS_TOKEN", "GITLAB_ACCESS_TOKEN", "GITHUB_ACCESS_TOKEN" + The value to assign to the config_source_provider_type property of this BitbucketCloudEmailApiTokenConfigurationSourceProvider. + Allowed values for this property are: "BITBUCKET_CLOUD_ACCESS_TOKEN", "BITBUCKET_SERVER_ACCESS_TOKEN", "GITLAB_ACCESS_TOKEN", "GITHUB_ACCESS_TOKEN" :type config_source_provider_type: str :param private_server_config_details: - The value to assign to the private_server_config_details property of this BitbucketCloudUsernameAppPasswordConfigurationSourceProvider. + The value to assign to the private_server_config_details property of this BitbucketCloudEmailApiTokenConfigurationSourceProvider. :type private_server_config_details: oci.resource_manager.models.PrivateServerConfigDetails :param username: - The value to assign to the username property of this BitbucketCloudUsernameAppPasswordConfigurationSourceProvider. + The value to assign to the username property of this BitbucketCloudEmailApiTokenConfigurationSourceProvider. :type username: str + :param email: + The value to assign to the email property of this BitbucketCloudEmailApiTokenConfigurationSourceProvider. + :type email: str + + :param is_migration_required: + The value to assign to the is_migration_required property of this BitbucketCloudEmailApiTokenConfigurationSourceProvider. + :type is_migration_required: bool + :param secret_id: - The value to assign to the secret_id property of this BitbucketCloudUsernameAppPasswordConfigurationSourceProvider. + The value to assign to the secret_id property of this BitbucketCloudEmailApiTokenConfigurationSourceProvider. :type secret_id: str :param freeform_tags: - The value to assign to the freeform_tags property of this BitbucketCloudUsernameAppPasswordConfigurationSourceProvider. + The value to assign to the freeform_tags property of this BitbucketCloudEmailApiTokenConfigurationSourceProvider. :type freeform_tags: dict(str, str) :param defined_tags: - The value to assign to the defined_tags property of this BitbucketCloudUsernameAppPasswordConfigurationSourceProvider. + The value to assign to the defined_tags property of this BitbucketCloudEmailApiTokenConfigurationSourceProvider. :type defined_tags: dict(str, dict(str, object)) :param system_tags: - The value to assign to the system_tags property of this BitbucketCloudUsernameAppPasswordConfigurationSourceProvider. + The value to assign to the system_tags property of this BitbucketCloudEmailApiTokenConfigurationSourceProvider. :type system_tags: dict(str, dict(str, object)) :param api_endpoint: - The value to assign to the api_endpoint property of this BitbucketCloudUsernameAppPasswordConfigurationSourceProvider. + The value to assign to the api_endpoint property of this BitbucketCloudEmailApiTokenConfigurationSourceProvider. :type api_endpoint: str """ @@ -91,6 +99,8 @@ def __init__(self, **kwargs): 'config_source_provider_type': 'str', 'private_server_config_details': 'PrivateServerConfigDetails', 'username': 'str', + 'email': 'str', + 'is_migration_required': 'bool', 'secret_id': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', @@ -107,6 +117,8 @@ def __init__(self, **kwargs): 'config_source_provider_type': 'configSourceProviderType', 'private_server_config_details': 'privateServerConfigDetails', 'username': 'username', + 'email': 'email', + 'is_migration_required': 'isMigrationRequired', 'secret_id': 'secretId', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', @@ -122,22 +134,24 @@ def __init__(self, **kwargs): self._config_source_provider_type = None self._private_server_config_details = None self._username = None + self._email = None + self._is_migration_required = None self._secret_id = None self._freeform_tags = None self._defined_tags = None self._system_tags = None self._api_endpoint = None - self._config_source_provider_type = 'BITBUCKET_CLOUD_USERNAME_APPPASSWORD' + self._config_source_provider_type = 'BITBUCKET_CLOUD_ACCESS_TOKEN' @property def api_endpoint(self): """ - Gets the api_endpoint of this BitbucketCloudUsernameAppPasswordConfigurationSourceProvider. + Gets the api_endpoint of this BitbucketCloudEmailApiTokenConfigurationSourceProvider. The Bitbucket cloud service endpoint. Example: `https://bitbucket.org/` - :return: The api_endpoint of this BitbucketCloudUsernameAppPasswordConfigurationSourceProvider. + :return: The api_endpoint of this BitbucketCloudEmailApiTokenConfigurationSourceProvider. :rtype: str """ return self._api_endpoint @@ -145,12 +159,12 @@ def api_endpoint(self): @api_endpoint.setter def api_endpoint(self, api_endpoint): """ - Sets the api_endpoint of this BitbucketCloudUsernameAppPasswordConfigurationSourceProvider. + Sets the api_endpoint of this BitbucketCloudEmailApiTokenConfigurationSourceProvider. The Bitbucket cloud service endpoint. Example: `https://bitbucket.org/` - :param api_endpoint: The api_endpoint of this BitbucketCloudUsernameAppPasswordConfigurationSourceProvider. + :param api_endpoint: The api_endpoint of this BitbucketCloudEmailApiTokenConfigurationSourceProvider. :type: str """ self._api_endpoint = api_endpoint diff --git a/src/oci/resource_manager/models/bitbucket_cloud_username_app_password_configuration_source_provider_summary.py b/src/oci/resource_manager/models/bitbucket_cloud_email_api_token_configuration_source_provider_summary.py similarity index 69% rename from src/oci/resource_manager/models/bitbucket_cloud_username_app_password_configuration_source_provider_summary.py rename to src/oci/resource_manager/models/bitbucket_cloud_email_api_token_configuration_source_provider_summary.py index 86e1fbbf1d..7c7ba810a3 100644 --- a/src/oci/resource_manager/models/bitbucket_cloud_username_app_password_configuration_source_provider_summary.py +++ b/src/oci/resource_manager/models/bitbucket_cloud_email_api_token_configuration_source_provider_summary.py @@ -10,64 +10,68 @@ @init_model_state_from_kwargs -class BitbucketCloudUsernameAppPasswordConfigurationSourceProviderSummary(ConfigurationSourceProviderSummary): +class BitbucketCloudEmailApiTokenConfigurationSourceProviderSummary(ConfigurationSourceProviderSummary): """ - Summary information for a configuration source provider of the type `BITBUCKET_CLOUD_USERNAME_APPPASSWORD`. - This type corresponds to a configuration source provider in Bitbucket cloud that is authenticated with a username and app password. + Summary information for a configuration source provider of the type `BITBUCKET_CLOUD_ACCESS_TOKEN`. + This type corresponds to a configuration source provider in Bitbucket Cloud that is authenticated with Atlassian account email and API token. """ def __init__(self, **kwargs): """ - Initializes a new BitbucketCloudUsernameAppPasswordConfigurationSourceProviderSummary object with values from keyword arguments. The default value of the :py:attr:`~oci.resource_manager.models.BitbucketCloudUsernameAppPasswordConfigurationSourceProviderSummary.config_source_provider_type` attribute - of this class is ``BITBUCKET_CLOUD_USERNAME_APPPASSWORD`` and it should not be changed. + Initializes a new BitbucketCloudEmailApiTokenConfigurationSourceProviderSummary object with values from keyword arguments. The default value of the :py:attr:`~oci.resource_manager.models.BitbucketCloudEmailApiTokenConfigurationSourceProviderSummary.config_source_provider_type` attribute + of this class is ``BITBUCKET_CLOUD_ACCESS_TOKEN`` and it should not be changed. The following keyword arguments are supported (corresponding to the getters/setters of this class): :param id: - The value to assign to the id property of this BitbucketCloudUsernameAppPasswordConfigurationSourceProviderSummary. + The value to assign to the id property of this BitbucketCloudEmailApiTokenConfigurationSourceProviderSummary. :type id: str :param compartment_id: - The value to assign to the compartment_id property of this BitbucketCloudUsernameAppPasswordConfigurationSourceProviderSummary. + The value to assign to the compartment_id property of this BitbucketCloudEmailApiTokenConfigurationSourceProviderSummary. :type compartment_id: str :param display_name: - The value to assign to the display_name property of this BitbucketCloudUsernameAppPasswordConfigurationSourceProviderSummary. + The value to assign to the display_name property of this BitbucketCloudEmailApiTokenConfigurationSourceProviderSummary. :type display_name: str :param description: - The value to assign to the description property of this BitbucketCloudUsernameAppPasswordConfigurationSourceProviderSummary. + The value to assign to the description property of this BitbucketCloudEmailApiTokenConfigurationSourceProviderSummary. :type description: str :param time_created: - The value to assign to the time_created property of this BitbucketCloudUsernameAppPasswordConfigurationSourceProviderSummary. + The value to assign to the time_created property of this BitbucketCloudEmailApiTokenConfigurationSourceProviderSummary. :type time_created: datetime :param lifecycle_state: - The value to assign to the lifecycle_state property of this BitbucketCloudUsernameAppPasswordConfigurationSourceProviderSummary. + The value to assign to the lifecycle_state property of this BitbucketCloudEmailApiTokenConfigurationSourceProviderSummary. :type lifecycle_state: str :param config_source_provider_type: - The value to assign to the config_source_provider_type property of this BitbucketCloudUsernameAppPasswordConfigurationSourceProviderSummary. + The value to assign to the config_source_provider_type property of this BitbucketCloudEmailApiTokenConfigurationSourceProviderSummary. :type config_source_provider_type: str :param private_server_config_details: - The value to assign to the private_server_config_details property of this BitbucketCloudUsernameAppPasswordConfigurationSourceProviderSummary. + The value to assign to the private_server_config_details property of this BitbucketCloudEmailApiTokenConfigurationSourceProviderSummary. :type private_server_config_details: oci.resource_manager.models.PrivateServerConfigDetails + :param is_migration_required: + The value to assign to the is_migration_required property of this BitbucketCloudEmailApiTokenConfigurationSourceProviderSummary. + :type is_migration_required: bool + :param freeform_tags: - The value to assign to the freeform_tags property of this BitbucketCloudUsernameAppPasswordConfigurationSourceProviderSummary. + The value to assign to the freeform_tags property of this BitbucketCloudEmailApiTokenConfigurationSourceProviderSummary. :type freeform_tags: dict(str, str) :param defined_tags: - The value to assign to the defined_tags property of this BitbucketCloudUsernameAppPasswordConfigurationSourceProviderSummary. + The value to assign to the defined_tags property of this BitbucketCloudEmailApiTokenConfigurationSourceProviderSummary. :type defined_tags: dict(str, dict(str, object)) :param system_tags: - The value to assign to the system_tags property of this BitbucketCloudUsernameAppPasswordConfigurationSourceProviderSummary. + The value to assign to the system_tags property of this BitbucketCloudEmailApiTokenConfigurationSourceProviderSummary. :type system_tags: dict(str, dict(str, object)) :param api_endpoint: - The value to assign to the api_endpoint property of this BitbucketCloudUsernameAppPasswordConfigurationSourceProviderSummary. + The value to assign to the api_endpoint property of this BitbucketCloudEmailApiTokenConfigurationSourceProviderSummary. :type api_endpoint: str """ @@ -80,6 +84,7 @@ def __init__(self, **kwargs): 'lifecycle_state': 'str', 'config_source_provider_type': 'str', 'private_server_config_details': 'PrivateServerConfigDetails', + 'is_migration_required': 'bool', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', 'system_tags': 'dict(str, dict(str, object))', @@ -94,6 +99,7 @@ def __init__(self, **kwargs): 'lifecycle_state': 'lifecycleState', 'config_source_provider_type': 'configSourceProviderType', 'private_server_config_details': 'privateServerConfigDetails', + 'is_migration_required': 'isMigrationRequired', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', 'system_tags': 'systemTags', @@ -107,21 +113,22 @@ def __init__(self, **kwargs): self._lifecycle_state = None self._config_source_provider_type = None self._private_server_config_details = None + self._is_migration_required = None self._freeform_tags = None self._defined_tags = None self._system_tags = None self._api_endpoint = None - self._config_source_provider_type = 'BITBUCKET_CLOUD_USERNAME_APPPASSWORD' + self._config_source_provider_type = 'BITBUCKET_CLOUD_ACCESS_TOKEN' @property def api_endpoint(self): """ - Gets the api_endpoint of this BitbucketCloudUsernameAppPasswordConfigurationSourceProviderSummary. + Gets the api_endpoint of this BitbucketCloudEmailApiTokenConfigurationSourceProviderSummary. The Bitbucket cloud service endpoint. Example: `https://bitbucket.org/` - :return: The api_endpoint of this BitbucketCloudUsernameAppPasswordConfigurationSourceProviderSummary. + :return: The api_endpoint of this BitbucketCloudEmailApiTokenConfigurationSourceProviderSummary. :rtype: str """ return self._api_endpoint @@ -129,12 +136,12 @@ def api_endpoint(self): @api_endpoint.setter def api_endpoint(self, api_endpoint): """ - Sets the api_endpoint of this BitbucketCloudUsernameAppPasswordConfigurationSourceProviderSummary. + Sets the api_endpoint of this BitbucketCloudEmailApiTokenConfigurationSourceProviderSummary. The Bitbucket cloud service endpoint. Example: `https://bitbucket.org/` - :param api_endpoint: The api_endpoint of this BitbucketCloudUsernameAppPasswordConfigurationSourceProviderSummary. + :param api_endpoint: The api_endpoint of this BitbucketCloudEmailApiTokenConfigurationSourceProviderSummary. :type: str """ self._api_endpoint = api_endpoint diff --git a/src/oci/resource_manager/models/bitbucket_server_access_token_configuration_source_provider.py b/src/oci/resource_manager/models/bitbucket_server_access_token_configuration_source_provider.py index f4936795f5..91d030f6f5 100644 --- a/src/oci/resource_manager/models/bitbucket_server_access_token_configuration_source_provider.py +++ b/src/oci/resource_manager/models/bitbucket_server_access_token_configuration_source_provider.py @@ -49,7 +49,7 @@ def __init__(self, **kwargs): :param config_source_provider_type: The value to assign to the config_source_provider_type property of this BitbucketServerAccessTokenConfigurationSourceProvider. - Allowed values for this property are: "BITBUCKET_CLOUD_USERNAME_APPPASSWORD", "BITBUCKET_SERVER_ACCESS_TOKEN", "GITLAB_ACCESS_TOKEN", "GITHUB_ACCESS_TOKEN" + Allowed values for this property are: "BITBUCKET_CLOUD_ACCESS_TOKEN", "BITBUCKET_SERVER_ACCESS_TOKEN", "GITLAB_ACCESS_TOKEN", "GITHUB_ACCESS_TOKEN" :type config_source_provider_type: str :param private_server_config_details: @@ -60,6 +60,14 @@ def __init__(self, **kwargs): The value to assign to the username property of this BitbucketServerAccessTokenConfigurationSourceProvider. :type username: str + :param email: + The value to assign to the email property of this BitbucketServerAccessTokenConfigurationSourceProvider. + :type email: str + + :param is_migration_required: + The value to assign to the is_migration_required property of this BitbucketServerAccessTokenConfigurationSourceProvider. + :type is_migration_required: bool + :param secret_id: The value to assign to the secret_id property of this BitbucketServerAccessTokenConfigurationSourceProvider. :type secret_id: str @@ -91,6 +99,8 @@ def __init__(self, **kwargs): 'config_source_provider_type': 'str', 'private_server_config_details': 'PrivateServerConfigDetails', 'username': 'str', + 'email': 'str', + 'is_migration_required': 'bool', 'secret_id': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', @@ -107,6 +117,8 @@ def __init__(self, **kwargs): 'config_source_provider_type': 'configSourceProviderType', 'private_server_config_details': 'privateServerConfigDetails', 'username': 'username', + 'email': 'email', + 'is_migration_required': 'isMigrationRequired', 'secret_id': 'secretId', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', @@ -122,6 +134,8 @@ def __init__(self, **kwargs): self._config_source_provider_type = None self._private_server_config_details = None self._username = None + self._email = None + self._is_migration_required = None self._secret_id = None self._freeform_tags = None self._defined_tags = None diff --git a/src/oci/resource_manager/models/bitbucket_server_access_token_configuration_source_provider_summary.py b/src/oci/resource_manager/models/bitbucket_server_access_token_configuration_source_provider_summary.py index 5646acf295..a6b7792a0e 100644 --- a/src/oci/resource_manager/models/bitbucket_server_access_token_configuration_source_provider_summary.py +++ b/src/oci/resource_manager/models/bitbucket_server_access_token_configuration_source_provider_summary.py @@ -54,6 +54,10 @@ def __init__(self, **kwargs): The value to assign to the private_server_config_details property of this BitbucketServerAccessTokenConfigurationSourceProviderSummary. :type private_server_config_details: oci.resource_manager.models.PrivateServerConfigDetails + :param is_migration_required: + The value to assign to the is_migration_required property of this BitbucketServerAccessTokenConfigurationSourceProviderSummary. + :type is_migration_required: bool + :param freeform_tags: The value to assign to the freeform_tags property of this BitbucketServerAccessTokenConfigurationSourceProviderSummary. :type freeform_tags: dict(str, str) @@ -80,6 +84,7 @@ def __init__(self, **kwargs): 'lifecycle_state': 'str', 'config_source_provider_type': 'str', 'private_server_config_details': 'PrivateServerConfigDetails', + 'is_migration_required': 'bool', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', 'system_tags': 'dict(str, dict(str, object))', @@ -94,6 +99,7 @@ def __init__(self, **kwargs): 'lifecycle_state': 'lifecycleState', 'config_source_provider_type': 'configSourceProviderType', 'private_server_config_details': 'privateServerConfigDetails', + 'is_migration_required': 'isMigrationRequired', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', 'system_tags': 'systemTags', @@ -107,6 +113,7 @@ def __init__(self, **kwargs): self._lifecycle_state = None self._config_source_provider_type = None self._private_server_config_details = None + self._is_migration_required = None self._freeform_tags = None self._defined_tags = None self._system_tags = None diff --git a/src/oci/resource_manager/models/configuration_source_provider.py b/src/oci/resource_manager/models/configuration_source_provider.py index e1c694c93d..f6c994195c 100644 --- a/src/oci/resource_manager/models/configuration_source_provider.py +++ b/src/oci/resource_manager/models/configuration_source_provider.py @@ -24,8 +24,8 @@ class ConfigurationSourceProvider(object): LIFECYCLE_STATE_ACTIVE = "ACTIVE" #: A constant which can be used with the config_source_provider_type property of a ConfigurationSourceProvider. - #: This constant has a value of "BITBUCKET_CLOUD_USERNAME_APPPASSWORD" - CONFIG_SOURCE_PROVIDER_TYPE_BITBUCKET_CLOUD_USERNAME_APPPASSWORD = "BITBUCKET_CLOUD_USERNAME_APPPASSWORD" + #: This constant has a value of "BITBUCKET_CLOUD_ACCESS_TOKEN" + CONFIG_SOURCE_PROVIDER_TYPE_BITBUCKET_CLOUD_ACCESS_TOKEN = "BITBUCKET_CLOUD_ACCESS_TOKEN" #: A constant which can be used with the config_source_provider_type property of a ConfigurationSourceProvider. #: This constant has a value of "BITBUCKET_SERVER_ACCESS_TOKEN" @@ -46,8 +46,8 @@ def __init__(self, **kwargs): * :class:`~oci.resource_manager.models.GithubAccessTokenConfigurationSourceProvider` * :class:`~oci.resource_manager.models.GitlabAccessTokenConfigurationSourceProvider` + * :class:`~oci.resource_manager.models.BitbucketCloudEmailApiTokenConfigurationSourceProvider` * :class:`~oci.resource_manager.models.BitbucketServerAccessTokenConfigurationSourceProvider` - * :class:`~oci.resource_manager.models.BitbucketCloudUsernameAppPasswordConfigurationSourceProvider` The following keyword arguments are supported (corresponding to the getters/setters of this class): @@ -79,7 +79,7 @@ def __init__(self, **kwargs): :param config_source_provider_type: The value to assign to the config_source_provider_type property of this ConfigurationSourceProvider. - Allowed values for this property are: "BITBUCKET_CLOUD_USERNAME_APPPASSWORD", "BITBUCKET_SERVER_ACCESS_TOKEN", "GITLAB_ACCESS_TOKEN", "GITHUB_ACCESS_TOKEN", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "BITBUCKET_CLOUD_ACCESS_TOKEN", "BITBUCKET_SERVER_ACCESS_TOKEN", "GITLAB_ACCESS_TOKEN", "GITHUB_ACCESS_TOKEN", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type config_source_provider_type: str @@ -91,6 +91,14 @@ def __init__(self, **kwargs): The value to assign to the username property of this ConfigurationSourceProvider. :type username: str + :param email: + The value to assign to the email property of this ConfigurationSourceProvider. + :type email: str + + :param is_migration_required: + The value to assign to the is_migration_required property of this ConfigurationSourceProvider. + :type is_migration_required: bool + :param secret_id: The value to assign to the secret_id property of this ConfigurationSourceProvider. :type secret_id: str @@ -118,6 +126,8 @@ def __init__(self, **kwargs): 'config_source_provider_type': 'str', 'private_server_config_details': 'PrivateServerConfigDetails', 'username': 'str', + 'email': 'str', + 'is_migration_required': 'bool', 'secret_id': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', @@ -133,6 +143,8 @@ def __init__(self, **kwargs): 'config_source_provider_type': 'configSourceProviderType', 'private_server_config_details': 'privateServerConfigDetails', 'username': 'username', + 'email': 'email', + 'is_migration_required': 'isMigrationRequired', 'secret_id': 'secretId', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', @@ -147,6 +159,8 @@ def __init__(self, **kwargs): self._config_source_provider_type = None self._private_server_config_details = None self._username = None + self._email = None + self._is_migration_required = None self._secret_id = None self._freeform_tags = None self._defined_tags = None @@ -166,11 +180,11 @@ def get_subtype(object_dictionary): if type == 'GITLAB_ACCESS_TOKEN': return 'GitlabAccessTokenConfigurationSourceProvider' + if type == 'BITBUCKET_CLOUD_ACCESS_TOKEN': + return 'BitbucketCloudEmailApiTokenConfigurationSourceProvider' + if type == 'BITBUCKET_SERVER_ACCESS_TOKEN': return 'BitbucketServerAccessTokenConfigurationSourceProvider' - - if type == 'BITBUCKET_CLOUD_USERNAME_APPPASSWORD': - return 'BitbucketCloudUsernameAppPasswordConfigurationSourceProvider' else: return 'ConfigurationSourceProvider' @@ -349,12 +363,12 @@ def config_source_provider_type(self): """ **[Required]** Gets the config_source_provider_type of this ConfigurationSourceProvider. The type of configuration source provider. - The `BITBUCKET_CLOUD_USERNAME_APPPASSWORD` type corresponds to Bitbucket Cloud. + The `BITBUCKET_CLOUD_ACCESS_TOKEN` type corresponds to Bitbucket Cloud. The `BITBUCKET_SERVER_ACCESS_TOKEN` type corresponds to Bitbucket Server. The `GITLAB_ACCESS_TOKEN` type corresponds to GitLab. The `GITHUB_ACCESS_TOKEN` type corresponds to GitHub. - Allowed values for this property are: "BITBUCKET_CLOUD_USERNAME_APPPASSWORD", "BITBUCKET_SERVER_ACCESS_TOKEN", "GITLAB_ACCESS_TOKEN", "GITHUB_ACCESS_TOKEN", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "BITBUCKET_CLOUD_ACCESS_TOKEN", "BITBUCKET_SERVER_ACCESS_TOKEN", "GITLAB_ACCESS_TOKEN", "GITHUB_ACCESS_TOKEN", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -368,7 +382,7 @@ def config_source_provider_type(self, config_source_provider_type): """ Sets the config_source_provider_type of this ConfigurationSourceProvider. The type of configuration source provider. - The `BITBUCKET_CLOUD_USERNAME_APPPASSWORD` type corresponds to Bitbucket Cloud. + The `BITBUCKET_CLOUD_ACCESS_TOKEN` type corresponds to Bitbucket Cloud. The `BITBUCKET_SERVER_ACCESS_TOKEN` type corresponds to Bitbucket Server. The `GITLAB_ACCESS_TOKEN` type corresponds to GitLab. The `GITHUB_ACCESS_TOKEN` type corresponds to GitHub. @@ -377,7 +391,7 @@ def config_source_provider_type(self, config_source_provider_type): :param config_source_provider_type: The config_source_provider_type of this ConfigurationSourceProvider. :type: str """ - allowed_values = ["BITBUCKET_CLOUD_USERNAME_APPPASSWORD", "BITBUCKET_SERVER_ACCESS_TOKEN", "GITLAB_ACCESS_TOKEN", "GITHUB_ACCESS_TOKEN"] + allowed_values = ["BITBUCKET_CLOUD_ACCESS_TOKEN", "BITBUCKET_SERVER_ACCESS_TOKEN", "GITLAB_ACCESS_TOKEN", "GITHUB_ACCESS_TOKEN"] if not value_allowed_none_or_none_sentinel(config_source_provider_type, allowed_values): config_source_provider_type = 'UNKNOWN_ENUM_VALUE' self._config_source_provider_type = config_source_provider_type @@ -426,6 +440,54 @@ def username(self, username): """ self._username = username + @property + def email(self): + """ + Gets the email of this ConfigurationSourceProvider. + Atlassian account email used for Bitbucket Cloud API token authentication. + + + :return: The email of this ConfigurationSourceProvider. + :rtype: str + """ + return self._email + + @email.setter + def email(self, email): + """ + Sets the email of this ConfigurationSourceProvider. + Atlassian account email used for Bitbucket Cloud API token authentication. + + + :param email: The email of this ConfigurationSourceProvider. + :type: str + """ + self._email = email + + @property + def is_migration_required(self): + """ + Gets the is_migration_required of this ConfigurationSourceProvider. + Indicates whether this configuration source provider uses legacy Bitbucket Cloud username/app-password credentials and must be migrated. + + + :return: The is_migration_required of this ConfigurationSourceProvider. + :rtype: bool + """ + return self._is_migration_required + + @is_migration_required.setter + def is_migration_required(self, is_migration_required): + """ + Sets the is_migration_required of this ConfigurationSourceProvider. + Indicates whether this configuration source provider uses legacy Bitbucket Cloud username/app-password credentials and must be migrated. + + + :param is_migration_required: The is_migration_required of this ConfigurationSourceProvider. + :type: bool + """ + self._is_migration_required = is_migration_required + @property def secret_id(self): """ diff --git a/src/oci/resource_manager/models/configuration_source_provider_summary.py b/src/oci/resource_manager/models/configuration_source_provider_summary.py index e0402c2f1e..c4edf99f30 100644 --- a/src/oci/resource_manager/models/configuration_source_provider_summary.py +++ b/src/oci/resource_manager/models/configuration_source_provider_summary.py @@ -21,8 +21,8 @@ def __init__(self, **kwargs): to a service operations then you should favor using a subclass over the base class: * :class:`~oci.resource_manager.models.GitlabAccessTokenConfigurationSourceProviderSummary` - * :class:`~oci.resource_manager.models.BitbucketCloudUsernameAppPasswordConfigurationSourceProviderSummary` * :class:`~oci.resource_manager.models.BitbucketServerAccessTokenConfigurationSourceProviderSummary` + * :class:`~oci.resource_manager.models.BitbucketCloudEmailApiTokenConfigurationSourceProviderSummary` * :class:`~oci.resource_manager.models.GithubAccessTokenConfigurationSourceProviderSummary` The following keyword arguments are supported (corresponding to the getters/setters of this class): @@ -59,6 +59,10 @@ def __init__(self, **kwargs): The value to assign to the private_server_config_details property of this ConfigurationSourceProviderSummary. :type private_server_config_details: oci.resource_manager.models.PrivateServerConfigDetails + :param is_migration_required: + The value to assign to the is_migration_required property of this ConfigurationSourceProviderSummary. + :type is_migration_required: bool + :param freeform_tags: The value to assign to the freeform_tags property of this ConfigurationSourceProviderSummary. :type freeform_tags: dict(str, str) @@ -81,6 +85,7 @@ def __init__(self, **kwargs): 'lifecycle_state': 'str', 'config_source_provider_type': 'str', 'private_server_config_details': 'PrivateServerConfigDetails', + 'is_migration_required': 'bool', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', 'system_tags': 'dict(str, dict(str, object))' @@ -94,6 +99,7 @@ def __init__(self, **kwargs): 'lifecycle_state': 'lifecycleState', 'config_source_provider_type': 'configSourceProviderType', 'private_server_config_details': 'privateServerConfigDetails', + 'is_migration_required': 'isMigrationRequired', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', 'system_tags': 'systemTags' @@ -106,6 +112,7 @@ def __init__(self, **kwargs): self._lifecycle_state = None self._config_source_provider_type = None self._private_server_config_details = None + self._is_migration_required = None self._freeform_tags = None self._defined_tags = None self._system_tags = None @@ -121,12 +128,12 @@ def get_subtype(object_dictionary): if type == 'GITLAB_ACCESS_TOKEN': return 'GitlabAccessTokenConfigurationSourceProviderSummary' - if type == 'BITBUCKET_CLOUD_USERNAME_APPPASSWORD': - return 'BitbucketCloudUsernameAppPasswordConfigurationSourceProviderSummary' - if type == 'BITBUCKET_SERVER_ACCESS_TOKEN': return 'BitbucketServerAccessTokenConfigurationSourceProviderSummary' + if type == 'BITBUCKET_CLOUD_ACCESS_TOKEN': + return 'BitbucketCloudEmailApiTokenConfigurationSourceProviderSummary' + if type == 'GITHUB_ACCESS_TOKEN': return 'GithubAccessTokenConfigurationSourceProviderSummary' else: @@ -301,7 +308,7 @@ def config_source_provider_type(self): """ **[Required]** Gets the config_source_provider_type of this ConfigurationSourceProviderSummary. The type of configuration source provider. - The `BITBUCKET_CLOUD_USERNAME_APPPASSWORD` type corresponds to Bitbucket Cloud. + The `BITBUCKET_CLOUD_ACCESS_TOKEN` type corresponds to Bitbucket Cloud. The `BITBUCKET_SERVER_ACCESS_TOKEN` type corresponds to Bitbucket Server. The `GITLAB_ACCESS_TOKEN` type corresponds to GitLab. The `GITHUB_ACCESS_TOKEN` type corresponds to GitHub. @@ -317,7 +324,7 @@ def config_source_provider_type(self, config_source_provider_type): """ Sets the config_source_provider_type of this ConfigurationSourceProviderSummary. The type of configuration source provider. - The `BITBUCKET_CLOUD_USERNAME_APPPASSWORD` type corresponds to Bitbucket Cloud. + The `BITBUCKET_CLOUD_ACCESS_TOKEN` type corresponds to Bitbucket Cloud. The `BITBUCKET_SERVER_ACCESS_TOKEN` type corresponds to Bitbucket Server. The `GITLAB_ACCESS_TOKEN` type corresponds to GitLab. The `GITHUB_ACCESS_TOKEN` type corresponds to GitHub. @@ -348,6 +355,30 @@ def private_server_config_details(self, private_server_config_details): """ self._private_server_config_details = private_server_config_details + @property + def is_migration_required(self): + """ + Gets the is_migration_required of this ConfigurationSourceProviderSummary. + Indicates whether this configuration source provider uses legacy Bitbucket Cloud username/app-password credentials and must be migrated. + + + :return: The is_migration_required of this ConfigurationSourceProviderSummary. + :rtype: bool + """ + return self._is_migration_required + + @is_migration_required.setter + def is_migration_required(self, is_migration_required): + """ + Sets the is_migration_required of this ConfigurationSourceProviderSummary. + Indicates whether this configuration source provider uses legacy Bitbucket Cloud username/app-password credentials and must be migrated. + + + :param is_migration_required: The is_migration_required of this ConfigurationSourceProviderSummary. + :type: bool + """ + self._is_migration_required = is_migration_required + @property def freeform_tags(self): """ diff --git a/src/oci/resource_manager/models/create_bitbucket_cloud_username_app_password_configuration_source_provider_details.py b/src/oci/resource_manager/models/create_bitbucket_cloud_email_api_token_configuration_source_provider_details.py similarity index 61% rename from src/oci/resource_manager/models/create_bitbucket_cloud_username_app_password_configuration_source_provider_details.py rename to src/oci/resource_manager/models/create_bitbucket_cloud_email_api_token_configuration_source_provider_details.py index f10a230d5d..0e3eb19823 100644 --- a/src/oci/resource_manager/models/create_bitbucket_cloud_username_app_password_configuration_source_provider_details.py +++ b/src/oci/resource_manager/models/create_bitbucket_cloud_email_api_token_configuration_source_provider_details.py @@ -10,56 +10,57 @@ @init_model_state_from_kwargs -class CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails(CreateConfigurationSourceProviderDetails): +class CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails(CreateConfigurationSourceProviderDetails): """ - Creation details for a configuration source provider of the type `BITBUCKET_CLOUD_USERNAME_appPASSWORD`. - This type corresponds to a configuration source provider in Bitbucket that is authenticated with a username and app password. + Creation details for a configuration source provider of the type `BITBUCKET_CLOUD_ACCESS_TOKEN`. + This type corresponds to a configuration source provider in Bitbucket Cloud that is authenticated with Atlassian account email and API token. + Legacy username/app-password create request shapes are no longer supported. """ def __init__(self, **kwargs): """ - Initializes a new CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.resource_manager.models.CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails.config_source_provider_type` attribute - of this class is ``BITBUCKET_CLOUD_USERNAME_APPPASSWORD`` and it should not be changed. + Initializes a new CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.resource_manager.models.CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails.config_source_provider_type` attribute + of this class is ``BITBUCKET_CLOUD_ACCESS_TOKEN`` and it should not be changed. The following keyword arguments are supported (corresponding to the getters/setters of this class): :param compartment_id: - The value to assign to the compartment_id property of this CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + The value to assign to the compartment_id property of this CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. :type compartment_id: str :param display_name: - The value to assign to the display_name property of this CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + The value to assign to the display_name property of this CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. :type display_name: str :param description: - The value to assign to the description property of this CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + The value to assign to the description property of this CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. :type description: str :param config_source_provider_type: - The value to assign to the config_source_provider_type property of this CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + The value to assign to the config_source_provider_type property of this CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. :type config_source_provider_type: str :param private_server_config_details: - The value to assign to the private_server_config_details property of this CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + The value to assign to the private_server_config_details property of this CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. :type private_server_config_details: oci.resource_manager.models.PrivateServerConfigDetails :param freeform_tags: - The value to assign to the freeform_tags property of this CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + The value to assign to the freeform_tags property of this CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. :type freeform_tags: dict(str, str) :param defined_tags: - The value to assign to the defined_tags property of this CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + The value to assign to the defined_tags property of this CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. :type defined_tags: dict(str, dict(str, object)) :param api_endpoint: - The value to assign to the api_endpoint property of this CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + The value to assign to the api_endpoint property of this CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. :type api_endpoint: str - :param username: - The value to assign to the username property of this CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. - :type username: str + :param email: + The value to assign to the email property of this CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. + :type email: str :param secret_id: - The value to assign to the secret_id property of this CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + The value to assign to the secret_id property of this CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. :type secret_id: str """ @@ -72,7 +73,7 @@ def __init__(self, **kwargs): 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', 'api_endpoint': 'str', - 'username': 'str', + 'email': 'str', 'secret_id': 'str' } self.attribute_map = { @@ -84,7 +85,7 @@ def __init__(self, **kwargs): 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', 'api_endpoint': 'apiEndpoint', - 'username': 'username', + 'email': 'email', 'secret_id': 'secretId' } self._compartment_id = None @@ -95,19 +96,19 @@ def __init__(self, **kwargs): self._freeform_tags = None self._defined_tags = None self._api_endpoint = None - self._username = None + self._email = None self._secret_id = None - self._config_source_provider_type = 'BITBUCKET_CLOUD_USERNAME_APPPASSWORD' + self._config_source_provider_type = 'BITBUCKET_CLOUD_ACCESS_TOKEN' @property def api_endpoint(self): """ - **[Required]** Gets the api_endpoint of this CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + **[Required]** Gets the api_endpoint of this CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. The Bitbucket cloud service endpoint. Example: `https://bitbucket.org/` - :return: The api_endpoint of this CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + :return: The api_endpoint of this CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. :rtype: str """ return self._api_endpoint @@ -115,48 +116,48 @@ def api_endpoint(self): @api_endpoint.setter def api_endpoint(self, api_endpoint): """ - Sets the api_endpoint of this CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + Sets the api_endpoint of this CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. The Bitbucket cloud service endpoint. Example: `https://bitbucket.org/` - :param api_endpoint: The api_endpoint of this CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + :param api_endpoint: The api_endpoint of this CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. :type: str """ self._api_endpoint = api_endpoint @property - def username(self): + def email(self): """ - **[Required]** Gets the username of this CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. - The username for the user of the Bitbucket cloud repository. + **[Required]** Gets the email of this CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. + Atlassian account email used for Bitbucket Cloud API token authentication. - :return: The username of this CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + :return: The email of this CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. :rtype: str """ - return self._username + return self._email - @username.setter - def username(self, username): + @email.setter + def email(self, email): """ - Sets the username of this CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. - The username for the user of the Bitbucket cloud repository. + Sets the email of this CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. + Atlassian account email used for Bitbucket Cloud API token authentication. - :param username: The username of this CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + :param email: The email of this CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. :type: str """ - self._username = username + self._email = email @property def secret_id(self): """ - **[Required]** Gets the secret_id of this CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + **[Required]** Gets the secret_id of this CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. The secret ocid which is used to authorize the user. - :return: The secret_id of this CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + :return: The secret_id of this CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. :rtype: str """ return self._secret_id @@ -164,11 +165,11 @@ def secret_id(self): @secret_id.setter def secret_id(self, secret_id): """ - Sets the secret_id of this CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + Sets the secret_id of this CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. The secret ocid which is used to authorize the user. - :param secret_id: The secret_id of this CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + :param secret_id: The secret_id of this CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. :type: str """ self._secret_id = secret_id diff --git a/src/oci/resource_manager/models/create_configuration_source_provider_details.py b/src/oci/resource_manager/models/create_configuration_source_provider_details.py index 1e48b8ec3f..f12968a6c6 100644 --- a/src/oci/resource_manager/models/create_configuration_source_provider_details.py +++ b/src/oci/resource_manager/models/create_configuration_source_provider_details.py @@ -21,7 +21,7 @@ def __init__(self, **kwargs): to a service operations then you should favor using a subclass over the base class: * :class:`~oci.resource_manager.models.CreateGitlabAccessTokenConfigurationSourceProviderDetails` - * :class:`~oci.resource_manager.models.CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails` + * :class:`~oci.resource_manager.models.CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails` * :class:`~oci.resource_manager.models.CreateGithubAccessTokenConfigurationSourceProviderDetails` * :class:`~oci.resource_manager.models.CreateBitbucketServerAccessTokenConfigurationSourceProviderDetails` @@ -93,8 +93,8 @@ def get_subtype(object_dictionary): if type == 'GITLAB_ACCESS_TOKEN': return 'CreateGitlabAccessTokenConfigurationSourceProviderDetails' - if type == 'BITBUCKET_CLOUD_USERNAME_APPPASSWORD': - return 'CreateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails' + if type == 'BITBUCKET_CLOUD_ACCESS_TOKEN': + return 'CreateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails' if type == 'GITHUB_ACCESS_TOKEN': return 'CreateGithubAccessTokenConfigurationSourceProviderDetails' @@ -189,7 +189,8 @@ def config_source_provider_type(self): The type of configuration source provider. The `GITLAB_ACCESS_TOKEN` type corresponds to GitLab. The `GITHUB_ACCESS_TOKEN` type corresponds to GitHub. - The `BITBUCKET_CLOUD_USERNAME_APPPASSWORD` type corresponds to Bitbucket Cloud. + The `BITBUCKET_CLOUD_ACCESS_TOKEN` type corresponds to Bitbucket Cloud. + For Bitbucket Cloud, create requests must provide Atlassian account `email` and `secretId` containing an API token. The `BITBUCKET_SERVER_ACCESS_TOKEN` type corresponds to Bitbucket Server. @@ -205,7 +206,8 @@ def config_source_provider_type(self, config_source_provider_type): The type of configuration source provider. The `GITLAB_ACCESS_TOKEN` type corresponds to GitLab. The `GITHUB_ACCESS_TOKEN` type corresponds to GitHub. - The `BITBUCKET_CLOUD_USERNAME_APPPASSWORD` type corresponds to Bitbucket Cloud. + The `BITBUCKET_CLOUD_ACCESS_TOKEN` type corresponds to Bitbucket Cloud. + For Bitbucket Cloud, create requests must provide Atlassian account `email` and `secretId` containing an API token. The `BITBUCKET_SERVER_ACCESS_TOKEN` type corresponds to Bitbucket Server. diff --git a/src/oci/resource_manager/models/github_access_token_configuration_source_provider.py b/src/oci/resource_manager/models/github_access_token_configuration_source_provider.py index 7dc6494d72..924d53bf4c 100644 --- a/src/oci/resource_manager/models/github_access_token_configuration_source_provider.py +++ b/src/oci/resource_manager/models/github_access_token_configuration_source_provider.py @@ -49,7 +49,7 @@ def __init__(self, **kwargs): :param config_source_provider_type: The value to assign to the config_source_provider_type property of this GithubAccessTokenConfigurationSourceProvider. - Allowed values for this property are: "BITBUCKET_CLOUD_USERNAME_APPPASSWORD", "BITBUCKET_SERVER_ACCESS_TOKEN", "GITLAB_ACCESS_TOKEN", "GITHUB_ACCESS_TOKEN" + Allowed values for this property are: "BITBUCKET_CLOUD_ACCESS_TOKEN", "BITBUCKET_SERVER_ACCESS_TOKEN", "GITLAB_ACCESS_TOKEN", "GITHUB_ACCESS_TOKEN" :type config_source_provider_type: str :param private_server_config_details: @@ -60,6 +60,14 @@ def __init__(self, **kwargs): The value to assign to the username property of this GithubAccessTokenConfigurationSourceProvider. :type username: str + :param email: + The value to assign to the email property of this GithubAccessTokenConfigurationSourceProvider. + :type email: str + + :param is_migration_required: + The value to assign to the is_migration_required property of this GithubAccessTokenConfigurationSourceProvider. + :type is_migration_required: bool + :param secret_id: The value to assign to the secret_id property of this GithubAccessTokenConfigurationSourceProvider. :type secret_id: str @@ -91,6 +99,8 @@ def __init__(self, **kwargs): 'config_source_provider_type': 'str', 'private_server_config_details': 'PrivateServerConfigDetails', 'username': 'str', + 'email': 'str', + 'is_migration_required': 'bool', 'secret_id': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', @@ -107,6 +117,8 @@ def __init__(self, **kwargs): 'config_source_provider_type': 'configSourceProviderType', 'private_server_config_details': 'privateServerConfigDetails', 'username': 'username', + 'email': 'email', + 'is_migration_required': 'isMigrationRequired', 'secret_id': 'secretId', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', @@ -122,6 +134,8 @@ def __init__(self, **kwargs): self._config_source_provider_type = None self._private_server_config_details = None self._username = None + self._email = None + self._is_migration_required = None self._secret_id = None self._freeform_tags = None self._defined_tags = None diff --git a/src/oci/resource_manager/models/github_access_token_configuration_source_provider_summary.py b/src/oci/resource_manager/models/github_access_token_configuration_source_provider_summary.py index 7db95f1634..3c2dabfd75 100644 --- a/src/oci/resource_manager/models/github_access_token_configuration_source_provider_summary.py +++ b/src/oci/resource_manager/models/github_access_token_configuration_source_provider_summary.py @@ -54,6 +54,10 @@ def __init__(self, **kwargs): The value to assign to the private_server_config_details property of this GithubAccessTokenConfigurationSourceProviderSummary. :type private_server_config_details: oci.resource_manager.models.PrivateServerConfigDetails + :param is_migration_required: + The value to assign to the is_migration_required property of this GithubAccessTokenConfigurationSourceProviderSummary. + :type is_migration_required: bool + :param freeform_tags: The value to assign to the freeform_tags property of this GithubAccessTokenConfigurationSourceProviderSummary. :type freeform_tags: dict(str, str) @@ -80,6 +84,7 @@ def __init__(self, **kwargs): 'lifecycle_state': 'str', 'config_source_provider_type': 'str', 'private_server_config_details': 'PrivateServerConfigDetails', + 'is_migration_required': 'bool', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', 'system_tags': 'dict(str, dict(str, object))', @@ -94,6 +99,7 @@ def __init__(self, **kwargs): 'lifecycle_state': 'lifecycleState', 'config_source_provider_type': 'configSourceProviderType', 'private_server_config_details': 'privateServerConfigDetails', + 'is_migration_required': 'isMigrationRequired', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', 'system_tags': 'systemTags', @@ -107,6 +113,7 @@ def __init__(self, **kwargs): self._lifecycle_state = None self._config_source_provider_type = None self._private_server_config_details = None + self._is_migration_required = None self._freeform_tags = None self._defined_tags = None self._system_tags = None diff --git a/src/oci/resource_manager/models/gitlab_access_token_configuration_source_provider.py b/src/oci/resource_manager/models/gitlab_access_token_configuration_source_provider.py index ad1867aa21..36c667ffcc 100644 --- a/src/oci/resource_manager/models/gitlab_access_token_configuration_source_provider.py +++ b/src/oci/resource_manager/models/gitlab_access_token_configuration_source_provider.py @@ -49,7 +49,7 @@ def __init__(self, **kwargs): :param config_source_provider_type: The value to assign to the config_source_provider_type property of this GitlabAccessTokenConfigurationSourceProvider. - Allowed values for this property are: "BITBUCKET_CLOUD_USERNAME_APPPASSWORD", "BITBUCKET_SERVER_ACCESS_TOKEN", "GITLAB_ACCESS_TOKEN", "GITHUB_ACCESS_TOKEN" + Allowed values for this property are: "BITBUCKET_CLOUD_ACCESS_TOKEN", "BITBUCKET_SERVER_ACCESS_TOKEN", "GITLAB_ACCESS_TOKEN", "GITHUB_ACCESS_TOKEN" :type config_source_provider_type: str :param private_server_config_details: @@ -60,6 +60,14 @@ def __init__(self, **kwargs): The value to assign to the username property of this GitlabAccessTokenConfigurationSourceProvider. :type username: str + :param email: + The value to assign to the email property of this GitlabAccessTokenConfigurationSourceProvider. + :type email: str + + :param is_migration_required: + The value to assign to the is_migration_required property of this GitlabAccessTokenConfigurationSourceProvider. + :type is_migration_required: bool + :param secret_id: The value to assign to the secret_id property of this GitlabAccessTokenConfigurationSourceProvider. :type secret_id: str @@ -91,6 +99,8 @@ def __init__(self, **kwargs): 'config_source_provider_type': 'str', 'private_server_config_details': 'PrivateServerConfigDetails', 'username': 'str', + 'email': 'str', + 'is_migration_required': 'bool', 'secret_id': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', @@ -107,6 +117,8 @@ def __init__(self, **kwargs): 'config_source_provider_type': 'configSourceProviderType', 'private_server_config_details': 'privateServerConfigDetails', 'username': 'username', + 'email': 'email', + 'is_migration_required': 'isMigrationRequired', 'secret_id': 'secretId', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', @@ -122,6 +134,8 @@ def __init__(self, **kwargs): self._config_source_provider_type = None self._private_server_config_details = None self._username = None + self._email = None + self._is_migration_required = None self._secret_id = None self._freeform_tags = None self._defined_tags = None diff --git a/src/oci/resource_manager/models/gitlab_access_token_configuration_source_provider_summary.py b/src/oci/resource_manager/models/gitlab_access_token_configuration_source_provider_summary.py index 8f89bea559..5a52a4f32a 100644 --- a/src/oci/resource_manager/models/gitlab_access_token_configuration_source_provider_summary.py +++ b/src/oci/resource_manager/models/gitlab_access_token_configuration_source_provider_summary.py @@ -54,6 +54,10 @@ def __init__(self, **kwargs): The value to assign to the private_server_config_details property of this GitlabAccessTokenConfigurationSourceProviderSummary. :type private_server_config_details: oci.resource_manager.models.PrivateServerConfigDetails + :param is_migration_required: + The value to assign to the is_migration_required property of this GitlabAccessTokenConfigurationSourceProviderSummary. + :type is_migration_required: bool + :param freeform_tags: The value to assign to the freeform_tags property of this GitlabAccessTokenConfigurationSourceProviderSummary. :type freeform_tags: dict(str, str) @@ -80,6 +84,7 @@ def __init__(self, **kwargs): 'lifecycle_state': 'str', 'config_source_provider_type': 'str', 'private_server_config_details': 'PrivateServerConfigDetails', + 'is_migration_required': 'bool', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', 'system_tags': 'dict(str, dict(str, object))', @@ -94,6 +99,7 @@ def __init__(self, **kwargs): 'lifecycle_state': 'lifecycleState', 'config_source_provider_type': 'configSourceProviderType', 'private_server_config_details': 'privateServerConfigDetails', + 'is_migration_required': 'isMigrationRequired', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', 'system_tags': 'systemTags', @@ -107,6 +113,7 @@ def __init__(self, **kwargs): self._lifecycle_state = None self._config_source_provider_type = None self._private_server_config_details = None + self._is_migration_required = None self._freeform_tags = None self._defined_tags = None self._system_tags = None diff --git a/src/oci/resource_manager/models/update_bitbucket_cloud_username_app_password_configuration_source_provider_details.py b/src/oci/resource_manager/models/update_bitbucket_cloud_email_api_token_configuration_source_provider_details.py similarity index 57% rename from src/oci/resource_manager/models/update_bitbucket_cloud_username_app_password_configuration_source_provider_details.py rename to src/oci/resource_manager/models/update_bitbucket_cloud_email_api_token_configuration_source_provider_details.py index edafebd711..7bb4edfd44 100644 --- a/src/oci/resource_manager/models/update_bitbucket_cloud_username_app_password_configuration_source_provider_details.py +++ b/src/oci/resource_manager/models/update_bitbucket_cloud_email_api_token_configuration_source_provider_details.py @@ -10,52 +10,53 @@ @init_model_state_from_kwargs -class UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails(UpdateConfigurationSourceProviderDetails): +class UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails(UpdateConfigurationSourceProviderDetails): """ - Update details for a configuration source provider of the type `BITBUCKET_CLOUD_USERNAME_APPPASSWORD`. - This type corresponds to a configuration source provider in Bitbucket that is authenticated with a username and app password. + Update details for a configuration source provider of the type `BITBUCKET_CLOUD_ACCESS_TOKEN`. + This type corresponds to a configuration source provider in Bitbucket Cloud that is authenticated with Atlassian account email and API token. + Legacy username/app-password update request shapes are no longer supported. """ def __init__(self, **kwargs): """ - Initializes a new UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.resource_manager.models.UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails.config_source_provider_type` attribute - of this class is ``BITBUCKET_CLOUD_USERNAME_APPPASSWORD`` and it should not be changed. + Initializes a new UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.resource_manager.models.UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails.config_source_provider_type` attribute + of this class is ``BITBUCKET_CLOUD_ACCESS_TOKEN`` and it should not be changed. The following keyword arguments are supported (corresponding to the getters/setters of this class): :param display_name: - The value to assign to the display_name property of this UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + The value to assign to the display_name property of this UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. :type display_name: str :param description: - The value to assign to the description property of this UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + The value to assign to the description property of this UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. :type description: str :param config_source_provider_type: - The value to assign to the config_source_provider_type property of this UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + The value to assign to the config_source_provider_type property of this UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. :type config_source_provider_type: str :param private_server_config_details: - The value to assign to the private_server_config_details property of this UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + The value to assign to the private_server_config_details property of this UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. :type private_server_config_details: oci.resource_manager.models.PrivateServerConfigDetails :param freeform_tags: - The value to assign to the freeform_tags property of this UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + The value to assign to the freeform_tags property of this UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. :type freeform_tags: dict(str, str) :param defined_tags: - The value to assign to the defined_tags property of this UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + The value to assign to the defined_tags property of this UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. :type defined_tags: dict(str, dict(str, object)) :param api_endpoint: - The value to assign to the api_endpoint property of this UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + The value to assign to the api_endpoint property of this UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. :type api_endpoint: str - :param username: - The value to assign to the username property of this UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. - :type username: str + :param email: + The value to assign to the email property of this UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. + :type email: str :param secret_id: - The value to assign to the secret_id property of this UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + The value to assign to the secret_id property of this UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. :type secret_id: str """ @@ -67,7 +68,7 @@ def __init__(self, **kwargs): 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', 'api_endpoint': 'str', - 'username': 'str', + 'email': 'str', 'secret_id': 'str' } self.attribute_map = { @@ -78,7 +79,7 @@ def __init__(self, **kwargs): 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', 'api_endpoint': 'apiEndpoint', - 'username': 'username', + 'email': 'email', 'secret_id': 'secretId' } self._display_name = None @@ -88,19 +89,19 @@ def __init__(self, **kwargs): self._freeform_tags = None self._defined_tags = None self._api_endpoint = None - self._username = None + self._email = None self._secret_id = None - self._config_source_provider_type = 'BITBUCKET_CLOUD_USERNAME_APPPASSWORD' + self._config_source_provider_type = 'BITBUCKET_CLOUD_ACCESS_TOKEN' @property def api_endpoint(self): """ - Gets the api_endpoint of this UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + Gets the api_endpoint of this UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. The Bitbucket service endpoint. Example: `https://bitbucket.org/` - :return: The api_endpoint of this UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + :return: The api_endpoint of this UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. :rtype: str """ return self._api_endpoint @@ -108,48 +109,48 @@ def api_endpoint(self): @api_endpoint.setter def api_endpoint(self, api_endpoint): """ - Sets the api_endpoint of this UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + Sets the api_endpoint of this UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. The Bitbucket service endpoint. Example: `https://bitbucket.org/` - :param api_endpoint: The api_endpoint of this UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + :param api_endpoint: The api_endpoint of this UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. :type: str """ self._api_endpoint = api_endpoint @property - def username(self): + def email(self): """ - Gets the username of this UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. - The username for the user of the Bitbucket cloud repository. + Gets the email of this UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. + Atlassian account email used for Bitbucket Cloud API token authentication. - :return: The username of this UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + :return: The email of this UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. :rtype: str """ - return self._username + return self._email - @username.setter - def username(self, username): + @email.setter + def email(self, email): """ - Sets the username of this UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. - The username for the user of the Bitbucket cloud repository. + Sets the email of this UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. + Atlassian account email used for Bitbucket Cloud API token authentication. - :param username: The username of this UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + :param email: The email of this UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. :type: str """ - self._username = username + self._email = email @property def secret_id(self): """ - Gets the secret_id of this UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. - The secret ocid which is used to authorize the user. + Gets the secret_id of this UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. + The secret OCID containing an Atlassian API token. - :return: The secret_id of this UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + :return: The secret_id of this UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. :rtype: str """ return self._secret_id @@ -157,11 +158,11 @@ def secret_id(self): @secret_id.setter def secret_id(self, secret_id): """ - Sets the secret_id of this UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. - The secret ocid which is used to authorize the user. + Sets the secret_id of this UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. + The secret OCID containing an Atlassian API token. - :param secret_id: The secret_id of this UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails. + :param secret_id: The secret_id of this UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails. :type: str """ self._secret_id = secret_id diff --git a/src/oci/resource_manager/models/update_configuration_source_provider_details.py b/src/oci/resource_manager/models/update_configuration_source_provider_details.py index 98eac95a3f..fb63498cba 100644 --- a/src/oci/resource_manager/models/update_configuration_source_provider_details.py +++ b/src/oci/resource_manager/models/update_configuration_source_provider_details.py @@ -20,9 +20,9 @@ def __init__(self, **kwargs): Initializes a new UpdateConfigurationSourceProviderDetails object with values from keyword arguments. This class has the following subclasses and if you are using this class as input to a service operations then you should favor using a subclass over the base class: - * :class:`~oci.resource_manager.models.UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails` * :class:`~oci.resource_manager.models.UpdateBitbucketServerAccessTokenConfigurationSourceProviderDetails` * :class:`~oci.resource_manager.models.UpdateGitlabAccessTokenConfigurationSourceProviderDetails` + * :class:`~oci.resource_manager.models.UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails` * :class:`~oci.resource_manager.models.UpdateGithubAccessTokenConfigurationSourceProviderDetails` The following keyword arguments are supported (corresponding to the getters/setters of this class): @@ -83,15 +83,15 @@ def get_subtype(object_dictionary): """ type = object_dictionary['configSourceProviderType'] - if type == 'BITBUCKET_CLOUD_USERNAME_APPPASSWORD': - return 'UpdateBitbucketCloudUsernameAppPasswordConfigurationSourceProviderDetails' - if type == 'BITBUCKET_SERVER_ACCESS_TOKEN': return 'UpdateBitbucketServerAccessTokenConfigurationSourceProviderDetails' if type == 'GITLAB_ACCESS_TOKEN': return 'UpdateGitlabAccessTokenConfigurationSourceProviderDetails' + if type == 'BITBUCKET_CLOUD_ACCESS_TOKEN': + return 'UpdateBitbucketCloudEmailApiTokenConfigurationSourceProviderDetails' + if type == 'GITHUB_ACCESS_TOKEN': return 'UpdateGithubAccessTokenConfigurationSourceProviderDetails' else: @@ -150,7 +150,8 @@ def config_source_provider_type(self): """ Gets the config_source_provider_type of this UpdateConfigurationSourceProviderDetails. The type of configuration source provider. - The `BITBUCKET_CLOUD_USERNAME_APPPASSWORD` type corresponds to Bitbucket Cloud. + The `BITBUCKET_CLOUD_ACCESS_TOKEN` type corresponds to Bitbucket Cloud. + For Bitbucket Cloud, update requests must provide Atlassian account `email` and `secretId` containing an API token. The `BITBUCKET_SERVER_ACCESS_TOKEN` type corresponds to Bitbucket Server. The `GITLAB_ACCESS_TOKEN` type corresponds to GitLab. The `GITHUB_ACCESS_TOKEN` type corresponds to GitHub. @@ -166,7 +167,8 @@ def config_source_provider_type(self, config_source_provider_type): """ Sets the config_source_provider_type of this UpdateConfigurationSourceProviderDetails. The type of configuration source provider. - The `BITBUCKET_CLOUD_USERNAME_APPPASSWORD` type corresponds to Bitbucket Cloud. + The `BITBUCKET_CLOUD_ACCESS_TOKEN` type corresponds to Bitbucket Cloud. + For Bitbucket Cloud, update requests must provide Atlassian account `email` and `secretId` containing an API token. The `BITBUCKET_SERVER_ACCESS_TOKEN` type corresponds to Bitbucket Server. The `GITLAB_ACCESS_TOKEN` type corresponds to GitLab. The `GITHUB_ACCESS_TOKEN` type corresponds to GitHub. diff --git a/src/oci/version.py b/src/oci/version.py index 8abeeb63b0..35726b90de 100644 --- a/src/oci/version.py +++ b/src/oci/version.py @@ -2,4 +2,4 @@ # Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. # This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. -__version__ = "2.180.0" +__version__ = "2.181.0" From 04b6f1f6f456ab2145710e086446d3ab4d0b6a85 Mon Sep 17 00:00:00 2001 From: OCI DEX Release Bot Automation Date: Tue, 7 Jul 2026 06:04:32 +0000 Subject: [PATCH 05/11] Releasing version 2.181.1 Co-authored-by: Harsh Kumar --- CHANGELOG.rst | 12 + pyproject.toml | 4 +- requirements.txt | 2 + setup.py | 2 + src/oci/_vendor/__init__.py | 1 - src/oci/_vendor/jwt/__init__.py | 75 -- src/oci/_vendor/jwt/algorithms.py | 682 ------------------ src/oci/_vendor/jwt/api_jwk.py | 108 --- src/oci/_vendor/jwt/api_jws.py | 294 -------- src/oci/_vendor/jwt/api_jwt.py | 236 ------ src/oci/_vendor/jwt/exceptions.py | 71 -- src/oci/_vendor/jwt/help.py | 67 -- src/oci/_vendor/jwt/jwks_client.py | 64 -- src/oci/_vendor/jwt/utils.py | 165 ----- src/oci/auth/security_token_container.py | 2 +- src/oci/base_client.py | 38 +- .../models/dedicated_ai_cluster.py | 154 +++- src/oci/version.py | 2 +- 18 files changed, 206 insertions(+), 1773 deletions(-) delete mode 100644 src/oci/_vendor/jwt/__init__.py delete mode 100644 src/oci/_vendor/jwt/algorithms.py delete mode 100644 src/oci/_vendor/jwt/api_jwk.py delete mode 100644 src/oci/_vendor/jwt/api_jws.py delete mode 100644 src/oci/_vendor/jwt/api_jwt.py delete mode 100644 src/oci/_vendor/jwt/exceptions.py delete mode 100644 src/oci/_vendor/jwt/help.py delete mode 100644 src/oci/_vendor/jwt/jwks_client.py delete mode 100644 src/oci/_vendor/jwt/utils.py diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 702ade2229..27d705d81c 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -4,6 +4,18 @@ All notable changes to this project will be documented in this file. The format is based on `Keep a Changelog `_. +==================== +2.181.1 - 2026-07-07 +==================== + +Added +----- +* Support for DAC hardware shapes for self-hosted models in the Generative AI service + +Changed +------- +* PyJWT is no longer vendored and is now managed as an external dependency + ==================== 2.181.0 - 2026-06-30 ==================== diff --git a/pyproject.toml b/pyproject.toml index a70ad53c11..e96b9c27ec 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -50,7 +50,9 @@ dependencies = [ "circuitbreaker>=1.3.1,<2.0.0; python_version <= '3.6'", "circuitbreaker>=1.3.1,<3.0.0; python_version >= '3.7'", "urllib3==1.26.20; python_version < '3.10.0'", - "urllib3>=2.6.3; python_version >= '3.10.0'" + "urllib3>=2.6.3; python_version >= '3.10.0'", + "PyJWT==2.4.0; python_version < '3.9'", + "PyJWT>=2.12.0; python_version >= '3.9'", ] [project.optional-dependencies] diff --git a/requirements.txt b/requirements.txt index c2bfaf38dc..9c0ac4bb3d 100644 --- a/requirements.txt +++ b/requirements.txt @@ -27,6 +27,8 @@ circuitbreaker>=1.3.1,<2.0.0; python_version <= '3.6' circuitbreaker>=1.3.1,<3.0.0; python_version >= '3.7' urllib3==1.26.20; python_version < '3.10.0' urllib3>=2.6.3; python_version >= '3.10.0' +PyJWT==2.4.0; python_version < '3.9' +PyJWT>=2.12.0; python_version >= '3.9' Jinja2<3.0.0; python_version == '3.6' Jinja2>=3.1.5,<4.0.0; python_version >= '3.7' crc32c==2.5; python_version == '3.6' diff --git a/setup.py b/setup.py index 6645a47ecc..f2fd443b1c 100644 --- a/setup.py +++ b/setup.py @@ -42,6 +42,8 @@ def open_relative(*path): "urllib3>=2.6.3; python_version >= '3.10.0'", "crc32c==2.5; python_version == '3.6'", "crc32c==2.7.1; python_version >= '3.7'", + "PyJWT==2.4.0; python_version < '3.9'", + "PyJWT>=2.12.0; python_version >= '3.9'", ] extras_require = { diff --git a/src/oci/_vendor/__init__.py b/src/oci/_vendor/__init__.py index a1dadf5205..1ae934020c 100644 --- a/src/oci/_vendor/__init__.py +++ b/src/oci/_vendor/__init__.py @@ -4,7 +4,6 @@ from . import chardet # noqa: F401 from . import httpsig_cffi # noqa: F401 -from . import jwt # noqa: F401 from . import idna # noqa: F401 from . import six # noqa: F401 from . import requests # noqa: F401 diff --git a/src/oci/_vendor/jwt/__init__.py b/src/oci/_vendor/jwt/__init__.py deleted file mode 100644 index 75e8f7e9b9..0000000000 --- a/src/oci/_vendor/jwt/__init__.py +++ /dev/null @@ -1,75 +0,0 @@ -# coding: utf-8 -# Modified Work: Copyright (c) 2018, 2026, Oracle and/or its affiliates. All rights reserved. -# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. -# Original Work: Copyright (c) 2015-2022 José Padilla - -from .api_jwk import PyJWK, PyJWKSet -from .api_jws import ( - PyJWS, - get_unverified_header, - register_algorithm, - unregister_algorithm, -) -from .api_jwt import PyJWT, decode, encode -from .exceptions import ( - DecodeError, - ExpiredSignatureError, - ImmatureSignatureError, - InvalidAlgorithmError, - InvalidAudienceError, - InvalidIssuedAtError, - InvalidIssuerError, - InvalidKeyError, - InvalidSignatureError, - InvalidTokenError, - MissingRequiredClaimError, - PyJWKClientError, - PyJWKError, - PyJWKSetError, - PyJWTError, -) -from .jwks_client import PyJWKClient - -__version__ = "2.4.0" - -__title__ = "PyJWT" -__description__ = "JSON Web Token implementation in Python" -__url__ = "https://pyjwt.readthedocs.io" -__uri__ = __url__ -__doc__ = f"{__description__} <{__uri__}>" - -__author__ = "José Padilla" -__email__ = "hello@jpadilla.com" - -__license__ = "MIT" -__copyright__ = "Copyright 2015-2022 José Padilla" - - -__all__ = [ - "PyJWS", - "PyJWT", - "PyJWKClient", - "PyJWK", - "PyJWKSet", - "decode", - "encode", - "get_unverified_header", - "register_algorithm", - "unregister_algorithm", - # Exceptions - "DecodeError", - "ExpiredSignatureError", - "ImmatureSignatureError", - "InvalidAlgorithmError", - "InvalidAudienceError", - "InvalidIssuedAtError", - "InvalidIssuerError", - "InvalidKeyError", - "InvalidSignatureError", - "InvalidTokenError", - "MissingRequiredClaimError", - "PyJWKClientError", - "PyJWKError", - "PyJWKSetError", - "PyJWTError", -] diff --git a/src/oci/_vendor/jwt/algorithms.py b/src/oci/_vendor/jwt/algorithms.py deleted file mode 100644 index af7fa104c3..0000000000 --- a/src/oci/_vendor/jwt/algorithms.py +++ /dev/null @@ -1,682 +0,0 @@ -# coding: utf-8 -# Modified Work: Copyright (c) 2018, 2026, Oracle and/or its affiliates. All rights reserved. -# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. -# Original Work: Copyright (c) 2015-2022 José Padilla - -import hashlib -import hmac -import json - -from .exceptions import InvalidKeyError -from .utils import ( - base64url_decode, - base64url_encode, - der_to_raw_signature, - force_bytes, - from_base64url_uint, - is_pem_format, - is_ssh_key, - raw_to_der_signature, - to_base64url_uint, -) - -try: - import cryptography.exceptions - from cryptography.exceptions import InvalidSignature - from cryptography.hazmat.primitives import hashes - from cryptography.hazmat.primitives.asymmetric import ec, padding - from cryptography.hazmat.primitives.asymmetric.ec import ( - EllipticCurvePrivateKey, - EllipticCurvePublicKey, - ) - from cryptography.hazmat.primitives.asymmetric.ed448 import ( - Ed448PrivateKey, - Ed448PublicKey, - ) - from cryptography.hazmat.primitives.asymmetric.ed25519 import ( - Ed25519PrivateKey, - Ed25519PublicKey, - ) - from cryptography.hazmat.primitives.asymmetric.rsa import ( - RSAPrivateKey, - RSAPrivateNumbers, - RSAPublicKey, - RSAPublicNumbers, - rsa_crt_dmp1, - rsa_crt_dmq1, - rsa_crt_iqmp, - rsa_recover_prime_factors, - ) - from cryptography.hazmat.primitives.serialization import ( - Encoding, - NoEncryption, - PrivateFormat, - PublicFormat, - load_pem_private_key, - load_pem_public_key, - load_ssh_public_key, - ) - - has_crypto = True -except ModuleNotFoundError: - has_crypto = False - -requires_cryptography = { - "RS256", - "RS384", - "RS512", - "ES256", - "ES256K", - "ES384", - "ES521", - "ES512", - "PS256", - "PS384", - "PS512", - "EdDSA", -} - - -def get_default_algorithms(): - """ - Returns the algorithms that are implemented by the library. - """ - default_algorithms = { - "none": NoneAlgorithm(), - "HS256": HMACAlgorithm(HMACAlgorithm.SHA256), - "HS384": HMACAlgorithm(HMACAlgorithm.SHA384), - "HS512": HMACAlgorithm(HMACAlgorithm.SHA512), - } - - if has_crypto: - default_algorithms.update( - { - "RS256": RSAAlgorithm(RSAAlgorithm.SHA256), - "RS384": RSAAlgorithm(RSAAlgorithm.SHA384), - "RS512": RSAAlgorithm(RSAAlgorithm.SHA512), - "ES256": ECAlgorithm(ECAlgorithm.SHA256), - "ES256K": ECAlgorithm(ECAlgorithm.SHA256), - "ES384": ECAlgorithm(ECAlgorithm.SHA384), - "ES521": ECAlgorithm(ECAlgorithm.SHA512), - "ES512": ECAlgorithm( - ECAlgorithm.SHA512 - ), # Backward compat for #219 fix - "PS256": RSAPSSAlgorithm(RSAPSSAlgorithm.SHA256), - "PS384": RSAPSSAlgorithm(RSAPSSAlgorithm.SHA384), - "PS512": RSAPSSAlgorithm(RSAPSSAlgorithm.SHA512), - "EdDSA": OKPAlgorithm(), - } - ) - - return default_algorithms - - -class Algorithm: - """ - The interface for an algorithm used to sign and verify tokens. - """ - - def prepare_key(self, key): - """ - Performs necessary validation and conversions on the key and returns - the key value in the proper format for sign() and verify(). - """ - raise NotImplementedError - - def sign(self, msg, key): - """ - Returns a digital signature for the specified message - using the specified key value. - """ - raise NotImplementedError - - def verify(self, msg, key, sig): - """ - Verifies that the specified digital signature is valid - for the specified message and key values. - """ - raise NotImplementedError - - @staticmethod - def to_jwk(key_obj): - """ - Serializes a given RSA key into a JWK - """ - raise NotImplementedError - - @staticmethod - def from_jwk(jwk): - """ - Deserializes a given RSA key from JWK back into a PublicKey or PrivateKey object - """ - raise NotImplementedError - - -class NoneAlgorithm(Algorithm): - """ - Placeholder for use when no signing or verification - operations are required. - """ - - def prepare_key(self, key): - if key == "": - key = None - - if key is not None: - raise InvalidKeyError('When alg = "none", key value must be None.') - - return key - - def sign(self, msg, key): - return b"" - - def verify(self, msg, key, sig): - return False - - -class HMACAlgorithm(Algorithm): - """ - Performs signing and verification operations using HMAC - and the specified hash function. - """ - - SHA256 = hashlib.sha256 - SHA384 = hashlib.sha384 - SHA512 = hashlib.sha512 - - def __init__(self, hash_alg): - self.hash_alg = hash_alg - - def prepare_key(self, key): - key = force_bytes(key) - - if is_pem_format(key) or is_ssh_key(key): - raise InvalidKeyError( - "The specified key is an asymmetric key or x509 certificate and" - " should not be used as an HMAC secret." - ) - - return key - - @staticmethod - def to_jwk(key_obj): - return json.dumps( - { - "k": base64url_encode(force_bytes(key_obj)).decode(), - "kty": "oct", - } - ) - - @staticmethod - def from_jwk(jwk): - try: - if isinstance(jwk, str): - obj = json.loads(jwk) - elif isinstance(jwk, dict): - obj = jwk - else: - raise ValueError - except ValueError: - raise InvalidKeyError("Key is not valid JSON") - - if obj.get("kty") != "oct": - raise InvalidKeyError("Not an HMAC key") - - return base64url_decode(obj["k"]) - - def sign(self, msg, key): - return hmac.new(key, msg, self.hash_alg).digest() - - def verify(self, msg, key, sig): - return hmac.compare_digest(sig, self.sign(msg, key)) - - -if has_crypto: - - class RSAAlgorithm(Algorithm): - """ - Performs signing and verification operations using - RSASSA-PKCS-v1_5 and the specified hash function. - """ - - SHA256 = hashes.SHA256 - SHA384 = hashes.SHA384 - SHA512 = hashes.SHA512 - - def __init__(self, hash_alg): - self.hash_alg = hash_alg - - def prepare_key(self, key): - if isinstance(key, (RSAPrivateKey, RSAPublicKey)): - return key - - if not isinstance(key, (bytes, str)): - raise TypeError("Expecting a PEM-formatted key.") - - key = force_bytes(key) - - try: - if key.startswith(b"ssh-rsa"): - key = load_ssh_public_key(key) - else: - key = load_pem_private_key(key, password=None) - except ValueError: - key = load_pem_public_key(key) - return key - - @staticmethod - def to_jwk(key_obj): - obj = None - - if getattr(key_obj, "private_numbers", None): - # Private key - numbers = key_obj.private_numbers() - - obj = { - "kty": "RSA", - "key_ops": ["sign"], - "n": to_base64url_uint(numbers.public_numbers.n).decode(), - "e": to_base64url_uint(numbers.public_numbers.e).decode(), - "d": to_base64url_uint(numbers.d).decode(), - "p": to_base64url_uint(numbers.p).decode(), - "q": to_base64url_uint(numbers.q).decode(), - "dp": to_base64url_uint(numbers.dmp1).decode(), - "dq": to_base64url_uint(numbers.dmq1).decode(), - "qi": to_base64url_uint(numbers.iqmp).decode(), - } - - elif getattr(key_obj, "verify", None): - # Public key - numbers = key_obj.public_numbers() - - obj = { - "kty": "RSA", - "key_ops": ["verify"], - "n": to_base64url_uint(numbers.n).decode(), - "e": to_base64url_uint(numbers.e).decode(), - } - else: - raise InvalidKeyError("Not a public or private key") - - return json.dumps(obj) - - @staticmethod - def from_jwk(jwk): - try: - if isinstance(jwk, str): - obj = json.loads(jwk) - elif isinstance(jwk, dict): - obj = jwk - else: - raise ValueError - except ValueError: - raise InvalidKeyError("Key is not valid JSON") - - if obj.get("kty") != "RSA": - raise InvalidKeyError("Not an RSA key") - - if "d" in obj and "e" in obj and "n" in obj: - # Private key - if "oth" in obj: - raise InvalidKeyError( - "Unsupported RSA private key: > 2 primes not supported" - ) - - other_props = ["p", "q", "dp", "dq", "qi"] - props_found = [prop in obj for prop in other_props] - any_props_found = any(props_found) - - if any_props_found and not all(props_found): - raise InvalidKeyError( - "RSA key must include all parameters if any are present besides d" - ) - - public_numbers = RSAPublicNumbers( - from_base64url_uint(obj["e"]), - from_base64url_uint(obj["n"]), - ) - - if any_props_found: - numbers = RSAPrivateNumbers( - d=from_base64url_uint(obj["d"]), - p=from_base64url_uint(obj["p"]), - q=from_base64url_uint(obj["q"]), - dmp1=from_base64url_uint(obj["dp"]), - dmq1=from_base64url_uint(obj["dq"]), - iqmp=from_base64url_uint(obj["qi"]), - public_numbers=public_numbers, - ) - else: - d = from_base64url_uint(obj["d"]) - p, q = rsa_recover_prime_factors( - public_numbers.n, d, public_numbers.e - ) - - numbers = RSAPrivateNumbers( - d=d, - p=p, - q=q, - dmp1=rsa_crt_dmp1(d, p), - dmq1=rsa_crt_dmq1(d, q), - iqmp=rsa_crt_iqmp(p, q), - public_numbers=public_numbers, - ) - - return numbers.private_key() - elif "n" in obj and "e" in obj: - # Public key - numbers = RSAPublicNumbers( - from_base64url_uint(obj["e"]), - from_base64url_uint(obj["n"]), - ) - - return numbers.public_key() - else: - raise InvalidKeyError("Not a public or private key") - - def sign(self, msg, key): - return key.sign(msg, padding.PKCS1v15(), self.hash_alg()) - - def verify(self, msg, key, sig): - try: - key.verify(sig, msg, padding.PKCS1v15(), self.hash_alg()) - return True - except InvalidSignature: - return False - - class ECAlgorithm(Algorithm): - """ - Performs signing and verification operations using - ECDSA and the specified hash function - """ - - SHA256 = hashes.SHA256 - SHA384 = hashes.SHA384 - SHA512 = hashes.SHA512 - - def __init__(self, hash_alg): - self.hash_alg = hash_alg - - def prepare_key(self, key): - if isinstance(key, (EllipticCurvePrivateKey, EllipticCurvePublicKey)): - return key - - if not isinstance(key, (bytes, str)): - raise TypeError("Expecting a PEM-formatted key.") - - key = force_bytes(key) - - # Attempt to load key. We don't know if it's - # a Signing Key or a Verifying Key, so we try - # the Verifying Key first. - try: - if key.startswith(b"ecdsa-sha2-"): - key = load_ssh_public_key(key) - else: - key = load_pem_public_key(key) - except ValueError: - key = load_pem_private_key(key, password=None) - - # Explicit check the key to prevent confusing errors from cryptography - if not isinstance(key, (EllipticCurvePrivateKey, EllipticCurvePublicKey)): - raise InvalidKeyError( - "Expecting a EllipticCurvePrivateKey/EllipticCurvePublicKey. Wrong key provided for ECDSA algorithms" - ) - - return key - - def sign(self, msg, key): - der_sig = key.sign(msg, ec.ECDSA(self.hash_alg())) - - return der_to_raw_signature(der_sig, key.curve) - - def verify(self, msg, key, sig): - try: - der_sig = raw_to_der_signature(sig, key.curve) - except ValueError: - return False - - try: - if isinstance(key, EllipticCurvePrivateKey): - key = key.public_key() - key.verify(der_sig, msg, ec.ECDSA(self.hash_alg())) - return True - except InvalidSignature: - return False - - @staticmethod - def from_jwk(jwk): - try: - if isinstance(jwk, str): - obj = json.loads(jwk) - elif isinstance(jwk, dict): - obj = jwk - else: - raise ValueError - except ValueError: - raise InvalidKeyError("Key is not valid JSON") - - if obj.get("kty") != "EC": - raise InvalidKeyError("Not an Elliptic curve key") - - if "x" not in obj or "y" not in obj: - raise InvalidKeyError("Not an Elliptic curve key") - - x = base64url_decode(obj.get("x")) - y = base64url_decode(obj.get("y")) - - curve = obj.get("crv") - if curve == "P-256": - if len(x) == len(y) == 32: - curve_obj = ec.SECP256R1() - else: - raise InvalidKeyError("Coords should be 32 bytes for curve P-256") - elif curve == "P-384": - if len(x) == len(y) == 48: - curve_obj = ec.SECP384R1() - else: - raise InvalidKeyError("Coords should be 48 bytes for curve P-384") - elif curve == "P-521": - if len(x) == len(y) == 66: - curve_obj = ec.SECP521R1() - else: - raise InvalidKeyError("Coords should be 66 bytes for curve P-521") - elif curve == "secp256k1": - if len(x) == len(y) == 32: - curve_obj = ec.SECP256K1() - else: - raise InvalidKeyError( - "Coords should be 32 bytes for curve secp256k1" - ) - else: - raise InvalidKeyError(f"Invalid curve: {curve}") - - public_numbers = ec.EllipticCurvePublicNumbers( - x=int.from_bytes(x, byteorder="big"), - y=int.from_bytes(y, byteorder="big"), - curve=curve_obj, - ) - - if "d" not in obj: - return public_numbers.public_key() - - d = base64url_decode(obj.get("d")) - if len(d) != len(x): - raise InvalidKeyError( - "D should be {} bytes for curve {}", len(x), curve - ) - - return ec.EllipticCurvePrivateNumbers( - int.from_bytes(d, byteorder="big"), public_numbers - ).private_key() - - class RSAPSSAlgorithm(RSAAlgorithm): - """ - Performs a signature using RSASSA-PSS with MGF1 - """ - - def sign(self, msg, key): - return key.sign( - msg, - padding.PSS( - mgf=padding.MGF1(self.hash_alg()), - salt_length=self.hash_alg.digest_size, - ), - self.hash_alg(), - ) - - def verify(self, msg, key, sig): - try: - key.verify( - sig, - msg, - padding.PSS( - mgf=padding.MGF1(self.hash_alg()), - salt_length=self.hash_alg.digest_size, - ), - self.hash_alg(), - ) - return True - except InvalidSignature: - return False - - class OKPAlgorithm(Algorithm): - """ - Performs signing and verification operations using EdDSA - - This class requires ``cryptography>=2.6`` to be installed. - """ - - def __init__(self, **kwargs): - pass - - def prepare_key(self, key): - if isinstance(key, (bytes, str)): - if isinstance(key, str): - key = key.encode("utf-8") - str_key = key.decode("utf-8") - - if "-----BEGIN PUBLIC" in str_key: - key = load_pem_public_key(key) - elif "-----BEGIN PRIVATE" in str_key: - key = load_pem_private_key(key, password=None) - elif str_key[0:4] == "ssh-": - key = load_ssh_public_key(key) - - # Explicit check the key to prevent confusing errors from cryptography - if not isinstance( - key, - (Ed25519PrivateKey, Ed25519PublicKey, Ed448PrivateKey, Ed448PublicKey), - ): - raise InvalidKeyError( - "Expecting a EllipticCurvePrivateKey/EllipticCurvePublicKey. Wrong key provided for EdDSA algorithms" - ) - - return key - - def sign(self, msg, key): - """ - Sign a message ``msg`` using the EdDSA private key ``key`` - :param str|bytes msg: Message to sign - :param Ed25519PrivateKey}Ed448PrivateKey key: A :class:`.Ed25519PrivateKey` - or :class:`.Ed448PrivateKey` iinstance - :return bytes signature: The signature, as bytes - """ - msg = bytes(msg, "utf-8") if type(msg) is not bytes else msg - return key.sign(msg) - - def verify(self, msg, key, sig): - """ - Verify a given ``msg`` against a signature ``sig`` using the EdDSA key ``key`` - - :param str|bytes sig: EdDSA signature to check ``msg`` against - :param str|bytes msg: Message to sign - :param Ed25519PrivateKey|Ed25519PublicKey|Ed448PrivateKey|Ed448PublicKey key: - A private or public EdDSA key instance - :return bool verified: True if signature is valid, False if not. - """ - try: - msg = bytes(msg, "utf-8") if type(msg) is not bytes else msg - sig = bytes(sig, "utf-8") if type(sig) is not bytes else sig - - if isinstance(key, (Ed25519PrivateKey, Ed448PrivateKey)): - key = key.public_key() - key.verify(sig, msg) - return True # If no exception was raised, the signature is valid. - except cryptography.exceptions.InvalidSignature: - return False - - @staticmethod - def to_jwk(key): - if isinstance(key, (Ed25519PublicKey, Ed448PublicKey)): - x = key.public_bytes( - encoding=Encoding.Raw, - format=PublicFormat.Raw, - ) - crv = "Ed25519" if isinstance(key, Ed25519PublicKey) else "Ed448" - return json.dumps( - { - "x": base64url_encode(force_bytes(x)).decode(), - "kty": "OKP", - "crv": crv, - } - ) - - if isinstance(key, (Ed25519PrivateKey, Ed448PrivateKey)): - d = key.private_bytes( - encoding=Encoding.Raw, - format=PrivateFormat.Raw, - encryption_algorithm=NoEncryption(), - ) - - x = key.public_key().public_bytes( - encoding=Encoding.Raw, - format=PublicFormat.Raw, - ) - - crv = "Ed25519" if isinstance(key, Ed25519PrivateKey) else "Ed448" - return json.dumps( - { - "x": base64url_encode(force_bytes(x)).decode(), - "d": base64url_encode(force_bytes(d)).decode(), - "kty": "OKP", - "crv": crv, - } - ) - - raise InvalidKeyError("Not a public or private key") - - @staticmethod - def from_jwk(jwk): - try: - if isinstance(jwk, str): - obj = json.loads(jwk) - elif isinstance(jwk, dict): - obj = jwk - else: - raise ValueError - except ValueError: - raise InvalidKeyError("Key is not valid JSON") - - if obj.get("kty") != "OKP": - raise InvalidKeyError("Not an Octet Key Pair") - - curve = obj.get("crv") - if curve != "Ed25519" and curve != "Ed448": - raise InvalidKeyError(f"Invalid curve: {curve}") - - if "x" not in obj: - raise InvalidKeyError('OKP should have "x" parameter') - x = base64url_decode(obj.get("x")) - - try: - if "d" not in obj: - if curve == "Ed25519": - return Ed25519PublicKey.from_public_bytes(x) - return Ed448PublicKey.from_public_bytes(x) - d = base64url_decode(obj.get("d")) - if curve == "Ed25519": - return Ed25519PrivateKey.from_private_bytes(d) - return Ed448PrivateKey.from_private_bytes(d) - except ValueError as err: - raise InvalidKeyError("Invalid key parameter") from err diff --git a/src/oci/_vendor/jwt/api_jwk.py b/src/oci/_vendor/jwt/api_jwk.py deleted file mode 100644 index 26494c9fb1..0000000000 --- a/src/oci/_vendor/jwt/api_jwk.py +++ /dev/null @@ -1,108 +0,0 @@ -# coding: utf-8 -# Modified Work: Copyright (c) 2018, 2026, Oracle and/or its affiliates. All rights reserved. -# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. -# Original Work: Copyright (c) 2015-2022 José Padilla - -import json - -from .algorithms import get_default_algorithms -from .exceptions import InvalidKeyError, PyJWKError, PyJWKSetError - - -class PyJWK: - def __init__(self, jwk_data, algorithm=None): - self._algorithms = get_default_algorithms() - self._jwk_data = jwk_data - - kty = self._jwk_data.get("kty", None) - if not kty: - raise InvalidKeyError(f"kty is not found: {self._jwk_data}") - - if not algorithm and isinstance(self._jwk_data, dict): - algorithm = self._jwk_data.get("alg", None) - - if not algorithm: - # Determine alg with kty (and crv). - crv = self._jwk_data.get("crv", None) - if kty == "EC": - if crv == "P-256" or not crv: - algorithm = "ES256" - elif crv == "P-384": - algorithm = "ES384" - elif crv == "P-521": - algorithm = "ES512" - elif crv == "secp256k1": - algorithm = "ES256K" - else: - raise InvalidKeyError(f"Unsupported crv: {crv}") - elif kty == "RSA": - algorithm = "RS256" - elif kty == "oct": - algorithm = "HS256" - elif kty == "OKP": - if not crv: - raise InvalidKeyError(f"crv is not found: {self._jwk_data}") - if crv == "Ed25519": - algorithm = "EdDSA" - else: - raise InvalidKeyError(f"Unsupported crv: {crv}") - else: - raise InvalidKeyError(f"Unsupported kty: {kty}") - - self.Algorithm = self._algorithms.get(algorithm) - - if not self.Algorithm: - raise PyJWKError(f"Unable to find a algorithm for key: {self._jwk_data}") - - self.key = self.Algorithm.from_jwk(self._jwk_data) - - @staticmethod - def from_dict(obj, algorithm=None): - return PyJWK(obj, algorithm) - - @staticmethod - def from_json(data, algorithm=None): - obj = json.loads(data) - return PyJWK.from_dict(obj, algorithm) - - @property - def key_type(self): - return self._jwk_data.get("kty", None) - - @property - def key_id(self): - return self._jwk_data.get("kid", None) - - @property - def public_key_use(self): - return self._jwk_data.get("use", None) - - -class PyJWKSet: - def __init__(self, keys): - self.keys = [] - - if not keys or not isinstance(keys, list): - raise PyJWKSetError("Invalid JWK Set value") - - if len(keys) == 0: - raise PyJWKSetError("The JWK Set did not contain any keys") - - for key in keys: - self.keys.append(PyJWK(key)) - - @staticmethod - def from_dict(obj): - keys = obj.get("keys", []) - return PyJWKSet(keys) - - @staticmethod - def from_json(data): - obj = json.loads(data) - return PyJWKSet.from_dict(obj) - - def __getitem__(self, kid): - for key in self.keys: - if key.key_id == kid: - return key - raise KeyError(f"keyset has no key for kid: {kid}") diff --git a/src/oci/_vendor/jwt/api_jws.py b/src/oci/_vendor/jwt/api_jws.py deleted file mode 100644 index 4925f828c6..0000000000 --- a/src/oci/_vendor/jwt/api_jws.py +++ /dev/null @@ -1,294 +0,0 @@ -# coding: utf-8 -# Modified Work: Copyright (c) 2018, 2026, Oracle and/or its affiliates. All rights reserved. -# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. -# Original Work: Copyright (c) 2015-2022 José Padilla - -import binascii -import json -from collections.abc import Mapping -from typing import Any, Dict, List, Optional, Type - -from .algorithms import ( - Algorithm, - get_default_algorithms, - has_crypto, - requires_cryptography, -) -from .exceptions import ( - DecodeError, - InvalidAlgorithmError, - InvalidSignatureError, - InvalidTokenError, -) -from .utils import base64url_decode, base64url_encode - - -class PyJWS: - header_typ = "JWT" - - def __init__(self, algorithms=None, options=None): - self._algorithms = get_default_algorithms() - self._valid_algs = ( - set(algorithms) if algorithms is not None else set(self._algorithms) - ) - - # Remove algorithms that aren't on the whitelist - for key in list(self._algorithms.keys()): - if key not in self._valid_algs: - del self._algorithms[key] - - if options is None: - options = {} - self.options = {**self._get_default_options(), **options} - - @staticmethod - def _get_default_options(): - return {"verify_signature": True} - - def register_algorithm(self, alg_id, alg_obj): - """ - Registers a new Algorithm for use when creating and verifying tokens. - """ - if alg_id in self._algorithms: - raise ValueError("Algorithm already has a handler.") - - if not isinstance(alg_obj, Algorithm): - raise TypeError("Object is not of type `Algorithm`") - - self._algorithms[alg_id] = alg_obj - self._valid_algs.add(alg_id) - - def unregister_algorithm(self, alg_id): - """ - Unregisters an Algorithm for use when creating and verifying tokens - Throws KeyError if algorithm is not registered. - """ - if alg_id not in self._algorithms: - raise KeyError( - "The specified algorithm could not be removed" - " because it is not registered." - ) - - del self._algorithms[alg_id] - self._valid_algs.remove(alg_id) - - def get_algorithms(self): - """ - Returns a list of supported values for the 'alg' parameter. - """ - return list(self._valid_algs) - - def encode( - self, - payload: bytes, - key: str, - algorithm: Optional[str] = "HS256", - headers: Optional[Dict] = None, - json_encoder: Optional[Type[json.JSONEncoder]] = None, - is_payload_detached: bool = False, - ) -> str: - segments = [] - - if algorithm is None: - algorithm = "none" - - # Prefer headers values if present to function parameters. - if headers: - headers_alg = headers.get("alg") - if headers_alg: - algorithm = headers["alg"] - - headers_b64 = headers.get("b64") - if headers_b64 is False: - is_payload_detached = True - - # Header - header = {"typ": self.header_typ, "alg": algorithm} # type: Dict[str, Any] - - if headers: - self._validate_headers(headers) - header.update(headers) - - if not header["typ"]: - del header["typ"] - - if is_payload_detached: - header["b64"] = False - elif "b64" in header: - # True is the standard value for b64, so no need for it - del header["b64"] - - json_header = json.dumps( - header, separators=(",", ":"), cls=json_encoder - ).encode() - - segments.append(base64url_encode(json_header)) - - if is_payload_detached: - msg_payload = payload - else: - msg_payload = base64url_encode(payload) - segments.append(msg_payload) - - # Segments - signing_input = b".".join(segments) - - try: - alg_obj = self._algorithms[algorithm] - key = alg_obj.prepare_key(key) - signature = alg_obj.sign(signing_input, key) - - except KeyError as e: - if not has_crypto and algorithm in requires_cryptography: - raise NotImplementedError( - f"Algorithm '{algorithm}' could not be found. Do you have cryptography installed?" - ) from e - raise NotImplementedError("Algorithm not supported") from e - - segments.append(base64url_encode(signature)) - - # Don't put the payload content inside the encoded token when detached - if is_payload_detached: - segments[1] = b"" - encoded_string = b".".join(segments) - - return encoded_string.decode("utf-8") - - def decode_complete( - self, - jwt: str, - key: str = "", - algorithms: Optional[List[str]] = None, - options: Optional[Dict] = None, - detached_payload: Optional[bytes] = None, - **kwargs, - ) -> Dict[str, Any]: - if options is None: - options = {} - merged_options = {**self.options, **options} - verify_signature = merged_options["verify_signature"] - - if verify_signature and not algorithms: - raise DecodeError( - 'It is required that you pass in a value for the "algorithms" argument when calling decode().' - ) - - payload, signing_input, header, signature = self._load(jwt) - - if header.get("b64", True) is False: - if detached_payload is None: - raise DecodeError( - 'It is required that you pass in a value for the "detached_payload" argument to decode a message having the b64 header set to false.' - ) - payload = detached_payload - signing_input = b".".join([signing_input.rsplit(b".", 1)[0], payload]) - - if verify_signature: - self._verify_signature(signing_input, header, signature, key, algorithms) - - return { - "payload": payload, - "header": header, - "signature": signature, - } - - def decode( - self, - jwt: str, - key: str = "", - algorithms: Optional[List[str]] = None, - options: Optional[Dict] = None, - **kwargs, - ) -> str: - decoded = self.decode_complete(jwt, key, algorithms, options, **kwargs) - return decoded["payload"] - - def get_unverified_header(self, jwt): - """Returns back the JWT header parameters as a dict() - - Note: The signature is not verified so the header parameters - should not be fully trusted until signature verification is complete - """ - headers = self._load(jwt)[2] - self._validate_headers(headers) - - return headers - - def _load(self, jwt): - if isinstance(jwt, str): - jwt = jwt.encode("utf-8") - - if not isinstance(jwt, bytes): - raise DecodeError(f"Invalid token type. Token must be a {bytes}") - - try: - signing_input, crypto_segment = jwt.rsplit(b".", 1) - header_segment, payload_segment = signing_input.split(b".", 1) - except ValueError as err: - raise DecodeError("Not enough segments") from err - - try: - header_data = base64url_decode(header_segment) - except (TypeError, binascii.Error) as err: - raise DecodeError("Invalid header padding") from err - - try: - header = json.loads(header_data) - except ValueError as e: - raise DecodeError(f"Invalid header string: {e}") from e - - if not isinstance(header, Mapping): - raise DecodeError("Invalid header string: must be a json object") - - try: - payload = base64url_decode(payload_segment) - except (TypeError, binascii.Error) as err: - raise DecodeError("Invalid payload padding") from err - - try: - signature = base64url_decode(crypto_segment) - except (TypeError, binascii.Error) as err: - raise DecodeError("Invalid crypto padding") from err - - return (payload, signing_input, header, signature) - - def _verify_signature( - self, - signing_input, - header, - signature, - key="", - algorithms=None, - ): - - alg = header.get("alg") - - if algorithms is not None and alg not in algorithms: - raise InvalidAlgorithmError("The specified alg value is not allowed") - - try: - alg_obj = self._algorithms[alg] - key = alg_obj.prepare_key(key) - - if not alg_obj.verify(signing_input, key, signature): - raise InvalidSignatureError("Signature verification failed") - - except KeyError as e: - raise InvalidAlgorithmError("Algorithm not supported") from e - - def _validate_headers(self, headers): - if "kid" in headers: - self._validate_kid(headers["kid"]) - - def _validate_kid(self, kid): - if not isinstance(kid, str): - raise InvalidTokenError("Key ID header parameter must be a string") - - -_jws_global_obj = PyJWS() -encode = _jws_global_obj.encode -decode_complete = _jws_global_obj.decode_complete -decode = _jws_global_obj.decode -register_algorithm = _jws_global_obj.register_algorithm -unregister_algorithm = _jws_global_obj.unregister_algorithm -get_unverified_header = _jws_global_obj.get_unverified_header diff --git a/src/oci/_vendor/jwt/api_jwt.py b/src/oci/_vendor/jwt/api_jwt.py deleted file mode 100644 index 131c981a1f..0000000000 --- a/src/oci/_vendor/jwt/api_jwt.py +++ /dev/null @@ -1,236 +0,0 @@ -# coding: utf-8 -# Modified Work: Copyright (c) 2018, 2026, Oracle and/or its affiliates. All rights reserved. -# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. -# Original Work: Copyright (c) 2015-2022 José Padilla - -import json -import warnings -from calendar import timegm -from collections.abc import Iterable, Mapping -from datetime import datetime, timedelta, timezone -from typing import Any, Dict, List, Optional, Type, Union - -from . import api_jws -from .exceptions import ( - DecodeError, - ExpiredSignatureError, - ImmatureSignatureError, - InvalidAudienceError, - InvalidIssuedAtError, - InvalidIssuerError, - MissingRequiredClaimError, -) - - -class PyJWT: - def __init__(self, options=None): - if options is None: - options = {} - self.options = {**self._get_default_options(), **options} - - @staticmethod - def _get_default_options() -> Dict[str, Union[bool, List[str]]]: - return { - "verify_signature": True, - "verify_exp": True, - "verify_nbf": True, - "verify_iat": True, - "verify_aud": True, - "verify_iss": True, - "require": [], - } - - def encode( - self, - payload: Dict[str, Any], - key: str, - algorithm: Optional[str] = "HS256", - headers: Optional[Dict] = None, - json_encoder: Optional[Type[json.JSONEncoder]] = None, - ) -> str: - # Check that we get a mapping - if not isinstance(payload, Mapping): - raise TypeError( - "Expecting a mapping object, as JWT only supports " - "JSON objects as payloads." - ) - - # Payload - payload = payload.copy() - for time_claim in ["exp", "iat", "nbf"]: - # Convert datetime to a intDate value in known time-format claims - if isinstance(payload.get(time_claim), datetime): - payload[time_claim] = timegm(payload[time_claim].utctimetuple()) - - json_payload = json.dumps( - payload, separators=(",", ":"), cls=json_encoder - ).encode("utf-8") - - return api_jws.encode(json_payload, key, algorithm, headers, json_encoder) - - def decode_complete( - self, - jwt: str, - key: str = "", - algorithms: Optional[List[str]] = None, - options: Optional[Dict] = None, - **kwargs, - ) -> Dict[str, Any]: - options = dict(options or {}) # shallow-copy or initialize an empty dict - options.setdefault("verify_signature", True) - - # If the user has set the legacy `verify` argument, and it doesn't match - # what the relevant `options` entry for the argument is, inform the user - # that they're likely making a mistake. - if "verify" in kwargs and kwargs["verify"] != options["verify_signature"]: - warnings.warn( - "The `verify` argument to `decode` does nothing in PyJWT 2.0 and newer. " - "The equivalent is setting `verify_signature` to False in the `options` dictionary. " - "This invocation has a mismatch between the kwarg and the option entry.", - category=DeprecationWarning, - ) - - if not options["verify_signature"]: - options.setdefault("verify_exp", False) - options.setdefault("verify_nbf", False) - options.setdefault("verify_iat", False) - options.setdefault("verify_aud", False) - options.setdefault("verify_iss", False) - - if options["verify_signature"] and not algorithms: - raise DecodeError( - 'It is required that you pass in a value for the "algorithms" argument when calling decode().' - ) - - decoded = api_jws.decode_complete( - jwt, - key=key, - algorithms=algorithms, - options=options, - **kwargs, - ) - - try: - payload = json.loads(decoded["payload"]) - except ValueError as e: - raise DecodeError(f"Invalid payload string: {e}") - if not isinstance(payload, dict): - raise DecodeError("Invalid payload string: must be a json object") - - merged_options = {**self.options, **options} - self._validate_claims(payload, merged_options, **kwargs) - - decoded["payload"] = payload - return decoded - - def decode( - self, - jwt: str, - key: str = "", - algorithms: Optional[List[str]] = None, - options: Optional[Dict] = None, - **kwargs, - ) -> Dict[str, Any]: - decoded = self.decode_complete(jwt, key, algorithms, options, **kwargs) - return decoded["payload"] - - def _validate_claims( - self, payload, options, audience=None, issuer=None, leeway=0, **kwargs - ): - if isinstance(leeway, timedelta): - leeway = leeway.total_seconds() - - if not isinstance(audience, (bytes, str, type(None), Iterable)): - raise TypeError("audience must be a string, iterable, or None") - - self._validate_required_claims(payload, options) - - now = timegm(datetime.now(tz=timezone.utc).utctimetuple()) - - if "iat" in payload and options["verify_iat"]: - self._validate_iat(payload, now, leeway) - - if "nbf" in payload and options["verify_nbf"]: - self._validate_nbf(payload, now, leeway) - - if "exp" in payload and options["verify_exp"]: - self._validate_exp(payload, now, leeway) - - if options["verify_iss"]: - self._validate_iss(payload, issuer) - - if options["verify_aud"]: - self._validate_aud(payload, audience) - - def _validate_required_claims(self, payload, options): - for claim in options["require"]: - if payload.get(claim) is None: - raise MissingRequiredClaimError(claim) - - def _validate_iat(self, payload, now, leeway): - try: - int(payload["iat"]) - except ValueError: - raise InvalidIssuedAtError("Issued At claim (iat) must be an integer.") - - def _validate_nbf(self, payload, now, leeway): - try: - nbf = int(payload["nbf"]) - except ValueError: - raise DecodeError("Not Before claim (nbf) must be an integer.") - - if nbf > (now + leeway): - raise ImmatureSignatureError("The token is not yet valid (nbf)") - - def _validate_exp(self, payload, now, leeway): - try: - exp = int(payload["exp"]) - except ValueError: - raise DecodeError("Expiration Time claim (exp) must be an" " integer.") - - if exp < (now - leeway): - raise ExpiredSignatureError("Signature has expired") - - def _validate_aud(self, payload, audience): - if audience is None: - if "aud" not in payload or not payload["aud"]: - return - # Application did not specify an audience, but - # the token has the 'aud' claim - raise InvalidAudienceError("Invalid audience") - - if "aud" not in payload or not payload["aud"]: - # Application specified an audience, but it could not be - # verified since the token does not contain a claim. - raise MissingRequiredClaimError("aud") - - audience_claims = payload["aud"] - - if isinstance(audience_claims, str): - audience_claims = [audience_claims] - if not isinstance(audience_claims, list): - raise InvalidAudienceError("Invalid claim format in token") - if any(not isinstance(c, str) for c in audience_claims): - raise InvalidAudienceError("Invalid claim format in token") - - if isinstance(audience, str): - audience = [audience] - - if all(aud not in audience_claims for aud in audience): - raise InvalidAudienceError("Invalid audience") - - def _validate_iss(self, payload, issuer): - if issuer is None: - return - - if "iss" not in payload: - raise MissingRequiredClaimError("iss") - - if payload["iss"] != issuer: - raise InvalidIssuerError("Invalid issuer") - - -_jwt_global_obj = PyJWT() -encode = _jwt_global_obj.encode -decode_complete = _jwt_global_obj.decode_complete -decode = _jwt_global_obj.decode diff --git a/src/oci/_vendor/jwt/exceptions.py b/src/oci/_vendor/jwt/exceptions.py deleted file mode 100644 index 410f9daaee..0000000000 --- a/src/oci/_vendor/jwt/exceptions.py +++ /dev/null @@ -1,71 +0,0 @@ -# coding: utf-8 -# Modified Work: Copyright (c) 2018, 2026, Oracle and/or its affiliates. All rights reserved. -# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. -# Original Work: Copyright (c) 2015-2022 José Padilla - -class PyJWTError(Exception): - """ - Base class for all exceptions - """ - - pass - - -class InvalidTokenError(PyJWTError): - pass - - -class DecodeError(InvalidTokenError): - pass - - -class InvalidSignatureError(DecodeError): - pass - - -class ExpiredSignatureError(InvalidTokenError): - pass - - -class InvalidAudienceError(InvalidTokenError): - pass - - -class InvalidIssuerError(InvalidTokenError): - pass - - -class InvalidIssuedAtError(InvalidTokenError): - pass - - -class ImmatureSignatureError(InvalidTokenError): - pass - - -class InvalidKeyError(PyJWTError): - pass - - -class InvalidAlgorithmError(InvalidTokenError): - pass - - -class MissingRequiredClaimError(InvalidTokenError): - def __init__(self, claim): - self.claim = claim - - def __str__(self): - return f'Token is missing the "{self.claim}" claim' - - -class PyJWKError(PyJWTError): - pass - - -class PyJWKSetError(PyJWTError): - pass - - -class PyJWKClientError(PyJWTError): - pass diff --git a/src/oci/_vendor/jwt/help.py b/src/oci/_vendor/jwt/help.py deleted file mode 100644 index 1e16a39f85..0000000000 --- a/src/oci/_vendor/jwt/help.py +++ /dev/null @@ -1,67 +0,0 @@ -# coding: utf-8 -# Modified Work: Copyright (c) 2018, 2026, Oracle and/or its affiliates. All rights reserved. -# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. -# Original Work: Copyright (c) 2015-2022 José Padilla - -from __future__ import print_function - -import json -import platform -import sys - -from . import __version__ as pyjwt_version - -try: - import cryptography -except ModuleNotFoundError: - cryptography = None # type: ignore - - -def info(): - """ - Generate information for a bug report. - Based on the requests package help utility module. - """ - try: - platform_info = { - "system": platform.system(), - "release": platform.release(), - } - except OSError: - platform_info = {"system": "Unknown", "release": "Unknown"} - - implementation = platform.python_implementation() - - if implementation == "CPython": - implementation_version = platform.python_version() - elif implementation == "PyPy": - implementation_version = ( - f"{sys.pypy_version_info.major}." - f"{sys.pypy_version_info.minor}." - f"{sys.pypy_version_info.micro}" - ) - if sys.pypy_version_info.releaselevel != "final": - implementation_version = "".join( - [implementation_version, sys.pypy_version_info.releaselevel] - ) - else: - implementation_version = "Unknown" - - return { - "platform": platform_info, - "implementation": { - "name": implementation, - "version": implementation_version, - }, - "cryptography": {"version": getattr(cryptography, "__version__", "")}, - "pyjwt": {"version": pyjwt_version}, - } - - -def main(): - """Pretty-print the bug information as JSON.""" - print(json.dumps(info(), sort_keys=True, indent=2)) - - -if __name__ == "__main__": - main() diff --git a/src/oci/_vendor/jwt/jwks_client.py b/src/oci/_vendor/jwt/jwks_client.py deleted file mode 100644 index 5a0590532a..0000000000 --- a/src/oci/_vendor/jwt/jwks_client.py +++ /dev/null @@ -1,64 +0,0 @@ -# coding: utf-8 -# Modified Work: Copyright (c) 2018, 2026, Oracle and/or its affiliates. All rights reserved. -# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. -# Original Work: Copyright (c) 2015-2022 José Padilla - -import json -import urllib.request -from functools import lru_cache -from typing import Any, List - -from .api_jwk import PyJWK, PyJWKSet -from .api_jwt import decode_complete as decode_token -from .exceptions import PyJWKClientError - - -class PyJWKClient: - def __init__(self, uri: str, cache_keys: bool = True, max_cached_keys: int = 16): - self.uri = uri - if cache_keys: - # Cache signing keys - # Ignore mypy (https://github.com/python/mypy/issues/2427) - self.get_signing_key = lru_cache(maxsize=max_cached_keys)(self.get_signing_key) # type: ignore - - def fetch_data(self) -> Any: - with urllib.request.urlopen(self.uri) as response: - return json.load(response) - - def get_jwk_set(self) -> PyJWKSet: - data = self.fetch_data() - return PyJWKSet.from_dict(data) - - def get_signing_keys(self) -> List[PyJWK]: - jwk_set = self.get_jwk_set() - signing_keys = [ - jwk_set_key - for jwk_set_key in jwk_set.keys - if jwk_set_key.public_key_use in ["sig", None] and jwk_set_key.key_id - ] - - if not signing_keys: - raise PyJWKClientError("The JWKS endpoint did not contain any signing keys") - - return signing_keys - - def get_signing_key(self, kid: str) -> PyJWK: - signing_keys = self.get_signing_keys() - signing_key = None - - for key in signing_keys: - if key.key_id == kid: - signing_key = key - break - - if not signing_key: - raise PyJWKClientError( - f'Unable to find a signing key that matches: "{kid}"' - ) - - return signing_key - - def get_signing_key_from_jwt(self, token: str) -> PyJWK: - unverified = decode_token(token, options={"verify_signature": False}) - header = unverified["header"] - return self.get_signing_key(header.get("kid")) diff --git a/src/oci/_vendor/jwt/utils.py b/src/oci/_vendor/jwt/utils.py deleted file mode 100644 index 8dc77b6811..0000000000 --- a/src/oci/_vendor/jwt/utils.py +++ /dev/null @@ -1,165 +0,0 @@ -# coding: utf-8 -# Modified Work: Copyright (c) 2018, 2026, Oracle and/or its affiliates. All rights reserved. -# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. -# Original Work: Copyright (c) 2015-2022 José Padilla - -import base64 -import binascii -import re -from typing import Any, Union - -try: - from cryptography.hazmat.primitives.asymmetric.ec import EllipticCurve - from cryptography.hazmat.primitives.asymmetric.utils import ( - decode_dss_signature, - encode_dss_signature, - ) -except ModuleNotFoundError: - EllipticCurve = Any # type: ignore - - -def force_bytes(value: Union[str, bytes]) -> bytes: - if isinstance(value, str): - return value.encode("utf-8") - elif isinstance(value, bytes): - return value - else: - raise TypeError("Expected a string value") - - -def base64url_decode(input: Union[str, bytes]) -> bytes: - if isinstance(input, str): - input = input.encode("ascii") - - rem = len(input) % 4 - - if rem > 0: - input += b"=" * (4 - rem) - - return base64.urlsafe_b64decode(input) - - -def base64url_encode(input: bytes) -> bytes: - return base64.urlsafe_b64encode(input).replace(b"=", b"") - - -def to_base64url_uint(val: int) -> bytes: - if val < 0: - raise ValueError("Must be a positive integer") - - int_bytes = bytes_from_int(val) - - if len(int_bytes) == 0: - int_bytes = b"\x00" - - return base64url_encode(int_bytes) - - -def from_base64url_uint(val: Union[str, bytes]) -> int: - if isinstance(val, str): - val = val.encode("ascii") - - data = base64url_decode(val) - return int.from_bytes(data, byteorder="big") - - -def number_to_bytes(num: int, num_bytes: int) -> bytes: - padded_hex = "%0*x" % (2 * num_bytes, num) - return binascii.a2b_hex(padded_hex.encode("ascii")) - - -def bytes_to_number(string: bytes) -> int: - return int(binascii.b2a_hex(string), 16) - - -def bytes_from_int(val: int) -> bytes: - remaining = val - byte_length = 0 - - while remaining != 0: - remaining >>= 8 - byte_length += 1 - - return val.to_bytes(byte_length, "big", signed=False) - - -def der_to_raw_signature(der_sig: bytes, curve: EllipticCurve) -> bytes: - num_bits = curve.key_size - num_bytes = (num_bits + 7) // 8 - - r, s = decode_dss_signature(der_sig) - - return number_to_bytes(r, num_bytes) + number_to_bytes(s, num_bytes) - - -def raw_to_der_signature(raw_sig: bytes, curve: EllipticCurve) -> bytes: - num_bits = curve.key_size - num_bytes = (num_bits + 7) // 8 - - if len(raw_sig) != 2 * num_bytes: - raise ValueError("Invalid signature") - - r = bytes_to_number(raw_sig[:num_bytes]) - s = bytes_to_number(raw_sig[num_bytes:]) - - return encode_dss_signature(r, s) - - -# Based on https://github.com/hynek/pem/blob/7ad94db26b0bc21d10953f5dbad3acfdfacf57aa/src/pem/_core.py#L224-L252 -_PEMS = { - b"CERTIFICATE", - b"TRUSTED CERTIFICATE", - b"PRIVATE KEY", - b"PUBLIC KEY", - b"ENCRYPTED PRIVATE KEY", - b"OPENSSH PRIVATE KEY", - b"DSA PRIVATE KEY", - b"RSA PRIVATE KEY", - b"RSA PUBLIC KEY", - b"EC PRIVATE KEY", - b"DH PARAMETERS", - b"NEW CERTIFICATE REQUEST", - b"CERTIFICATE REQUEST", - b"SSH2 PUBLIC KEY", - b"SSH2 ENCRYPTED PRIVATE KEY", - b"X509 CRL", -} - -_PEM_RE = re.compile( - b"----[- ]BEGIN (" - + b"|".join(_PEMS) - + b""")[- ]----\r? -.+?\r? -----[- ]END \\1[- ]----\r?\n?""", - re.DOTALL, -) - - -def is_pem_format(key: bytes) -> bool: - return bool(_PEM_RE.search(key)) - - -# Based on https://github.com/pyca/cryptography/blob/bcb70852d577b3f490f015378c75cba74986297b/src/cryptography/hazmat/primitives/serialization/ssh.py#L40-L46 -_CERT_SUFFIX = b"-cert-v01@openssh.com" -_SSH_PUBKEY_RC = re.compile(br"\A(\S+)[ \t]+(\S+)") -_SSH_KEY_FORMATS = [ - b"ssh-ed25519", - b"ssh-rsa", - b"ssh-dss", - b"ecdsa-sha2-nistp256", - b"ecdsa-sha2-nistp384", - b"ecdsa-sha2-nistp521", -] - - -def is_ssh_key(key: bytes) -> bool: - if any(string_value in key for string_value in _SSH_KEY_FORMATS): - return True - - ssh_pubkey_match = _SSH_PUBKEY_RC.match(key) - if ssh_pubkey_match: - key_type = ssh_pubkey_match.group(1) - if _CERT_SUFFIX == key_type[-len(_CERT_SUFFIX) :]: - return True - - return False diff --git a/src/oci/auth/security_token_container.py b/src/oci/auth/security_token_container.py index 8d21abcb8d..61fd790005 100644 --- a/src/oci/auth/security_token_container.py +++ b/src/oci/auth/security_token_container.py @@ -2,7 +2,7 @@ # Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. # This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. -import oci._vendor.jwt as jwt +import jwt import time diff --git a/src/oci/base_client.py b/src/oci/base_client.py index 3f1cf2b066..6354d1c184 100644 --- a/src/oci/base_client.py +++ b/src/oci/base_client.py @@ -802,10 +802,18 @@ def _validate_endpoint_host_components(self, endpoint): parsed_endpoint = six.moves.urllib.parse.urlparse(endpoint) if parsed_endpoint.scheme not in ('http', 'https'): - raise ValueError('host is invalid. endpoint scheme must be http or https') + raise ValueError('Invalid endpoint host: endpoint scheme must be http or https.') + + try: + parsed_endpoint.port + except ValueError: + raise ValueError('Invalid endpoint host: endpoint host must contain only letters, digits, underscores, hyphens, and periods.') if parsed_endpoint.username is not None or parsed_endpoint.password is not None: - raise ValueError('host is invalid. endpoint must not contain user info, path, query, or fragment') + raise ValueError('Invalid endpoint host: endpoint must not contain user info.') + + if not self._is_valid_endpoint_hostname(parsed_endpoint.hostname): + raise ValueError('Invalid endpoint host: endpoint host must contain only letters, digits, underscores, hyphens, and periods.') has_disallowed_endpoint_components = any([ not self._is_valid_endpoint_path(parsed_endpoint.path), @@ -814,17 +822,39 @@ def _validate_endpoint_host_components(self, endpoint): ]) if has_disallowed_endpoint_components: - raise ValueError('host is invalid. endpoint must not contain user info, path, query, or fragment') + raise ValueError('Invalid endpoint host: endpoint must not contain path, query, or fragment.') def _is_valid_endpoint_path(self, endpoint_path): if self._base_path == '/': return endpoint_path in ('', '/') if self._base_path: - return endpoint_path in (self._base_path, f'{self._base_path}/') + endpoint_host_and_path = self._endpoint.rstrip('/').split('://', 1)[-1] + configured_path_start_index = endpoint_host_and_path.find('/') + configured_path = '' if configured_path_start_index == -1 else endpoint_host_and_path[configured_path_start_index:] + configured_path_without_trailing_slash = configured_path.rstrip('/') + + if configured_path_without_trailing_slash == '': + return endpoint_path in ('', '/') + + return endpoint_path in ( + configured_path_without_trailing_slash, + f'{configured_path_without_trailing_slash}/' + ) return endpoint_path == '' + @staticmethod + def _is_valid_endpoint_hostname(hostname): + if not hostname: + return False + + labels = hostname.split('.') + if any(label == '' for label in labels): + return False + + return all(re.match(r'^[A-Za-z0-9_-]+$', label) for label in labels) + def get_bool_env_var(envVar: str, default=False) -> bool: if envVar is None: return False diff --git a/src/oci/generative_ai/models/dedicated_ai_cluster.py b/src/oci/generative_ai/models/dedicated_ai_cluster.py index 23d7acdc1d..789e69d847 100644 --- a/src/oci/generative_ai/models/dedicated_ai_cluster.py +++ b/src/oci/generative_ai/models/dedicated_ai_cluster.py @@ -137,6 +137,154 @@ class DedicatedAiCluster(object): #: This constant has a value of "COHERE_A10_X1" UNIT_SHAPE_COHERE_A10_X1 = "COHERE_A10_X1" + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "COHERE_A100_40G_X2" + UNIT_SHAPE_COHERE_A100_40_G_X2 = "COHERE_A100_40G_X2" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "COHERE_A100_40G_X4" + UNIT_SHAPE_COHERE_A100_40_G_X4 = "COHERE_A100_40G_X4" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "COHERE_A100_40G_X8" + UNIT_SHAPE_COHERE_A100_40_G_X8 = "COHERE_A100_40G_X8" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "COHERE_A100_80G_X2" + UNIT_SHAPE_COHERE_A100_80_G_X2 = "COHERE_A100_80G_X2" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "COHERE_A100_80G_X4" + UNIT_SHAPE_COHERE_A100_80_G_X4 = "COHERE_A100_80G_X4" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "COHERE_A100_80G_X8" + UNIT_SHAPE_COHERE_A100_80_G_X8 = "COHERE_A100_80G_X8" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "COHERE_H100_X2" + UNIT_SHAPE_COHERE_H100_X2 = "COHERE_H100_X2" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "COHERE_H100_X4" + UNIT_SHAPE_COHERE_H100_X4 = "COHERE_H100_X4" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "COHERE_H100_X8" + UNIT_SHAPE_COHERE_H100_X8 = "COHERE_H100_X8" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "COHERE_H200_X1" + UNIT_SHAPE_COHERE_H200_X1 = "COHERE_H200_X1" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "COHERE_H200_X2" + UNIT_SHAPE_COHERE_H200_X2 = "COHERE_H200_X2" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "COHERE_H200_X4" + UNIT_SHAPE_COHERE_H200_X4 = "COHERE_H200_X4" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "COHERE_H200_X8" + UNIT_SHAPE_COHERE_H200_X8 = "COHERE_H200_X8" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "COHERE_B200_X1" + UNIT_SHAPE_COHERE_B200_X1 = "COHERE_B200_X1" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "COHERE_B200_X2" + UNIT_SHAPE_COHERE_B200_X2 = "COHERE_B200_X2" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "COHERE_B200_X4" + UNIT_SHAPE_COHERE_B200_X4 = "COHERE_B200_X4" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "COHERE_B200_X8" + UNIT_SHAPE_COHERE_B200_X8 = "COHERE_B200_X8" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "META_A100_40G_X1" + UNIT_SHAPE_META_A100_40_G_X1 = "META_A100_40G_X1" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "META_A100_40G_X2" + UNIT_SHAPE_META_A100_40_G_X2 = "META_A100_40G_X2" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "META_A100_40G_X4" + UNIT_SHAPE_META_A100_40_G_X4 = "META_A100_40G_X4" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "META_A100_40G_X8" + UNIT_SHAPE_META_A100_40_G_X8 = "META_A100_40G_X8" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "META_A100_80G_X1" + UNIT_SHAPE_META_A100_80_G_X1 = "META_A100_80G_X1" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "META_A100_80G_X2" + UNIT_SHAPE_META_A100_80_G_X2 = "META_A100_80G_X2" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "META_A100_80G_X4" + UNIT_SHAPE_META_A100_80_G_X4 = "META_A100_80G_X4" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "META_A100_80G_X8" + UNIT_SHAPE_META_A100_80_G_X8 = "META_A100_80G_X8" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "META_H100_X1" + UNIT_SHAPE_META_H100_X1 = "META_H100_X1" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "META_H100_X2" + UNIT_SHAPE_META_H100_X2 = "META_H100_X2" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "META_H100_X4" + UNIT_SHAPE_META_H100_X4 = "META_H100_X4" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "META_H100_X8" + UNIT_SHAPE_META_H100_X8 = "META_H100_X8" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "META_H200_X1" + UNIT_SHAPE_META_H200_X1 = "META_H200_X1" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "META_H200_X2" + UNIT_SHAPE_META_H200_X2 = "META_H200_X2" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "META_H200_X4" + UNIT_SHAPE_META_H200_X4 = "META_H200_X4" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "META_H200_X8" + UNIT_SHAPE_META_H200_X8 = "META_H200_X8" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "META_B200_X1" + UNIT_SHAPE_META_B200_X1 = "META_B200_X1" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "META_B200_X2" + UNIT_SHAPE_META_B200_X2 = "META_B200_X2" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "META_B200_X4" + UNIT_SHAPE_META_B200_X4 = "META_B200_X4" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "META_B200_X8" + UNIT_SHAPE_META_B200_X8 = "META_B200_X8" + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. #: This constant has a value of "LARGE_COHERE_V3" UNIT_SHAPE_LARGE_COHERE_V3 = "LARGE_COHERE_V3" @@ -352,7 +500,7 @@ def __init__(self, **kwargs): :param unit_shape: The value to assign to the unit_shape property of this DedicatedAiCluster. - Allowed values for this property are: "LARGE_COHERE", "LARGE_COHERE_V2", "SMALL_COHERE", "SMALL_COHERE_V2", "SMALL_COHERE_4", "EMBED_COHERE", "LLAMA2_70", "LARGE_GENERIC", "LARGE_COHERE_V2_2", "LARGE_GENERIC_4", "SMALL_GENERIC_V2", "LARGE_GENERIC_2", "LARGE_GENERIC_V2", "LARGE_GENERIC_V3", "LARGE_GENERIC_V4", "LARGE_GENERIC_V5", "COHERE_H100_X1", "COHERE_A100_80G_X1", "COHERE_A100_40G_X1", "COHERE_A10_X1", "LARGE_COHERE_V3", "RERANK_COHERE", "SMALL_GENERIC_V1", "MEDIUM_GENERIC_V1", "LARGE_GENERIC_V1", "A10_X1", "A10_X2", "A10_X4", "A100_40G_X1", "A100_40G_X2", "A100_40G_X4", "A100_40G_X8", "A100_80G_X1", "A100_80G_X2", "A100_80G_X4", "A100_80G_X8", "H100_X1", "H100_X2", "H100_X4", "H100_X8", "H200_X1", "H200_X2", "H200_X4", "H200_X8", "OAI_A10_X2", "OAI_H100_X1", "OAI_H100_X2", "OAI_H200_X1", "OAI_A100_80G_X1", "OAI_A100_80G_X2", "OAI_A100_40G_X1", "OAI_A100_40G_X4", "B200_X1", "B200_X2", "B200_X4", "B200_X8", "OAI_B200_X1", "OAI_B200_X2", "OAI_B200_X4", "OAI_B200_X8", "SB_B200_X1", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "LARGE_COHERE", "LARGE_COHERE_V2", "SMALL_COHERE", "SMALL_COHERE_V2", "SMALL_COHERE_4", "EMBED_COHERE", "LLAMA2_70", "LARGE_GENERIC", "LARGE_COHERE_V2_2", "LARGE_GENERIC_4", "SMALL_GENERIC_V2", "LARGE_GENERIC_2", "LARGE_GENERIC_V2", "LARGE_GENERIC_V3", "LARGE_GENERIC_V4", "LARGE_GENERIC_V5", "COHERE_H100_X1", "COHERE_A100_80G_X1", "COHERE_A100_40G_X1", "COHERE_A10_X1", "COHERE_A100_40G_X2", "COHERE_A100_40G_X4", "COHERE_A100_40G_X8", "COHERE_A100_80G_X2", "COHERE_A100_80G_X4", "COHERE_A100_80G_X8", "COHERE_H100_X2", "COHERE_H100_X4", "COHERE_H100_X8", "COHERE_H200_X1", "COHERE_H200_X2", "COHERE_H200_X4", "COHERE_H200_X8", "COHERE_B200_X1", "COHERE_B200_X2", "COHERE_B200_X4", "COHERE_B200_X8", "META_A100_40G_X1", "META_A100_40G_X2", "META_A100_40G_X4", "META_A100_40G_X8", "META_A100_80G_X1", "META_A100_80G_X2", "META_A100_80G_X4", "META_A100_80G_X8", "META_H100_X1", "META_H100_X2", "META_H100_X4", "META_H100_X8", "META_H200_X1", "META_H200_X2", "META_H200_X4", "META_H200_X8", "META_B200_X1", "META_B200_X2", "META_B200_X4", "META_B200_X8", "LARGE_COHERE_V3", "RERANK_COHERE", "SMALL_GENERIC_V1", "MEDIUM_GENERIC_V1", "LARGE_GENERIC_V1", "A10_X1", "A10_X2", "A10_X4", "A100_40G_X1", "A100_40G_X2", "A100_40G_X4", "A100_40G_X8", "A100_80G_X1", "A100_80G_X2", "A100_80G_X4", "A100_80G_X8", "H100_X1", "H100_X2", "H100_X4", "H100_X8", "H200_X1", "H200_X2", "H200_X4", "H200_X8", "OAI_A10_X2", "OAI_H100_X1", "OAI_H100_X2", "OAI_H200_X1", "OAI_A100_80G_X1", "OAI_A100_80G_X2", "OAI_A100_40G_X1", "OAI_A100_40G_X4", "B200_X1", "B200_X2", "B200_X4", "B200_X8", "OAI_B200_X1", "OAI_B200_X2", "OAI_B200_X4", "OAI_B200_X8", "SB_B200_X1", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type unit_shape: str @@ -692,7 +840,7 @@ def unit_shape(self): **[Required]** Gets the unit_shape of this DedicatedAiCluster. The shape of dedicated unit in this AI cluster. The underlying hardware configuration is hidden from customers. - Allowed values for this property are: "LARGE_COHERE", "LARGE_COHERE_V2", "SMALL_COHERE", "SMALL_COHERE_V2", "SMALL_COHERE_4", "EMBED_COHERE", "LLAMA2_70", "LARGE_GENERIC", "LARGE_COHERE_V2_2", "LARGE_GENERIC_4", "SMALL_GENERIC_V2", "LARGE_GENERIC_2", "LARGE_GENERIC_V2", "LARGE_GENERIC_V3", "LARGE_GENERIC_V4", "LARGE_GENERIC_V5", "COHERE_H100_X1", "COHERE_A100_80G_X1", "COHERE_A100_40G_X1", "COHERE_A10_X1", "LARGE_COHERE_V3", "RERANK_COHERE", "SMALL_GENERIC_V1", "MEDIUM_GENERIC_V1", "LARGE_GENERIC_V1", "A10_X1", "A10_X2", "A10_X4", "A100_40G_X1", "A100_40G_X2", "A100_40G_X4", "A100_40G_X8", "A100_80G_X1", "A100_80G_X2", "A100_80G_X4", "A100_80G_X8", "H100_X1", "H100_X2", "H100_X4", "H100_X8", "H200_X1", "H200_X2", "H200_X4", "H200_X8", "OAI_A10_X2", "OAI_H100_X1", "OAI_H100_X2", "OAI_H200_X1", "OAI_A100_80G_X1", "OAI_A100_80G_X2", "OAI_A100_40G_X1", "OAI_A100_40G_X4", "B200_X1", "B200_X2", "B200_X4", "B200_X8", "OAI_B200_X1", "OAI_B200_X2", "OAI_B200_X4", "OAI_B200_X8", "SB_B200_X1", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "LARGE_COHERE", "LARGE_COHERE_V2", "SMALL_COHERE", "SMALL_COHERE_V2", "SMALL_COHERE_4", "EMBED_COHERE", "LLAMA2_70", "LARGE_GENERIC", "LARGE_COHERE_V2_2", "LARGE_GENERIC_4", "SMALL_GENERIC_V2", "LARGE_GENERIC_2", "LARGE_GENERIC_V2", "LARGE_GENERIC_V3", "LARGE_GENERIC_V4", "LARGE_GENERIC_V5", "COHERE_H100_X1", "COHERE_A100_80G_X1", "COHERE_A100_40G_X1", "COHERE_A10_X1", "COHERE_A100_40G_X2", "COHERE_A100_40G_X4", "COHERE_A100_40G_X8", "COHERE_A100_80G_X2", "COHERE_A100_80G_X4", "COHERE_A100_80G_X8", "COHERE_H100_X2", "COHERE_H100_X4", "COHERE_H100_X8", "COHERE_H200_X1", "COHERE_H200_X2", "COHERE_H200_X4", "COHERE_H200_X8", "COHERE_B200_X1", "COHERE_B200_X2", "COHERE_B200_X4", "COHERE_B200_X8", "META_A100_40G_X1", "META_A100_40G_X2", "META_A100_40G_X4", "META_A100_40G_X8", "META_A100_80G_X1", "META_A100_80G_X2", "META_A100_80G_X4", "META_A100_80G_X8", "META_H100_X1", "META_H100_X2", "META_H100_X4", "META_H100_X8", "META_H200_X1", "META_H200_X2", "META_H200_X4", "META_H200_X8", "META_B200_X1", "META_B200_X2", "META_B200_X4", "META_B200_X8", "LARGE_COHERE_V3", "RERANK_COHERE", "SMALL_GENERIC_V1", "MEDIUM_GENERIC_V1", "LARGE_GENERIC_V1", "A10_X1", "A10_X2", "A10_X4", "A100_40G_X1", "A100_40G_X2", "A100_40G_X4", "A100_40G_X8", "A100_80G_X1", "A100_80G_X2", "A100_80G_X4", "A100_80G_X8", "H100_X1", "H100_X2", "H100_X4", "H100_X8", "H200_X1", "H200_X2", "H200_X4", "H200_X8", "OAI_A10_X2", "OAI_H100_X1", "OAI_H100_X2", "OAI_H200_X1", "OAI_A100_80G_X1", "OAI_A100_80G_X2", "OAI_A100_40G_X1", "OAI_A100_40G_X4", "B200_X1", "B200_X2", "B200_X4", "B200_X8", "OAI_B200_X1", "OAI_B200_X2", "OAI_B200_X4", "OAI_B200_X8", "SB_B200_X1", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -711,7 +859,7 @@ def unit_shape(self, unit_shape): :param unit_shape: The unit_shape of this DedicatedAiCluster. :type: str """ - allowed_values = ["LARGE_COHERE", "LARGE_COHERE_V2", "SMALL_COHERE", "SMALL_COHERE_V2", "SMALL_COHERE_4", "EMBED_COHERE", "LLAMA2_70", "LARGE_GENERIC", "LARGE_COHERE_V2_2", "LARGE_GENERIC_4", "SMALL_GENERIC_V2", "LARGE_GENERIC_2", "LARGE_GENERIC_V2", "LARGE_GENERIC_V3", "LARGE_GENERIC_V4", "LARGE_GENERIC_V5", "COHERE_H100_X1", "COHERE_A100_80G_X1", "COHERE_A100_40G_X1", "COHERE_A10_X1", "LARGE_COHERE_V3", "RERANK_COHERE", "SMALL_GENERIC_V1", "MEDIUM_GENERIC_V1", "LARGE_GENERIC_V1", "A10_X1", "A10_X2", "A10_X4", "A100_40G_X1", "A100_40G_X2", "A100_40G_X4", "A100_40G_X8", "A100_80G_X1", "A100_80G_X2", "A100_80G_X4", "A100_80G_X8", "H100_X1", "H100_X2", "H100_X4", "H100_X8", "H200_X1", "H200_X2", "H200_X4", "H200_X8", "OAI_A10_X2", "OAI_H100_X1", "OAI_H100_X2", "OAI_H200_X1", "OAI_A100_80G_X1", "OAI_A100_80G_X2", "OAI_A100_40G_X1", "OAI_A100_40G_X4", "B200_X1", "B200_X2", "B200_X4", "B200_X8", "OAI_B200_X1", "OAI_B200_X2", "OAI_B200_X4", "OAI_B200_X8", "SB_B200_X1"] + allowed_values = ["LARGE_COHERE", "LARGE_COHERE_V2", "SMALL_COHERE", "SMALL_COHERE_V2", "SMALL_COHERE_4", "EMBED_COHERE", "LLAMA2_70", "LARGE_GENERIC", "LARGE_COHERE_V2_2", "LARGE_GENERIC_4", "SMALL_GENERIC_V2", "LARGE_GENERIC_2", "LARGE_GENERIC_V2", "LARGE_GENERIC_V3", "LARGE_GENERIC_V4", "LARGE_GENERIC_V5", "COHERE_H100_X1", "COHERE_A100_80G_X1", "COHERE_A100_40G_X1", "COHERE_A10_X1", "COHERE_A100_40G_X2", "COHERE_A100_40G_X4", "COHERE_A100_40G_X8", "COHERE_A100_80G_X2", "COHERE_A100_80G_X4", "COHERE_A100_80G_X8", "COHERE_H100_X2", "COHERE_H100_X4", "COHERE_H100_X8", "COHERE_H200_X1", "COHERE_H200_X2", "COHERE_H200_X4", "COHERE_H200_X8", "COHERE_B200_X1", "COHERE_B200_X2", "COHERE_B200_X4", "COHERE_B200_X8", "META_A100_40G_X1", "META_A100_40G_X2", "META_A100_40G_X4", "META_A100_40G_X8", "META_A100_80G_X1", "META_A100_80G_X2", "META_A100_80G_X4", "META_A100_80G_X8", "META_H100_X1", "META_H100_X2", "META_H100_X4", "META_H100_X8", "META_H200_X1", "META_H200_X2", "META_H200_X4", "META_H200_X8", "META_B200_X1", "META_B200_X2", "META_B200_X4", "META_B200_X8", "LARGE_COHERE_V3", "RERANK_COHERE", "SMALL_GENERIC_V1", "MEDIUM_GENERIC_V1", "LARGE_GENERIC_V1", "A10_X1", "A10_X2", "A10_X4", "A100_40G_X1", "A100_40G_X2", "A100_40G_X4", "A100_40G_X8", "A100_80G_X1", "A100_80G_X2", "A100_80G_X4", "A100_80G_X8", "H100_X1", "H100_X2", "H100_X4", "H100_X8", "H200_X1", "H200_X2", "H200_X4", "H200_X8", "OAI_A10_X2", "OAI_H100_X1", "OAI_H100_X2", "OAI_H200_X1", "OAI_A100_80G_X1", "OAI_A100_80G_X2", "OAI_A100_40G_X1", "OAI_A100_40G_X4", "B200_X1", "B200_X2", "B200_X4", "B200_X8", "OAI_B200_X1", "OAI_B200_X2", "OAI_B200_X4", "OAI_B200_X8", "SB_B200_X1"] if not value_allowed_none_or_none_sentinel(unit_shape, allowed_values): unit_shape = 'UNKNOWN_ENUM_VALUE' self._unit_shape = unit_shape diff --git a/src/oci/version.py b/src/oci/version.py index 35726b90de..dd05b0f2ba 100644 --- a/src/oci/version.py +++ b/src/oci/version.py @@ -2,4 +2,4 @@ # Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. # This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. -__version__ = "2.181.0" +__version__ = "2.181.1" From a1904d473fec2c77d6ffee541f55037415f0282c Mon Sep 17 00:00:00 2001 From: OCI DEX Release Bot Automation Date: Tue, 14 Jul 2026 07:15:13 +0000 Subject: [PATCH 06/11] Releasing version 2.182.0 Co-authored-by: Harsh Kumar --- CHANGELOG.rst | 26 + docs/api/ai_data_platform.rst | 1 + ...platform.models.EnableAiFeatureDetails.rst | 11 + docs/api/container_instances.rst | 22 + ...odels.ContainerInstanceSecurityContext.rst | 11 + ...instances.models.ContainerOciFssVolume.rst | 11 + ...ontainerInstanceSecurityContextDetails.rst | 11 + ...els.CreateContainerOciFssVolumeDetails.rst | 11 + ...ontainerInstanceSecurityContextDetails.rst | 11 + ...ances.models.CreateOciFssExportDetails.rst | 11 + ...ces.models.CreateOciFssExportIdDetails.rst | 11 + ...models.CreateOciFssMountCommandDetails.rst | 11 + ....models.CreateOciFssMountOptionDetails.rst | 11 + ....models.CreateOciFssMountTargetDetails.rst | 11 + ...odels.CreateOciFssMountTargetIdDetails.rst | 11 + ...ces.models.CreateOciFssSecurityDetails.rst | 11 + ....models.CreateOciFssSysSecurityDetails.rst | 11 + ....LinuxContainerInstanceSecurityContext.rst | 11 + ...ontainer_instances.models.OciFssExport.rst | 11 + ...tainer_instances.models.OciFssExportId.rst | 11 + ...er_instances.models.OciFssMountCommand.rst | 11 + ...ner_instances.models.OciFssMountOption.rst | 11 + ...ner_instances.models.OciFssMountTarget.rst | 11 + ...r_instances.models.OciFssMountTargetId.rst | 11 + ...tainer_instances.models.OciFssSecurity.rst | 11 + ...ner_instances.models.OciFssSysSecurity.rst | 11 + docs/api/core.rst | 4 + ...mputeClusterPlacementConstraintDetails.rst | 11 + ...e.models.CreateGmcConfigurationDetails.rst | 11 + ...s.InstanceConfigurationGmcConfigDetail.rst | 11 + ...nfigurationGpuMemoryClusterScaleConfig.rst | 11 + docs/api/data_safe.rst | 2 + ...argetAlertPolicyUnassociatedCollection.rst | 11 + ...s.TargetAlertPolicyUnassociatedSummary.rst | 11 + docs/api/datacc.rst | 71 + .../client/oci.datacc.BaseinfraClient.rst | 8 + ...acc.BaseinfraClientCompositeOperations.rst | 8 + .../oci.datacc.models.AcfsCapacityDetails.rst | 11 + ...c.models.ActivateInfrastructureDetails.rst | 11 + ...ChangeInfrastructureCompartmentDetails.rst | 11 + ...angeVmClusterNetworkCompartmentDetails.rst | 11 + ...els.ChangeVmInstanceCompartmentDetails.rst | 11 + ...i.datacc.models.ComputeCapacityDetails.rst | 11 + ...acc.models.CreateInfrastructureDetails.rst | 11 + ...c.models.CreateVmClusterNetworkDetails.rst | 11 + ....datacc.models.CreateVmInstanceDetails.rst | 11 + ...datacc.models.DiskGroupCapacityDetails.rst | 11 + ...rateRecommendedVmClusterNetworkDetails.rst | 11 + ...oci.datacc.models.InfoVmNetworkDetails.rst | 11 + .../oci.datacc.models.Infrastructure.rst | 11 + ...datacc.models.InfrastructureCollection.rst | 11 + ...ci.datacc.models.InfrastructureContact.rst | 11 + ...atacc.models.InfrastructureScaleOption.rst | 11 + ...oci.datacc.models.InfrastructureServer.rst | 11 + ...ci.datacc.models.InfrastructureSummary.rst | 11 + ...oci.datacc.models.MaintenanceExecution.rst | 11 + ....models.MaintenanceExecutionCollection.rst | 11 + ...acc.models.MaintenanceExecutionSummary.rst | 11 + .../oci.datacc.models.MaintenanceRun.rst | 11 + ...datacc.models.MaintenanceRunCollection.rst | 11 + ...ci.datacc.models.MaintenanceRunSummary.rst | 11 + .../oci.datacc.models.MaintenanceWindow.rst | 11 + .../models/oci.datacc.models.NodeDetails.rst | 11 + ...models.RescheduleMaintenanceRunDetails.rst | 11 + ...dels.ScaleInfrastructureStorageDetails.rst | 11 + ...i.datacc.models.ScaleVmInstanceDetails.rst | 11 + .../models/oci.datacc.models.ScanDetails.rst | 11 + ...i.datacc.models.StorageCapacityDetails.rst | 11 + ...cc.models.SystemStorageCapacityDetails.rst | 11 + ...acc.models.UpdateInfrastructureDetails.rst | 11 + ...acc.models.UpdateMaintenanceRunDetails.rst | 11 + ...c.models.UpdateVmClusterNetworkDetails.rst | 11 + ....datacc.models.UpdateVmInstanceDetails.rst | 11 + ...c.models.ValidateInfrastructureDetails.rst | 11 + .../oci.datacc.models.VmClusterNetwork.rst | 11 + ...tacc.models.VmClusterNetworkCollection.rst | 11 + ....datacc.models.VmClusterNetworkSummary.rst | 11 + .../models/oci.datacc.models.VmInstance.rst | 11 + ...oci.datacc.models.VmInstanceCollection.rst | 11 + .../oci.datacc.models.VmInstanceSummary.rst | 11 + .../oci.datacc.models.VmNetworkDetails.rst | 11 + .../models/oci.datacc.models.WorkRequest.rst | 11 + ...ci.datacc.models.WorkRequestCollection.rst | 11 + .../oci.datacc.models.WorkRequestError.rst | 11 + ...tacc.models.WorkRequestErrorCollection.rst | 11 + .../oci.datacc.models.WorkRequestLogEntry.rst | 11 + ...c.models.WorkRequestLogEntryCollection.rst | 11 + .../oci.datacc.models.WorkRequestResource.rst | 11 + docs/api/generative_ai.rst | 6 + ...els.CreateHostedApplicationBaseDetails.rst | 11 + ...dels.CreateHostedApplicationIamDetails.rst | 11 + ...rative_ai.models.HostedApplicationBase.rst | 11 + ...erative_ai.models.HostedApplicationIam.rst | 11 + ...els.UpdateHostedApplicationBaseDetails.rst | 11 + ...dels.UpdateHostedApplicationIamDetails.rst | 11 + docs/api/landing.rst | 2 + docs/logging.rst | 21 + examples/showoci/CHANGELOG.rst | 5 + examples/showoci/showoci_service.py | 18 + pyproject.toml | 2 + setup.py | 4 +- src/oci/__init__.py | 4 +- src/oci/_log_redaction.py | 244 + .../ai_data_platform_client.py | 131 + ...ta_platform_client_composite_operations.py | 44 + src/oci/ai_data_platform/models/__init__.py | 2 + .../models/ai_data_platform.py | 55 + .../models/ai_data_platform_summary.py | 31 + .../models/create_ai_data_platform_details.py | 132 + .../models/enable_ai_feature_details.py | 140 + .../ai_data_platform/models/work_request.py | 26 +- .../models/work_request_summary.py | 26 +- src/oci/auth/federation_client.py | 20 +- ...stance_principals_security_token_signer.py | 20 +- ...load_identity_resource_principal_signer.py | 16 +- src/oci/base_client.py | 32 +- .../container_instances/models/__init__.py | 44 + .../models/container_config_file_volume.py | 2 +- .../models/container_empty_dir_volume.py | 2 +- .../models/container_instance.py | 62 +- .../container_instance_security_context.py | 99 + .../models/container_instance_summary.py | 31 +- .../models/container_oci_fss_volume.py | 198 + .../models/container_volume.py | 14 +- ...te_container_config_file_volume_details.py | 2 +- ...eate_container_empty_dir_volume_details.py | 2 +- .../create_container_instance_details.py | 31 +- ...ainer_instance_security_context_details.py | 87 + ...create_container_oci_fss_volume_details.py | 198 + .../models/create_container_volume_details.py | 14 +- ...ainer_instance_security_context_details.py | 126 + .../models/create_oci_fss_export_details.py | 101 + .../create_oci_fss_export_id_details.py | 80 + .../create_oci_fss_mount_command_details.py | 70 + .../create_oci_fss_mount_option_details.py | 102 + .../create_oci_fss_mount_target_details.py | 102 + .../create_oci_fss_mount_target_id_details.py | 80 + .../models/create_oci_fss_security_details.py | 132 + .../create_oci_fss_sys_security_details.py | 56 + ...nux_container_instance_security_context.py | 128 + .../models/oci_fss_export.py | 101 + .../models/oci_fss_export_id.py | 80 + .../models/oci_fss_mount_command.py | 70 + .../models/oci_fss_mount_option.py | 102 + .../models/oci_fss_mount_target.py | 102 + .../models/oci_fss_mount_target_id.py | 80 + .../models/oci_fss_security.py | 132 + .../models/oci_fss_sys_security.py | 56 + src/oci/core/compute_management_client.py | 2 +- src/oci/core/models/__init__.py | 8 + src/oci/core/models/compute_cluster.py | 86 +- ...te_cluster_placement_constraint_details.py | 222 + .../models/create_compute_cluster_details.py | 45 +- .../create_gmc_configuration_details.py | 108 + .../create_instance_configuration_base.py | 16 +- .../create_instance_configuration_details.py | 2 +- ...nce_configuration_from_instance_details.py | 2 +- .../models/create_instance_pool_details.py | 4 + src/oci/core/models/instance_configuration.py | 90 + ...nstance_configuration_gmc_config_detail.py | 317 + ...uration_gpu_memory_cluster_scale_config.py | 132 + src/oci/core/models/instance_pool.py | 47 + src/oci/core/models/instance_pool_summary.py | 31 + .../models/placement_constraint_details.py | 6 + .../models/update_compute_cluster_details.py | 43 +- .../models/update_instance_pool_details.py | 2 + src/oci/data_safe/data_safe_client.py | 204 +- src/oci/data_safe/models/__init__.py | 4 + .../models/associated_resource_summary.py | 10 +- .../data_safe/models/audit_trail_summary.py | 4 +- src/oci/data_safe/models/columns_info.py | 10 +- ...eate_data_safe_private_endpoint_details.py | 43 +- ...target_alert_policy_association_details.py | 35 +- .../models/data_safe_private_endpoint.py | 43 +- .../data_safe_private_endpoint_summary.py | 43 +- ...load_security_assessment_report_details.py | 49 +- .../models/generate_report_details.py | 39 +- ...rate_security_assessment_report_details.py | 49 +- src/oci/data_safe/models/include.py | 2 +- src/oci/data_safe/models/report.py | 62 + src/oci/data_safe/models/report_definition.py | 35 + .../models/schedule_report_details.py | 39 +- .../models/target_alert_policy_association.py | 51 +- ...target_alert_policy_association_summary.py | 35 +- ...et_alert_policy_unassociated_collection.py | 70 + ...arget_alert_policy_unassociated_summary.py | 241 + ...date_data_safe_private_endpoint_details.py | 43 +- src/oci/data_safe/models/work_request.py | 10 +- .../data_safe/models/work_request_summary.py | 10 +- src/oci/datacc/__init__.py | 14 + src/oci/datacc/baseinfra_client.py | 5452 +++++++++++++++++ .../baseinfra_client_composite_operations.py | 1058 ++++ src/oci/datacc/models/__init__.py | 114 + .../datacc/models/acfs_capacity_details.py | 101 + .../models/activate_infrastructure_details.py | 70 + ...ange_infrastructure_compartment_details.py | 74 + ..._vm_cluster_network_compartment_details.py | 74 + .../change_vm_instance_compartment_details.py | 74 + .../datacc/models/compute_capacity_details.py | 287 + .../models/create_infrastructure_details.py | 1039 ++++ .../create_vm_cluster_network_details.py | 470 ++ .../models/create_vm_instance_details.py | 887 +++ .../models/disk_group_capacity_details.py | 163 + ..._recommended_vm_cluster_network_details.py | 392 ++ .../datacc/models/info_vm_network_details.py | 272 + src/oci/datacc/models/infrastructure.py | 1751 ++++++ .../models/infrastructure_collection.py | 70 + .../datacc/models/infrastructure_contact.py | 198 + .../models/infrastructure_scale_option.py | 70 + .../datacc/models/infrastructure_server.py | 382 ++ .../datacc/models/infrastructure_summary.py | 1565 +++++ .../datacc/models/maintenance_execution.py | 928 +++ .../maintenance_execution_collection.py | 70 + .../models/maintenance_execution_summary.py | 928 +++ src/oci/datacc/models/maintenance_run.py | 1200 ++++ .../models/maintenance_run_collection.py | 70 + .../datacc/models/maintenance_run_summary.py | 1200 ++++ src/oci/datacc/models/maintenance_window.py | 499 ++ src/oci/datacc/models/node_details.py | 163 + .../reschedule_maintenance_run_details.py | 101 + .../scale_infrastructure_storage_details.py | 94 + .../models/scale_vm_instance_details.py | 101 + src/oci/datacc/models/scan_details.py | 101 + .../datacc/models/storage_capacity_details.py | 245 + .../models/system_storage_capacity_details.py | 97 + .../models/update_infrastructure_details.py | 1004 +++ .../models/update_maintenance_run_details.py | 216 + .../update_vm_cluster_network_details.py | 322 + .../models/update_vm_instance_details.py | 198 + .../models/validate_infrastructure_details.py | 70 + src/oci/datacc/models/vm_cluster_network.py | 807 +++ .../models/vm_cluster_network_collection.py | 70 + .../models/vm_cluster_network_summary.py | 807 +++ src/oci/datacc/models/vm_instance.py | 1078 ++++ .../datacc/models/vm_instance_collection.py | 70 + src/oci/datacc/models/vm_instance_summary.py | 692 +++ src/oci/datacc/models/vm_network_details.py | 272 + src/oci/datacc/models/work_request.py | 668 ++ .../datacc/models/work_request_collection.py | 70 + src/oci/datacc/models/work_request_error.py | 134 + .../models/work_request_error_collection.py | 70 + .../datacc/models/work_request_log_entry.py | 101 + .../work_request_log_entry_collection.py | 70 + .../datacc/models/work_request_resource.py | 217 + src/oci/generative_ai/generative_ai_client.py | 977 ++- ...nerative_ai_client_composite_operations.py | 132 + src/oci/generative_ai/models/__init__.py | 12 + src/oci/generative_ai/models/artifact.py | 41 +- .../models/create_artifact_details.py | 35 +- .../create_hosted_application_base_details.py | 336 + .../create_hosted_application_details.py | 54 +- .../create_hosted_application_iam_details.py | 336 + .../create_hosted_deployment_details.py | 8 +- .../create_single_docker_artifact_details.py | 7 + .../models/hosted_application.py | 54 +- .../models/hosted_application_base.py | 558 ++ .../models/hosted_application_iam.py | 564 ++ .../models/hosted_application_summary.py | 16 - .../generative_ai/models/hosted_deployment.py | 16 +- .../models/hosted_deployment_summary.py | 4 +- .../models/single_docker_artifact.py | 9 +- .../update_hosted_application_base_details.py | 243 + .../update_hosted_application_details.py | 54 +- .../update_hosted_application_iam_details.py | 243 + .../create_oda_private_endpoint_details.py | 43 +- src/oci/oda/models/oda_private_endpoint.py | 39 + .../models/oda_private_endpoint_summary.py | 43 +- src/oci/oda/models/parameter_definition.py | 10 +- .../update_oda_private_endpoint_details.py | 43 +- .../create_software_source_profile_details.py | 2 +- src/oci/version.py | 2 +- 271 files changed, 37678 insertions(+), 362 deletions(-) create mode 100644 docs/api/ai_data_platform/models/oci.ai_data_platform.models.EnableAiFeatureDetails.rst create mode 100644 docs/api/container_instances/models/oci.container_instances.models.ContainerInstanceSecurityContext.rst create mode 100644 docs/api/container_instances/models/oci.container_instances.models.ContainerOciFssVolume.rst create mode 100644 docs/api/container_instances/models/oci.container_instances.models.CreateContainerInstanceSecurityContextDetails.rst create mode 100644 docs/api/container_instances/models/oci.container_instances.models.CreateContainerOciFssVolumeDetails.rst create mode 100644 docs/api/container_instances/models/oci.container_instances.models.CreateLinuxContainerInstanceSecurityContextDetails.rst create mode 100644 docs/api/container_instances/models/oci.container_instances.models.CreateOciFssExportDetails.rst create mode 100644 docs/api/container_instances/models/oci.container_instances.models.CreateOciFssExportIdDetails.rst create mode 100644 docs/api/container_instances/models/oci.container_instances.models.CreateOciFssMountCommandDetails.rst create mode 100644 docs/api/container_instances/models/oci.container_instances.models.CreateOciFssMountOptionDetails.rst create mode 100644 docs/api/container_instances/models/oci.container_instances.models.CreateOciFssMountTargetDetails.rst create mode 100644 docs/api/container_instances/models/oci.container_instances.models.CreateOciFssMountTargetIdDetails.rst create mode 100644 docs/api/container_instances/models/oci.container_instances.models.CreateOciFssSecurityDetails.rst create mode 100644 docs/api/container_instances/models/oci.container_instances.models.CreateOciFssSysSecurityDetails.rst create mode 100644 docs/api/container_instances/models/oci.container_instances.models.LinuxContainerInstanceSecurityContext.rst create mode 100644 docs/api/container_instances/models/oci.container_instances.models.OciFssExport.rst create mode 100644 docs/api/container_instances/models/oci.container_instances.models.OciFssExportId.rst create mode 100644 docs/api/container_instances/models/oci.container_instances.models.OciFssMountCommand.rst create mode 100644 docs/api/container_instances/models/oci.container_instances.models.OciFssMountOption.rst create mode 100644 docs/api/container_instances/models/oci.container_instances.models.OciFssMountTarget.rst create mode 100644 docs/api/container_instances/models/oci.container_instances.models.OciFssMountTargetId.rst create mode 100644 docs/api/container_instances/models/oci.container_instances.models.OciFssSecurity.rst create mode 100644 docs/api/container_instances/models/oci.container_instances.models.OciFssSysSecurity.rst create mode 100644 docs/api/core/models/oci.core.models.ComputeClusterPlacementConstraintDetails.rst create mode 100644 docs/api/core/models/oci.core.models.CreateGmcConfigurationDetails.rst create mode 100644 docs/api/core/models/oci.core.models.InstanceConfigurationGmcConfigDetail.rst create mode 100644 docs/api/core/models/oci.core.models.InstanceConfigurationGpuMemoryClusterScaleConfig.rst create mode 100644 docs/api/data_safe/models/oci.data_safe.models.TargetAlertPolicyUnassociatedCollection.rst create mode 100644 docs/api/data_safe/models/oci.data_safe.models.TargetAlertPolicyUnassociatedSummary.rst create mode 100644 docs/api/datacc.rst create mode 100644 docs/api/datacc/client/oci.datacc.BaseinfraClient.rst create mode 100644 docs/api/datacc/client/oci.datacc.BaseinfraClientCompositeOperations.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.AcfsCapacityDetails.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.ActivateInfrastructureDetails.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.ChangeInfrastructureCompartmentDetails.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.ChangeVmClusterNetworkCompartmentDetails.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.ChangeVmInstanceCompartmentDetails.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.ComputeCapacityDetails.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.CreateInfrastructureDetails.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.CreateVmClusterNetworkDetails.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.CreateVmInstanceDetails.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.DiskGroupCapacityDetails.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.GenerateRecommendedVmClusterNetworkDetails.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.InfoVmNetworkDetails.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.Infrastructure.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.InfrastructureCollection.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.InfrastructureContact.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.InfrastructureScaleOption.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.InfrastructureServer.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.InfrastructureSummary.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.MaintenanceExecution.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.MaintenanceExecutionCollection.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.MaintenanceExecutionSummary.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.MaintenanceRun.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.MaintenanceRunCollection.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.MaintenanceRunSummary.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.MaintenanceWindow.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.NodeDetails.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.RescheduleMaintenanceRunDetails.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.ScaleInfrastructureStorageDetails.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.ScaleVmInstanceDetails.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.ScanDetails.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.StorageCapacityDetails.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.SystemStorageCapacityDetails.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.UpdateInfrastructureDetails.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.UpdateMaintenanceRunDetails.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.UpdateVmClusterNetworkDetails.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.UpdateVmInstanceDetails.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.ValidateInfrastructureDetails.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.VmClusterNetwork.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.VmClusterNetworkCollection.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.VmClusterNetworkSummary.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.VmInstance.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.VmInstanceCollection.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.VmInstanceSummary.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.VmNetworkDetails.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.WorkRequest.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.WorkRequestCollection.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.WorkRequestError.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.WorkRequestErrorCollection.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.WorkRequestLogEntry.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.WorkRequestLogEntryCollection.rst create mode 100644 docs/api/datacc/models/oci.datacc.models.WorkRequestResource.rst create mode 100644 docs/api/generative_ai/models/oci.generative_ai.models.CreateHostedApplicationBaseDetails.rst create mode 100644 docs/api/generative_ai/models/oci.generative_ai.models.CreateHostedApplicationIamDetails.rst create mode 100644 docs/api/generative_ai/models/oci.generative_ai.models.HostedApplicationBase.rst create mode 100644 docs/api/generative_ai/models/oci.generative_ai.models.HostedApplicationIam.rst create mode 100644 docs/api/generative_ai/models/oci.generative_ai.models.UpdateHostedApplicationBaseDetails.rst create mode 100644 docs/api/generative_ai/models/oci.generative_ai.models.UpdateHostedApplicationIamDetails.rst create mode 100644 src/oci/_log_redaction.py create mode 100644 src/oci/ai_data_platform/models/enable_ai_feature_details.py create mode 100644 src/oci/container_instances/models/container_instance_security_context.py create mode 100644 src/oci/container_instances/models/container_oci_fss_volume.py create mode 100644 src/oci/container_instances/models/create_container_instance_security_context_details.py create mode 100644 src/oci/container_instances/models/create_container_oci_fss_volume_details.py create mode 100644 src/oci/container_instances/models/create_linux_container_instance_security_context_details.py create mode 100644 src/oci/container_instances/models/create_oci_fss_export_details.py create mode 100644 src/oci/container_instances/models/create_oci_fss_export_id_details.py create mode 100644 src/oci/container_instances/models/create_oci_fss_mount_command_details.py create mode 100644 src/oci/container_instances/models/create_oci_fss_mount_option_details.py create mode 100644 src/oci/container_instances/models/create_oci_fss_mount_target_details.py create mode 100644 src/oci/container_instances/models/create_oci_fss_mount_target_id_details.py create mode 100644 src/oci/container_instances/models/create_oci_fss_security_details.py create mode 100644 src/oci/container_instances/models/create_oci_fss_sys_security_details.py create mode 100644 src/oci/container_instances/models/linux_container_instance_security_context.py create mode 100644 src/oci/container_instances/models/oci_fss_export.py create mode 100644 src/oci/container_instances/models/oci_fss_export_id.py create mode 100644 src/oci/container_instances/models/oci_fss_mount_command.py create mode 100644 src/oci/container_instances/models/oci_fss_mount_option.py create mode 100644 src/oci/container_instances/models/oci_fss_mount_target.py create mode 100644 src/oci/container_instances/models/oci_fss_mount_target_id.py create mode 100644 src/oci/container_instances/models/oci_fss_security.py create mode 100644 src/oci/container_instances/models/oci_fss_sys_security.py create mode 100644 src/oci/core/models/compute_cluster_placement_constraint_details.py create mode 100644 src/oci/core/models/create_gmc_configuration_details.py create mode 100644 src/oci/core/models/instance_configuration_gmc_config_detail.py create mode 100644 src/oci/core/models/instance_configuration_gpu_memory_cluster_scale_config.py create mode 100644 src/oci/data_safe/models/target_alert_policy_unassociated_collection.py create mode 100644 src/oci/data_safe/models/target_alert_policy_unassociated_summary.py create mode 100644 src/oci/datacc/__init__.py create mode 100644 src/oci/datacc/baseinfra_client.py create mode 100644 src/oci/datacc/baseinfra_client_composite_operations.py create mode 100644 src/oci/datacc/models/__init__.py create mode 100644 src/oci/datacc/models/acfs_capacity_details.py create mode 100644 src/oci/datacc/models/activate_infrastructure_details.py create mode 100644 src/oci/datacc/models/change_infrastructure_compartment_details.py create mode 100644 src/oci/datacc/models/change_vm_cluster_network_compartment_details.py create mode 100644 src/oci/datacc/models/change_vm_instance_compartment_details.py create mode 100644 src/oci/datacc/models/compute_capacity_details.py create mode 100644 src/oci/datacc/models/create_infrastructure_details.py create mode 100644 src/oci/datacc/models/create_vm_cluster_network_details.py create mode 100644 src/oci/datacc/models/create_vm_instance_details.py create mode 100644 src/oci/datacc/models/disk_group_capacity_details.py create mode 100644 src/oci/datacc/models/generate_recommended_vm_cluster_network_details.py create mode 100644 src/oci/datacc/models/info_vm_network_details.py create mode 100644 src/oci/datacc/models/infrastructure.py create mode 100644 src/oci/datacc/models/infrastructure_collection.py create mode 100644 src/oci/datacc/models/infrastructure_contact.py create mode 100644 src/oci/datacc/models/infrastructure_scale_option.py create mode 100644 src/oci/datacc/models/infrastructure_server.py create mode 100644 src/oci/datacc/models/infrastructure_summary.py create mode 100644 src/oci/datacc/models/maintenance_execution.py create mode 100644 src/oci/datacc/models/maintenance_execution_collection.py create mode 100644 src/oci/datacc/models/maintenance_execution_summary.py create mode 100644 src/oci/datacc/models/maintenance_run.py create mode 100644 src/oci/datacc/models/maintenance_run_collection.py create mode 100644 src/oci/datacc/models/maintenance_run_summary.py create mode 100644 src/oci/datacc/models/maintenance_window.py create mode 100644 src/oci/datacc/models/node_details.py create mode 100644 src/oci/datacc/models/reschedule_maintenance_run_details.py create mode 100644 src/oci/datacc/models/scale_infrastructure_storage_details.py create mode 100644 src/oci/datacc/models/scale_vm_instance_details.py create mode 100644 src/oci/datacc/models/scan_details.py create mode 100644 src/oci/datacc/models/storage_capacity_details.py create mode 100644 src/oci/datacc/models/system_storage_capacity_details.py create mode 100644 src/oci/datacc/models/update_infrastructure_details.py create mode 100644 src/oci/datacc/models/update_maintenance_run_details.py create mode 100644 src/oci/datacc/models/update_vm_cluster_network_details.py create mode 100644 src/oci/datacc/models/update_vm_instance_details.py create mode 100644 src/oci/datacc/models/validate_infrastructure_details.py create mode 100644 src/oci/datacc/models/vm_cluster_network.py create mode 100644 src/oci/datacc/models/vm_cluster_network_collection.py create mode 100644 src/oci/datacc/models/vm_cluster_network_summary.py create mode 100644 src/oci/datacc/models/vm_instance.py create mode 100644 src/oci/datacc/models/vm_instance_collection.py create mode 100644 src/oci/datacc/models/vm_instance_summary.py create mode 100644 src/oci/datacc/models/vm_network_details.py create mode 100644 src/oci/datacc/models/work_request.py create mode 100644 src/oci/datacc/models/work_request_collection.py create mode 100644 src/oci/datacc/models/work_request_error.py create mode 100644 src/oci/datacc/models/work_request_error_collection.py create mode 100644 src/oci/datacc/models/work_request_log_entry.py create mode 100644 src/oci/datacc/models/work_request_log_entry_collection.py create mode 100644 src/oci/datacc/models/work_request_resource.py create mode 100644 src/oci/generative_ai/models/create_hosted_application_base_details.py create mode 100644 src/oci/generative_ai/models/create_hosted_application_iam_details.py create mode 100644 src/oci/generative_ai/models/hosted_application_base.py create mode 100644 src/oci/generative_ai/models/hosted_application_iam.py create mode 100644 src/oci/generative_ai/models/update_hosted_application_base_details.py create mode 100644 src/oci/generative_ai/models/update_hosted_application_iam_details.py diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 27d705d81c..7881ab25c2 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -4,6 +4,32 @@ All notable changes to this project will be documented in this file. The format is based on `Keep a Changelog `_. +==================== +2.182.0 - 2026-07-14 +==================== + +Added +----- +* Support for the Oracle Data Infrastructure Cloud@Customer service +* Support for AI Agents features in the AI Data Platform service +* Support for Hosted Application IAM resources in the Generative AI service +* Support for File Storage Service (FSS) volumes in the Container Instances service +* Support for Linux file system group security contexts for volumes in the Container Instances service +* Support for Zero Trust Packet Routing (ZPR) security attributes on private endpoints in the Digital Assistant service +* Support for placement constraints on compute clusters in the Compute service +* Support for GPU memory cluster configurations in instance pools in the Compute service +* Support for target database groups in target alert policy associations in the Data Safe service +* Support for pagination when generating and scheduling reports in the Data Safe service +* Support for refreshing audit policies in the Data Safe service +* Support for single report generation for target database group security assessments in the Data Safe service +* Support for Zero Trust Packet Routing (ZPR) security attributes on private endpoints in the Data Safe service +* Support for IPv6 endpoints in the OS Management Hub service + +Breaking +-------- +* Method `list_hosted_deployments` was renamed to `list_hosted_applications_iam` from the Generative AI service +* Property `inbound_auth_config` was made required in the model `CreateHostedApplicationDetails` in the Generative AI service + ==================== 2.181.1 - 2026-07-07 ==================== diff --git a/docs/api/ai_data_platform.rst b/docs/api/ai_data_platform.rst index 72118c075c..86c20597c5 100644 --- a/docs/api/ai_data_platform.rst +++ b/docs/api/ai_data_platform.rst @@ -23,6 +23,7 @@ Ai Data Platform oci.ai_data_platform.models.AiDataPlatformSummary oci.ai_data_platform.models.ChangeAiDataPlatformCompartmentDetails oci.ai_data_platform.models.CreateAiDataPlatformDetails + oci.ai_data_platform.models.EnableAiFeatureDetails oci.ai_data_platform.models.UpdateAiDataPlatformDetails oci.ai_data_platform.models.WorkRequest oci.ai_data_platform.models.WorkRequestError diff --git a/docs/api/ai_data_platform/models/oci.ai_data_platform.models.EnableAiFeatureDetails.rst b/docs/api/ai_data_platform/models/oci.ai_data_platform.models.EnableAiFeatureDetails.rst new file mode 100644 index 0000000000..75e01833ca --- /dev/null +++ b/docs/api/ai_data_platform/models/oci.ai_data_platform.models.EnableAiFeatureDetails.rst @@ -0,0 +1,11 @@ +EnableAiFeatureDetails +====================== + +.. currentmodule:: oci.ai_data_platform.models + +.. autoclass:: EnableAiFeatureDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/container_instances.rst b/docs/api/container_instances.rst index 68aa0b3bc2..b48e071c30 100644 --- a/docs/api/container_instances.rst +++ b/docs/api/container_instances.rst @@ -32,10 +32,12 @@ Container Instances oci.container_instances.models.ContainerInstance oci.container_instances.models.ContainerInstanceCollection oci.container_instances.models.ContainerInstanceContainer + oci.container_instances.models.ContainerInstanceSecurityContext oci.container_instances.models.ContainerInstanceShapeCollection oci.container_instances.models.ContainerInstanceShapeConfig oci.container_instances.models.ContainerInstanceShapeSummary oci.container_instances.models.ContainerInstanceSummary + oci.container_instances.models.ContainerOciFssVolume oci.container_instances.models.ContainerResourceConfig oci.container_instances.models.ContainerSummary oci.container_instances.models.ContainerTcpHealthCheck @@ -49,19 +51,39 @@ Container Instances oci.container_instances.models.CreateContainerHealthCheckDetails oci.container_instances.models.CreateContainerHttpHealthCheckDetails oci.container_instances.models.CreateContainerInstanceDetails + oci.container_instances.models.CreateContainerInstanceSecurityContextDetails oci.container_instances.models.CreateContainerInstanceShapeConfigDetails + oci.container_instances.models.CreateContainerOciFssVolumeDetails oci.container_instances.models.CreateContainerResourceConfigDetails oci.container_instances.models.CreateContainerTcpHealthCheckDetails oci.container_instances.models.CreateContainerVnicDetails oci.container_instances.models.CreateContainerVolumeDetails oci.container_instances.models.CreateImagePullSecretDetails + oci.container_instances.models.CreateLinuxContainerInstanceSecurityContextDetails oci.container_instances.models.CreateLinuxSecurityContextDetails + oci.container_instances.models.CreateOciFssExportDetails + oci.container_instances.models.CreateOciFssExportIdDetails + oci.container_instances.models.CreateOciFssMountCommandDetails + oci.container_instances.models.CreateOciFssMountOptionDetails + oci.container_instances.models.CreateOciFssMountTargetDetails + oci.container_instances.models.CreateOciFssMountTargetIdDetails + oci.container_instances.models.CreateOciFssSecurityDetails + oci.container_instances.models.CreateOciFssSysSecurityDetails oci.container_instances.models.CreateSecurityContextDetails oci.container_instances.models.CreateVaultImagePullSecretDetails oci.container_instances.models.CreateVolumeMountDetails oci.container_instances.models.HealthCheckHttpHeader oci.container_instances.models.ImagePullSecret + oci.container_instances.models.LinuxContainerInstanceSecurityContext oci.container_instances.models.LinuxSecurityContext + oci.container_instances.models.OciFssExport + oci.container_instances.models.OciFssExportId + oci.container_instances.models.OciFssMountCommand + oci.container_instances.models.OciFssMountOption + oci.container_instances.models.OciFssMountTarget + oci.container_instances.models.OciFssMountTargetId + oci.container_instances.models.OciFssSecurity + oci.container_instances.models.OciFssSysSecurity oci.container_instances.models.SecurityContext oci.container_instances.models.ShapeMemoryOptions oci.container_instances.models.ShapeNetworkingBandwidthOptions diff --git a/docs/api/container_instances/models/oci.container_instances.models.ContainerInstanceSecurityContext.rst b/docs/api/container_instances/models/oci.container_instances.models.ContainerInstanceSecurityContext.rst new file mode 100644 index 0000000000..9246de12a9 --- /dev/null +++ b/docs/api/container_instances/models/oci.container_instances.models.ContainerInstanceSecurityContext.rst @@ -0,0 +1,11 @@ +ContainerInstanceSecurityContext +================================ + +.. currentmodule:: oci.container_instances.models + +.. autoclass:: ContainerInstanceSecurityContext + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/container_instances/models/oci.container_instances.models.ContainerOciFssVolume.rst b/docs/api/container_instances/models/oci.container_instances.models.ContainerOciFssVolume.rst new file mode 100644 index 0000000000..804db996fc --- /dev/null +++ b/docs/api/container_instances/models/oci.container_instances.models.ContainerOciFssVolume.rst @@ -0,0 +1,11 @@ +ContainerOciFssVolume +===================== + +.. currentmodule:: oci.container_instances.models + +.. autoclass:: ContainerOciFssVolume + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/container_instances/models/oci.container_instances.models.CreateContainerInstanceSecurityContextDetails.rst b/docs/api/container_instances/models/oci.container_instances.models.CreateContainerInstanceSecurityContextDetails.rst new file mode 100644 index 0000000000..7bfed66de1 --- /dev/null +++ b/docs/api/container_instances/models/oci.container_instances.models.CreateContainerInstanceSecurityContextDetails.rst @@ -0,0 +1,11 @@ +CreateContainerInstanceSecurityContextDetails +============================================= + +.. currentmodule:: oci.container_instances.models + +.. autoclass:: CreateContainerInstanceSecurityContextDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/container_instances/models/oci.container_instances.models.CreateContainerOciFssVolumeDetails.rst b/docs/api/container_instances/models/oci.container_instances.models.CreateContainerOciFssVolumeDetails.rst new file mode 100644 index 0000000000..92108a59e3 --- /dev/null +++ b/docs/api/container_instances/models/oci.container_instances.models.CreateContainerOciFssVolumeDetails.rst @@ -0,0 +1,11 @@ +CreateContainerOciFssVolumeDetails +================================== + +.. currentmodule:: oci.container_instances.models + +.. autoclass:: CreateContainerOciFssVolumeDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/container_instances/models/oci.container_instances.models.CreateLinuxContainerInstanceSecurityContextDetails.rst b/docs/api/container_instances/models/oci.container_instances.models.CreateLinuxContainerInstanceSecurityContextDetails.rst new file mode 100644 index 0000000000..05b839c698 --- /dev/null +++ b/docs/api/container_instances/models/oci.container_instances.models.CreateLinuxContainerInstanceSecurityContextDetails.rst @@ -0,0 +1,11 @@ +CreateLinuxContainerInstanceSecurityContextDetails +================================================== + +.. currentmodule:: oci.container_instances.models + +.. autoclass:: CreateLinuxContainerInstanceSecurityContextDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/container_instances/models/oci.container_instances.models.CreateOciFssExportDetails.rst b/docs/api/container_instances/models/oci.container_instances.models.CreateOciFssExportDetails.rst new file mode 100644 index 0000000000..0b8d7c7c03 --- /dev/null +++ b/docs/api/container_instances/models/oci.container_instances.models.CreateOciFssExportDetails.rst @@ -0,0 +1,11 @@ +CreateOciFssExportDetails +========================= + +.. currentmodule:: oci.container_instances.models + +.. autoclass:: CreateOciFssExportDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/container_instances/models/oci.container_instances.models.CreateOciFssExportIdDetails.rst b/docs/api/container_instances/models/oci.container_instances.models.CreateOciFssExportIdDetails.rst new file mode 100644 index 0000000000..b66e22bf02 --- /dev/null +++ b/docs/api/container_instances/models/oci.container_instances.models.CreateOciFssExportIdDetails.rst @@ -0,0 +1,11 @@ +CreateOciFssExportIdDetails +=========================== + +.. currentmodule:: oci.container_instances.models + +.. autoclass:: CreateOciFssExportIdDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/container_instances/models/oci.container_instances.models.CreateOciFssMountCommandDetails.rst b/docs/api/container_instances/models/oci.container_instances.models.CreateOciFssMountCommandDetails.rst new file mode 100644 index 0000000000..4751f919c3 --- /dev/null +++ b/docs/api/container_instances/models/oci.container_instances.models.CreateOciFssMountCommandDetails.rst @@ -0,0 +1,11 @@ +CreateOciFssMountCommandDetails +=============================== + +.. currentmodule:: oci.container_instances.models + +.. autoclass:: CreateOciFssMountCommandDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/container_instances/models/oci.container_instances.models.CreateOciFssMountOptionDetails.rst b/docs/api/container_instances/models/oci.container_instances.models.CreateOciFssMountOptionDetails.rst new file mode 100644 index 0000000000..372d73d67e --- /dev/null +++ b/docs/api/container_instances/models/oci.container_instances.models.CreateOciFssMountOptionDetails.rst @@ -0,0 +1,11 @@ +CreateOciFssMountOptionDetails +============================== + +.. currentmodule:: oci.container_instances.models + +.. autoclass:: CreateOciFssMountOptionDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/container_instances/models/oci.container_instances.models.CreateOciFssMountTargetDetails.rst b/docs/api/container_instances/models/oci.container_instances.models.CreateOciFssMountTargetDetails.rst new file mode 100644 index 0000000000..c3a7e45910 --- /dev/null +++ b/docs/api/container_instances/models/oci.container_instances.models.CreateOciFssMountTargetDetails.rst @@ -0,0 +1,11 @@ +CreateOciFssMountTargetDetails +============================== + +.. currentmodule:: oci.container_instances.models + +.. autoclass:: CreateOciFssMountTargetDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/container_instances/models/oci.container_instances.models.CreateOciFssMountTargetIdDetails.rst b/docs/api/container_instances/models/oci.container_instances.models.CreateOciFssMountTargetIdDetails.rst new file mode 100644 index 0000000000..5972425807 --- /dev/null +++ b/docs/api/container_instances/models/oci.container_instances.models.CreateOciFssMountTargetIdDetails.rst @@ -0,0 +1,11 @@ +CreateOciFssMountTargetIdDetails +================================ + +.. currentmodule:: oci.container_instances.models + +.. autoclass:: CreateOciFssMountTargetIdDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/container_instances/models/oci.container_instances.models.CreateOciFssSecurityDetails.rst b/docs/api/container_instances/models/oci.container_instances.models.CreateOciFssSecurityDetails.rst new file mode 100644 index 0000000000..bd4521d90a --- /dev/null +++ b/docs/api/container_instances/models/oci.container_instances.models.CreateOciFssSecurityDetails.rst @@ -0,0 +1,11 @@ +CreateOciFssSecurityDetails +=========================== + +.. currentmodule:: oci.container_instances.models + +.. autoclass:: CreateOciFssSecurityDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/container_instances/models/oci.container_instances.models.CreateOciFssSysSecurityDetails.rst b/docs/api/container_instances/models/oci.container_instances.models.CreateOciFssSysSecurityDetails.rst new file mode 100644 index 0000000000..89a3b972f4 --- /dev/null +++ b/docs/api/container_instances/models/oci.container_instances.models.CreateOciFssSysSecurityDetails.rst @@ -0,0 +1,11 @@ +CreateOciFssSysSecurityDetails +============================== + +.. currentmodule:: oci.container_instances.models + +.. autoclass:: CreateOciFssSysSecurityDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/container_instances/models/oci.container_instances.models.LinuxContainerInstanceSecurityContext.rst b/docs/api/container_instances/models/oci.container_instances.models.LinuxContainerInstanceSecurityContext.rst new file mode 100644 index 0000000000..9b5a5c3bd6 --- /dev/null +++ b/docs/api/container_instances/models/oci.container_instances.models.LinuxContainerInstanceSecurityContext.rst @@ -0,0 +1,11 @@ +LinuxContainerInstanceSecurityContext +===================================== + +.. currentmodule:: oci.container_instances.models + +.. autoclass:: LinuxContainerInstanceSecurityContext + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/container_instances/models/oci.container_instances.models.OciFssExport.rst b/docs/api/container_instances/models/oci.container_instances.models.OciFssExport.rst new file mode 100644 index 0000000000..7a6dcaf002 --- /dev/null +++ b/docs/api/container_instances/models/oci.container_instances.models.OciFssExport.rst @@ -0,0 +1,11 @@ +OciFssExport +============ + +.. currentmodule:: oci.container_instances.models + +.. autoclass:: OciFssExport + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/container_instances/models/oci.container_instances.models.OciFssExportId.rst b/docs/api/container_instances/models/oci.container_instances.models.OciFssExportId.rst new file mode 100644 index 0000000000..7a83b2c3fe --- /dev/null +++ b/docs/api/container_instances/models/oci.container_instances.models.OciFssExportId.rst @@ -0,0 +1,11 @@ +OciFssExportId +============== + +.. currentmodule:: oci.container_instances.models + +.. autoclass:: OciFssExportId + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/container_instances/models/oci.container_instances.models.OciFssMountCommand.rst b/docs/api/container_instances/models/oci.container_instances.models.OciFssMountCommand.rst new file mode 100644 index 0000000000..00ad369820 --- /dev/null +++ b/docs/api/container_instances/models/oci.container_instances.models.OciFssMountCommand.rst @@ -0,0 +1,11 @@ +OciFssMountCommand +================== + +.. currentmodule:: oci.container_instances.models + +.. autoclass:: OciFssMountCommand + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/container_instances/models/oci.container_instances.models.OciFssMountOption.rst b/docs/api/container_instances/models/oci.container_instances.models.OciFssMountOption.rst new file mode 100644 index 0000000000..be3fddb968 --- /dev/null +++ b/docs/api/container_instances/models/oci.container_instances.models.OciFssMountOption.rst @@ -0,0 +1,11 @@ +OciFssMountOption +================= + +.. currentmodule:: oci.container_instances.models + +.. autoclass:: OciFssMountOption + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/container_instances/models/oci.container_instances.models.OciFssMountTarget.rst b/docs/api/container_instances/models/oci.container_instances.models.OciFssMountTarget.rst new file mode 100644 index 0000000000..0adf8a4934 --- /dev/null +++ b/docs/api/container_instances/models/oci.container_instances.models.OciFssMountTarget.rst @@ -0,0 +1,11 @@ +OciFssMountTarget +================= + +.. currentmodule:: oci.container_instances.models + +.. autoclass:: OciFssMountTarget + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/container_instances/models/oci.container_instances.models.OciFssMountTargetId.rst b/docs/api/container_instances/models/oci.container_instances.models.OciFssMountTargetId.rst new file mode 100644 index 0000000000..88096eebe3 --- /dev/null +++ b/docs/api/container_instances/models/oci.container_instances.models.OciFssMountTargetId.rst @@ -0,0 +1,11 @@ +OciFssMountTargetId +=================== + +.. currentmodule:: oci.container_instances.models + +.. autoclass:: OciFssMountTargetId + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/container_instances/models/oci.container_instances.models.OciFssSecurity.rst b/docs/api/container_instances/models/oci.container_instances.models.OciFssSecurity.rst new file mode 100644 index 0000000000..4f2318ac4b --- /dev/null +++ b/docs/api/container_instances/models/oci.container_instances.models.OciFssSecurity.rst @@ -0,0 +1,11 @@ +OciFssSecurity +============== + +.. currentmodule:: oci.container_instances.models + +.. autoclass:: OciFssSecurity + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/container_instances/models/oci.container_instances.models.OciFssSysSecurity.rst b/docs/api/container_instances/models/oci.container_instances.models.OciFssSysSecurity.rst new file mode 100644 index 0000000000..11a9aee916 --- /dev/null +++ b/docs/api/container_instances/models/oci.container_instances.models.OciFssSysSecurity.rst @@ -0,0 +1,11 @@ +OciFssSysSecurity +================= + +.. currentmodule:: oci.container_instances.models + +.. autoclass:: OciFssSysSecurity + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/core.rst b/docs/api/core.rst index 68c7f7b162..b5d009bba2 100644 --- a/docs/api/core.rst +++ b/docs/api/core.rst @@ -189,6 +189,7 @@ Core Services oci.core.models.ComputeCapacityTopologySummary oci.core.models.ComputeCluster oci.core.models.ComputeClusterCollection + oci.core.models.ComputeClusterPlacementConstraintDetails oci.core.models.ComputeClusterSummary oci.core.models.ComputeGlobalImageCapabilitySchema oci.core.models.ComputeGlobalImageCapabilitySchemaSummary @@ -261,6 +262,7 @@ Core Services oci.core.models.CreateDrgDetails oci.core.models.CreateDrgRouteDistributionDetails oci.core.models.CreateDrgRouteTableDetails + oci.core.models.CreateGmcConfigurationDetails oci.core.models.CreateIPSecConnectionDetails oci.core.models.CreateIPSecConnectionTunnelDetails oci.core.models.CreateIPSecTunnelBgpSessionDetails @@ -406,6 +408,8 @@ Core Services oci.core.models.InstanceConfigurationCreateVolumeDetails oci.core.models.InstanceConfigurationDetachedVolumeAutotunePolicy oci.core.models.InstanceConfigurationGenericBmLaunchInstancePlatformConfig + oci.core.models.InstanceConfigurationGmcConfigDetail + oci.core.models.InstanceConfigurationGpuMemoryClusterScaleConfig oci.core.models.InstanceConfigurationHostGroupPlacementConstraintDetails oci.core.models.InstanceConfigurationInstanceDetails oci.core.models.InstanceConfigurationInstanceOptions diff --git a/docs/api/core/models/oci.core.models.ComputeClusterPlacementConstraintDetails.rst b/docs/api/core/models/oci.core.models.ComputeClusterPlacementConstraintDetails.rst new file mode 100644 index 0000000000..6927ecba36 --- /dev/null +++ b/docs/api/core/models/oci.core.models.ComputeClusterPlacementConstraintDetails.rst @@ -0,0 +1,11 @@ +ComputeClusterPlacementConstraintDetails +======================================== + +.. currentmodule:: oci.core.models + +.. autoclass:: ComputeClusterPlacementConstraintDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/core/models/oci.core.models.CreateGmcConfigurationDetails.rst b/docs/api/core/models/oci.core.models.CreateGmcConfigurationDetails.rst new file mode 100644 index 0000000000..42416412a0 --- /dev/null +++ b/docs/api/core/models/oci.core.models.CreateGmcConfigurationDetails.rst @@ -0,0 +1,11 @@ +CreateGmcConfigurationDetails +============================= + +.. currentmodule:: oci.core.models + +.. autoclass:: CreateGmcConfigurationDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/core/models/oci.core.models.InstanceConfigurationGmcConfigDetail.rst b/docs/api/core/models/oci.core.models.InstanceConfigurationGmcConfigDetail.rst new file mode 100644 index 0000000000..252a93c1bd --- /dev/null +++ b/docs/api/core/models/oci.core.models.InstanceConfigurationGmcConfigDetail.rst @@ -0,0 +1,11 @@ +InstanceConfigurationGmcConfigDetail +==================================== + +.. currentmodule:: oci.core.models + +.. autoclass:: InstanceConfigurationGmcConfigDetail + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/core/models/oci.core.models.InstanceConfigurationGpuMemoryClusterScaleConfig.rst b/docs/api/core/models/oci.core.models.InstanceConfigurationGpuMemoryClusterScaleConfig.rst new file mode 100644 index 0000000000..6921d5148d --- /dev/null +++ b/docs/api/core/models/oci.core.models.InstanceConfigurationGpuMemoryClusterScaleConfig.rst @@ -0,0 +1,11 @@ +InstanceConfigurationGpuMemoryClusterScaleConfig +================================================ + +.. currentmodule:: oci.core.models + +.. autoclass:: InstanceConfigurationGpuMemoryClusterScaleConfig + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/data_safe.rst b/docs/api/data_safe.rst index b29061311c..2af341ec20 100644 --- a/docs/api/data_safe.rst +++ b/docs/api/data_safe.rst @@ -438,6 +438,8 @@ Data Safe oci.data_safe.models.TargetAlertPolicyAssociation oci.data_safe.models.TargetAlertPolicyAssociationCollection oci.data_safe.models.TargetAlertPolicyAssociationSummary + oci.data_safe.models.TargetAlertPolicyUnassociatedCollection + oci.data_safe.models.TargetAlertPolicyUnassociatedSummary oci.data_safe.models.TargetDatabase oci.data_safe.models.TargetDatabaseGroup oci.data_safe.models.TargetDatabaseGroupCollection diff --git a/docs/api/data_safe/models/oci.data_safe.models.TargetAlertPolicyUnassociatedCollection.rst b/docs/api/data_safe/models/oci.data_safe.models.TargetAlertPolicyUnassociatedCollection.rst new file mode 100644 index 0000000000..e866284ed6 --- /dev/null +++ b/docs/api/data_safe/models/oci.data_safe.models.TargetAlertPolicyUnassociatedCollection.rst @@ -0,0 +1,11 @@ +TargetAlertPolicyUnassociatedCollection +======================================= + +.. currentmodule:: oci.data_safe.models + +.. autoclass:: TargetAlertPolicyUnassociatedCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/data_safe/models/oci.data_safe.models.TargetAlertPolicyUnassociatedSummary.rst b/docs/api/data_safe/models/oci.data_safe.models.TargetAlertPolicyUnassociatedSummary.rst new file mode 100644 index 0000000000..72b2b4f320 --- /dev/null +++ b/docs/api/data_safe/models/oci.data_safe.models.TargetAlertPolicyUnassociatedSummary.rst @@ -0,0 +1,11 @@ +TargetAlertPolicyUnassociatedSummary +==================================== + +.. currentmodule:: oci.data_safe.models + +.. autoclass:: TargetAlertPolicyUnassociatedSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc.rst b/docs/api/datacc.rst new file mode 100644 index 0000000000..32af984679 --- /dev/null +++ b/docs/api/datacc.rst @@ -0,0 +1,71 @@ +Datacc +====== + +.. autosummary:: + :toctree: datacc/client + :nosignatures: + :template: autosummary/service_client.rst + + oci.datacc.BaseinfraClient + oci.datacc.BaseinfraClientCompositeOperations + +-------- + Models +-------- + +.. autosummary:: + :toctree: datacc/models + :nosignatures: + :template: autosummary/model_class.rst + + oci.datacc.models.AcfsCapacityDetails + oci.datacc.models.ActivateInfrastructureDetails + oci.datacc.models.ChangeInfrastructureCompartmentDetails + oci.datacc.models.ChangeVmClusterNetworkCompartmentDetails + oci.datacc.models.ChangeVmInstanceCompartmentDetails + oci.datacc.models.ComputeCapacityDetails + oci.datacc.models.CreateInfrastructureDetails + oci.datacc.models.CreateVmClusterNetworkDetails + oci.datacc.models.CreateVmInstanceDetails + oci.datacc.models.DiskGroupCapacityDetails + oci.datacc.models.GenerateRecommendedVmClusterNetworkDetails + oci.datacc.models.InfoVmNetworkDetails + oci.datacc.models.Infrastructure + oci.datacc.models.InfrastructureCollection + oci.datacc.models.InfrastructureContact + oci.datacc.models.InfrastructureScaleOption + oci.datacc.models.InfrastructureServer + oci.datacc.models.InfrastructureSummary + oci.datacc.models.MaintenanceExecution + oci.datacc.models.MaintenanceExecutionCollection + oci.datacc.models.MaintenanceExecutionSummary + oci.datacc.models.MaintenanceRun + oci.datacc.models.MaintenanceRunCollection + oci.datacc.models.MaintenanceRunSummary + oci.datacc.models.MaintenanceWindow + oci.datacc.models.NodeDetails + oci.datacc.models.RescheduleMaintenanceRunDetails + oci.datacc.models.ScaleInfrastructureStorageDetails + oci.datacc.models.ScaleVmInstanceDetails + oci.datacc.models.ScanDetails + oci.datacc.models.StorageCapacityDetails + oci.datacc.models.SystemStorageCapacityDetails + oci.datacc.models.UpdateInfrastructureDetails + oci.datacc.models.UpdateMaintenanceRunDetails + oci.datacc.models.UpdateVmClusterNetworkDetails + oci.datacc.models.UpdateVmInstanceDetails + oci.datacc.models.ValidateInfrastructureDetails + oci.datacc.models.VmClusterNetwork + oci.datacc.models.VmClusterNetworkCollection + oci.datacc.models.VmClusterNetworkSummary + oci.datacc.models.VmInstance + oci.datacc.models.VmInstanceCollection + oci.datacc.models.VmInstanceSummary + oci.datacc.models.VmNetworkDetails + oci.datacc.models.WorkRequest + oci.datacc.models.WorkRequestCollection + oci.datacc.models.WorkRequestError + oci.datacc.models.WorkRequestErrorCollection + oci.datacc.models.WorkRequestLogEntry + oci.datacc.models.WorkRequestLogEntryCollection + oci.datacc.models.WorkRequestResource diff --git a/docs/api/datacc/client/oci.datacc.BaseinfraClient.rst b/docs/api/datacc/client/oci.datacc.BaseinfraClient.rst new file mode 100644 index 0000000000..12b0781211 --- /dev/null +++ b/docs/api/datacc/client/oci.datacc.BaseinfraClient.rst @@ -0,0 +1,8 @@ +BaseinfraClient +=============== + +.. currentmodule:: oci.datacc + +.. autoclass:: BaseinfraClient + :special-members: __init__ + :members: \ No newline at end of file diff --git a/docs/api/datacc/client/oci.datacc.BaseinfraClientCompositeOperations.rst b/docs/api/datacc/client/oci.datacc.BaseinfraClientCompositeOperations.rst new file mode 100644 index 0000000000..b1e964dddf --- /dev/null +++ b/docs/api/datacc/client/oci.datacc.BaseinfraClientCompositeOperations.rst @@ -0,0 +1,8 @@ +BaseinfraClientCompositeOperations +================================== + +.. currentmodule:: oci.datacc + +.. autoclass:: BaseinfraClientCompositeOperations + :special-members: __init__ + :members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.AcfsCapacityDetails.rst b/docs/api/datacc/models/oci.datacc.models.AcfsCapacityDetails.rst new file mode 100644 index 0000000000..ccd8484cbe --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.AcfsCapacityDetails.rst @@ -0,0 +1,11 @@ +AcfsCapacityDetails +=================== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: AcfsCapacityDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.ActivateInfrastructureDetails.rst b/docs/api/datacc/models/oci.datacc.models.ActivateInfrastructureDetails.rst new file mode 100644 index 0000000000..0996511e54 --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.ActivateInfrastructureDetails.rst @@ -0,0 +1,11 @@ +ActivateInfrastructureDetails +============================= + +.. currentmodule:: oci.datacc.models + +.. autoclass:: ActivateInfrastructureDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.ChangeInfrastructureCompartmentDetails.rst b/docs/api/datacc/models/oci.datacc.models.ChangeInfrastructureCompartmentDetails.rst new file mode 100644 index 0000000000..ae571be87a --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.ChangeInfrastructureCompartmentDetails.rst @@ -0,0 +1,11 @@ +ChangeInfrastructureCompartmentDetails +====================================== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: ChangeInfrastructureCompartmentDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.ChangeVmClusterNetworkCompartmentDetails.rst b/docs/api/datacc/models/oci.datacc.models.ChangeVmClusterNetworkCompartmentDetails.rst new file mode 100644 index 0000000000..16e9895173 --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.ChangeVmClusterNetworkCompartmentDetails.rst @@ -0,0 +1,11 @@ +ChangeVmClusterNetworkCompartmentDetails +======================================== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: ChangeVmClusterNetworkCompartmentDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.ChangeVmInstanceCompartmentDetails.rst b/docs/api/datacc/models/oci.datacc.models.ChangeVmInstanceCompartmentDetails.rst new file mode 100644 index 0000000000..fe50fbad61 --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.ChangeVmInstanceCompartmentDetails.rst @@ -0,0 +1,11 @@ +ChangeVmInstanceCompartmentDetails +================================== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: ChangeVmInstanceCompartmentDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.ComputeCapacityDetails.rst b/docs/api/datacc/models/oci.datacc.models.ComputeCapacityDetails.rst new file mode 100644 index 0000000000..199ff2f93e --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.ComputeCapacityDetails.rst @@ -0,0 +1,11 @@ +ComputeCapacityDetails +====================== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: ComputeCapacityDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.CreateInfrastructureDetails.rst b/docs/api/datacc/models/oci.datacc.models.CreateInfrastructureDetails.rst new file mode 100644 index 0000000000..88b8029948 --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.CreateInfrastructureDetails.rst @@ -0,0 +1,11 @@ +CreateInfrastructureDetails +=========================== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: CreateInfrastructureDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.CreateVmClusterNetworkDetails.rst b/docs/api/datacc/models/oci.datacc.models.CreateVmClusterNetworkDetails.rst new file mode 100644 index 0000000000..6feb6c1f64 --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.CreateVmClusterNetworkDetails.rst @@ -0,0 +1,11 @@ +CreateVmClusterNetworkDetails +============================= + +.. currentmodule:: oci.datacc.models + +.. autoclass:: CreateVmClusterNetworkDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.CreateVmInstanceDetails.rst b/docs/api/datacc/models/oci.datacc.models.CreateVmInstanceDetails.rst new file mode 100644 index 0000000000..2dbf011fd2 --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.CreateVmInstanceDetails.rst @@ -0,0 +1,11 @@ +CreateVmInstanceDetails +======================= + +.. currentmodule:: oci.datacc.models + +.. autoclass:: CreateVmInstanceDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.DiskGroupCapacityDetails.rst b/docs/api/datacc/models/oci.datacc.models.DiskGroupCapacityDetails.rst new file mode 100644 index 0000000000..de5c6acd5b --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.DiskGroupCapacityDetails.rst @@ -0,0 +1,11 @@ +DiskGroupCapacityDetails +======================== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: DiskGroupCapacityDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.GenerateRecommendedVmClusterNetworkDetails.rst b/docs/api/datacc/models/oci.datacc.models.GenerateRecommendedVmClusterNetworkDetails.rst new file mode 100644 index 0000000000..43b881480d --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.GenerateRecommendedVmClusterNetworkDetails.rst @@ -0,0 +1,11 @@ +GenerateRecommendedVmClusterNetworkDetails +========================================== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: GenerateRecommendedVmClusterNetworkDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.InfoVmNetworkDetails.rst b/docs/api/datacc/models/oci.datacc.models.InfoVmNetworkDetails.rst new file mode 100644 index 0000000000..89e5fd31b6 --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.InfoVmNetworkDetails.rst @@ -0,0 +1,11 @@ +InfoVmNetworkDetails +==================== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: InfoVmNetworkDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.Infrastructure.rst b/docs/api/datacc/models/oci.datacc.models.Infrastructure.rst new file mode 100644 index 0000000000..1215fbf3e3 --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.Infrastructure.rst @@ -0,0 +1,11 @@ +Infrastructure +============== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: Infrastructure + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.InfrastructureCollection.rst b/docs/api/datacc/models/oci.datacc.models.InfrastructureCollection.rst new file mode 100644 index 0000000000..20f0856146 --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.InfrastructureCollection.rst @@ -0,0 +1,11 @@ +InfrastructureCollection +======================== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: InfrastructureCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.InfrastructureContact.rst b/docs/api/datacc/models/oci.datacc.models.InfrastructureContact.rst new file mode 100644 index 0000000000..b9a2c77482 --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.InfrastructureContact.rst @@ -0,0 +1,11 @@ +InfrastructureContact +===================== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: InfrastructureContact + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.InfrastructureScaleOption.rst b/docs/api/datacc/models/oci.datacc.models.InfrastructureScaleOption.rst new file mode 100644 index 0000000000..3b49c1ebdf --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.InfrastructureScaleOption.rst @@ -0,0 +1,11 @@ +InfrastructureScaleOption +========================= + +.. currentmodule:: oci.datacc.models + +.. autoclass:: InfrastructureScaleOption + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.InfrastructureServer.rst b/docs/api/datacc/models/oci.datacc.models.InfrastructureServer.rst new file mode 100644 index 0000000000..8426870217 --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.InfrastructureServer.rst @@ -0,0 +1,11 @@ +InfrastructureServer +==================== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: InfrastructureServer + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.InfrastructureSummary.rst b/docs/api/datacc/models/oci.datacc.models.InfrastructureSummary.rst new file mode 100644 index 0000000000..8d9a737ee9 --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.InfrastructureSummary.rst @@ -0,0 +1,11 @@ +InfrastructureSummary +===================== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: InfrastructureSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.MaintenanceExecution.rst b/docs/api/datacc/models/oci.datacc.models.MaintenanceExecution.rst new file mode 100644 index 0000000000..8d710e739e --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.MaintenanceExecution.rst @@ -0,0 +1,11 @@ +MaintenanceExecution +==================== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: MaintenanceExecution + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.MaintenanceExecutionCollection.rst b/docs/api/datacc/models/oci.datacc.models.MaintenanceExecutionCollection.rst new file mode 100644 index 0000000000..e685ae454f --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.MaintenanceExecutionCollection.rst @@ -0,0 +1,11 @@ +MaintenanceExecutionCollection +============================== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: MaintenanceExecutionCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.MaintenanceExecutionSummary.rst b/docs/api/datacc/models/oci.datacc.models.MaintenanceExecutionSummary.rst new file mode 100644 index 0000000000..f23ee79e3f --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.MaintenanceExecutionSummary.rst @@ -0,0 +1,11 @@ +MaintenanceExecutionSummary +=========================== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: MaintenanceExecutionSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.MaintenanceRun.rst b/docs/api/datacc/models/oci.datacc.models.MaintenanceRun.rst new file mode 100644 index 0000000000..730500d1a5 --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.MaintenanceRun.rst @@ -0,0 +1,11 @@ +MaintenanceRun +============== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: MaintenanceRun + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.MaintenanceRunCollection.rst b/docs/api/datacc/models/oci.datacc.models.MaintenanceRunCollection.rst new file mode 100644 index 0000000000..9ab676f020 --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.MaintenanceRunCollection.rst @@ -0,0 +1,11 @@ +MaintenanceRunCollection +======================== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: MaintenanceRunCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.MaintenanceRunSummary.rst b/docs/api/datacc/models/oci.datacc.models.MaintenanceRunSummary.rst new file mode 100644 index 0000000000..c14d431812 --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.MaintenanceRunSummary.rst @@ -0,0 +1,11 @@ +MaintenanceRunSummary +===================== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: MaintenanceRunSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.MaintenanceWindow.rst b/docs/api/datacc/models/oci.datacc.models.MaintenanceWindow.rst new file mode 100644 index 0000000000..07208e7eb6 --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.MaintenanceWindow.rst @@ -0,0 +1,11 @@ +MaintenanceWindow +================= + +.. currentmodule:: oci.datacc.models + +.. autoclass:: MaintenanceWindow + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.NodeDetails.rst b/docs/api/datacc/models/oci.datacc.models.NodeDetails.rst new file mode 100644 index 0000000000..e4d53f1605 --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.NodeDetails.rst @@ -0,0 +1,11 @@ +NodeDetails +=========== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: NodeDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.RescheduleMaintenanceRunDetails.rst b/docs/api/datacc/models/oci.datacc.models.RescheduleMaintenanceRunDetails.rst new file mode 100644 index 0000000000..503e56df68 --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.RescheduleMaintenanceRunDetails.rst @@ -0,0 +1,11 @@ +RescheduleMaintenanceRunDetails +=============================== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: RescheduleMaintenanceRunDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.ScaleInfrastructureStorageDetails.rst b/docs/api/datacc/models/oci.datacc.models.ScaleInfrastructureStorageDetails.rst new file mode 100644 index 0000000000..35f9d53874 --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.ScaleInfrastructureStorageDetails.rst @@ -0,0 +1,11 @@ +ScaleInfrastructureStorageDetails +================================= + +.. currentmodule:: oci.datacc.models + +.. autoclass:: ScaleInfrastructureStorageDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.ScaleVmInstanceDetails.rst b/docs/api/datacc/models/oci.datacc.models.ScaleVmInstanceDetails.rst new file mode 100644 index 0000000000..a14cd45295 --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.ScaleVmInstanceDetails.rst @@ -0,0 +1,11 @@ +ScaleVmInstanceDetails +====================== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: ScaleVmInstanceDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.ScanDetails.rst b/docs/api/datacc/models/oci.datacc.models.ScanDetails.rst new file mode 100644 index 0000000000..2a22b566bf --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.ScanDetails.rst @@ -0,0 +1,11 @@ +ScanDetails +=========== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: ScanDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.StorageCapacityDetails.rst b/docs/api/datacc/models/oci.datacc.models.StorageCapacityDetails.rst new file mode 100644 index 0000000000..de5195a66a --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.StorageCapacityDetails.rst @@ -0,0 +1,11 @@ +StorageCapacityDetails +====================== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: StorageCapacityDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.SystemStorageCapacityDetails.rst b/docs/api/datacc/models/oci.datacc.models.SystemStorageCapacityDetails.rst new file mode 100644 index 0000000000..3ec0f23dea --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.SystemStorageCapacityDetails.rst @@ -0,0 +1,11 @@ +SystemStorageCapacityDetails +============================ + +.. currentmodule:: oci.datacc.models + +.. autoclass:: SystemStorageCapacityDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.UpdateInfrastructureDetails.rst b/docs/api/datacc/models/oci.datacc.models.UpdateInfrastructureDetails.rst new file mode 100644 index 0000000000..bebc0521aa --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.UpdateInfrastructureDetails.rst @@ -0,0 +1,11 @@ +UpdateInfrastructureDetails +=========================== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: UpdateInfrastructureDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.UpdateMaintenanceRunDetails.rst b/docs/api/datacc/models/oci.datacc.models.UpdateMaintenanceRunDetails.rst new file mode 100644 index 0000000000..6c9538a64a --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.UpdateMaintenanceRunDetails.rst @@ -0,0 +1,11 @@ +UpdateMaintenanceRunDetails +=========================== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: UpdateMaintenanceRunDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.UpdateVmClusterNetworkDetails.rst b/docs/api/datacc/models/oci.datacc.models.UpdateVmClusterNetworkDetails.rst new file mode 100644 index 0000000000..b9a8aceec7 --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.UpdateVmClusterNetworkDetails.rst @@ -0,0 +1,11 @@ +UpdateVmClusterNetworkDetails +============================= + +.. currentmodule:: oci.datacc.models + +.. autoclass:: UpdateVmClusterNetworkDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.UpdateVmInstanceDetails.rst b/docs/api/datacc/models/oci.datacc.models.UpdateVmInstanceDetails.rst new file mode 100644 index 0000000000..78a829fc58 --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.UpdateVmInstanceDetails.rst @@ -0,0 +1,11 @@ +UpdateVmInstanceDetails +======================= + +.. currentmodule:: oci.datacc.models + +.. autoclass:: UpdateVmInstanceDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.ValidateInfrastructureDetails.rst b/docs/api/datacc/models/oci.datacc.models.ValidateInfrastructureDetails.rst new file mode 100644 index 0000000000..c952134cbc --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.ValidateInfrastructureDetails.rst @@ -0,0 +1,11 @@ +ValidateInfrastructureDetails +============================= + +.. currentmodule:: oci.datacc.models + +.. autoclass:: ValidateInfrastructureDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.VmClusterNetwork.rst b/docs/api/datacc/models/oci.datacc.models.VmClusterNetwork.rst new file mode 100644 index 0000000000..04dc1d09cc --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.VmClusterNetwork.rst @@ -0,0 +1,11 @@ +VmClusterNetwork +================ + +.. currentmodule:: oci.datacc.models + +.. autoclass:: VmClusterNetwork + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.VmClusterNetworkCollection.rst b/docs/api/datacc/models/oci.datacc.models.VmClusterNetworkCollection.rst new file mode 100644 index 0000000000..f334217aa6 --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.VmClusterNetworkCollection.rst @@ -0,0 +1,11 @@ +VmClusterNetworkCollection +========================== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: VmClusterNetworkCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.VmClusterNetworkSummary.rst b/docs/api/datacc/models/oci.datacc.models.VmClusterNetworkSummary.rst new file mode 100644 index 0000000000..8c37a1fdf9 --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.VmClusterNetworkSummary.rst @@ -0,0 +1,11 @@ +VmClusterNetworkSummary +======================= + +.. currentmodule:: oci.datacc.models + +.. autoclass:: VmClusterNetworkSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.VmInstance.rst b/docs/api/datacc/models/oci.datacc.models.VmInstance.rst new file mode 100644 index 0000000000..47fdfcb58f --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.VmInstance.rst @@ -0,0 +1,11 @@ +VmInstance +========== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: VmInstance + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.VmInstanceCollection.rst b/docs/api/datacc/models/oci.datacc.models.VmInstanceCollection.rst new file mode 100644 index 0000000000..738bc22ef2 --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.VmInstanceCollection.rst @@ -0,0 +1,11 @@ +VmInstanceCollection +==================== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: VmInstanceCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.VmInstanceSummary.rst b/docs/api/datacc/models/oci.datacc.models.VmInstanceSummary.rst new file mode 100644 index 0000000000..ea23d7ec61 --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.VmInstanceSummary.rst @@ -0,0 +1,11 @@ +VmInstanceSummary +================= + +.. currentmodule:: oci.datacc.models + +.. autoclass:: VmInstanceSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.VmNetworkDetails.rst b/docs/api/datacc/models/oci.datacc.models.VmNetworkDetails.rst new file mode 100644 index 0000000000..8f7d4cf6a6 --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.VmNetworkDetails.rst @@ -0,0 +1,11 @@ +VmNetworkDetails +================ + +.. currentmodule:: oci.datacc.models + +.. autoclass:: VmNetworkDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.WorkRequest.rst b/docs/api/datacc/models/oci.datacc.models.WorkRequest.rst new file mode 100644 index 0000000000..480c7901d6 --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.WorkRequest.rst @@ -0,0 +1,11 @@ +WorkRequest +=========== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: WorkRequest + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.WorkRequestCollection.rst b/docs/api/datacc/models/oci.datacc.models.WorkRequestCollection.rst new file mode 100644 index 0000000000..9160cf4251 --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.WorkRequestCollection.rst @@ -0,0 +1,11 @@ +WorkRequestCollection +===================== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: WorkRequestCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.WorkRequestError.rst b/docs/api/datacc/models/oci.datacc.models.WorkRequestError.rst new file mode 100644 index 0000000000..fb0209ce50 --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.WorkRequestError.rst @@ -0,0 +1,11 @@ +WorkRequestError +================ + +.. currentmodule:: oci.datacc.models + +.. autoclass:: WorkRequestError + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.WorkRequestErrorCollection.rst b/docs/api/datacc/models/oci.datacc.models.WorkRequestErrorCollection.rst new file mode 100644 index 0000000000..3ad5cbcd21 --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.WorkRequestErrorCollection.rst @@ -0,0 +1,11 @@ +WorkRequestErrorCollection +========================== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: WorkRequestErrorCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.WorkRequestLogEntry.rst b/docs/api/datacc/models/oci.datacc.models.WorkRequestLogEntry.rst new file mode 100644 index 0000000000..0991bb93e4 --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.WorkRequestLogEntry.rst @@ -0,0 +1,11 @@ +WorkRequestLogEntry +=================== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: WorkRequestLogEntry + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.WorkRequestLogEntryCollection.rst b/docs/api/datacc/models/oci.datacc.models.WorkRequestLogEntryCollection.rst new file mode 100644 index 0000000000..6574bbf9e9 --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.WorkRequestLogEntryCollection.rst @@ -0,0 +1,11 @@ +WorkRequestLogEntryCollection +============================= + +.. currentmodule:: oci.datacc.models + +.. autoclass:: WorkRequestLogEntryCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/datacc/models/oci.datacc.models.WorkRequestResource.rst b/docs/api/datacc/models/oci.datacc.models.WorkRequestResource.rst new file mode 100644 index 0000000000..8d1584a586 --- /dev/null +++ b/docs/api/datacc/models/oci.datacc.models.WorkRequestResource.rst @@ -0,0 +1,11 @@ +WorkRequestResource +=================== + +.. currentmodule:: oci.datacc.models + +.. autoclass:: WorkRequestResource + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/generative_ai.rst b/docs/api/generative_ai.rst index 7b630a5ce4..c03d84f10f 100644 --- a/docs/api/generative_ai.rst +++ b/docs/api/generative_ai.rst @@ -47,7 +47,9 @@ Generative Ai oci.generative_ai.models.CreateEndpointDetails oci.generative_ai.models.CreateGenerativeAiPrivateEndpointDetails oci.generative_ai.models.CreateGenerativeAiProjectDetails + oci.generative_ai.models.CreateHostedApplicationBaseDetails oci.generative_ai.models.CreateHostedApplicationDetails + oci.generative_ai.models.CreateHostedApplicationIamDetails oci.generative_ai.models.CreateHostedApplicationStorageDetails oci.generative_ai.models.CreateHostedDeploymentDetails oci.generative_ai.models.CreateImportedModelDetails @@ -85,7 +87,9 @@ Generative Ai oci.generative_ai.models.GenerativeAiProjectCollection oci.generative_ai.models.GenerativeAiProjectSummary oci.generative_ai.models.HostedApplication + oci.generative_ai.models.HostedApplicationBase oci.generative_ai.models.HostedApplicationCollection + oci.generative_ai.models.HostedApplicationIam oci.generative_ai.models.HostedApplicationStorage oci.generative_ai.models.HostedApplicationStorageCollection oci.generative_ai.models.HostedApplicationStorageSummary @@ -146,7 +150,9 @@ Generative Ai oci.generative_ai.models.UpdateEndpointDetails oci.generative_ai.models.UpdateGenerativeAiPrivateEndpointDetails oci.generative_ai.models.UpdateGenerativeAiProjectDetails + oci.generative_ai.models.UpdateHostedApplicationBaseDetails oci.generative_ai.models.UpdateHostedApplicationDetails + oci.generative_ai.models.UpdateHostedApplicationIamDetails oci.generative_ai.models.UpdateHostedDeploymentDetails oci.generative_ai.models.UpdateImportedModelDetails oci.generative_ai.models.UpdateModelDetails diff --git a/docs/api/generative_ai/models/oci.generative_ai.models.CreateHostedApplicationBaseDetails.rst b/docs/api/generative_ai/models/oci.generative_ai.models.CreateHostedApplicationBaseDetails.rst new file mode 100644 index 0000000000..4404c41972 --- /dev/null +++ b/docs/api/generative_ai/models/oci.generative_ai.models.CreateHostedApplicationBaseDetails.rst @@ -0,0 +1,11 @@ +CreateHostedApplicationBaseDetails +================================== + +.. currentmodule:: oci.generative_ai.models + +.. autoclass:: CreateHostedApplicationBaseDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/generative_ai/models/oci.generative_ai.models.CreateHostedApplicationIamDetails.rst b/docs/api/generative_ai/models/oci.generative_ai.models.CreateHostedApplicationIamDetails.rst new file mode 100644 index 0000000000..1aa53bac70 --- /dev/null +++ b/docs/api/generative_ai/models/oci.generative_ai.models.CreateHostedApplicationIamDetails.rst @@ -0,0 +1,11 @@ +CreateHostedApplicationIamDetails +================================= + +.. currentmodule:: oci.generative_ai.models + +.. autoclass:: CreateHostedApplicationIamDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/generative_ai/models/oci.generative_ai.models.HostedApplicationBase.rst b/docs/api/generative_ai/models/oci.generative_ai.models.HostedApplicationBase.rst new file mode 100644 index 0000000000..05297678f1 --- /dev/null +++ b/docs/api/generative_ai/models/oci.generative_ai.models.HostedApplicationBase.rst @@ -0,0 +1,11 @@ +HostedApplicationBase +===================== + +.. currentmodule:: oci.generative_ai.models + +.. autoclass:: HostedApplicationBase + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/generative_ai/models/oci.generative_ai.models.HostedApplicationIam.rst b/docs/api/generative_ai/models/oci.generative_ai.models.HostedApplicationIam.rst new file mode 100644 index 0000000000..46c88d7096 --- /dev/null +++ b/docs/api/generative_ai/models/oci.generative_ai.models.HostedApplicationIam.rst @@ -0,0 +1,11 @@ +HostedApplicationIam +==================== + +.. currentmodule:: oci.generative_ai.models + +.. autoclass:: HostedApplicationIam + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/generative_ai/models/oci.generative_ai.models.UpdateHostedApplicationBaseDetails.rst b/docs/api/generative_ai/models/oci.generative_ai.models.UpdateHostedApplicationBaseDetails.rst new file mode 100644 index 0000000000..07e0bb5968 --- /dev/null +++ b/docs/api/generative_ai/models/oci.generative_ai.models.UpdateHostedApplicationBaseDetails.rst @@ -0,0 +1,11 @@ +UpdateHostedApplicationBaseDetails +================================== + +.. currentmodule:: oci.generative_ai.models + +.. autoclass:: UpdateHostedApplicationBaseDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/generative_ai/models/oci.generative_ai.models.UpdateHostedApplicationIamDetails.rst b/docs/api/generative_ai/models/oci.generative_ai.models.UpdateHostedApplicationIamDetails.rst new file mode 100644 index 0000000000..147bca2ff1 --- /dev/null +++ b/docs/api/generative_ai/models/oci.generative_ai.models.UpdateHostedApplicationIamDetails.rst @@ -0,0 +1,11 @@ +UpdateHostedApplicationIamDetails +================================= + +.. currentmodule:: oci.generative_ai.models + +.. autoclass:: UpdateHostedApplicationIamDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/landing.rst b/docs/api/landing.rst index a4d8a94d31..485045131c 100644 --- a/docs/api/landing.rst +++ b/docs/api/landing.rst @@ -29,6 +29,7 @@ API Reference * :doc:`Attributes ` * :doc:`Audit ` * :doc:`Auto Scaling ` +* :doc:`Baseinfra ` * :doc:`Bastion ` * :doc:`Batch Computing ` * :doc:`Bds ` @@ -390,6 +391,7 @@ API Reference database_migration database_tools database_tools_runtime + datacc dblm dbmulticloud delegate_access_control diff --git a/docs/logging.rst b/docs/logging.rst index d8376cc1a5..df2ce577aa 100644 --- a/docs/logging.rst +++ b/docs/logging.rst @@ -90,6 +90,27 @@ The oci module has logging at the following levels: The raw response body is not logged. +Sensitive Data Redaction +======================== +When request logging and/or debug output is enabled, the SDK redacts common credential-bearing values before writing +request/response details to logs. This includes common authorization and token fields (for example, ``Authorization``, +``opc-obo-token``, ``subject_token``, ``client_secret``, and other token/key-like fields), as well as token-like values +found in query-string style data. + +For consistency with cross-SDK redaction behavior, sensitive HTTP header values are replaced with ``REDACTED``. +Header-name matching is normalization-aware (case-insensitive; treats ``_`` and ``-`` as equivalent delimiters), and +includes: + +* Exact sensitive header names (for example ``authorization``, ``proxy-authorization``, ``opc-obo-token``, ``x-api-key``, + ``cookie``, ``set-cookie``, ``security-context``, ``password``, ``passphrase``) +* Explicit auth/key families (for example ``x-token*``, ``x-authorization*``, ``x-key-*``) +* Credential-bearing suffixes (for example ``access-token``, ``refresh-token``, ``id-token``, ``security-token``, + ``session-token``, ``delegation-token``, ``client-secret``, ``private-key``) + +Redaction applies to SDK-emitted logging paths, including diagnostic request/response dumps and related error messages. +Application-specific logging, custom middleware, or direct printing of request/response payloads remain the +responsibility of the application. + Disable Logging ================ To disable particular client's logging, just need to disable the corresponding logger diff --git a/examples/showoci/CHANGELOG.rst b/examples/showoci/CHANGELOG.rst index 603d3343d2..883427ed1c 100644 --- a/examples/showoci/CHANGELOG.rst +++ b/examples/showoci/CHANGELOG.rst @@ -4,6 +4,11 @@ All notable changes to this project will be documented in this file. The format is based on `Keep a Changelog `_. +===================== +26.04.23 - 26.04.23 +===================== +* Added groups attribute for IAM Domain list users + ===================== 26.04.01 - 26.04.01 ===================== diff --git a/examples/showoci/showoci_service.py b/examples/showoci/showoci_service.py index 5d36fae04e..5328c197eb 100644 --- a/examples/showoci/showoci_service.py +++ b/examples/showoci/showoci_service.py @@ -21097,6 +21097,24 @@ def __load_identity_domain_users(self, identity_domain_client, domain_name): retry_strategy=oci.retry.DEFAULT_RETRY_STRATEGY ).data + # 2026-04-24, it seems groups was removed from the default attributes, + # therefore querying groups and id and merge the results + users_groups = self.__list_call_get_all_results( + identity_domain_client.list_users, + attribute_sets=["all"], + attributes="id,groups", + sort_by="UserName", + count=500, + retry_strategy=oci.retry.DEFAULT_RETRY_STRATEGY + ).data + + # assign groups from users_group to users array + group_lookup = {ug.id: ug.groups for ug in users_groups} + + # Assign groups to users + for user in users: + user.groups = group_lookup.get(user.id, []) + # oci.identity_domains.models.User for var in users: if var.delete_in_progress: diff --git a/pyproject.toml b/pyproject.toml index e96b9c27ec..05d81e88bc 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -53,6 +53,8 @@ dependencies = [ "urllib3>=2.6.3; python_version >= '3.10.0'", "PyJWT==2.4.0; python_version < '3.9'", "PyJWT>=2.12.0; python_version >= '3.9'", + "crc32c==2.5; python_version == '3.6'", + "crc32c==2.8.0; python_version >= '3.7'" ] [project.optional-dependencies] diff --git a/setup.py b/setup.py index f2fd443b1c..aef85adbf9 100644 --- a/setup.py +++ b/setup.py @@ -40,10 +40,10 @@ def open_relative(*path): "circuitbreaker>=1.3.1,<3.0.0; python_version >= '3.7'", "urllib3==1.26.20; python_version < '3.10.0'", "urllib3>=2.6.3; python_version >= '3.10.0'", - "crc32c==2.5; python_version == '3.6'", - "crc32c==2.7.1; python_version >= '3.7'", "PyJWT==2.4.0; python_version < '3.9'", "PyJWT>=2.12.0; python_version >= '3.9'", + "crc32c==2.5; python_version == '3.6'", + "crc32c==2.8.0; python_version >= '3.7'" ] extras_require = { diff --git a/src/oci/__init__.py b/src/oci/__init__.py index 82dcab2f7a..ff65e4fd63 100644 --- a/src/oci/__init__.py +++ b/src/oci/__init__.py @@ -19,7 +19,7 @@ else: __all__ = [ "BaseClient", "Request", "Response", "Signer", "config", "constants", "decorators", "exceptions", "regions", "wait_until", "pagination", "auth", "retry", "fips", "circuit_breaker", "developer_tool_configuration", - "access_governance_cp", "adm", "ai_data_platform", "ai_document", "ai_language", "ai_speech", "ai_vision", "analytics", "announcements_service", "api_platform", "apiaccesscontrol", "apigateway", "apm_config", "apm_control_plane", "apm_synthetics", "apm_traces", "appmgmt_control", "artifacts", "audit", "autoscaling", "bastion", "batch", "bds", "blockchain", "budget", "capacity_management", "certificates", "certificates_management", "cims", "cloud_bridge", "cloud_guard", "cloud_migrations", "cluster_placement_groups", "compute_cloud_at_customer", "compute_instance_agent", "container_engine", "container_instances", "container_registry", "core", "costad", "dashboard_service", "data_catalog", "data_flow", "data_integration", "data_labeling_service", "data_labeling_service_dataplane", "data_safe", "data_science", "database", "database_management", "database_migration", "database_tools", "database_tools_runtime", "dblm", "dbmulticloud", "delegate_access_control", "demand_signal", "desktops", "devops", "dif", "disaster_recovery", "distributed_database", "dns", "em_warehouse", "email", "email_data_plane", "events", "file_storage", "fleet_apps_management", "fleet_software_update", "functions", "fusion_apps", "gdp", "generative_ai", "generative_ai_agent", "generative_ai_agent_runtime", "generative_ai_data", "generative_ai_inference", "generic_artifacts_content", "golden_gate", "governance_rules_control_plane", "healthchecks", "identity", "identity_data_plane", "identity_domains", "integration", "iot", "jms", "jms_java_downloads", "jms_utils", "key_management", "license_manager", "limits", "limits_increase", "load_balancer", "lockbox", "log_analytics", "logging", "loggingingestion", "loggingsearch", "lustre_file_storage", "managed_kafka", "management_agent", "management_dashboard", "marketplace", "marketplace_private_offer", "marketplace_publisher", "media_services", "mngdmac", "model_deployment", "monitoring", "multicloud", "mysql", "network_firewall", "network_load_balancer", "nosql", "object_storage", "oce", "oci_control_center", "ocvp", "oda", "onesubscription", "ons", "opa", "opensearch", "operator_access_control", "opsi", "optimizer", "os_management_hub", "osp_gateway", "osub_billing_schedule", "osub_organization_subscription", "osub_subscription", "osub_usage", "psa", "psql", "queue", "recovery", "redis", "resource_analytics", "resource_manager", "resource_scheduler", "resource_search", "rover", "sch", "secrets", "security_attribute", "self", "service_catalog", "service_manager_proxy", "stack_monitoring", "streaming", "tenant_manager_control_plane", "threat_intelligence", "usage", "usage_api", "vault", "vbs_inst", "visual_builder", "vn_monitoring", "vulnerability_scanning", "waa", "waas", "waf", "wlms", "work_requests", "zpr" + "access_governance_cp", "adm", "ai_data_platform", "ai_document", "ai_language", "ai_speech", "ai_vision", "analytics", "announcements_service", "api_platform", "apiaccesscontrol", "apigateway", "apm_config", "apm_control_plane", "apm_synthetics", "apm_traces", "appmgmt_control", "artifacts", "audit", "autoscaling", "bastion", "batch", "bds", "blockchain", "budget", "capacity_management", "certificates", "certificates_management", "cims", "cloud_bridge", "cloud_guard", "cloud_migrations", "cluster_placement_groups", "compute_cloud_at_customer", "compute_instance_agent", "container_engine", "container_instances", "container_registry", "core", "costad", "dashboard_service", "data_catalog", "data_flow", "data_integration", "data_labeling_service", "data_labeling_service_dataplane", "data_safe", "data_science", "database", "database_management", "database_migration", "database_tools", "database_tools_runtime", "datacc", "dblm", "dbmulticloud", "delegate_access_control", "demand_signal", "desktops", "devops", "dif", "disaster_recovery", "distributed_database", "dns", "em_warehouse", "email", "email_data_plane", "events", "file_storage", "fleet_apps_management", "fleet_software_update", "functions", "fusion_apps", "gdp", "generative_ai", "generative_ai_agent", "generative_ai_agent_runtime", "generative_ai_data", "generative_ai_inference", "generic_artifacts_content", "golden_gate", "governance_rules_control_plane", "healthchecks", "identity", "identity_data_plane", "identity_domains", "integration", "iot", "jms", "jms_java_downloads", "jms_utils", "key_management", "license_manager", "limits", "limits_increase", "load_balancer", "lockbox", "log_analytics", "logging", "loggingingestion", "loggingsearch", "lustre_file_storage", "managed_kafka", "management_agent", "management_dashboard", "marketplace", "marketplace_private_offer", "marketplace_publisher", "media_services", "mngdmac", "model_deployment", "monitoring", "multicloud", "mysql", "network_firewall", "network_load_balancer", "nosql", "object_storage", "oce", "oci_control_center", "ocvp", "oda", "onesubscription", "ons", "opa", "opensearch", "operator_access_control", "opsi", "optimizer", "os_management_hub", "osp_gateway", "osub_billing_schedule", "osub_organization_subscription", "osub_subscription", "osub_usage", "psa", "psql", "queue", "recovery", "redis", "resource_analytics", "resource_manager", "resource_scheduler", "resource_search", "rover", "sch", "secrets", "security_attribute", "self", "service_catalog", "service_manager_proxy", "stack_monitoring", "streaming", "tenant_manager_control_plane", "threat_intelligence", "usage", "usage_api", "vault", "vbs_inst", "visual_builder", "vn_monitoring", "vulnerability_scanning", "waa", "waas", "waf", "wlms", "work_requests", "zpr" ] if sys.version_info >= (3, 7) and os.getenv("OCI_PYTHON_SDK_LAZY_IMPORTS_DISABLED", "False").lower() != "true": def __getattr__(x): @@ -30,4 +30,4 @@ def __getattr__(x): return importlib.import_module(__name__ + "." + x) raise AttributeError("module " + __name__ + " has no attribute" + x) else: - from . import access_governance_cp, adm, ai_data_platform, ai_document, ai_language, ai_speech, ai_vision, analytics, announcements_service, api_platform, apiaccesscontrol, apigateway, apm_config, apm_control_plane, apm_synthetics, apm_traces, appmgmt_control, artifacts, audit, autoscaling, bastion, batch, bds, blockchain, budget, capacity_management, certificates, certificates_management, cims, cloud_bridge, cloud_guard, cloud_migrations, cluster_placement_groups, compute_cloud_at_customer, compute_instance_agent, container_engine, container_instances, container_registry, core, costad, dashboard_service, data_catalog, data_flow, data_integration, data_labeling_service, data_labeling_service_dataplane, data_safe, data_science, database, database_management, database_migration, database_tools, database_tools_runtime, dblm, dbmulticloud, delegate_access_control, demand_signal, desktops, devops, dif, disaster_recovery, distributed_database, dns, em_warehouse, email, email_data_plane, events, file_storage, fleet_apps_management, fleet_software_update, functions, fusion_apps, gdp, generative_ai, generative_ai_agent, generative_ai_agent_runtime, generative_ai_data, generative_ai_inference, generic_artifacts_content, golden_gate, governance_rules_control_plane, healthchecks, identity, identity_data_plane, identity_domains, integration, iot, jms, jms_java_downloads, jms_utils, key_management, license_manager, limits, limits_increase, load_balancer, lockbox, log_analytics, logging, loggingingestion, loggingsearch, lustre_file_storage, managed_kafka, management_agent, management_dashboard, marketplace, marketplace_private_offer, marketplace_publisher, media_services, mngdmac, model_deployment, monitoring, multicloud, mysql, network_firewall, network_load_balancer, nosql, object_storage, oce, oci_control_center, ocvp, oda, onesubscription, ons, opa, opensearch, operator_access_control, opsi, optimizer, os_management_hub, osp_gateway, osub_billing_schedule, osub_organization_subscription, osub_subscription, osub_usage, psa, psql, queue, recovery, redis, resource_analytics, resource_manager, resource_scheduler, resource_search, rover, sch, secrets, security_attribute, self, service_catalog, service_manager_proxy, stack_monitoring, streaming, tenant_manager_control_plane, threat_intelligence, usage, usage_api, vault, vbs_inst, visual_builder, vn_monitoring, vulnerability_scanning, waa, waas, waf, wlms, work_requests, zpr + from . import access_governance_cp, adm, ai_data_platform, ai_document, ai_language, ai_speech, ai_vision, analytics, announcements_service, api_platform, apiaccesscontrol, apigateway, apm_config, apm_control_plane, apm_synthetics, apm_traces, appmgmt_control, artifacts, audit, autoscaling, bastion, batch, bds, blockchain, budget, capacity_management, certificates, certificates_management, cims, cloud_bridge, cloud_guard, cloud_migrations, cluster_placement_groups, compute_cloud_at_customer, compute_instance_agent, container_engine, container_instances, container_registry, core, costad, dashboard_service, data_catalog, data_flow, data_integration, data_labeling_service, data_labeling_service_dataplane, data_safe, data_science, database, database_management, database_migration, database_tools, database_tools_runtime, datacc, dblm, dbmulticloud, delegate_access_control, demand_signal, desktops, devops, dif, disaster_recovery, distributed_database, dns, em_warehouse, email, email_data_plane, events, file_storage, fleet_apps_management, fleet_software_update, functions, fusion_apps, gdp, generative_ai, generative_ai_agent, generative_ai_agent_runtime, generative_ai_data, generative_ai_inference, generic_artifacts_content, golden_gate, governance_rules_control_plane, healthchecks, identity, identity_data_plane, identity_domains, integration, iot, jms, jms_java_downloads, jms_utils, key_management, license_manager, limits, limits_increase, load_balancer, lockbox, log_analytics, logging, loggingingestion, loggingsearch, lustre_file_storage, managed_kafka, management_agent, management_dashboard, marketplace, marketplace_private_offer, marketplace_publisher, media_services, mngdmac, model_deployment, monitoring, multicloud, mysql, network_firewall, network_load_balancer, nosql, object_storage, oce, oci_control_center, ocvp, oda, onesubscription, ons, opa, opensearch, operator_access_control, opsi, optimizer, os_management_hub, osp_gateway, osub_billing_schedule, osub_organization_subscription, osub_subscription, osub_usage, psa, psql, queue, recovery, redis, resource_analytics, resource_manager, resource_scheduler, resource_search, rover, sch, secrets, security_attribute, self, service_catalog, service_manager_proxy, stack_monitoring, streaming, tenant_manager_control_plane, threat_intelligence, usage, usage_api, vault, vbs_inst, visual_builder, vn_monitoring, vulnerability_scanning, waa, waas, waf, wlms, work_requests, zpr diff --git a/src/oci/_log_redaction.py b/src/oci/_log_redaction.py new file mode 100644 index 0000000000..3b3c0b64f4 --- /dev/null +++ b/src/oci/_log_redaction.py @@ -0,0 +1,244 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +from __future__ import absolute_import + +import re + +try: + from collections.abc import Mapping +except ImportError: + from collections import Mapping + +from ._vendor import six + + +REDACTED_VALUE = "REDACTED" + +_NORMALIZED_DELIMITER_PATTERN = re.compile(r"[_-]+") + +_EXACT_SENSITIVE_HEADER_NAMES = frozenset([ + "authorization", + "proxy-authorization", + "opc-obo-token", + "x-api-key", + "cookie", + "set-cookie", + "security-context", + "password", + "passphrase", +]) + +_SENSITIVE_HEADER_PREFIX_PATTERNS = ( + re.compile(r"^x-token(?:-|$).*"), + re.compile(r"^x-authorization(?:-|$).*"), + re.compile(r"^x-key-.*"), +) + +_SENSITIVE_HEADER_SUFFIXES = ( + "access-token", + "refresh-token", + "id-token", + "security-token", + "session-token", + "delegation-token", + "client-secret", + "private-key", +) + +_HEADER_LINE_PATTERN = re.compile(r"(?m)^([!#$%&'*+.^_`|~0-9A-Za-z_-]+)\s*:\s*([^\r\n]*)") + +_SENSITIVE_FIELD_NAMES = frozenset([ + "authorization", + "proxy-authorization", + "opc-obo-token", + "x-api-key", + "token", + "accesstoken", + "access_token", + "refreshtoken", + "refresh_token", + "idtoken", + "id_token", + "delegationtoken", + "delegation_token", + "securitytoken", + "security_token", + "sessiontoken", + "session_token", + "serviceaccounttoken", + "service_account_token", + "subject_token", + "clientsecret", + "client_secret", + "passphrase", + "password", + "privatekey", + "private_key", + "publickey", + "public_key", + "podkey", + "pod_key", + "cookie", + "setcookie", + "set_cookie", + "securitycontext", + "security_context", +]) + +_SENSITIVE_FIELD_PATTERN = ( + r"authorization|proxy-authorization|opc-obo-token|x-api-key|token|accessToken|" + r"access_token|refreshToken|refresh_token|idToken|id_token|delegationToken|" + r"delegation_token|securityToken|security_token|sessionToken|session_token|" + r"serviceAccountToken|service_account_token|subject_token|client_secret|" + r"clientSecret|passphrase|password|privateKey|private_key|publicKey|" + r"public_key|podKey|pod_key" +) + +_SENSITIVE_LOG_PATTERNS = ( + # JSON or Python-dict-like string values, for example "token":"value" or 'token': 'value'. + ( + re.compile(r"(?i)([\"'](?:" + _SENSITIVE_FIELD_PATTERN + r")[\"']\s*:\s*)([\"'])(.*?)(\2)"), + r"\1\2" + REDACTED_VALUE + r"\2", + ), + # JSON or Python-dict-like non-string scalar values, for example "token":123. + ( + re.compile(r"(?i)([\"'](?:" + _SENSITIVE_FIELD_PATTERN + r")[\"']\s*:\s*)(?![\"'])([^,}\]\s]+)"), + r"\1" + REDACTED_VALUE, + ), + # URL query strings and form bodies. + ( + re.compile(r"(?i)(^|[?&\s])((?:" + _SENSITIVE_FIELD_PATTERN + r")=)([^&\s]*)"), + r"\1\2" + REDACTED_VALUE, + ), + # Common bearer/basic token fragments outside header-dump format. + ( + re.compile(r"(?i)\b(Bearer|Basic)\s+[A-Za-z0-9._~+/=-]+"), + r"\1 " + REDACTED_VALUE, + ), + # Security tokens commonly start with ST$. + ( + re.compile(r"\bST\$[A-Za-z0-9._-]+"), + "ST$" + REDACTED_VALUE, + ), + # JWT-looking strings, including Kubernetes service account tokens. + ( + re.compile(r"\beyJ[A-Za-z0-9_-]+\.[A-Za-z0-9_-]+\.[A-Za-z0-9_-]+\b"), + REDACTED_VALUE, + ), + # PEM private keys should never be written to logs. + ( + re.compile(r"-----BEGIN [A-Z ]*PRIVATE KEY-----.*?-----END [A-Z ]*PRIVATE KEY-----", re.DOTALL), + REDACTED_VALUE, + ), +) + + +def _normalize_header_name(key): + if key is None: + return None + normalized_header_name = str(key).strip().lower() + if not normalized_header_name: + return "" + return _NORMALIZED_DELIMITER_PATTERN.sub("-", normalized_header_name) + + +def _normalize_key_name(key): + normalized_header_name = _normalize_header_name(key) + if normalized_header_name is None: + return None + return normalized_header_name.replace("-", "") + + +def _matches_sensitive_header_rules(key): + normalized_header_name = _normalize_header_name(key) + if not normalized_header_name: + return False + + if normalized_header_name in _EXACT_SENSITIVE_HEADER_NAMES: + return True + + for pattern in _SENSITIVE_HEADER_PREFIX_PATTERNS: + if pattern.match(normalized_header_name): + return True + + if normalized_header_name in _SENSITIVE_HEADER_SUFFIXES: + return True + + for suffix in _SENSITIVE_HEADER_SUFFIXES: + if normalized_header_name.endswith("-" + suffix): + return True + + return False + + +def _is_sensitive_key(key): + if key is None: + return False + + key_as_string = str(key) + normalized_key = _normalize_key_name(key_as_string) + return ( + key_as_string.lower() in _SENSITIVE_FIELD_NAMES or + normalized_key in _SENSITIVE_FIELD_NAMES or + _matches_sensitive_header_rules(key_as_string) + ) + + +def _redact_sensitive_header_value(value): + if value is None: + return None + if isinstance(value, list): + return [REDACTED_VALUE for _ in value] + if isinstance(value, tuple): + return tuple(REDACTED_VALUE for _ in value) + return REDACTED_VALUE + + +def _redact_sensitive_header_lines(value): + def _redact_header_match(match): + header_name = match.group(1) + if _matches_sensitive_header_rules(header_name): + return "{}: {}".format(header_name, REDACTED_VALUE) + return match.group(0) + + return _HEADER_LINE_PATTERN.sub(_redact_header_match, value) + + +def redact_sensitive_string_for_logs(value): + """Return a string with common credential-bearing values removed for logging.""" + if value is None: + return None + + redacted_value = value + if isinstance(redacted_value, bytes): + redacted_value = redacted_value.decode("utf-8", "replace") + elif not isinstance(redacted_value, six.string_types): + redacted_value = str(redacted_value) + + redacted_value = _redact_sensitive_header_lines(redacted_value) + + for pattern, replacement in _SENSITIVE_LOG_PATTERNS: + redacted_value = pattern.sub(replacement, redacted_value) + return redacted_value + + +def redact_sensitive_data_for_logs(value): + """Return a redacted copy of data that is about to be written to logs.""" + if isinstance(value, Mapping): + return { + key: _redact_sensitive_header_value(item) if _is_sensitive_key(key) else redact_sensitive_data_for_logs(item) + for key, item in six.iteritems(value) + } + + if isinstance(value, list): + return [redact_sensitive_data_for_logs(item) for item in value] + + if isinstance(value, tuple): + return tuple(redact_sensitive_data_for_logs(item) for item in value) + + if isinstance(value, (bytes, six.string_types)): + return redact_sensitive_string_for_logs(value) + + return value diff --git a/src/oci/ai_data_platform/ai_data_platform_client.py b/src/oci/ai_data_platform/ai_data_platform_client.py index 901ef7eaf6..a0fcaf834b 100644 --- a/src/oci/ai_data_platform/ai_data_platform_client.py +++ b/src/oci/ai_data_platform/ai_data_platform_client.py @@ -599,6 +599,137 @@ def delete_ai_data_platform(self, ai_data_platform_id, **kwargs): api_reference_link=api_reference_link, required_arguments=required_arguments) + def enable_ai_feature(self, ai_data_platform_id, enable_ai_feature_details, **kwargs): + """ + The AiDataPlatform will be enabled with AI features + + + :param str ai_data_platform_id: (required) + The `OCID`__ of the AiDataPlatform. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param oci.ai_data_platform.models.EnableAiFeatureDetails enable_ai_feature_details: (required) + The information to be updated. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the + `if-match` parameter to the value of the etag from a previous GET or POST response for + that resource. The resource will be updated or deleted only if the etag you provide + matches the resource's current etag value. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of running that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and removed from the system, then a retry of the original creation request + might be rejected. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use enable_ai_feature API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['aiDataPlatformId'] + resource_path = "/aiDataPlatforms/{aiDataPlatformId}/actions/enableAiFeature" + method = "POST" + operation_name = "enable_ai_feature" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/ai-data-platform/20240831/AiDataPlatform/EnableAiFeature" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id", + "opc_retry_token" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"enable_ai_feature got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "aiDataPlatformId": ai_data_platform_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=enable_ai_feature_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=enable_ai_feature_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + def get_ai_data_platform(self, ai_data_platform_id, **kwargs): """ Gets information about a AiDataPlatform. diff --git a/src/oci/ai_data_platform/ai_data_platform_client_composite_operations.py b/src/oci/ai_data_platform/ai_data_platform_client_composite_operations.py index 0c617307b0..976310b097 100644 --- a/src/oci/ai_data_platform/ai_data_platform_client_composite_operations.py +++ b/src/oci/ai_data_platform/ai_data_platform_client_composite_operations.py @@ -157,6 +157,50 @@ def delete_ai_data_platform_and_wait_for_state(self, ai_data_platform_id, wait_f except Exception as e: raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def enable_ai_feature_and_wait_for_state(self, ai_data_platform_id, enable_ai_feature_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.ai_data_platform.AiDataPlatformClient.enable_ai_feature` and waits for the :py:class:`~oci.ai_data_platform.models.WorkRequest` + to enter the given state(s). + + :param str ai_data_platform_id: (required) + The `OCID`__ of the AiDataPlatform. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param oci.ai_data_platform.models.EnableAiFeatureDetails enable_ai_feature_details: (required) + The information to be updated. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.ai_data_platform.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.ai_data_platform.AiDataPlatformClient.enable_ai_feature` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.enable_ai_feature(ai_data_platform_id, enable_ai_feature_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def update_ai_data_platform_and_wait_for_state(self, ai_data_platform_id, update_ai_data_platform_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): """ Calls :py:func:`~oci.ai_data_platform.AiDataPlatformClient.update_ai_data_platform` and waits for the :py:class:`~oci.ai_data_platform.models.WorkRequest` diff --git a/src/oci/ai_data_platform/models/__init__.py b/src/oci/ai_data_platform/models/__init__.py index efc7c11659..2d219c9d79 100644 --- a/src/oci/ai_data_platform/models/__init__.py +++ b/src/oci/ai_data_platform/models/__init__.py @@ -11,6 +11,7 @@ from .ai_data_platform_summary import AiDataPlatformSummary from .change_ai_data_platform_compartment_details import ChangeAiDataPlatformCompartmentDetails from .create_ai_data_platform_details import CreateAiDataPlatformDetails +from .enable_ai_feature_details import EnableAiFeatureDetails from .update_ai_data_platform_details import UpdateAiDataPlatformDetails from .work_request import WorkRequest from .work_request_error import WorkRequestError @@ -28,6 +29,7 @@ "AiDataPlatformSummary": AiDataPlatformSummary, "ChangeAiDataPlatformCompartmentDetails": ChangeAiDataPlatformCompartmentDetails, "CreateAiDataPlatformDetails": CreateAiDataPlatformDetails, + "EnableAiFeatureDetails": EnableAiFeatureDetails, "UpdateAiDataPlatformDetails": UpdateAiDataPlatformDetails, "WorkRequest": WorkRequest, "WorkRequestError": WorkRequestError, diff --git a/src/oci/ai_data_platform/models/ai_data_platform.py b/src/oci/ai_data_platform/models/ai_data_platform.py index d9b5519a41..cf63f7b047 100644 --- a/src/oci/ai_data_platform/models/ai_data_platform.py +++ b/src/oci/ai_data_platform/models/ai_data_platform.py @@ -45,6 +45,22 @@ class AiDataPlatform(object): #: This constant has a value of "FAILED" LIFECYCLE_STATE_FAILED = "FAILED" + #: A constant which can be used with the ai_feature_status property of a AiDataPlatform. + #: This constant has a value of "DISABLED" + AI_FEATURE_STATUS_DISABLED = "DISABLED" + + #: A constant which can be used with the ai_feature_status property of a AiDataPlatform. + #: This constant has a value of "ENABLING" + AI_FEATURE_STATUS_ENABLING = "ENABLING" + + #: A constant which can be used with the ai_feature_status property of a AiDataPlatform. + #: This constant has a value of "READY" + AI_FEATURE_STATUS_READY = "READY" + + #: A constant which can be used with the ai_feature_status property of a AiDataPlatform. + #: This constant has a value of "FAILED" + AI_FEATURE_STATUS_FAILED = "FAILED" + def __init__(self, **kwargs): """ Initializes a new AiDataPlatform object with values from keyword arguments. @@ -92,6 +108,12 @@ def __init__(self, **kwargs): Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str + :param ai_feature_status: + The value to assign to the ai_feature_status property of this AiDataPlatform. + Allowed values for this property are: "DISABLED", "ENABLING", "READY", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type ai_feature_status: str + :param lifecycle_details: The value to assign to the lifecycle_details property of this AiDataPlatform. :type lifecycle_details: str @@ -120,6 +142,7 @@ def __init__(self, **kwargs): 'alias_key': 'str', 'web_socket_endpoint': 'str', 'lifecycle_state': 'str', + 'ai_feature_status': 'str', 'lifecycle_details': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', @@ -136,6 +159,7 @@ def __init__(self, **kwargs): 'alias_key': 'aliasKey', 'web_socket_endpoint': 'webSocketEndpoint', 'lifecycle_state': 'lifecycleState', + 'ai_feature_status': 'aiFeatureStatus', 'lifecycle_details': 'lifecycleDetails', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', @@ -151,6 +175,7 @@ def __init__(self, **kwargs): self._alias_key = None self._web_socket_endpoint = None self._lifecycle_state = None + self._ai_feature_status = None self._lifecycle_details = None self._freeform_tags = None self._defined_tags = None @@ -430,6 +455,36 @@ def lifecycle_state(self, lifecycle_state): lifecycle_state = 'UNKNOWN_ENUM_VALUE' self._lifecycle_state = lifecycle_state + @property + def ai_feature_status(self): + """ + Gets the ai_feature_status of this AiDataPlatform. + The current aiFeatureStatus of the AiDataPlatform. + + Allowed values for this property are: "DISABLED", "ENABLING", "READY", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The ai_feature_status of this AiDataPlatform. + :rtype: str + """ + return self._ai_feature_status + + @ai_feature_status.setter + def ai_feature_status(self, ai_feature_status): + """ + Sets the ai_feature_status of this AiDataPlatform. + The current aiFeatureStatus of the AiDataPlatform. + + + :param ai_feature_status: The ai_feature_status of this AiDataPlatform. + :type: str + """ + allowed_values = ["DISABLED", "ENABLING", "READY", "FAILED"] + if not value_allowed_none_or_none_sentinel(ai_feature_status, allowed_values): + ai_feature_status = 'UNKNOWN_ENUM_VALUE' + self._ai_feature_status = ai_feature_status + @property def lifecycle_details(self): """ diff --git a/src/oci/ai_data_platform/models/ai_data_platform_summary.py b/src/oci/ai_data_platform/models/ai_data_platform_summary.py index b6aa0788c9..37a109686e 100644 --- a/src/oci/ai_data_platform/models/ai_data_platform_summary.py +++ b/src/oci/ai_data_platform/models/ai_data_platform_summary.py @@ -52,6 +52,10 @@ def __init__(self, **kwargs): The value to assign to the alias_key property of this AiDataPlatformSummary. :type alias_key: str + :param ai_feature_status: + The value to assign to the ai_feature_status property of this AiDataPlatformSummary. + :type ai_feature_status: str + :param lifecycle_state: The value to assign to the lifecycle_state property of this AiDataPlatformSummary. :type lifecycle_state: str @@ -82,6 +86,7 @@ def __init__(self, **kwargs): 'time_created': 'datetime', 'time_updated': 'datetime', 'alias_key': 'str', + 'ai_feature_status': 'str', 'lifecycle_state': 'str', 'lifecycle_details': 'str', 'freeform_tags': 'dict(str, str)', @@ -97,6 +102,7 @@ def __init__(self, **kwargs): 'time_created': 'timeCreated', 'time_updated': 'timeUpdated', 'alias_key': 'aliasKey', + 'ai_feature_status': 'aiFeatureStatus', 'lifecycle_state': 'lifecycleState', 'lifecycle_details': 'lifecycleDetails', 'freeform_tags': 'freeformTags', @@ -111,6 +117,7 @@ def __init__(self, **kwargs): self._time_created = None self._time_updated = None self._alias_key = None + self._ai_feature_status = None self._lifecycle_state = None self._lifecycle_details = None self._freeform_tags = None @@ -337,6 +344,30 @@ def alias_key(self, alias_key): """ self._alias_key = alias_key + @property + def ai_feature_status(self): + """ + Gets the ai_feature_status of this AiDataPlatformSummary. + The current aiFeatureStatus of the AiDataPlatform. + + + :return: The ai_feature_status of this AiDataPlatformSummary. + :rtype: str + """ + return self._ai_feature_status + + @ai_feature_status.setter + def ai_feature_status(self, ai_feature_status): + """ + Sets the ai_feature_status of this AiDataPlatformSummary. + The current aiFeatureStatus of the AiDataPlatform. + + + :param ai_feature_status: The ai_feature_status of this AiDataPlatformSummary. + :type: str + """ + self._ai_feature_status = ai_feature_status + @property def lifecycle_state(self): """ diff --git a/src/oci/ai_data_platform/models/create_ai_data_platform_details.py b/src/oci/ai_data_platform/models/create_ai_data_platform_details.py index 3dc07eefd7..c245a7e877 100644 --- a/src/oci/ai_data_platform/models/create_ai_data_platform_details.py +++ b/src/oci/ai_data_platform/models/create_ai_data_platform_details.py @@ -28,6 +28,22 @@ def __init__(self, **kwargs): The value to assign to the ai_data_platform_type property of this CreateAiDataPlatformDetails. :type ai_data_platform_type: str + :param is_enable_ai_feature: + The value to assign to the is_enable_ai_feature property of this CreateAiDataPlatformDetails. + :type is_enable_ai_feature: bool + + :param vector_db_id: + The value to assign to the vector_db_id property of this CreateAiDataPlatformDetails. + :type vector_db_id: str + + :param vector_db_admin_cred: + The value to assign to the vector_db_admin_cred property of this CreateAiDataPlatformDetails. + :type vector_db_admin_cred: str + + :param vector_db_admin_secret_id: + The value to assign to the vector_db_admin_secret_id property of this CreateAiDataPlatformDetails. + :type vector_db_admin_secret_id: str + :param compartment_id: The value to assign to the compartment_id property of this CreateAiDataPlatformDetails. :type compartment_id: str @@ -52,6 +68,10 @@ def __init__(self, **kwargs): self.swagger_types = { 'display_name': 'str', 'ai_data_platform_type': 'str', + 'is_enable_ai_feature': 'bool', + 'vector_db_id': 'str', + 'vector_db_admin_cred': 'str', + 'vector_db_admin_secret_id': 'str', 'compartment_id': 'str', 'default_workspace_name': 'str', 'freeform_tags': 'dict(str, str)', @@ -61,6 +81,10 @@ def __init__(self, **kwargs): self.attribute_map = { 'display_name': 'displayName', 'ai_data_platform_type': 'aiDataPlatformType', + 'is_enable_ai_feature': 'isEnableAiFeature', + 'vector_db_id': 'vectorDbId', + 'vector_db_admin_cred': 'vectorDbAdminCred', + 'vector_db_admin_secret_id': 'vectorDbAdminSecretId', 'compartment_id': 'compartmentId', 'default_workspace_name': 'defaultWorkspaceName', 'freeform_tags': 'freeformTags', @@ -69,6 +93,10 @@ def __init__(self, **kwargs): } self._display_name = None self._ai_data_platform_type = None + self._is_enable_ai_feature = None + self._vector_db_id = None + self._vector_db_admin_cred = None + self._vector_db_admin_secret_id = None self._compartment_id = None self._default_workspace_name = None self._freeform_tags = None @@ -123,6 +151,110 @@ def ai_data_platform_type(self, ai_data_platform_type): """ self._ai_data_platform_type = ai_data_platform_type + @property + def is_enable_ai_feature(self): + """ + Gets the is_enable_ai_feature of this CreateAiDataPlatformDetails. + The flag to enable/disable AiFeatures for the instance. + + + :return: The is_enable_ai_feature of this CreateAiDataPlatformDetails. + :rtype: bool + """ + return self._is_enable_ai_feature + + @is_enable_ai_feature.setter + def is_enable_ai_feature(self, is_enable_ai_feature): + """ + Sets the is_enable_ai_feature of this CreateAiDataPlatformDetails. + The flag to enable/disable AiFeatures for the instance. + + + :param is_enable_ai_feature: The is_enable_ai_feature of this CreateAiDataPlatformDetails. + :type: bool + """ + self._is_enable_ai_feature = is_enable_ai_feature + + @property + def vector_db_id(self): + """ + Gets the vector_db_id of this CreateAiDataPlatformDetails. + The `OCID`__ of the vector db Lakehouse 26ai. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The vector_db_id of this CreateAiDataPlatformDetails. + :rtype: str + """ + return self._vector_db_id + + @vector_db_id.setter + def vector_db_id(self, vector_db_id): + """ + Sets the vector_db_id of this CreateAiDataPlatformDetails. + The `OCID`__ of the vector db Lakehouse 26ai. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param vector_db_id: The vector_db_id of this CreateAiDataPlatformDetails. + :type: str + """ + self._vector_db_id = vector_db_id + + @property + def vector_db_admin_cred(self): + """ + Gets the vector_db_admin_cred of this CreateAiDataPlatformDetails. + The Vector DB Lakehouse 26ai ADMIN user password. + + + :return: The vector_db_admin_cred of this CreateAiDataPlatformDetails. + :rtype: str + """ + return self._vector_db_admin_cred + + @vector_db_admin_cred.setter + def vector_db_admin_cred(self, vector_db_admin_cred): + """ + Sets the vector_db_admin_cred of this CreateAiDataPlatformDetails. + The Vector DB Lakehouse 26ai ADMIN user password. + + + :param vector_db_admin_cred: The vector_db_admin_cred of this CreateAiDataPlatformDetails. + :type: str + """ + self._vector_db_admin_cred = vector_db_admin_cred + + @property + def vector_db_admin_secret_id(self): + """ + Gets the vector_db_admin_secret_id of this CreateAiDataPlatformDetails. + The `OCID`__ of the OCI Vault secret holding the vector db Lakehouse 26ai Admin user password. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The vector_db_admin_secret_id of this CreateAiDataPlatformDetails. + :rtype: str + """ + return self._vector_db_admin_secret_id + + @vector_db_admin_secret_id.setter + def vector_db_admin_secret_id(self, vector_db_admin_secret_id): + """ + Sets the vector_db_admin_secret_id of this CreateAiDataPlatformDetails. + The `OCID`__ of the OCI Vault secret holding the vector db Lakehouse 26ai Admin user password. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param vector_db_admin_secret_id: The vector_db_admin_secret_id of this CreateAiDataPlatformDetails. + :type: str + """ + self._vector_db_admin_secret_id = vector_db_admin_secret_id + @property def compartment_id(self): """ diff --git a/src/oci/ai_data_platform/models/enable_ai_feature_details.py b/src/oci/ai_data_platform/models/enable_ai_feature_details.py new file mode 100644 index 0000000000..8b2004a093 --- /dev/null +++ b/src/oci/ai_data_platform/models/enable_ai_feature_details.py @@ -0,0 +1,140 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20240831 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class EnableAiFeatureDetails(object): + """ + The data to enable Ai Feature for AiDataPlatform. + """ + + def __init__(self, **kwargs): + """ + Initializes a new EnableAiFeatureDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param vector_db_id: + The value to assign to the vector_db_id property of this EnableAiFeatureDetails. + :type vector_db_id: str + + :param vector_db_admin_cred: + The value to assign to the vector_db_admin_cred property of this EnableAiFeatureDetails. + :type vector_db_admin_cred: str + + :param vector_db_admin_secret_id: + The value to assign to the vector_db_admin_secret_id property of this EnableAiFeatureDetails. + :type vector_db_admin_secret_id: str + + """ + self.swagger_types = { + 'vector_db_id': 'str', + 'vector_db_admin_cred': 'str', + 'vector_db_admin_secret_id': 'str' + } + self.attribute_map = { + 'vector_db_id': 'vectorDbId', + 'vector_db_admin_cred': 'vectorDbAdminCred', + 'vector_db_admin_secret_id': 'vectorDbAdminSecretId' + } + self._vector_db_id = None + self._vector_db_admin_cred = None + self._vector_db_admin_secret_id = None + + @property + def vector_db_id(self): + """ + Gets the vector_db_id of this EnableAiFeatureDetails. + The `OCID`__ of the vector db Lakehouse 26ai. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The vector_db_id of this EnableAiFeatureDetails. + :rtype: str + """ + return self._vector_db_id + + @vector_db_id.setter + def vector_db_id(self, vector_db_id): + """ + Sets the vector_db_id of this EnableAiFeatureDetails. + The `OCID`__ of the vector db Lakehouse 26ai. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param vector_db_id: The vector_db_id of this EnableAiFeatureDetails. + :type: str + """ + self._vector_db_id = vector_db_id + + @property + def vector_db_admin_cred(self): + """ + Gets the vector_db_admin_cred of this EnableAiFeatureDetails. + The Vector DB Lakehouse 26ai ADMIN user password. + + + :return: The vector_db_admin_cred of this EnableAiFeatureDetails. + :rtype: str + """ + return self._vector_db_admin_cred + + @vector_db_admin_cred.setter + def vector_db_admin_cred(self, vector_db_admin_cred): + """ + Sets the vector_db_admin_cred of this EnableAiFeatureDetails. + The Vector DB Lakehouse 26ai ADMIN user password. + + + :param vector_db_admin_cred: The vector_db_admin_cred of this EnableAiFeatureDetails. + :type: str + """ + self._vector_db_admin_cred = vector_db_admin_cred + + @property + def vector_db_admin_secret_id(self): + """ + Gets the vector_db_admin_secret_id of this EnableAiFeatureDetails. + The `OCID`__ of the OCI Vault secret holding the vector db Lakehouse 26ai Admin user password. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The vector_db_admin_secret_id of this EnableAiFeatureDetails. + :rtype: str + """ + return self._vector_db_admin_secret_id + + @vector_db_admin_secret_id.setter + def vector_db_admin_secret_id(self, vector_db_admin_secret_id): + """ + Sets the vector_db_admin_secret_id of this EnableAiFeatureDetails. + The `OCID`__ of the OCI Vault secret holding the vector db Lakehouse 26ai Admin user password. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param vector_db_admin_secret_id: The vector_db_admin_secret_id of this EnableAiFeatureDetails. + :type: str + """ + self._vector_db_admin_secret_id = vector_db_admin_secret_id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/ai_data_platform/models/work_request.py b/src/oci/ai_data_platform/models/work_request.py index f5d7ebf895..89c86116c8 100644 --- a/src/oci/ai_data_platform/models/work_request.py +++ b/src/oci/ai_data_platform/models/work_request.py @@ -33,6 +33,26 @@ class WorkRequest(object): #: This constant has a value of "MOVE_DATA_LAKE" OPERATION_TYPE_MOVE_DATA_LAKE = "MOVE_DATA_LAKE" + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "CREATE_AI_DATA_PLATFORM" + OPERATION_TYPE_CREATE_AI_DATA_PLATFORM = "CREATE_AI_DATA_PLATFORM" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "UPDATE_AI_DATA_PLATFORM" + OPERATION_TYPE_UPDATE_AI_DATA_PLATFORM = "UPDATE_AI_DATA_PLATFORM" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "DELETE_AI_DATA_PLATFORM" + OPERATION_TYPE_DELETE_AI_DATA_PLATFORM = "DELETE_AI_DATA_PLATFORM" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "MOVE_AI_DATA_PLATFORM" + OPERATION_TYPE_MOVE_AI_DATA_PLATFORM = "MOVE_AI_DATA_PLATFORM" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "ENABLE_AI_FEATURES" + OPERATION_TYPE_ENABLE_AI_FEATURES = "ENABLE_AI_FEATURES" + #: A constant which can be used with the operation_type property of a WorkRequest. #: This constant has a value of "CREATE_WORKSPACE" OPERATION_TYPE_CREATE_WORKSPACE = "CREATE_WORKSPACE" @@ -88,7 +108,7 @@ def __init__(self, **kwargs): :param operation_type: The value to assign to the operation_type property of this WorkRequest. - Allowed values for this property are: "CREATE_DATA_LAKE", "UPDATE_DATA_LAKE", "DELETE_DATA_LAKE", "MOVE_DATA_LAKE", "CREATE_WORKSPACE", "UPDATE_WORKSPACE", "DELETE_WORKSPACE", "EVALUATE_IAM_POLICIES", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATE_DATA_LAKE", "UPDATE_DATA_LAKE", "DELETE_DATA_LAKE", "MOVE_DATA_LAKE", "CREATE_AI_DATA_PLATFORM", "UPDATE_AI_DATA_PLATFORM", "DELETE_AI_DATA_PLATFORM", "MOVE_AI_DATA_PLATFORM", "ENABLE_AI_FEATURES", "CREATE_WORKSPACE", "UPDATE_WORKSPACE", "DELETE_WORKSPACE", "EVALUATE_IAM_POLICIES", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type operation_type: str @@ -172,7 +192,7 @@ def operation_type(self): **[Required]** Gets the operation_type of this WorkRequest. The asynchronous operation tracked by this work request. - Allowed values for this property are: "CREATE_DATA_LAKE", "UPDATE_DATA_LAKE", "DELETE_DATA_LAKE", "MOVE_DATA_LAKE", "CREATE_WORKSPACE", "UPDATE_WORKSPACE", "DELETE_WORKSPACE", "EVALUATE_IAM_POLICIES", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATE_DATA_LAKE", "UPDATE_DATA_LAKE", "DELETE_DATA_LAKE", "MOVE_DATA_LAKE", "CREATE_AI_DATA_PLATFORM", "UPDATE_AI_DATA_PLATFORM", "DELETE_AI_DATA_PLATFORM", "MOVE_AI_DATA_PLATFORM", "ENABLE_AI_FEATURES", "CREATE_WORKSPACE", "UPDATE_WORKSPACE", "DELETE_WORKSPACE", "EVALUATE_IAM_POLICIES", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -191,7 +211,7 @@ def operation_type(self, operation_type): :param operation_type: The operation_type of this WorkRequest. :type: str """ - allowed_values = ["CREATE_DATA_LAKE", "UPDATE_DATA_LAKE", "DELETE_DATA_LAKE", "MOVE_DATA_LAKE", "CREATE_WORKSPACE", "UPDATE_WORKSPACE", "DELETE_WORKSPACE", "EVALUATE_IAM_POLICIES"] + allowed_values = ["CREATE_DATA_LAKE", "UPDATE_DATA_LAKE", "DELETE_DATA_LAKE", "MOVE_DATA_LAKE", "CREATE_AI_DATA_PLATFORM", "UPDATE_AI_DATA_PLATFORM", "DELETE_AI_DATA_PLATFORM", "MOVE_AI_DATA_PLATFORM", "ENABLE_AI_FEATURES", "CREATE_WORKSPACE", "UPDATE_WORKSPACE", "DELETE_WORKSPACE", "EVALUATE_IAM_POLICIES"] if not value_allowed_none_or_none_sentinel(operation_type, allowed_values): operation_type = 'UNKNOWN_ENUM_VALUE' self._operation_type = operation_type diff --git a/src/oci/ai_data_platform/models/work_request_summary.py b/src/oci/ai_data_platform/models/work_request_summary.py index 092a63d055..dfda0b4f75 100644 --- a/src/oci/ai_data_platform/models/work_request_summary.py +++ b/src/oci/ai_data_platform/models/work_request_summary.py @@ -31,6 +31,26 @@ class WorkRequestSummary(object): #: This constant has a value of "MOVE_DATA_LAKE" OPERATION_TYPE_MOVE_DATA_LAKE = "MOVE_DATA_LAKE" + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "CREATE_AI_DATA_PLATFORM" + OPERATION_TYPE_CREATE_AI_DATA_PLATFORM = "CREATE_AI_DATA_PLATFORM" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "UPDATE_AI_DATA_PLATFORM" + OPERATION_TYPE_UPDATE_AI_DATA_PLATFORM = "UPDATE_AI_DATA_PLATFORM" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "DELETE_AI_DATA_PLATFORM" + OPERATION_TYPE_DELETE_AI_DATA_PLATFORM = "DELETE_AI_DATA_PLATFORM" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "MOVE_AI_DATA_PLATFORM" + OPERATION_TYPE_MOVE_AI_DATA_PLATFORM = "MOVE_AI_DATA_PLATFORM" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "ENABLE_AI_FEATURES" + OPERATION_TYPE_ENABLE_AI_FEATURES = "ENABLE_AI_FEATURES" + #: A constant which can be used with the operation_type property of a WorkRequestSummary. #: This constant has a value of "CREATE_WORKSPACE" OPERATION_TYPE_CREATE_WORKSPACE = "CREATE_WORKSPACE" @@ -86,7 +106,7 @@ def __init__(self, **kwargs): :param operation_type: The value to assign to the operation_type property of this WorkRequestSummary. - Allowed values for this property are: "CREATE_DATA_LAKE", "UPDATE_DATA_LAKE", "DELETE_DATA_LAKE", "MOVE_DATA_LAKE", "CREATE_WORKSPACE", "UPDATE_WORKSPACE", "DELETE_WORKSPACE", "EVALUATE_IAM_POLICIES", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATE_DATA_LAKE", "UPDATE_DATA_LAKE", "DELETE_DATA_LAKE", "MOVE_DATA_LAKE", "CREATE_AI_DATA_PLATFORM", "UPDATE_AI_DATA_PLATFORM", "DELETE_AI_DATA_PLATFORM", "MOVE_AI_DATA_PLATFORM", "ENABLE_AI_FEATURES", "CREATE_WORKSPACE", "UPDATE_WORKSPACE", "DELETE_WORKSPACE", "EVALUATE_IAM_POLICIES", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type operation_type: str @@ -170,7 +190,7 @@ def operation_type(self): **[Required]** Gets the operation_type of this WorkRequestSummary. The asynchronous operation tracked by this work request. - Allowed values for this property are: "CREATE_DATA_LAKE", "UPDATE_DATA_LAKE", "DELETE_DATA_LAKE", "MOVE_DATA_LAKE", "CREATE_WORKSPACE", "UPDATE_WORKSPACE", "DELETE_WORKSPACE", "EVALUATE_IAM_POLICIES", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATE_DATA_LAKE", "UPDATE_DATA_LAKE", "DELETE_DATA_LAKE", "MOVE_DATA_LAKE", "CREATE_AI_DATA_PLATFORM", "UPDATE_AI_DATA_PLATFORM", "DELETE_AI_DATA_PLATFORM", "MOVE_AI_DATA_PLATFORM", "ENABLE_AI_FEATURES", "CREATE_WORKSPACE", "UPDATE_WORKSPACE", "DELETE_WORKSPACE", "EVALUATE_IAM_POLICIES", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -189,7 +209,7 @@ def operation_type(self, operation_type): :param operation_type: The operation_type of this WorkRequestSummary. :type: str """ - allowed_values = ["CREATE_DATA_LAKE", "UPDATE_DATA_LAKE", "DELETE_DATA_LAKE", "MOVE_DATA_LAKE", "CREATE_WORKSPACE", "UPDATE_WORKSPACE", "DELETE_WORKSPACE", "EVALUATE_IAM_POLICIES"] + allowed_values = ["CREATE_DATA_LAKE", "UPDATE_DATA_LAKE", "DELETE_DATA_LAKE", "MOVE_DATA_LAKE", "CREATE_AI_DATA_PLATFORM", "UPDATE_AI_DATA_PLATFORM", "DELETE_AI_DATA_PLATFORM", "MOVE_AI_DATA_PLATFORM", "ENABLE_AI_FEATURES", "CREATE_WORKSPACE", "UPDATE_WORKSPACE", "DELETE_WORKSPACE", "EVALUATE_IAM_POLICIES"] if not value_allowed_none_or_none_sentinel(operation_type, allowed_values): operation_type = 'UNKNOWN_ENUM_VALUE' self._operation_type = operation_type diff --git a/src/oci/auth/federation_client.py b/src/oci/auth/federation_client.py index 36ae2272f5..1eeea905f1 100644 --- a/src/oci/auth/federation_client.py +++ b/src/oci/auth/federation_client.py @@ -19,6 +19,7 @@ from circuitbreaker import CircuitBreakerMonitor from oci.version import __version__ from oci import constants +from oci._log_redaction import redact_sensitive_data_for_logs, redact_sensitive_string_for_logs import platform import os import random @@ -228,15 +229,21 @@ def _get_security_token_from_auth_service(self): self.logger.debug("Requesting token from : %s " % self.federation_endpoint) response = self.requests_session.post(self.federation_endpoint, json=request_payload, auth=signer, verify=self.cert_bundle_verify, timeout=(10, 60), headers={constants.HEADER_USER_AGENT: self.user_agent}) + debug_response_data = redact_sensitive_data_for_logs({ + "status_code": response.status_code, + "url": response.url, + "header": dict(response.headers.items()), + "reason": response.reason + }) self.logger.debug("Receiving token response......\n{}\n".format(pprint.pformat( - {"status_code": response.status_code, "url": response.url, "header": dict(response.headers.items()), - "reason": response.reason}, indent=2))) + debug_response_data, indent=2))) parsed_response = None try: parsed_response = response.json() except ValueError: - error_text = 'Unable to parse response from auth service ({}): {}'.format(self.federation_endpoint, response.text) + redacted_response_text = redact_sensitive_string_for_logs(response.text) + error_text = f'Unable to parse response from auth service ({self.federation_endpoint}): {redacted_response_text}' # If the response was a 2xx but unparseable, raise it straight away because it implies a potential service issue. If # we have a non-2xx but it is not parseable that is a more ambiguous scenario (e.g. could have been an issue with a @@ -265,19 +272,20 @@ def _get_security_token_from_auth_service(self): response.status_code, parsed_response.get('code'), response.headers, - parsed_response.get('message') + redact_sensitive_string_for_logs(parsed_response.get('message')) ) raise oci.exceptions.ServiceError( response.status_code, parsed_response.get('code'), response.headers, - parsed_response.get('message') + redact_sensitive_string_for_logs(parsed_response.get('message')) ) else: if 'token' in parsed_response: self.security_token = SecurityTokenContainer(self.session_key_supplier, response.json()['token']) else: - raise RuntimeError('Could not find token in response from auth service ({}): {}'.format(self.federation_endpoint, parsed_response)) + redacted_response = redact_sensitive_data_for_logs(parsed_response) + raise RuntimeError(f'Could not find token in response from auth service ({self.federation_endpoint}): {redacted_response}') class AuthTokenRequestSigner(oci.signer.AbstractBaseSigner): diff --git a/src/oci/auth/signers/instance_principals_security_token_signer.py b/src/oci/auth/signers/instance_principals_security_token_signer.py index b7d09e54c9..64626da111 100644 --- a/src/oci/auth/signers/instance_principals_security_token_signer.py +++ b/src/oci/auth/signers/instance_principals_security_token_signer.py @@ -66,9 +66,12 @@ class InstancePrincipalsSecurityTokenSigner(X509FederationClientBasedSecurityTok region, federation endpoint, and the response for receiving the token from the federation endpoint """ METADATA_URL_BASE_ENV_VAR = 'OCI_METADATA_BASE_URL' - DEFAULT_METADATA_URL_BASE = 'http://169.254.169.254/opc/v2' + IMDS_IPV4_HOST = '169.254.169.254' + IMDS_IPV6_HOST = 'fd00:c1::a9fe:a9fe' # IPv6 literal hosts in URLs must be enclosed in square brackets (RFC 3986). - DEFAULT_METADATA_URL_BASE_IPV6 = 'http://[fd00:c1::a9fe:a9fe]/opc/v2' + IMDS_IPV6_HOST_BRACKETED = '[{}]'.format(IMDS_IPV6_HOST) + DEFAULT_METADATA_URL_BASE = 'http://{}/opc/v2'.format(IMDS_IPV4_HOST) + DEFAULT_METADATA_URL_BASE_IPV6 = 'http://{}/opc/v2'.format(IMDS_IPV6_HOST_BRACKETED) METADATA_URL_BASE = DEFAULT_METADATA_URL_BASE GET_REGION_URL = '{}/instance/region'.format(DEFAULT_METADATA_URL_BASE) LEAF_CERTIFICATE_URL = '{}/identity/cert.pem'.format(DEFAULT_METADATA_URL_BASE) @@ -81,7 +84,7 @@ class InstancePrincipalsSecurityTokenSigner(X509FederationClientBasedSecurityTok "See https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/callingservicesfrominstances.htm for more info." ) - IMDS_IPV4_PROBE_HOST = '169.254.169.254' + IMDS_IPV4_PROBE_HOST = IMDS_IPV4_HOST IMDS_IPV4_PROBE_PORT = 80 IMDS_IPV4_PROBE_TIMEOUT_SECONDS = 0.2 @@ -153,7 +156,9 @@ def _get_env_override_metadata_base_url(self): env_override_metadata_base_url = env_override_metadata_base_url.strip() if not env_override_metadata_base_url: logger.debug("%s is whitespace-only and will be treated as unset", self.METADATA_URL_BASE_ENV_VAR) - return env_override_metadata_base_url if env_override_metadata_base_url else None + return None + + return env_override_metadata_base_url def _has_ipv4_route_for_imds(self): logger = self._get_logger() @@ -244,7 +249,7 @@ def _initialize_certificate_retrievers_from_imds_candidates(self, log_requests=F raise RuntimeError("Unable to initialize IMDS certificate retrievers for all candidate endpoints") def __init__(self, **kwargs): - self.logger = logging.getLogger("{}.{}".format(__name__, id(self))) + self.logger = logging.getLogger(f"{__name__}.{id(self)}") self.logger.addHandler(logging.NullHandler()) if kwargs.get('log_requests'): self.logger.disabled = False @@ -269,7 +274,7 @@ def __init__(self, **kwargs): if 'federation_endpoint' in kwargs and kwargs['federation_endpoint']: federation_endpoint = kwargs['federation_endpoint'] else: - federation_endpoint = '{}/v1/x509'.format(oci.regions.endpoint_for('auth', self.region)) + federation_endpoint = f"{oci.regions.endpoint_for('auth', self.region)}/v1/x509" self.logger.debug("federation endpoint is set to : %s " % (federation_endpoint)) @@ -282,7 +287,8 @@ def __init__(self, **kwargs): cert_bundle_verify=kwargs.get('federation_client_cert_bundle_verify', None), retry_strategy=kwargs.get('federation_client_retry_strategy', None), purpose=kwargs.get('purpose', None), - log_requests=kwargs.get('log_requests') + log_requests=kwargs.get('log_requests'), + circuit_breaker_strategy=kwargs.get('federation_client_circuit_breaker_strategy', None) ) if 'generic_headers' in kwargs: generic_headers = kwargs['generic_headers'] diff --git a/src/oci/auth/signers/oke_workload_identity_resource_principal_signer.py b/src/oci/auth/signers/oke_workload_identity_resource_principal_signer.py index 76e87a1b92..9784ab990f 100644 --- a/src/oci/auth/signers/oke_workload_identity_resource_principal_signer.py +++ b/src/oci/auth/signers/oke_workload_identity_resource_principal_signer.py @@ -11,6 +11,7 @@ import json import oci from oci._vendor import requests +from oci._log_redaction import redact_sensitive_data_for_logs, redact_sensitive_string_for_logs from .. import auth_utils from ..certificate_retriever import FileBasedCertificateRetriever from ..session_key_supplier import SessionKeySupplier @@ -129,9 +130,14 @@ def _get_resource_principal_session_token(self): self.logger.debug("Requesting token from : {} ".format(self.proxymux_endpoint)) response = self.requests_session.post(self.proxymux_endpoint, json=request_payload, headers=headers, verify=self.sa_cert_path, timeout=(10, 60)) + debug_response_data = redact_sensitive_data_for_logs({ + "status_code": response.status_code, + "url": response.url, + "header": dict(response.headers.items()), + "reason": response.reason + }) self.logger.debug("Receiving token response......\n{}\n".format(pprint.pformat( - {"status_code": response.status_code, "url": response.url, "header": dict(response.headers.items()), - "reason": response.reason}, indent=2))) + debug_response_data, indent=2))) if not response.ok: if response.status_code == 403: @@ -150,12 +156,14 @@ def _get_resource_principal_session_token(self): try: decoded_response = base64.b64decode(response.content).decode("UTF-8") except ValueError: - error_text = "Unable to decode the response from auth service ({}): {}. Please contact OKE team for help.".format(self.proxymux_endpoint, response.text) + redacted_response_text = redact_sensitive_string_for_logs(response.text) + error_text = "Unable to decode the response from auth service ({}): {}. Please contact OKE team for help.".format(self.proxymux_endpoint, redacted_response_text) raise RuntimeError(error_text) if 'token' in decoded_response: response_json = json.loads(decoded_response) self.security_token = SecurityTokenContainer(self.session_key_supplier, response_json['token'][3:]) else: - error_text = "Could not find token in the decoded response from auth service ({}): {}.".format(self.proxymux_endpoint, decoded_response) + redacted_decoded_response = redact_sensitive_string_for_logs(decoded_response) + error_text = "Could not find token in the decoded response from auth service ({}): {}.".format(self.proxymux_endpoint, redacted_decoded_response) raise RuntimeError(error_text) diff --git a/src/oci/base_client.py b/src/oci/base_client.py index 6354d1c184..7b28b7cdc4 100644 --- a/src/oci/base_client.py +++ b/src/oci/base_client.py @@ -31,6 +31,7 @@ from . import constants, exceptions, regions, retry from .auth import signers from .config import get_config_value_or_default, validate_config +from ._log_redaction import redact_sensitive_data_for_logs, redact_sensitive_string_for_logs from .request import Request from .response import Response from .circuit_breaker import CircuitBreakerStrategy, NoCircuitBreakerStrategy @@ -1045,24 +1046,25 @@ def _reset_session(self, response=None, reason="connection issue"): :param response: The response object (if available) to ensure it's fully consumed :param reason: Reason for resetting the session (for logging purposes) """ - self.logger.warning(f"Resetting session due to {reason}") + self.logger.warning(f"Resetting session due to {redact_sensitive_string_for_logs(reason)}") if response is not None: try: # Read the response content to ensure the socket is fully drained _ = response.content response.close() except Exception as e: - self.logger.warning(f"Error while closing response during session reset: {e}") + self.logger.warning(f"Error while closing response during session reset: {redact_sensitive_string_for_logs(e)}") # Create a new session and close the old one new_session = copy.copy(self.session) try: self.session.close() except Exception as e: - self.logger.error(f"Error while closing old session: {e}") + self.logger.error(f"Error while closing old session: {redact_sensitive_string_for_logs(e)}") self.session = new_session def request(self, request, allow_control_chars=None, operation_name=None, api_reference_link=None): - self.logger.info(utc_now() + "Request: %s %s" % (str(request.method), request.url)) + redacted_request_url = redact_sensitive_string_for_logs(request.url) + self.logger.info(f"{utc_now()} Request: {str(request.method)} {redacted_request_url}") initial_circuit_breaker_state = None if self.circuit_breaker_name: @@ -1087,6 +1089,7 @@ def request(self, request, allow_control_chars=None, operation_name=None, api_re max_header_error_retries = int(os.environ.get(OCI_HEADER_PARSING_ERROR_MAX_RETRIES, 2)) if max_header_error_retries < 0: raise ValueError("max_header_error_retries must be a positive integer.") + total_attempts = max_header_error_retries + 1 response = None for attempt in range(total_attempts): @@ -1112,16 +1115,18 @@ def request(self, request, allow_control_chars=None, operation_name=None, api_re self.logger.debug(f"Response opc-request-id: {response.headers[constants.HEADER_REQUEST_ID]}") break # Request succeeded, exit retry loop except HeaderParsingError as e: + redacted_error = redact_sensitive_string_for_logs(e) self.logger.warning( - f"HeaderParsingError encountered on attempt {attempt + 1}/{total_attempts}: {str(e)}") + f"HeaderParsingError encountered on attempt {attempt + 1}/{total_attempts}: {redacted_error}") # Reset the session to clear the connection pool - self._reset_session(reason=f"HeaderParsingError ({str(e)[:100]})") + self._reset_session(reason=f"HeaderParsingError ({redacted_error[:100]})") if attempt >= max_header_error_retries: # Last attempt failed, re-raise as RequestException if not e.args: e.args = ('',) + e.args = tuple(redact_sensitive_string_for_logs(arg) for arg in e.args) e.args = e.args + ( - f"Request Endpoint: {request.method} {request.url}. " + f"Request Endpoint: {request.method} {redacted_request_url}. " f"HeaderParsingError indicates connection reuse issue. " f"See {TROUBLESHOOT_URL} for help troubleshooting this error, or contact support and provide this full error message.",) raise exceptions.RequestException(e) @@ -1132,25 +1137,30 @@ def request(self, request, allow_control_chars=None, operation_name=None, api_re except requests.exceptions.ConnectTimeout as e: if not e.args: e.args = ('',) - e.args = e.args + ("Request Endpoint: " + request.method + " " + request.url + " See {} for help troubleshooting this error, or contact support and provide this full error message.".format(TROUBLESHOOT_URL),) + e.args = tuple(redact_sensitive_string_for_logs(arg) for arg in e.args) + e.args = e.args + (f"Request Endpoint: {request.method} {redacted_request_url} See {TROUBLESHOOT_URL} for help troubleshooting this error, or contact support and provide this full error message.",) raise exceptions.ConnectTimeout(e) except requests.exceptions.RequestException as e: if not e.args: e.args = ('',) - e.args = e.args + ("Request Endpoint: " + request.method + " " + request.url + " See {} for help troubleshooting this error, or contact support and provide this full error message.".format(TROUBLESHOOT_URL),) + e.args = tuple(redact_sensitive_string_for_logs(arg) for arg in e.args) + e.args = e.args + (f"Request Endpoint: {request.method} {redacted_request_url} See {TROUBLESHOOT_URL} for help troubleshooting this error, or contact support and provide this full error message.",) raise exceptions.RequestException(e) response_type = request.response_type - self.logger.debug(utc_now() + "Response status: %s" % str(response.status_code)) + self.logger.debug(f"{utc_now()} Response status: {str(response.status_code)}") # Raise Service Error or Transient Service Error if not 200 <= response.status_code <= 299: target_service = self.service - request_endpoint = request.method + " " + request.url + request_endpoint = f"{request.method} {redacted_request_url}" client_version = USER_INFO timestamp = datetime.now(timezone.utc).isoformat() service_code, message, deserialized_data = self.get_deserialized_service_code_and_message(response, allow_control_chars) + if message is not None: + message = redact_sensitive_string_for_logs(message) + deserialized_data = redact_sensitive_data_for_logs(deserialized_data) if (response.status_code == 413 and service_code == 'RequestEntityTooLarge') or (response.status_code == 412 and service_code == 'IfNoneMatchFailed'): self.logger.warning( f"Received a {response.status_code}/{service_code} from {target_service}, resetting session") diff --git a/src/oci/container_instances/models/__init__.py b/src/oci/container_instances/models/__init__.py index 18756ad56e..3b28cf4c79 100644 --- a/src/oci/container_instances/models/__init__.py +++ b/src/oci/container_instances/models/__init__.py @@ -20,10 +20,12 @@ from .container_instance import ContainerInstance from .container_instance_collection import ContainerInstanceCollection from .container_instance_container import ContainerInstanceContainer +from .container_instance_security_context import ContainerInstanceSecurityContext from .container_instance_shape_collection import ContainerInstanceShapeCollection from .container_instance_shape_config import ContainerInstanceShapeConfig from .container_instance_shape_summary import ContainerInstanceShapeSummary from .container_instance_summary import ContainerInstanceSummary +from .container_oci_fss_volume import ContainerOciFssVolume from .container_resource_config import ContainerResourceConfig from .container_summary import ContainerSummary from .container_tcp_health_check import ContainerTcpHealthCheck @@ -37,19 +39,39 @@ from .create_container_health_check_details import CreateContainerHealthCheckDetails from .create_container_http_health_check_details import CreateContainerHttpHealthCheckDetails from .create_container_instance_details import CreateContainerInstanceDetails +from .create_container_instance_security_context_details import CreateContainerInstanceSecurityContextDetails from .create_container_instance_shape_config_details import CreateContainerInstanceShapeConfigDetails +from .create_container_oci_fss_volume_details import CreateContainerOciFssVolumeDetails from .create_container_resource_config_details import CreateContainerResourceConfigDetails from .create_container_tcp_health_check_details import CreateContainerTcpHealthCheckDetails from .create_container_vnic_details import CreateContainerVnicDetails from .create_container_volume_details import CreateContainerVolumeDetails from .create_image_pull_secret_details import CreateImagePullSecretDetails +from .create_linux_container_instance_security_context_details import CreateLinuxContainerInstanceSecurityContextDetails from .create_linux_security_context_details import CreateLinuxSecurityContextDetails +from .create_oci_fss_export_details import CreateOciFssExportDetails +from .create_oci_fss_export_id_details import CreateOciFssExportIdDetails +from .create_oci_fss_mount_command_details import CreateOciFssMountCommandDetails +from .create_oci_fss_mount_option_details import CreateOciFssMountOptionDetails +from .create_oci_fss_mount_target_details import CreateOciFssMountTargetDetails +from .create_oci_fss_mount_target_id_details import CreateOciFssMountTargetIdDetails +from .create_oci_fss_security_details import CreateOciFssSecurityDetails +from .create_oci_fss_sys_security_details import CreateOciFssSysSecurityDetails from .create_security_context_details import CreateSecurityContextDetails from .create_vault_image_pull_secret_details import CreateVaultImagePullSecretDetails from .create_volume_mount_details import CreateVolumeMountDetails from .health_check_http_header import HealthCheckHttpHeader from .image_pull_secret import ImagePullSecret +from .linux_container_instance_security_context import LinuxContainerInstanceSecurityContext from .linux_security_context import LinuxSecurityContext +from .oci_fss_export import OciFssExport +from .oci_fss_export_id import OciFssExportId +from .oci_fss_mount_command import OciFssMountCommand +from .oci_fss_mount_option import OciFssMountOption +from .oci_fss_mount_target import OciFssMountTarget +from .oci_fss_mount_target_id import OciFssMountTargetId +from .oci_fss_security import OciFssSecurity +from .oci_fss_sys_security import OciFssSysSecurity from .security_context import SecurityContext from .shape_memory_options import ShapeMemoryOptions from .shape_networking_bandwidth_options import ShapeNetworkingBandwidthOptions @@ -83,10 +105,12 @@ "ContainerInstance": ContainerInstance, "ContainerInstanceCollection": ContainerInstanceCollection, "ContainerInstanceContainer": ContainerInstanceContainer, + "ContainerInstanceSecurityContext": ContainerInstanceSecurityContext, "ContainerInstanceShapeCollection": ContainerInstanceShapeCollection, "ContainerInstanceShapeConfig": ContainerInstanceShapeConfig, "ContainerInstanceShapeSummary": ContainerInstanceShapeSummary, "ContainerInstanceSummary": ContainerInstanceSummary, + "ContainerOciFssVolume": ContainerOciFssVolume, "ContainerResourceConfig": ContainerResourceConfig, "ContainerSummary": ContainerSummary, "ContainerTcpHealthCheck": ContainerTcpHealthCheck, @@ -100,19 +124,39 @@ "CreateContainerHealthCheckDetails": CreateContainerHealthCheckDetails, "CreateContainerHttpHealthCheckDetails": CreateContainerHttpHealthCheckDetails, "CreateContainerInstanceDetails": CreateContainerInstanceDetails, + "CreateContainerInstanceSecurityContextDetails": CreateContainerInstanceSecurityContextDetails, "CreateContainerInstanceShapeConfigDetails": CreateContainerInstanceShapeConfigDetails, + "CreateContainerOciFssVolumeDetails": CreateContainerOciFssVolumeDetails, "CreateContainerResourceConfigDetails": CreateContainerResourceConfigDetails, "CreateContainerTcpHealthCheckDetails": CreateContainerTcpHealthCheckDetails, "CreateContainerVnicDetails": CreateContainerVnicDetails, "CreateContainerVolumeDetails": CreateContainerVolumeDetails, "CreateImagePullSecretDetails": CreateImagePullSecretDetails, + "CreateLinuxContainerInstanceSecurityContextDetails": CreateLinuxContainerInstanceSecurityContextDetails, "CreateLinuxSecurityContextDetails": CreateLinuxSecurityContextDetails, + "CreateOciFssExportDetails": CreateOciFssExportDetails, + "CreateOciFssExportIdDetails": CreateOciFssExportIdDetails, + "CreateOciFssMountCommandDetails": CreateOciFssMountCommandDetails, + "CreateOciFssMountOptionDetails": CreateOciFssMountOptionDetails, + "CreateOciFssMountTargetDetails": CreateOciFssMountTargetDetails, + "CreateOciFssMountTargetIdDetails": CreateOciFssMountTargetIdDetails, + "CreateOciFssSecurityDetails": CreateOciFssSecurityDetails, + "CreateOciFssSysSecurityDetails": CreateOciFssSysSecurityDetails, "CreateSecurityContextDetails": CreateSecurityContextDetails, "CreateVaultImagePullSecretDetails": CreateVaultImagePullSecretDetails, "CreateVolumeMountDetails": CreateVolumeMountDetails, "HealthCheckHttpHeader": HealthCheckHttpHeader, "ImagePullSecret": ImagePullSecret, + "LinuxContainerInstanceSecurityContext": LinuxContainerInstanceSecurityContext, "LinuxSecurityContext": LinuxSecurityContext, + "OciFssExport": OciFssExport, + "OciFssExportId": OciFssExportId, + "OciFssMountCommand": OciFssMountCommand, + "OciFssMountOption": OciFssMountOption, + "OciFssMountTarget": OciFssMountTarget, + "OciFssMountTargetId": OciFssMountTargetId, + "OciFssSecurity": OciFssSecurity, + "OciFssSysSecurity": OciFssSysSecurity, "SecurityContext": SecurityContext, "ShapeMemoryOptions": ShapeMemoryOptions, "ShapeNetworkingBandwidthOptions": ShapeNetworkingBandwidthOptions, diff --git a/src/oci/container_instances/models/container_config_file_volume.py b/src/oci/container_instances/models/container_config_file_volume.py index c30e6cd310..3c1cc7b039 100644 --- a/src/oci/container_instances/models/container_config_file_volume.py +++ b/src/oci/container_instances/models/container_config_file_volume.py @@ -27,7 +27,7 @@ def __init__(self, **kwargs): :param volume_type: The value to assign to the volume_type property of this ContainerConfigFileVolume. - Allowed values for this property are: "EMPTYDIR", "CONFIGFILE" + Allowed values for this property are: "EMPTYDIR", "CONFIGFILE", "OCI_FSS_FILE_SYSTEM" :type volume_type: str :param configs: diff --git a/src/oci/container_instances/models/container_empty_dir_volume.py b/src/oci/container_instances/models/container_empty_dir_volume.py index c2f5fc8c16..ff1feaa7d7 100644 --- a/src/oci/container_instances/models/container_empty_dir_volume.py +++ b/src/oci/container_instances/models/container_empty_dir_volume.py @@ -35,7 +35,7 @@ def __init__(self, **kwargs): :param volume_type: The value to assign to the volume_type property of this ContainerEmptyDirVolume. - Allowed values for this property are: "EMPTYDIR", "CONFIGFILE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "EMPTYDIR", "CONFIGFILE", "OCI_FSS_FILE_SYSTEM", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type volume_type: str diff --git a/src/oci/container_instances/models/container_instance.py b/src/oci/container_instances/models/container_instance.py index 6407e9b0c7..7b16d5f172 100644 --- a/src/oci/container_instances/models/container_instance.py +++ b/src/oci/container_instances/models/container_instance.py @@ -75,6 +75,10 @@ def __init__(self, **kwargs): The value to assign to the compartment_id property of this ContainerInstance. :type compartment_id: str + :param tenant_id: + The value to assign to the tenant_id property of this ContainerInstance. + :type tenant_id: str + :param freeform_tags: The value to assign to the freeform_tags property of this ContainerInstance. :type freeform_tags: dict(str, str) @@ -159,11 +163,16 @@ def __init__(self, **kwargs): Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type container_restart_policy: str + :param security_context: + The value to assign to the security_context property of this ContainerInstance. + :type security_context: oci.container_instances.models.ContainerInstanceSecurityContext + """ self.swagger_types = { 'id': 'str', 'display_name': 'str', 'compartment_id': 'str', + 'tenant_id': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', 'system_tags': 'dict(str, dict(str, object))', @@ -183,12 +192,14 @@ def __init__(self, **kwargs): 'dns_config': 'ContainerDnsConfig', 'graceful_shutdown_timeout_in_seconds': 'int', 'image_pull_secrets': 'list[ImagePullSecret]', - 'container_restart_policy': 'str' + 'container_restart_policy': 'str', + 'security_context': 'ContainerInstanceSecurityContext' } self.attribute_map = { 'id': 'id', 'display_name': 'displayName', 'compartment_id': 'compartmentId', + 'tenant_id': 'tenantId', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', 'system_tags': 'systemTags', @@ -208,11 +219,13 @@ def __init__(self, **kwargs): 'dns_config': 'dnsConfig', 'graceful_shutdown_timeout_in_seconds': 'gracefulShutdownTimeoutInSeconds', 'image_pull_secrets': 'imagePullSecrets', - 'container_restart_policy': 'containerRestartPolicy' + 'container_restart_policy': 'containerRestartPolicy', + 'security_context': 'securityContext' } self._id = None self._display_name = None self._compartment_id = None + self._tenant_id = None self._freeform_tags = None self._defined_tags = None self._system_tags = None @@ -233,6 +246,7 @@ def __init__(self, **kwargs): self._graceful_shutdown_timeout_in_seconds = None self._image_pull_secrets = None self._container_restart_policy = None + self._security_context = None @property def id(self): @@ -306,6 +320,30 @@ def compartment_id(self, compartment_id): """ self._compartment_id = compartment_id + @property + def tenant_id(self): + """ + Gets the tenant_id of this ContainerInstance. + TenantId id of the container instance. + + + :return: The tenant_id of this ContainerInstance. + :rtype: str + """ + return self._tenant_id + + @tenant_id.setter + def tenant_id(self, tenant_id): + """ + Sets the tenant_id of this ContainerInstance. + TenantId id of the container instance. + + + :param tenant_id: The tenant_id of this ContainerInstance. + :type: str + """ + self._tenant_id = tenant_id + @property def freeform_tags(self): """ @@ -808,6 +846,26 @@ def container_restart_policy(self, container_restart_policy): container_restart_policy = 'UNKNOWN_ENUM_VALUE' self._container_restart_policy = container_restart_policy + @property + def security_context(self): + """ + Gets the security_context of this ContainerInstance. + + :return: The security_context of this ContainerInstance. + :rtype: oci.container_instances.models.ContainerInstanceSecurityContext + """ + return self._security_context + + @security_context.setter + def security_context(self, security_context): + """ + Sets the security_context of this ContainerInstance. + + :param security_context: The security_context of this ContainerInstance. + :type: oci.container_instances.models.ContainerInstanceSecurityContext + """ + self._security_context = security_context + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/container_instances/models/container_instance_security_context.py b/src/oci/container_instances/models/container_instance_security_context.py new file mode 100644 index 0000000000..288ee8cfce --- /dev/null +++ b/src/oci/container_instances/models/container_instance_security_context.py @@ -0,0 +1,99 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20210415 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ContainerInstanceSecurityContext(object): + """ + Security context for all containers in a container instance. + """ + + #: A constant which can be used with the security_context_type property of a ContainerInstanceSecurityContext. + #: This constant has a value of "LINUX" + SECURITY_CONTEXT_TYPE_LINUX = "LINUX" + + def __init__(self, **kwargs): + """ + Initializes a new ContainerInstanceSecurityContext object with values from keyword arguments. This class has the following subclasses and if you are using this class as input + to a service operations then you should favor using a subclass over the base class: + + * :class:`~oci.container_instances.models.LinuxContainerInstanceSecurityContext` + + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param security_context_type: + The value to assign to the security_context_type property of this ContainerInstanceSecurityContext. + Allowed values for this property are: "LINUX", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type security_context_type: str + + """ + self.swagger_types = { + 'security_context_type': 'str' + } + self.attribute_map = { + 'security_context_type': 'securityContextType' + } + self._security_context_type = None + + @staticmethod + def get_subtype(object_dictionary): + """ + Given the hash representation of a subtype of this class, + use the info in the hash to return the class of the subtype. + """ + type = object_dictionary['securityContextType'] + + if type == 'LINUX': + return 'LinuxContainerInstanceSecurityContext' + else: + return 'ContainerInstanceSecurityContext' + + @property + def security_context_type(self): + """ + Gets the security_context_type of this ContainerInstanceSecurityContext. + The type of security context + + Allowed values for this property are: "LINUX", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The security_context_type of this ContainerInstanceSecurityContext. + :rtype: str + """ + return self._security_context_type + + @security_context_type.setter + def security_context_type(self, security_context_type): + """ + Sets the security_context_type of this ContainerInstanceSecurityContext. + The type of security context + + + :param security_context_type: The security_context_type of this ContainerInstanceSecurityContext. + :type: str + """ + allowed_values = ["LINUX"] + if not value_allowed_none_or_none_sentinel(security_context_type, allowed_values): + security_context_type = 'UNKNOWN_ENUM_VALUE' + self._security_context_type = security_context_type + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/container_instances/models/container_instance_summary.py b/src/oci/container_instances/models/container_instance_summary.py index cf51afb7f5..68aa956f67 100644 --- a/src/oci/container_instances/models/container_instance_summary.py +++ b/src/oci/container_instances/models/container_instance_summary.py @@ -92,6 +92,10 @@ def __init__(self, **kwargs): The value to assign to the container_restart_policy property of this ContainerInstanceSummary. :type container_restart_policy: str + :param security_context: + The value to assign to the security_context property of this ContainerInstanceSummary. + :type security_context: oci.container_instances.models.ContainerInstanceSecurityContext + """ self.swagger_types = { 'id': 'str', @@ -111,7 +115,8 @@ def __init__(self, **kwargs): 'container_count': 'int', 'graceful_shutdown_timeout_in_seconds': 'int', 'volume_count': 'int', - 'container_restart_policy': 'str' + 'container_restart_policy': 'str', + 'security_context': 'ContainerInstanceSecurityContext' } self.attribute_map = { 'id': 'id', @@ -131,7 +136,8 @@ def __init__(self, **kwargs): 'container_count': 'containerCount', 'graceful_shutdown_timeout_in_seconds': 'gracefulShutdownTimeoutInSeconds', 'volume_count': 'volumeCount', - 'container_restart_policy': 'containerRestartPolicy' + 'container_restart_policy': 'containerRestartPolicy', + 'security_context': 'securityContext' } self._id = None self._display_name = None @@ -151,6 +157,7 @@ def __init__(self, **kwargs): self._graceful_shutdown_timeout_in_seconds = None self._volume_count = None self._container_restart_policy = None + self._security_context = None @property def id(self): @@ -588,6 +595,26 @@ def container_restart_policy(self, container_restart_policy): """ self._container_restart_policy = container_restart_policy + @property + def security_context(self): + """ + Gets the security_context of this ContainerInstanceSummary. + + :return: The security_context of this ContainerInstanceSummary. + :rtype: oci.container_instances.models.ContainerInstanceSecurityContext + """ + return self._security_context + + @security_context.setter + def security_context(self, security_context): + """ + Sets the security_context of this ContainerInstanceSummary. + + :param security_context: The security_context of this ContainerInstanceSummary. + :type: oci.container_instances.models.ContainerInstanceSecurityContext + """ + self._security_context = security_context + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/container_instances/models/container_oci_fss_volume.py b/src/oci/container_instances/models/container_oci_fss_volume.py new file mode 100644 index 0000000000..8b5eef9489 --- /dev/null +++ b/src/oci/container_instances/models/container_oci_fss_volume.py @@ -0,0 +1,198 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20210415 + +from .container_volume import ContainerVolume +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ContainerOciFssVolume(ContainerVolume): + """ + An OCI File Storage Service (FSS) File System that can be mounted to Containers within a Container Instance. + Check https://docs.oracle.com/en-us/iaas/api/#/en/filestorage/20171215/FileSystem for more details. + """ + + def __init__(self, **kwargs): + """ + Initializes a new ContainerOciFssVolume object with values from keyword arguments. The default value of the :py:attr:`~oci.container_instances.models.ContainerOciFssVolume.volume_type` attribute + of this class is ``OCI_FSS_FILE_SYSTEM`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this ContainerOciFssVolume. + :type name: str + + :param volume_type: + The value to assign to the volume_type property of this ContainerOciFssVolume. + Allowed values for this property are: "EMPTYDIR", "CONFIGFILE", "OCI_FSS_FILE_SYSTEM" + :type volume_type: str + + :param mount_target: + The value to assign to the mount_target property of this ContainerOciFssVolume. + :type mount_target: oci.container_instances.models.OciFssMountTarget + + :param export: + The value to assign to the export property of this ContainerOciFssVolume. + :type export: oci.container_instances.models.OciFssExport + + :param security: + The value to assign to the security property of this ContainerOciFssVolume. + :type security: oci.container_instances.models.OciFssSecurity + + :param mount_command: + The value to assign to the mount_command property of this ContainerOciFssVolume. + :type mount_command: oci.container_instances.models.OciFssMountCommand + + :param subnet_id: + The value to assign to the subnet_id property of this ContainerOciFssVolume. + :type subnet_id: str + + """ + self.swagger_types = { + 'name': 'str', + 'volume_type': 'str', + 'mount_target': 'OciFssMountTarget', + 'export': 'OciFssExport', + 'security': 'OciFssSecurity', + 'mount_command': 'OciFssMountCommand', + 'subnet_id': 'str' + } + self.attribute_map = { + 'name': 'name', + 'volume_type': 'volumeType', + 'mount_target': 'mountTarget', + 'export': 'export', + 'security': 'security', + 'mount_command': 'mountCommand', + 'subnet_id': 'subnetId' + } + self._name = None + self._volume_type = None + self._mount_target = None + self._export = None + self._security = None + self._mount_command = None + self._subnet_id = None + self._volume_type = 'OCI_FSS_FILE_SYSTEM' + + @property + def mount_target(self): + """ + Gets the mount_target of this ContainerOciFssVolume. + + :return: The mount_target of this ContainerOciFssVolume. + :rtype: oci.container_instances.models.OciFssMountTarget + """ + return self._mount_target + + @mount_target.setter + def mount_target(self, mount_target): + """ + Sets the mount_target of this ContainerOciFssVolume. + + :param mount_target: The mount_target of this ContainerOciFssVolume. + :type: oci.container_instances.models.OciFssMountTarget + """ + self._mount_target = mount_target + + @property + def export(self): + """ + Gets the export of this ContainerOciFssVolume. + + :return: The export of this ContainerOciFssVolume. + :rtype: oci.container_instances.models.OciFssExport + """ + return self._export + + @export.setter + def export(self, export): + """ + Sets the export of this ContainerOciFssVolume. + + :param export: The export of this ContainerOciFssVolume. + :type: oci.container_instances.models.OciFssExport + """ + self._export = export + + @property + def security(self): + """ + Gets the security of this ContainerOciFssVolume. + + :return: The security of this ContainerOciFssVolume. + :rtype: oci.container_instances.models.OciFssSecurity + """ + return self._security + + @security.setter + def security(self, security): + """ + Sets the security of this ContainerOciFssVolume. + + :param security: The security of this ContainerOciFssVolume. + :type: oci.container_instances.models.OciFssSecurity + """ + self._security = security + + @property + def mount_command(self): + """ + Gets the mount_command of this ContainerOciFssVolume. + + :return: The mount_command of this ContainerOciFssVolume. + :rtype: oci.container_instances.models.OciFssMountCommand + """ + return self._mount_command + + @mount_command.setter + def mount_command(self, mount_command): + """ + Sets the mount_command of this ContainerOciFssVolume. + + :param mount_command: The mount_command of this ContainerOciFssVolume. + :type: oci.container_instances.models.OciFssMountCommand + """ + self._mount_command = mount_command + + @property + def subnet_id(self): + """ + Gets the subnet_id of this ContainerOciFssVolume. + Specifies the network interface to be used for the OCI File Storage Service (FSS) volume. + This is a required parameter when a Container Instance is attached to more than one subnets. + + + :return: The subnet_id of this ContainerOciFssVolume. + :rtype: str + """ + return self._subnet_id + + @subnet_id.setter + def subnet_id(self, subnet_id): + """ + Sets the subnet_id of this ContainerOciFssVolume. + Specifies the network interface to be used for the OCI File Storage Service (FSS) volume. + This is a required parameter when a Container Instance is attached to more than one subnets. + + + :param subnet_id: The subnet_id of this ContainerOciFssVolume. + :type: str + """ + self._subnet_id = subnet_id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/container_instances/models/container_volume.py b/src/oci/container_instances/models/container_volume.py index 1d26ec23ee..d6852a7a55 100644 --- a/src/oci/container_instances/models/container_volume.py +++ b/src/oci/container_instances/models/container_volume.py @@ -24,6 +24,10 @@ class ContainerVolume(object): #: This constant has a value of "CONFIGFILE" VOLUME_TYPE_CONFIGFILE = "CONFIGFILE" + #: A constant which can be used with the volume_type property of a ContainerVolume. + #: This constant has a value of "OCI_FSS_FILE_SYSTEM" + VOLUME_TYPE_OCI_FSS_FILE_SYSTEM = "OCI_FSS_FILE_SYSTEM" + def __init__(self, **kwargs): """ Initializes a new ContainerVolume object with values from keyword arguments. This class has the following subclasses and if you are using this class as input @@ -31,6 +35,7 @@ def __init__(self, **kwargs): * :class:`~oci.container_instances.models.ContainerEmptyDirVolume` * :class:`~oci.container_instances.models.ContainerConfigFileVolume` + * :class:`~oci.container_instances.models.ContainerOciFssVolume` The following keyword arguments are supported (corresponding to the getters/setters of this class): @@ -40,7 +45,7 @@ def __init__(self, **kwargs): :param volume_type: The value to assign to the volume_type property of this ContainerVolume. - Allowed values for this property are: "EMPTYDIR", "CONFIGFILE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "EMPTYDIR", "CONFIGFILE", "OCI_FSS_FILE_SYSTEM", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type volume_type: str @@ -69,6 +74,9 @@ def get_subtype(object_dictionary): if type == 'CONFIGFILE': return 'ContainerConfigFileVolume' + + if type == 'OCI_FSS_FILE_SYSTEM': + return 'ContainerOciFssVolume' else: return 'ContainerVolume' @@ -102,7 +110,7 @@ def volume_type(self): **[Required]** Gets the volume_type of this ContainerVolume. The type of volume. - Allowed values for this property are: "EMPTYDIR", "CONFIGFILE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "EMPTYDIR", "CONFIGFILE", "OCI_FSS_FILE_SYSTEM", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -121,7 +129,7 @@ def volume_type(self, volume_type): :param volume_type: The volume_type of this ContainerVolume. :type: str """ - allowed_values = ["EMPTYDIR", "CONFIGFILE"] + allowed_values = ["EMPTYDIR", "CONFIGFILE", "OCI_FSS_FILE_SYSTEM"] if not value_allowed_none_or_none_sentinel(volume_type, allowed_values): volume_type = 'UNKNOWN_ENUM_VALUE' self._volume_type = volume_type diff --git a/src/oci/container_instances/models/create_container_config_file_volume_details.py b/src/oci/container_instances/models/create_container_config_file_volume_details.py index 10bac3bf52..f2963b9987 100644 --- a/src/oci/container_instances/models/create_container_config_file_volume_details.py +++ b/src/oci/container_instances/models/create_container_config_file_volume_details.py @@ -27,7 +27,7 @@ def __init__(self, **kwargs): :param volume_type: The value to assign to the volume_type property of this CreateContainerConfigFileVolumeDetails. - Allowed values for this property are: "EMPTYDIR", "CONFIGFILE" + Allowed values for this property are: "EMPTYDIR", "CONFIGFILE", "OCI_FSS_FILE_SYSTEM" :type volume_type: str :param configs: diff --git a/src/oci/container_instances/models/create_container_empty_dir_volume_details.py b/src/oci/container_instances/models/create_container_empty_dir_volume_details.py index 16fb5e8996..4d401997a4 100644 --- a/src/oci/container_instances/models/create_container_empty_dir_volume_details.py +++ b/src/oci/container_instances/models/create_container_empty_dir_volume_details.py @@ -27,7 +27,7 @@ def __init__(self, **kwargs): :param volume_type: The value to assign to the volume_type property of this CreateContainerEmptyDirVolumeDetails. - Allowed values for this property are: "EMPTYDIR", "CONFIGFILE" + Allowed values for this property are: "EMPTYDIR", "CONFIGFILE", "OCI_FSS_FILE_SYSTEM" :type volume_type: str :param backing_store: diff --git a/src/oci/container_instances/models/create_container_instance_details.py b/src/oci/container_instances/models/create_container_instance_details.py index 227d688529..97e9922b2a 100644 --- a/src/oci/container_instances/models/create_container_instance_details.py +++ b/src/oci/container_instances/models/create_container_instance_details.py @@ -80,6 +80,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this CreateContainerInstanceDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_context: + The value to assign to the security_context property of this CreateContainerInstanceDetails. + :type security_context: oci.container_instances.models.CreateContainerInstanceSecurityContextDetails + """ self.swagger_types = { 'display_name': 'str', @@ -96,7 +100,8 @@ def __init__(self, **kwargs): 'image_pull_secrets': 'list[CreateImagePullSecretDetails]', 'container_restart_policy': 'str', 'freeform_tags': 'dict(str, str)', - 'defined_tags': 'dict(str, dict(str, object))' + 'defined_tags': 'dict(str, dict(str, object))', + 'security_context': 'CreateContainerInstanceSecurityContextDetails' } self.attribute_map = { 'display_name': 'displayName', @@ -113,7 +118,8 @@ def __init__(self, **kwargs): 'image_pull_secrets': 'imagePullSecrets', 'container_restart_policy': 'containerRestartPolicy', 'freeform_tags': 'freeformTags', - 'defined_tags': 'definedTags' + 'defined_tags': 'definedTags', + 'security_context': 'securityContext' } self._display_name = None self._compartment_id = None @@ -130,6 +136,7 @@ def __init__(self, **kwargs): self._container_restart_policy = None self._freeform_tags = None self._defined_tags = None + self._security_context = None @property def display_name(self): @@ -493,6 +500,26 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_context(self): + """ + Gets the security_context of this CreateContainerInstanceDetails. + + :return: The security_context of this CreateContainerInstanceDetails. + :rtype: oci.container_instances.models.CreateContainerInstanceSecurityContextDetails + """ + return self._security_context + + @security_context.setter + def security_context(self, security_context): + """ + Sets the security_context of this CreateContainerInstanceDetails. + + :param security_context: The security_context of this CreateContainerInstanceDetails. + :type: oci.container_instances.models.CreateContainerInstanceSecurityContextDetails + """ + self._security_context = security_context + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/container_instances/models/create_container_instance_security_context_details.py b/src/oci/container_instances/models/create_container_instance_security_context_details.py new file mode 100644 index 0000000000..cf2effab3e --- /dev/null +++ b/src/oci/container_instances/models/create_container_instance_security_context_details.py @@ -0,0 +1,87 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20210415 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateContainerInstanceSecurityContextDetails(object): + """ + Security context for all containers in a container instance. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateContainerInstanceSecurityContextDetails object with values from keyword arguments. This class has the following subclasses and if you are using this class as input + to a service operations then you should favor using a subclass over the base class: + + * :class:`~oci.container_instances.models.CreateLinuxContainerInstanceSecurityContextDetails` + + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param security_context_type: + The value to assign to the security_context_type property of this CreateContainerInstanceSecurityContextDetails. + :type security_context_type: str + + """ + self.swagger_types = { + 'security_context_type': 'str' + } + self.attribute_map = { + 'security_context_type': 'securityContextType' + } + self._security_context_type = None + + @staticmethod + def get_subtype(object_dictionary): + """ + Given the hash representation of a subtype of this class, + use the info in the hash to return the class of the subtype. + """ + type = object_dictionary['securityContextType'] + + if type == 'LINUX': + return 'CreateLinuxContainerInstanceSecurityContextDetails' + else: + return 'CreateContainerInstanceSecurityContextDetails' + + @property + def security_context_type(self): + """ + Gets the security_context_type of this CreateContainerInstanceSecurityContextDetails. + The type of security context + + + :return: The security_context_type of this CreateContainerInstanceSecurityContextDetails. + :rtype: str + """ + return self._security_context_type + + @security_context_type.setter + def security_context_type(self, security_context_type): + """ + Sets the security_context_type of this CreateContainerInstanceSecurityContextDetails. + The type of security context + + + :param security_context_type: The security_context_type of this CreateContainerInstanceSecurityContextDetails. + :type: str + """ + self._security_context_type = security_context_type + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/container_instances/models/create_container_oci_fss_volume_details.py b/src/oci/container_instances/models/create_container_oci_fss_volume_details.py new file mode 100644 index 0000000000..77f4db816a --- /dev/null +++ b/src/oci/container_instances/models/create_container_oci_fss_volume_details.py @@ -0,0 +1,198 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20210415 + +from .create_container_volume_details import CreateContainerVolumeDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateContainerOciFssVolumeDetails(CreateContainerVolumeDetails): + """ + An OCI File Storage Service (FSS) File System that can be mounted to Containers within a Container Instance. + Check https://docs.oracle.com/en-us/iaas/api/#/en/filestorage/20171215/FileSystem for more details. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateContainerOciFssVolumeDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.container_instances.models.CreateContainerOciFssVolumeDetails.volume_type` attribute + of this class is ``OCI_FSS_FILE_SYSTEM`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this CreateContainerOciFssVolumeDetails. + :type name: str + + :param volume_type: + The value to assign to the volume_type property of this CreateContainerOciFssVolumeDetails. + Allowed values for this property are: "EMPTYDIR", "CONFIGFILE", "OCI_FSS_FILE_SYSTEM" + :type volume_type: str + + :param mount_target: + The value to assign to the mount_target property of this CreateContainerOciFssVolumeDetails. + :type mount_target: oci.container_instances.models.CreateOciFssMountTargetDetails + + :param export: + The value to assign to the export property of this CreateContainerOciFssVolumeDetails. + :type export: oci.container_instances.models.CreateOciFssExportDetails + + :param security: + The value to assign to the security property of this CreateContainerOciFssVolumeDetails. + :type security: oci.container_instances.models.CreateOciFssSecurityDetails + + :param mount_command: + The value to assign to the mount_command property of this CreateContainerOciFssVolumeDetails. + :type mount_command: oci.container_instances.models.CreateOciFssMountCommandDetails + + :param subnet_id: + The value to assign to the subnet_id property of this CreateContainerOciFssVolumeDetails. + :type subnet_id: str + + """ + self.swagger_types = { + 'name': 'str', + 'volume_type': 'str', + 'mount_target': 'CreateOciFssMountTargetDetails', + 'export': 'CreateOciFssExportDetails', + 'security': 'CreateOciFssSecurityDetails', + 'mount_command': 'CreateOciFssMountCommandDetails', + 'subnet_id': 'str' + } + self.attribute_map = { + 'name': 'name', + 'volume_type': 'volumeType', + 'mount_target': 'mountTarget', + 'export': 'export', + 'security': 'security', + 'mount_command': 'mountCommand', + 'subnet_id': 'subnetId' + } + self._name = None + self._volume_type = None + self._mount_target = None + self._export = None + self._security = None + self._mount_command = None + self._subnet_id = None + self._volume_type = 'OCI_FSS_FILE_SYSTEM' + + @property + def mount_target(self): + """ + **[Required]** Gets the mount_target of this CreateContainerOciFssVolumeDetails. + + :return: The mount_target of this CreateContainerOciFssVolumeDetails. + :rtype: oci.container_instances.models.CreateOciFssMountTargetDetails + """ + return self._mount_target + + @mount_target.setter + def mount_target(self, mount_target): + """ + Sets the mount_target of this CreateContainerOciFssVolumeDetails. + + :param mount_target: The mount_target of this CreateContainerOciFssVolumeDetails. + :type: oci.container_instances.models.CreateOciFssMountTargetDetails + """ + self._mount_target = mount_target + + @property + def export(self): + """ + **[Required]** Gets the export of this CreateContainerOciFssVolumeDetails. + + :return: The export of this CreateContainerOciFssVolumeDetails. + :rtype: oci.container_instances.models.CreateOciFssExportDetails + """ + return self._export + + @export.setter + def export(self, export): + """ + Sets the export of this CreateContainerOciFssVolumeDetails. + + :param export: The export of this CreateContainerOciFssVolumeDetails. + :type: oci.container_instances.models.CreateOciFssExportDetails + """ + self._export = export + + @property + def security(self): + """ + Gets the security of this CreateContainerOciFssVolumeDetails. + + :return: The security of this CreateContainerOciFssVolumeDetails. + :rtype: oci.container_instances.models.CreateOciFssSecurityDetails + """ + return self._security + + @security.setter + def security(self, security): + """ + Sets the security of this CreateContainerOciFssVolumeDetails. + + :param security: The security of this CreateContainerOciFssVolumeDetails. + :type: oci.container_instances.models.CreateOciFssSecurityDetails + """ + self._security = security + + @property + def mount_command(self): + """ + Gets the mount_command of this CreateContainerOciFssVolumeDetails. + + :return: The mount_command of this CreateContainerOciFssVolumeDetails. + :rtype: oci.container_instances.models.CreateOciFssMountCommandDetails + """ + return self._mount_command + + @mount_command.setter + def mount_command(self, mount_command): + """ + Sets the mount_command of this CreateContainerOciFssVolumeDetails. + + :param mount_command: The mount_command of this CreateContainerOciFssVolumeDetails. + :type: oci.container_instances.models.CreateOciFssMountCommandDetails + """ + self._mount_command = mount_command + + @property + def subnet_id(self): + """ + Gets the subnet_id of this CreateContainerOciFssVolumeDetails. + Specifies the network interface to be used for the OCI File Storage Service (FSS) volume. + This is a required parameter when a Container Instance is attached to more than one subnets. + + + :return: The subnet_id of this CreateContainerOciFssVolumeDetails. + :rtype: str + """ + return self._subnet_id + + @subnet_id.setter + def subnet_id(self, subnet_id): + """ + Sets the subnet_id of this CreateContainerOciFssVolumeDetails. + Specifies the network interface to be used for the OCI File Storage Service (FSS) volume. + This is a required parameter when a Container Instance is attached to more than one subnets. + + + :param subnet_id: The subnet_id of this CreateContainerOciFssVolumeDetails. + :type: str + """ + self._subnet_id = subnet_id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/container_instances/models/create_container_volume_details.py b/src/oci/container_instances/models/create_container_volume_details.py index 30b3e6c3a5..fe00445773 100644 --- a/src/oci/container_instances/models/create_container_volume_details.py +++ b/src/oci/container_instances/models/create_container_volume_details.py @@ -24,11 +24,16 @@ class CreateContainerVolumeDetails(object): #: This constant has a value of "CONFIGFILE" VOLUME_TYPE_CONFIGFILE = "CONFIGFILE" + #: A constant which can be used with the volume_type property of a CreateContainerVolumeDetails. + #: This constant has a value of "OCI_FSS_FILE_SYSTEM" + VOLUME_TYPE_OCI_FSS_FILE_SYSTEM = "OCI_FSS_FILE_SYSTEM" + def __init__(self, **kwargs): """ Initializes a new CreateContainerVolumeDetails object with values from keyword arguments. This class has the following subclasses and if you are using this class as input to a service operations then you should favor using a subclass over the base class: + * :class:`~oci.container_instances.models.CreateContainerOciFssVolumeDetails` * :class:`~oci.container_instances.models.CreateContainerConfigFileVolumeDetails` * :class:`~oci.container_instances.models.CreateContainerEmptyDirVolumeDetails` @@ -40,7 +45,7 @@ def __init__(self, **kwargs): :param volume_type: The value to assign to the volume_type property of this CreateContainerVolumeDetails. - Allowed values for this property are: "EMPTYDIR", "CONFIGFILE" + Allowed values for this property are: "EMPTYDIR", "CONFIGFILE", "OCI_FSS_FILE_SYSTEM" :type volume_type: str """ @@ -63,6 +68,9 @@ def get_subtype(object_dictionary): """ type = object_dictionary['volumeType'] + if type == 'OCI_FSS_FILE_SYSTEM': + return 'CreateContainerOciFssVolumeDetails' + if type == 'CONFIGFILE': return 'CreateContainerConfigFileVolumeDetails' @@ -101,7 +109,7 @@ def volume_type(self): **[Required]** Gets the volume_type of this CreateContainerVolumeDetails. The type of volume. - Allowed values for this property are: "EMPTYDIR", "CONFIGFILE" + Allowed values for this property are: "EMPTYDIR", "CONFIGFILE", "OCI_FSS_FILE_SYSTEM" :return: The volume_type of this CreateContainerVolumeDetails. @@ -119,7 +127,7 @@ def volume_type(self, volume_type): :param volume_type: The volume_type of this CreateContainerVolumeDetails. :type: str """ - allowed_values = ["EMPTYDIR", "CONFIGFILE"] + allowed_values = ["EMPTYDIR", "CONFIGFILE", "OCI_FSS_FILE_SYSTEM"] if not value_allowed_none_or_none_sentinel(volume_type, allowed_values): raise ValueError( f"Invalid value for `volume_type`, must be None or one of {allowed_values}" diff --git a/src/oci/container_instances/models/create_linux_container_instance_security_context_details.py b/src/oci/container_instances/models/create_linux_container_instance_security_context_details.py new file mode 100644 index 0000000000..4e274bf26f --- /dev/null +++ b/src/oci/container_instances/models/create_linux_container_instance_security_context_details.py @@ -0,0 +1,126 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20210415 + +from .create_container_instance_security_context_details import CreateContainerInstanceSecurityContextDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateLinuxContainerInstanceSecurityContextDetails(CreateContainerInstanceSecurityContextDetails): + """ + Security context for all containers in a Linux container instance. + """ + + #: A constant which can be used with the fs_group_change_policy property of a CreateLinuxContainerInstanceSecurityContextDetails. + #: This constant has a value of "ALWAYS" + FS_GROUP_CHANGE_POLICY_ALWAYS = "ALWAYS" + + #: A constant which can be used with the fs_group_change_policy property of a CreateLinuxContainerInstanceSecurityContextDetails. + #: This constant has a value of "ON_ROOT_MISMATCH" + FS_GROUP_CHANGE_POLICY_ON_ROOT_MISMATCH = "ON_ROOT_MISMATCH" + + def __init__(self, **kwargs): + """ + Initializes a new CreateLinuxContainerInstanceSecurityContextDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.container_instances.models.CreateLinuxContainerInstanceSecurityContextDetails.security_context_type` attribute + of this class is ``LINUX`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param security_context_type: + The value to assign to the security_context_type property of this CreateLinuxContainerInstanceSecurityContextDetails. + :type security_context_type: str + + :param fs_group: + The value to assign to the fs_group property of this CreateLinuxContainerInstanceSecurityContextDetails. + :type fs_group: int + + :param fs_group_change_policy: + The value to assign to the fs_group_change_policy property of this CreateLinuxContainerInstanceSecurityContextDetails. + Allowed values for this property are: "ALWAYS", "ON_ROOT_MISMATCH" + :type fs_group_change_policy: str + + """ + self.swagger_types = { + 'security_context_type': 'str', + 'fs_group': 'int', + 'fs_group_change_policy': 'str' + } + self.attribute_map = { + 'security_context_type': 'securityContextType', + 'fs_group': 'fsGroup', + 'fs_group_change_policy': 'fsGroupChangePolicy' + } + self._security_context_type = None + self._fs_group = None + self._fs_group_change_policy = None + self._security_context_type = 'LINUX' + + @property + def fs_group(self): + """ + Gets the fs_group of this CreateLinuxContainerInstanceSecurityContextDetails. + A special supplemental group that applies to all containers in the container instance. Some volume types allow the container instance to change ownership of the volume. The owning GID will be the fsGroup, the setgid bit will be set (new files will be owned by the fsGroup), and the permission bits are OR'd with rw-rw----. If unset, the container instance will not modify the ownership and permissions of volumes. + + + :return: The fs_group of this CreateLinuxContainerInstanceSecurityContextDetails. + :rtype: int + """ + return self._fs_group + + @fs_group.setter + def fs_group(self, fs_group): + """ + Sets the fs_group of this CreateLinuxContainerInstanceSecurityContextDetails. + A special supplemental group that applies to all containers in the container instance. Some volume types allow the container instance to change ownership of the volume. The owning GID will be the fsGroup, the setgid bit will be set (new files will be owned by the fsGroup), and the permission bits are OR'd with rw-rw----. If unset, the container instance will not modify the ownership and permissions of volumes. + + + :param fs_group: The fs_group of this CreateLinuxContainerInstanceSecurityContextDetails. + :type: int + """ + self._fs_group = fs_group + + @property + def fs_group_change_policy(self): + """ + Gets the fs_group_change_policy of this CreateLinuxContainerInstanceSecurityContextDetails. + Defines behavior of changing ownership and permission of the volume before being exposed inside the containers. This only applies to volumes which support fsGroup ownership and permissions, and will have no effect on ephemeral volumes. ON_ROOT_MISMATCH only changes permissions and ownership if the permission and ownership of the root directory does not match the expected permissions and ownership of the volume. This can improve container instance start times. ALWAYS changes permission and ownership of the volume when it is mounted. If unset, ALWAYS is used. + + Allowed values for this property are: "ALWAYS", "ON_ROOT_MISMATCH" + + + :return: The fs_group_change_policy of this CreateLinuxContainerInstanceSecurityContextDetails. + :rtype: str + """ + return self._fs_group_change_policy + + @fs_group_change_policy.setter + def fs_group_change_policy(self, fs_group_change_policy): + """ + Sets the fs_group_change_policy of this CreateLinuxContainerInstanceSecurityContextDetails. + Defines behavior of changing ownership and permission of the volume before being exposed inside the containers. This only applies to volumes which support fsGroup ownership and permissions, and will have no effect on ephemeral volumes. ON_ROOT_MISMATCH only changes permissions and ownership if the permission and ownership of the root directory does not match the expected permissions and ownership of the volume. This can improve container instance start times. ALWAYS changes permission and ownership of the volume when it is mounted. If unset, ALWAYS is used. + + + :param fs_group_change_policy: The fs_group_change_policy of this CreateLinuxContainerInstanceSecurityContextDetails. + :type: str + """ + allowed_values = ["ALWAYS", "ON_ROOT_MISMATCH"] + if not value_allowed_none_or_none_sentinel(fs_group_change_policy, allowed_values): + raise ValueError( + f"Invalid value for `fs_group_change_policy`, must be None or one of {allowed_values}" + ) + self._fs_group_change_policy = fs_group_change_policy + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/container_instances/models/create_oci_fss_export_details.py b/src/oci/container_instances/models/create_oci_fss_export_details.py new file mode 100644 index 0000000000..2f32ce685a --- /dev/null +++ b/src/oci/container_instances/models/create_oci_fss_export_details.py @@ -0,0 +1,101 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20210415 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateOciFssExportDetails(object): + """ + An OCI File Storage Service (FSS) Export. Check https://docs.oracle.com/en-us/iaas/api/#/en/filestorage/20171215/Export/ for more details. + """ + + #: A constant which can be used with the oci_fss_export_type property of a CreateOciFssExportDetails. + #: This constant has a value of "OCID" + OCI_FSS_EXPORT_TYPE_OCID = "OCID" + + def __init__(self, **kwargs): + """ + Initializes a new CreateOciFssExportDetails object with values from keyword arguments. This class has the following subclasses and if you are using this class as input + to a service operations then you should favor using a subclass over the base class: + + * :class:`~oci.container_instances.models.CreateOciFssExportIdDetails` + + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param oci_fss_export_type: + The value to assign to the oci_fss_export_type property of this CreateOciFssExportDetails. + Allowed values for this property are: "OCID" + :type oci_fss_export_type: str + + """ + self.swagger_types = { + 'oci_fss_export_type': 'str' + } + self.attribute_map = { + 'oci_fss_export_type': 'ociFssExportType' + } + self._oci_fss_export_type = None + + @staticmethod + def get_subtype(object_dictionary): + """ + Given the hash representation of a subtype of this class, + use the info in the hash to return the class of the subtype. + """ + type = object_dictionary['ociFssExportType'] + + if type == 'OCID': + return 'CreateOciFssExportIdDetails' + else: + return 'CreateOciFssExportDetails' + + @property + def oci_fss_export_type(self): + """ + Gets the oci_fss_export_type of this CreateOciFssExportDetails. + Determines the mode for supplying the OCI File Storage Service (FSS) Export details. + The value must be an OCID unless your tenancy is allowed to use PATH as a value. + + Allowed values for this property are: "OCID" + + + :return: The oci_fss_export_type of this CreateOciFssExportDetails. + :rtype: str + """ + return self._oci_fss_export_type + + @oci_fss_export_type.setter + def oci_fss_export_type(self, oci_fss_export_type): + """ + Sets the oci_fss_export_type of this CreateOciFssExportDetails. + Determines the mode for supplying the OCI File Storage Service (FSS) Export details. + The value must be an OCID unless your tenancy is allowed to use PATH as a value. + + + :param oci_fss_export_type: The oci_fss_export_type of this CreateOciFssExportDetails. + :type: str + """ + allowed_values = ["OCID"] + if not value_allowed_none_or_none_sentinel(oci_fss_export_type, allowed_values): + raise ValueError( + f"Invalid value for `oci_fss_export_type`, must be None or one of {allowed_values}" + ) + self._oci_fss_export_type = oci_fss_export_type + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/container_instances/models/create_oci_fss_export_id_details.py b/src/oci/container_instances/models/create_oci_fss_export_id_details.py new file mode 100644 index 0000000000..6c26f83f35 --- /dev/null +++ b/src/oci/container_instances/models/create_oci_fss_export_id_details.py @@ -0,0 +1,80 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20210415 + +from .create_oci_fss_export_details import CreateOciFssExportDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateOciFssExportIdDetails(CreateOciFssExportDetails): + """ + The OCID of the OCI File Storage Service (FSS) Export. The user must have read permission for export-sets. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateOciFssExportIdDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.container_instances.models.CreateOciFssExportIdDetails.oci_fss_export_type` attribute + of this class is ``OCID`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param oci_fss_export_type: + The value to assign to the oci_fss_export_type property of this CreateOciFssExportIdDetails. + Allowed values for this property are: "OCID" + :type oci_fss_export_type: str + + :param id: + The value to assign to the id property of this CreateOciFssExportIdDetails. + :type id: str + + """ + self.swagger_types = { + 'oci_fss_export_type': 'str', + 'id': 'str' + } + self.attribute_map = { + 'oci_fss_export_type': 'ociFssExportType', + 'id': 'id' + } + self._oci_fss_export_type = None + self._id = None + self._oci_fss_export_type = 'OCID' + + @property + def id(self): + """ + **[Required]** Gets the id of this CreateOciFssExportIdDetails. + The OCID of the OCI File Storage Service (FSS) Export. + + + :return: The id of this CreateOciFssExportIdDetails. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this CreateOciFssExportIdDetails. + The OCID of the OCI File Storage Service (FSS) Export. + + + :param id: The id of this CreateOciFssExportIdDetails. + :type: str + """ + self._id = id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/container_instances/models/create_oci_fss_mount_command_details.py b/src/oci/container_instances/models/create_oci_fss_mount_command_details.py new file mode 100644 index 0000000000..e0f37b144b --- /dev/null +++ b/src/oci/container_instances/models/create_oci_fss_mount_command_details.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20210415 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateOciFssMountCommandDetails(object): + """ + Specifications for the mount command to mount the OCI File Storage Service (FSS) File System to Containers. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateOciFssMountCommandDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param mount_options: + The value to assign to the mount_options property of this CreateOciFssMountCommandDetails. + :type mount_options: list[oci.container_instances.models.CreateOciFssMountOptionDetails] + + """ + self.swagger_types = { + 'mount_options': 'list[CreateOciFssMountOptionDetails]' + } + self.attribute_map = { + 'mount_options': 'mountOptions' + } + self._mount_options = None + + @property + def mount_options(self): + """ + Gets the mount_options of this CreateOciFssMountCommandDetails. + List of mount options to be used in the mount command. The order of this array will be maintained while preparing the mount command. + + + :return: The mount_options of this CreateOciFssMountCommandDetails. + :rtype: list[oci.container_instances.models.CreateOciFssMountOptionDetails] + """ + return self._mount_options + + @mount_options.setter + def mount_options(self, mount_options): + """ + Sets the mount_options of this CreateOciFssMountCommandDetails. + List of mount options to be used in the mount command. The order of this array will be maintained while preparing the mount command. + + + :param mount_options: The mount_options of this CreateOciFssMountCommandDetails. + :type: list[oci.container_instances.models.CreateOciFssMountOptionDetails] + """ + self._mount_options = mount_options + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/container_instances/models/create_oci_fss_mount_option_details.py b/src/oci/container_instances/models/create_oci_fss_mount_option_details.py new file mode 100644 index 0000000000..e767a4bc23 --- /dev/null +++ b/src/oci/container_instances/models/create_oci_fss_mount_option_details.py @@ -0,0 +1,102 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20210415 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateOciFssMountOptionDetails(object): + """ + A mount option to be used in the mount command while mounting the OCI File Storage Service (FSS) File System to Containers. + The mount option will look like option=value in the mount command. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateOciFssMountOptionDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param option: + The value to assign to the option property of this CreateOciFssMountOptionDetails. + :type option: str + + :param value: + The value to assign to the value property of this CreateOciFssMountOptionDetails. + :type value: str + + """ + self.swagger_types = { + 'option': 'str', + 'value': 'str' + } + self.attribute_map = { + 'option': 'option', + 'value': 'value' + } + self._option = None + self._value = None + + @property + def option(self): + """ + **[Required]** Gets the option of this CreateOciFssMountOptionDetails. + A generic (https://man7.org/linux/man-pages/man8/mount.8.html) or nfs (https://man7.org/linux/man-pages/man5/nfs.5.html) mount option. + + + :return: The option of this CreateOciFssMountOptionDetails. + :rtype: str + """ + return self._option + + @option.setter + def option(self, option): + """ + Sets the option of this CreateOciFssMountOptionDetails. + A generic (https://man7.org/linux/man-pages/man8/mount.8.html) or nfs (https://man7.org/linux/man-pages/man5/nfs.5.html) mount option. + + + :param option: The option of this CreateOciFssMountOptionDetails. + :type: str + """ + self._option = option + + @property + def value(self): + """ + Gets the value of this CreateOciFssMountOptionDetails. + The value of the mount option. + + + :return: The value of this CreateOciFssMountOptionDetails. + :rtype: str + """ + return self._value + + @value.setter + def value(self, value): + """ + Sets the value of this CreateOciFssMountOptionDetails. + The value of the mount option. + + + :param value: The value of this CreateOciFssMountOptionDetails. + :type: str + """ + self._value = value + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/container_instances/models/create_oci_fss_mount_target_details.py b/src/oci/container_instances/models/create_oci_fss_mount_target_details.py new file mode 100644 index 0000000000..a56709bb35 --- /dev/null +++ b/src/oci/container_instances/models/create_oci_fss_mount_target_details.py @@ -0,0 +1,102 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20210415 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateOciFssMountTargetDetails(object): + """ + An OCI File Storage Service (FSS) Mount Target. + Check https://docs.oracle.com/en-us/iaas/api/#/en/filestorage/20171215/MountTarget for more details. + """ + + #: A constant which can be used with the oci_fss_mount_target_type property of a CreateOciFssMountTargetDetails. + #: This constant has a value of "OCID" + OCI_FSS_MOUNT_TARGET_TYPE_OCID = "OCID" + + def __init__(self, **kwargs): + """ + Initializes a new CreateOciFssMountTargetDetails object with values from keyword arguments. This class has the following subclasses and if you are using this class as input + to a service operations then you should favor using a subclass over the base class: + + * :class:`~oci.container_instances.models.CreateOciFssMountTargetIdDetails` + + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param oci_fss_mount_target_type: + The value to assign to the oci_fss_mount_target_type property of this CreateOciFssMountTargetDetails. + Allowed values for this property are: "OCID" + :type oci_fss_mount_target_type: str + + """ + self.swagger_types = { + 'oci_fss_mount_target_type': 'str' + } + self.attribute_map = { + 'oci_fss_mount_target_type': 'ociFssMountTargetType' + } + self._oci_fss_mount_target_type = None + + @staticmethod + def get_subtype(object_dictionary): + """ + Given the hash representation of a subtype of this class, + use the info in the hash to return the class of the subtype. + """ + type = object_dictionary['ociFssMountTargetType'] + + if type == 'OCID': + return 'CreateOciFssMountTargetIdDetails' + else: + return 'CreateOciFssMountTargetDetails' + + @property + def oci_fss_mount_target_type(self): + """ + Gets the oci_fss_mount_target_type of this CreateOciFssMountTargetDetails. + Determines the mode for supplying the OCI File Storage Service (FSS) Mount target details. + The value must be an OCID unless your tenancy is allowed to use HOST as a value. + + Allowed values for this property are: "OCID" + + + :return: The oci_fss_mount_target_type of this CreateOciFssMountTargetDetails. + :rtype: str + """ + return self._oci_fss_mount_target_type + + @oci_fss_mount_target_type.setter + def oci_fss_mount_target_type(self, oci_fss_mount_target_type): + """ + Sets the oci_fss_mount_target_type of this CreateOciFssMountTargetDetails. + Determines the mode for supplying the OCI File Storage Service (FSS) Mount target details. + The value must be an OCID unless your tenancy is allowed to use HOST as a value. + + + :param oci_fss_mount_target_type: The oci_fss_mount_target_type of this CreateOciFssMountTargetDetails. + :type: str + """ + allowed_values = ["OCID"] + if not value_allowed_none_or_none_sentinel(oci_fss_mount_target_type, allowed_values): + raise ValueError( + f"Invalid value for `oci_fss_mount_target_type`, must be None or one of {allowed_values}" + ) + self._oci_fss_mount_target_type = oci_fss_mount_target_type + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/container_instances/models/create_oci_fss_mount_target_id_details.py b/src/oci/container_instances/models/create_oci_fss_mount_target_id_details.py new file mode 100644 index 0000000000..173fe5f761 --- /dev/null +++ b/src/oci/container_instances/models/create_oci_fss_mount_target_id_details.py @@ -0,0 +1,80 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20210415 + +from .create_oci_fss_mount_target_details import CreateOciFssMountTargetDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateOciFssMountTargetIdDetails(CreateOciFssMountTargetDetails): + """ + The OCID of the OCI File Storage Service (FSS) Mount Target. The user must have read permission for mount-targets. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateOciFssMountTargetIdDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.container_instances.models.CreateOciFssMountTargetIdDetails.oci_fss_mount_target_type` attribute + of this class is ``OCID`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param oci_fss_mount_target_type: + The value to assign to the oci_fss_mount_target_type property of this CreateOciFssMountTargetIdDetails. + Allowed values for this property are: "OCID" + :type oci_fss_mount_target_type: str + + :param id: + The value to assign to the id property of this CreateOciFssMountTargetIdDetails. + :type id: str + + """ + self.swagger_types = { + 'oci_fss_mount_target_type': 'str', + 'id': 'str' + } + self.attribute_map = { + 'oci_fss_mount_target_type': 'ociFssMountTargetType', + 'id': 'id' + } + self._oci_fss_mount_target_type = None + self._id = None + self._oci_fss_mount_target_type = 'OCID' + + @property + def id(self): + """ + **[Required]** Gets the id of this CreateOciFssMountTargetIdDetails. + The OCID of the OCI File Storage Service (FSS) Mount Target. + + + :return: The id of this CreateOciFssMountTargetIdDetails. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this CreateOciFssMountTargetIdDetails. + The OCID of the OCI File Storage Service (FSS) Mount Target. + + + :param id: The id of this CreateOciFssMountTargetIdDetails. + :type: str + """ + self._id = id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/container_instances/models/create_oci_fss_security_details.py b/src/oci/container_instances/models/create_oci_fss_security_details.py new file mode 100644 index 0000000000..4a207d07ae --- /dev/null +++ b/src/oci/container_instances/models/create_oci_fss_security_details.py @@ -0,0 +1,132 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20210415 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateOciFssSecurityDetails(object): + """ + Security options for OCI FSS File System. + """ + + #: A constant which can be used with the auth property of a CreateOciFssSecurityDetails. + #: This constant has a value of "SYS" + AUTH_SYS = "SYS" + + def __init__(self, **kwargs): + """ + Initializes a new CreateOciFssSecurityDetails object with values from keyword arguments. This class has the following subclasses and if you are using this class as input + to a service operations then you should favor using a subclass over the base class: + + * :class:`~oci.container_instances.models.CreateOciFssSysSecurityDetails` + + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param auth: + The value to assign to the auth property of this CreateOciFssSecurityDetails. + Allowed values for this property are: "SYS" + :type auth: str + + :param is_encrypted_in_transit: + The value to assign to the is_encrypted_in_transit property of this CreateOciFssSecurityDetails. + :type is_encrypted_in_transit: bool + + """ + self.swagger_types = { + 'auth': 'str', + 'is_encrypted_in_transit': 'bool' + } + self.attribute_map = { + 'auth': 'auth', + 'is_encrypted_in_transit': 'isEncryptedInTransit' + } + self._auth = None + self._is_encrypted_in_transit = None + + @staticmethod + def get_subtype(object_dictionary): + """ + Given the hash representation of a subtype of this class, + use the info in the hash to return the class of the subtype. + """ + type = object_dictionary['auth'] + + if type == 'SYS': + return 'CreateOciFssSysSecurityDetails' + else: + return 'CreateOciFssSecurityDetails' + + @property + def auth(self): + """ + Gets the auth of this CreateOciFssSecurityDetails. + NFS authentication type to be used. Currently, only auth type SYS is supported. + + Allowed values for this property are: "SYS" + + + :return: The auth of this CreateOciFssSecurityDetails. + :rtype: str + """ + return self._auth + + @auth.setter + def auth(self, auth): + """ + Sets the auth of this CreateOciFssSecurityDetails. + NFS authentication type to be used. Currently, only auth type SYS is supported. + + + :param auth: The auth of this CreateOciFssSecurityDetails. + :type: str + """ + allowed_values = ["SYS"] + if not value_allowed_none_or_none_sentinel(auth, allowed_values): + raise ValueError( + f"Invalid value for `auth`, must be None or one of {allowed_values}" + ) + self._auth = auth + + @property + def is_encrypted_in_transit(self): + """ + Gets the is_encrypted_in_transit of this CreateOciFssSecurityDetails. + Determines whether in-transit encryption needs to be enables. + Check https://docs.oracle.com/en-us/iaas/Content/File/Tasks/intransitencryption.htm#Using_Intransit_Encryption for more details. + + + :return: The is_encrypted_in_transit of this CreateOciFssSecurityDetails. + :rtype: bool + """ + return self._is_encrypted_in_transit + + @is_encrypted_in_transit.setter + def is_encrypted_in_transit(self, is_encrypted_in_transit): + """ + Sets the is_encrypted_in_transit of this CreateOciFssSecurityDetails. + Determines whether in-transit encryption needs to be enables. + Check https://docs.oracle.com/en-us/iaas/Content/File/Tasks/intransitencryption.htm#Using_Intransit_Encryption for more details. + + + :param is_encrypted_in_transit: The is_encrypted_in_transit of this CreateOciFssSecurityDetails. + :type: bool + """ + self._is_encrypted_in_transit = is_encrypted_in_transit + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/container_instances/models/create_oci_fss_sys_security_details.py b/src/oci/container_instances/models/create_oci_fss_sys_security_details.py new file mode 100644 index 0000000000..9b7ba97084 --- /dev/null +++ b/src/oci/container_instances/models/create_oci_fss_sys_security_details.py @@ -0,0 +1,56 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20210415 + +from .create_oci_fss_security_details import CreateOciFssSecurityDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateOciFssSysSecurityDetails(CreateOciFssSecurityDetails): + """ + SYS security options for OCI FSS File System. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateOciFssSysSecurityDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.container_instances.models.CreateOciFssSysSecurityDetails.auth` attribute + of this class is ``SYS`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param auth: + The value to assign to the auth property of this CreateOciFssSysSecurityDetails. + Allowed values for this property are: "SYS" + :type auth: str + + :param is_encrypted_in_transit: + The value to assign to the is_encrypted_in_transit property of this CreateOciFssSysSecurityDetails. + :type is_encrypted_in_transit: bool + + """ + self.swagger_types = { + 'auth': 'str', + 'is_encrypted_in_transit': 'bool' + } + self.attribute_map = { + 'auth': 'auth', + 'is_encrypted_in_transit': 'isEncryptedInTransit' + } + self._auth = None + self._is_encrypted_in_transit = None + self._auth = 'SYS' + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/container_instances/models/linux_container_instance_security_context.py b/src/oci/container_instances/models/linux_container_instance_security_context.py new file mode 100644 index 0000000000..9bc4cc6260 --- /dev/null +++ b/src/oci/container_instances/models/linux_container_instance_security_context.py @@ -0,0 +1,128 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20210415 + +from .container_instance_security_context import ContainerInstanceSecurityContext +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class LinuxContainerInstanceSecurityContext(ContainerInstanceSecurityContext): + """ + Security context for all containers in a container instance. + """ + + #: A constant which can be used with the fs_group_change_policy property of a LinuxContainerInstanceSecurityContext. + #: This constant has a value of "ALWAYS" + FS_GROUP_CHANGE_POLICY_ALWAYS = "ALWAYS" + + #: A constant which can be used with the fs_group_change_policy property of a LinuxContainerInstanceSecurityContext. + #: This constant has a value of "ON_ROOT_MISMATCH" + FS_GROUP_CHANGE_POLICY_ON_ROOT_MISMATCH = "ON_ROOT_MISMATCH" + + def __init__(self, **kwargs): + """ + Initializes a new LinuxContainerInstanceSecurityContext object with values from keyword arguments. The default value of the :py:attr:`~oci.container_instances.models.LinuxContainerInstanceSecurityContext.security_context_type` attribute + of this class is ``LINUX`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param security_context_type: + The value to assign to the security_context_type property of this LinuxContainerInstanceSecurityContext. + Allowed values for this property are: "LINUX", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type security_context_type: str + + :param fs_group: + The value to assign to the fs_group property of this LinuxContainerInstanceSecurityContext. + :type fs_group: int + + :param fs_group_change_policy: + The value to assign to the fs_group_change_policy property of this LinuxContainerInstanceSecurityContext. + Allowed values for this property are: "ALWAYS", "ON_ROOT_MISMATCH", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type fs_group_change_policy: str + + """ + self.swagger_types = { + 'security_context_type': 'str', + 'fs_group': 'int', + 'fs_group_change_policy': 'str' + } + self.attribute_map = { + 'security_context_type': 'securityContextType', + 'fs_group': 'fsGroup', + 'fs_group_change_policy': 'fsGroupChangePolicy' + } + self._security_context_type = None + self._fs_group = None + self._fs_group_change_policy = None + self._security_context_type = 'LINUX' + + @property + def fs_group(self): + """ + Gets the fs_group of this LinuxContainerInstanceSecurityContext. + A special supplemental group that applies to all containers in the container instance. Some volume types allow the container instance to change ownership of the volume. The owning GID will be the fsGroup, the setgid bit will be set (new files will be owned by the fsGroup), and the permission bits are OR'd with rw-rw----. If unset, the container instance will not modify the ownership and permissions of volumes. + + + :return: The fs_group of this LinuxContainerInstanceSecurityContext. + :rtype: int + """ + return self._fs_group + + @fs_group.setter + def fs_group(self, fs_group): + """ + Sets the fs_group of this LinuxContainerInstanceSecurityContext. + A special supplemental group that applies to all containers in the container instance. Some volume types allow the container instance to change ownership of the volume. The owning GID will be the fsGroup, the setgid bit will be set (new files will be owned by the fsGroup), and the permission bits are OR'd with rw-rw----. If unset, the container instance will not modify the ownership and permissions of volumes. + + + :param fs_group: The fs_group of this LinuxContainerInstanceSecurityContext. + :type: int + """ + self._fs_group = fs_group + + @property + def fs_group_change_policy(self): + """ + Gets the fs_group_change_policy of this LinuxContainerInstanceSecurityContext. + Defines behavior of changing ownership and permission of the volume before being exposed inside the containers. This only applies to volumes which support fsGroup ownership and permissions, and will have no effect on ephemeral volumes. ON_ROOT_MISMATCH only changes permissions and ownership if the permission and ownership of the root directory does not match the expected permissions and ownership of the volume. This can improve container instance start times. ALWAYS changes permission and ownership of the volume when it is mounted. If unset, ALWAYS is used. + + Allowed values for this property are: "ALWAYS", "ON_ROOT_MISMATCH", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The fs_group_change_policy of this LinuxContainerInstanceSecurityContext. + :rtype: str + """ + return self._fs_group_change_policy + + @fs_group_change_policy.setter + def fs_group_change_policy(self, fs_group_change_policy): + """ + Sets the fs_group_change_policy of this LinuxContainerInstanceSecurityContext. + Defines behavior of changing ownership and permission of the volume before being exposed inside the containers. This only applies to volumes which support fsGroup ownership and permissions, and will have no effect on ephemeral volumes. ON_ROOT_MISMATCH only changes permissions and ownership if the permission and ownership of the root directory does not match the expected permissions and ownership of the volume. This can improve container instance start times. ALWAYS changes permission and ownership of the volume when it is mounted. If unset, ALWAYS is used. + + + :param fs_group_change_policy: The fs_group_change_policy of this LinuxContainerInstanceSecurityContext. + :type: str + """ + allowed_values = ["ALWAYS", "ON_ROOT_MISMATCH"] + if not value_allowed_none_or_none_sentinel(fs_group_change_policy, allowed_values): + fs_group_change_policy = 'UNKNOWN_ENUM_VALUE' + self._fs_group_change_policy = fs_group_change_policy + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/container_instances/models/oci_fss_export.py b/src/oci/container_instances/models/oci_fss_export.py new file mode 100644 index 0000000000..1232a8bf30 --- /dev/null +++ b/src/oci/container_instances/models/oci_fss_export.py @@ -0,0 +1,101 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20210415 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class OciFssExport(object): + """ + An OCI File Storage Service (FSS) Export. Check https://docs.oracle.com/en-us/iaas/api/#/en/filestorage/20171215/Export/ for more details. + """ + + #: A constant which can be used with the oci_fss_export_type property of a OciFssExport. + #: This constant has a value of "OCID" + OCI_FSS_EXPORT_TYPE_OCID = "OCID" + + def __init__(self, **kwargs): + """ + Initializes a new OciFssExport object with values from keyword arguments. This class has the following subclasses and if you are using this class as input + to a service operations then you should favor using a subclass over the base class: + + * :class:`~oci.container_instances.models.OciFssExportId` + + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param oci_fss_export_type: + The value to assign to the oci_fss_export_type property of this OciFssExport. + Allowed values for this property are: "OCID", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type oci_fss_export_type: str + + """ + self.swagger_types = { + 'oci_fss_export_type': 'str' + } + self.attribute_map = { + 'oci_fss_export_type': 'ociFssExportType' + } + self._oci_fss_export_type = None + + @staticmethod + def get_subtype(object_dictionary): + """ + Given the hash representation of a subtype of this class, + use the info in the hash to return the class of the subtype. + """ + type = object_dictionary['ociFssExportType'] + + if type == 'OCID': + return 'OciFssExportId' + else: + return 'OciFssExport' + + @property + def oci_fss_export_type(self): + """ + Gets the oci_fss_export_type of this OciFssExport. + Determines the mode for supplying the OCI File Storage Service (FSS) Export details. + The value must be an OCID unless your tenancy is allowed to use PATH as a value. + + Allowed values for this property are: "OCID", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The oci_fss_export_type of this OciFssExport. + :rtype: str + """ + return self._oci_fss_export_type + + @oci_fss_export_type.setter + def oci_fss_export_type(self, oci_fss_export_type): + """ + Sets the oci_fss_export_type of this OciFssExport. + Determines the mode for supplying the OCI File Storage Service (FSS) Export details. + The value must be an OCID unless your tenancy is allowed to use PATH as a value. + + + :param oci_fss_export_type: The oci_fss_export_type of this OciFssExport. + :type: str + """ + allowed_values = ["OCID"] + if not value_allowed_none_or_none_sentinel(oci_fss_export_type, allowed_values): + oci_fss_export_type = 'UNKNOWN_ENUM_VALUE' + self._oci_fss_export_type = oci_fss_export_type + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/container_instances/models/oci_fss_export_id.py b/src/oci/container_instances/models/oci_fss_export_id.py new file mode 100644 index 0000000000..5f3ab3e4f6 --- /dev/null +++ b/src/oci/container_instances/models/oci_fss_export_id.py @@ -0,0 +1,80 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20210415 + +from .oci_fss_export import OciFssExport +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class OciFssExportId(OciFssExport): + """ + The OCID of the OCI File Storage Service (FSS) Export. The user must have read permission for export-sets. + """ + + def __init__(self, **kwargs): + """ + Initializes a new OciFssExportId object with values from keyword arguments. The default value of the :py:attr:`~oci.container_instances.models.OciFssExportId.oci_fss_export_type` attribute + of this class is ``OCID`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param oci_fss_export_type: + The value to assign to the oci_fss_export_type property of this OciFssExportId. + Allowed values for this property are: "OCID" + :type oci_fss_export_type: str + + :param id: + The value to assign to the id property of this OciFssExportId. + :type id: str + + """ + self.swagger_types = { + 'oci_fss_export_type': 'str', + 'id': 'str' + } + self.attribute_map = { + 'oci_fss_export_type': 'ociFssExportType', + 'id': 'id' + } + self._oci_fss_export_type = None + self._id = None + self._oci_fss_export_type = 'OCID' + + @property + def id(self): + """ + Gets the id of this OciFssExportId. + The OCID of the OCI File Storage Service (FSS) Export. + + + :return: The id of this OciFssExportId. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this OciFssExportId. + The OCID of the OCI File Storage Service (FSS) Export. + + + :param id: The id of this OciFssExportId. + :type: str + """ + self._id = id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/container_instances/models/oci_fss_mount_command.py b/src/oci/container_instances/models/oci_fss_mount_command.py new file mode 100644 index 0000000000..b7ccb10c98 --- /dev/null +++ b/src/oci/container_instances/models/oci_fss_mount_command.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20210415 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class OciFssMountCommand(object): + """ + Specifications for the mount command to mount the OCI File Storage Service (FSS) File System to Containers. + """ + + def __init__(self, **kwargs): + """ + Initializes a new OciFssMountCommand object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param mount_options: + The value to assign to the mount_options property of this OciFssMountCommand. + :type mount_options: list[oci.container_instances.models.OciFssMountOption] + + """ + self.swagger_types = { + 'mount_options': 'list[OciFssMountOption]' + } + self.attribute_map = { + 'mount_options': 'mountOptions' + } + self._mount_options = None + + @property + def mount_options(self): + """ + Gets the mount_options of this OciFssMountCommand. + List of mount options to be used in the mount command. The order of this array will be maintained while preparing the mount command. + + + :return: The mount_options of this OciFssMountCommand. + :rtype: list[oci.container_instances.models.OciFssMountOption] + """ + return self._mount_options + + @mount_options.setter + def mount_options(self, mount_options): + """ + Sets the mount_options of this OciFssMountCommand. + List of mount options to be used in the mount command. The order of this array will be maintained while preparing the mount command. + + + :param mount_options: The mount_options of this OciFssMountCommand. + :type: list[oci.container_instances.models.OciFssMountOption] + """ + self._mount_options = mount_options + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/container_instances/models/oci_fss_mount_option.py b/src/oci/container_instances/models/oci_fss_mount_option.py new file mode 100644 index 0000000000..c346d16465 --- /dev/null +++ b/src/oci/container_instances/models/oci_fss_mount_option.py @@ -0,0 +1,102 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20210415 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class OciFssMountOption(object): + """ + A mount option to be used in the mount command while mounting the OCI File Storage Service (FSS) File System to Containers. + The mount option will look like option=value in the mount command. + """ + + def __init__(self, **kwargs): + """ + Initializes a new OciFssMountOption object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param option: + The value to assign to the option property of this OciFssMountOption. + :type option: str + + :param value: + The value to assign to the value property of this OciFssMountOption. + :type value: str + + """ + self.swagger_types = { + 'option': 'str', + 'value': 'str' + } + self.attribute_map = { + 'option': 'option', + 'value': 'value' + } + self._option = None + self._value = None + + @property + def option(self): + """ + Gets the option of this OciFssMountOption. + A generic (https://man7.org/linux/man-pages/man8/mount.8.html) or nfs (https://man7.org/linux/man-pages/man5/nfs.5.html) mount option. + + + :return: The option of this OciFssMountOption. + :rtype: str + """ + return self._option + + @option.setter + def option(self, option): + """ + Sets the option of this OciFssMountOption. + A generic (https://man7.org/linux/man-pages/man8/mount.8.html) or nfs (https://man7.org/linux/man-pages/man5/nfs.5.html) mount option. + + + :param option: The option of this OciFssMountOption. + :type: str + """ + self._option = option + + @property + def value(self): + """ + Gets the value of this OciFssMountOption. + The value of the mount option. + + + :return: The value of this OciFssMountOption. + :rtype: str + """ + return self._value + + @value.setter + def value(self, value): + """ + Sets the value of this OciFssMountOption. + The value of the mount option. + + + :param value: The value of this OciFssMountOption. + :type: str + """ + self._value = value + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/container_instances/models/oci_fss_mount_target.py b/src/oci/container_instances/models/oci_fss_mount_target.py new file mode 100644 index 0000000000..b8159014bf --- /dev/null +++ b/src/oci/container_instances/models/oci_fss_mount_target.py @@ -0,0 +1,102 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20210415 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class OciFssMountTarget(object): + """ + An OCI File Storage Service (FSS) Mount Target. + Check https://docs.oracle.com/en-us/iaas/api/#/en/filestorage/20171215/MountTarget for more details. + """ + + #: A constant which can be used with the oci_fss_mount_target_type property of a OciFssMountTarget. + #: This constant has a value of "OCID" + OCI_FSS_MOUNT_TARGET_TYPE_OCID = "OCID" + + def __init__(self, **kwargs): + """ + Initializes a new OciFssMountTarget object with values from keyword arguments. This class has the following subclasses and if you are using this class as input + to a service operations then you should favor using a subclass over the base class: + + * :class:`~oci.container_instances.models.OciFssMountTargetId` + + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param oci_fss_mount_target_type: + The value to assign to the oci_fss_mount_target_type property of this OciFssMountTarget. + Allowed values for this property are: "OCID", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type oci_fss_mount_target_type: str + + """ + self.swagger_types = { + 'oci_fss_mount_target_type': 'str' + } + self.attribute_map = { + 'oci_fss_mount_target_type': 'ociFssMountTargetType' + } + self._oci_fss_mount_target_type = None + + @staticmethod + def get_subtype(object_dictionary): + """ + Given the hash representation of a subtype of this class, + use the info in the hash to return the class of the subtype. + """ + type = object_dictionary['ociFssMountTargetType'] + + if type == 'OCID': + return 'OciFssMountTargetId' + else: + return 'OciFssMountTarget' + + @property + def oci_fss_mount_target_type(self): + """ + Gets the oci_fss_mount_target_type of this OciFssMountTarget. + Determines the mode for supplying the OCI File Storage Service (FSS) Mount target details. + The value must be an OCID unless your tenancy is allowed to use HOST as a value. + + Allowed values for this property are: "OCID", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The oci_fss_mount_target_type of this OciFssMountTarget. + :rtype: str + """ + return self._oci_fss_mount_target_type + + @oci_fss_mount_target_type.setter + def oci_fss_mount_target_type(self, oci_fss_mount_target_type): + """ + Sets the oci_fss_mount_target_type of this OciFssMountTarget. + Determines the mode for supplying the OCI File Storage Service (FSS) Mount target details. + The value must be an OCID unless your tenancy is allowed to use HOST as a value. + + + :param oci_fss_mount_target_type: The oci_fss_mount_target_type of this OciFssMountTarget. + :type: str + """ + allowed_values = ["OCID"] + if not value_allowed_none_or_none_sentinel(oci_fss_mount_target_type, allowed_values): + oci_fss_mount_target_type = 'UNKNOWN_ENUM_VALUE' + self._oci_fss_mount_target_type = oci_fss_mount_target_type + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/container_instances/models/oci_fss_mount_target_id.py b/src/oci/container_instances/models/oci_fss_mount_target_id.py new file mode 100644 index 0000000000..772ebd9967 --- /dev/null +++ b/src/oci/container_instances/models/oci_fss_mount_target_id.py @@ -0,0 +1,80 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20210415 + +from .oci_fss_mount_target import OciFssMountTarget +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class OciFssMountTargetId(OciFssMountTarget): + """ + The OCID of the OCI File Storage Service (FSS) Mount Target. The user must have read permission for mount-targets. + """ + + def __init__(self, **kwargs): + """ + Initializes a new OciFssMountTargetId object with values from keyword arguments. The default value of the :py:attr:`~oci.container_instances.models.OciFssMountTargetId.oci_fss_mount_target_type` attribute + of this class is ``OCID`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param oci_fss_mount_target_type: + The value to assign to the oci_fss_mount_target_type property of this OciFssMountTargetId. + Allowed values for this property are: "OCID" + :type oci_fss_mount_target_type: str + + :param id: + The value to assign to the id property of this OciFssMountTargetId. + :type id: str + + """ + self.swagger_types = { + 'oci_fss_mount_target_type': 'str', + 'id': 'str' + } + self.attribute_map = { + 'oci_fss_mount_target_type': 'ociFssMountTargetType', + 'id': 'id' + } + self._oci_fss_mount_target_type = None + self._id = None + self._oci_fss_mount_target_type = 'OCID' + + @property + def id(self): + """ + Gets the id of this OciFssMountTargetId. + The OCID of the OCI File Storage Service (FSS) Mount Target. + + + :return: The id of this OciFssMountTargetId. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this OciFssMountTargetId. + The OCID of the OCI File Storage Service (FSS) Mount Target. + + + :param id: The id of this OciFssMountTargetId. + :type: str + """ + self._id = id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/container_instances/models/oci_fss_security.py b/src/oci/container_instances/models/oci_fss_security.py new file mode 100644 index 0000000000..dca8c0a6e9 --- /dev/null +++ b/src/oci/container_instances/models/oci_fss_security.py @@ -0,0 +1,132 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20210415 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class OciFssSecurity(object): + """ + Security options for OCI FSS File System. + """ + + #: A constant which can be used with the auth property of a OciFssSecurity. + #: This constant has a value of "SYS" + AUTH_SYS = "SYS" + + def __init__(self, **kwargs): + """ + Initializes a new OciFssSecurity object with values from keyword arguments. This class has the following subclasses and if you are using this class as input + to a service operations then you should favor using a subclass over the base class: + + * :class:`~oci.container_instances.models.OciFssSysSecurity` + + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param auth: + The value to assign to the auth property of this OciFssSecurity. + Allowed values for this property are: "SYS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type auth: str + + :param is_encrypted_in_transit: + The value to assign to the is_encrypted_in_transit property of this OciFssSecurity. + :type is_encrypted_in_transit: bool + + """ + self.swagger_types = { + 'auth': 'str', + 'is_encrypted_in_transit': 'bool' + } + self.attribute_map = { + 'auth': 'auth', + 'is_encrypted_in_transit': 'isEncryptedInTransit' + } + self._auth = None + self._is_encrypted_in_transit = None + + @staticmethod + def get_subtype(object_dictionary): + """ + Given the hash representation of a subtype of this class, + use the info in the hash to return the class of the subtype. + """ + type = object_dictionary['auth'] + + if type == 'SYS': + return 'OciFssSysSecurity' + else: + return 'OciFssSecurity' + + @property + def auth(self): + """ + Gets the auth of this OciFssSecurity. + NFS authentication type to be used. Currently, only auth type SYS is supported. + + Allowed values for this property are: "SYS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The auth of this OciFssSecurity. + :rtype: str + """ + return self._auth + + @auth.setter + def auth(self, auth): + """ + Sets the auth of this OciFssSecurity. + NFS authentication type to be used. Currently, only auth type SYS is supported. + + + :param auth: The auth of this OciFssSecurity. + :type: str + """ + allowed_values = ["SYS"] + if not value_allowed_none_or_none_sentinel(auth, allowed_values): + auth = 'UNKNOWN_ENUM_VALUE' + self._auth = auth + + @property + def is_encrypted_in_transit(self): + """ + Gets the is_encrypted_in_transit of this OciFssSecurity. + Determines whether in-transit encryption needs to be enables. + Check https://docs.oracle.com/en-us/iaas/Content/File/Tasks/intransitencryption.htm#Using_Intransit_Encryption for more details. + + + :return: The is_encrypted_in_transit of this OciFssSecurity. + :rtype: bool + """ + return self._is_encrypted_in_transit + + @is_encrypted_in_transit.setter + def is_encrypted_in_transit(self, is_encrypted_in_transit): + """ + Sets the is_encrypted_in_transit of this OciFssSecurity. + Determines whether in-transit encryption needs to be enables. + Check https://docs.oracle.com/en-us/iaas/Content/File/Tasks/intransitencryption.htm#Using_Intransit_Encryption for more details. + + + :param is_encrypted_in_transit: The is_encrypted_in_transit of this OciFssSecurity. + :type: bool + """ + self._is_encrypted_in_transit = is_encrypted_in_transit + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/container_instances/models/oci_fss_sys_security.py b/src/oci/container_instances/models/oci_fss_sys_security.py new file mode 100644 index 0000000000..befd3cf6c5 --- /dev/null +++ b/src/oci/container_instances/models/oci_fss_sys_security.py @@ -0,0 +1,56 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20210415 + +from .oci_fss_security import OciFssSecurity +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class OciFssSysSecurity(OciFssSecurity): + """ + SYS security options for OCI FSS File System. + """ + + def __init__(self, **kwargs): + """ + Initializes a new OciFssSysSecurity object with values from keyword arguments. The default value of the :py:attr:`~oci.container_instances.models.OciFssSysSecurity.auth` attribute + of this class is ``SYS`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param auth: + The value to assign to the auth property of this OciFssSysSecurity. + Allowed values for this property are: "SYS" + :type auth: str + + :param is_encrypted_in_transit: + The value to assign to the is_encrypted_in_transit property of this OciFssSysSecurity. + :type is_encrypted_in_transit: bool + + """ + self.swagger_types = { + 'auth': 'str', + 'is_encrypted_in_transit': 'bool' + } + self.attribute_map = { + 'auth': 'auth', + 'is_encrypted_in_transit': 'isEncryptedInTransit' + } + self._auth = None + self._is_encrypted_in_transit = None + self._auth = 'SYS' + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/core/compute_management_client.py b/src/oci/core/compute_management_client.py index 1686baecd6..42b1543c6f 100644 --- a/src/oci/core/compute_management_client.py +++ b/src/oci/core/compute_management_client.py @@ -898,7 +898,7 @@ def create_cluster_network(self, create_cluster_network_details, **kwargs): def create_instance_configuration(self, create_instance_configuration, **kwargs): """ Creates an instance configuration. An instance configuration is a template that defines the - settings to use when creating Compute instances. + settings to use when creating Compute instances or GPU Memory Clusters. :param oci.core.models.CreateInstanceConfigurationBase create_instance_configuration: (required) diff --git a/src/oci/core/models/__init__.py b/src/oci/core/models/__init__.py index f269bedc7b..1aeaac6581 100644 --- a/src/oci/core/models/__init__.py +++ b/src/oci/core/models/__init__.py @@ -171,6 +171,7 @@ from .compute_capacity_topology_summary import ComputeCapacityTopologySummary from .compute_cluster import ComputeCluster from .compute_cluster_collection import ComputeClusterCollection +from .compute_cluster_placement_constraint_details import ComputeClusterPlacementConstraintDetails from .compute_cluster_summary import ComputeClusterSummary from .compute_global_image_capability_schema import ComputeGlobalImageCapabilitySchema from .compute_global_image_capability_schema_summary import ComputeGlobalImageCapabilitySchemaSummary @@ -243,6 +244,7 @@ from .create_drg_details import CreateDrgDetails from .create_drg_route_distribution_details import CreateDrgRouteDistributionDetails from .create_drg_route_table_details import CreateDrgRouteTableDetails +from .create_gmc_configuration_details import CreateGmcConfigurationDetails from .create_ip_sec_connection_details import CreateIPSecConnectionDetails from .create_ip_sec_connection_tunnel_details import CreateIPSecConnectionTunnelDetails from .create_ip_sec_tunnel_bgp_session_details import CreateIPSecTunnelBgpSessionDetails @@ -388,6 +390,8 @@ from .instance_configuration_create_volume_details import InstanceConfigurationCreateVolumeDetails from .instance_configuration_detached_volume_autotune_policy import InstanceConfigurationDetachedVolumeAutotunePolicy from .instance_configuration_generic_bm_launch_instance_platform_config import InstanceConfigurationGenericBmLaunchInstancePlatformConfig +from .instance_configuration_gmc_config_detail import InstanceConfigurationGmcConfigDetail +from .instance_configuration_gpu_memory_cluster_scale_config import InstanceConfigurationGpuMemoryClusterScaleConfig from .instance_configuration_host_group_placement_constraint_details import InstanceConfigurationHostGroupPlacementConstraintDetails from .instance_configuration_instance_details import InstanceConfigurationInstanceDetails from .instance_configuration_instance_options import InstanceConfigurationInstanceOptions @@ -876,6 +880,7 @@ "ComputeCapacityTopologySummary": ComputeCapacityTopologySummary, "ComputeCluster": ComputeCluster, "ComputeClusterCollection": ComputeClusterCollection, + "ComputeClusterPlacementConstraintDetails": ComputeClusterPlacementConstraintDetails, "ComputeClusterSummary": ComputeClusterSummary, "ComputeGlobalImageCapabilitySchema": ComputeGlobalImageCapabilitySchema, "ComputeGlobalImageCapabilitySchemaSummary": ComputeGlobalImageCapabilitySchemaSummary, @@ -948,6 +953,7 @@ "CreateDrgDetails": CreateDrgDetails, "CreateDrgRouteDistributionDetails": CreateDrgRouteDistributionDetails, "CreateDrgRouteTableDetails": CreateDrgRouteTableDetails, + "CreateGmcConfigurationDetails": CreateGmcConfigurationDetails, "CreateIPSecConnectionDetails": CreateIPSecConnectionDetails, "CreateIPSecConnectionTunnelDetails": CreateIPSecConnectionTunnelDetails, "CreateIPSecTunnelBgpSessionDetails": CreateIPSecTunnelBgpSessionDetails, @@ -1093,6 +1099,8 @@ "InstanceConfigurationCreateVolumeDetails": InstanceConfigurationCreateVolumeDetails, "InstanceConfigurationDetachedVolumeAutotunePolicy": InstanceConfigurationDetachedVolumeAutotunePolicy, "InstanceConfigurationGenericBmLaunchInstancePlatformConfig": InstanceConfigurationGenericBmLaunchInstancePlatformConfig, + "InstanceConfigurationGmcConfigDetail": InstanceConfigurationGmcConfigDetail, + "InstanceConfigurationGpuMemoryClusterScaleConfig": InstanceConfigurationGpuMemoryClusterScaleConfig, "InstanceConfigurationHostGroupPlacementConstraintDetails": InstanceConfigurationHostGroupPlacementConstraintDetails, "InstanceConfigurationInstanceDetails": InstanceConfigurationInstanceDetails, "InstanceConfigurationInstanceOptions": InstanceConfigurationInstanceOptions, diff --git a/src/oci/core/models/compute_cluster.py b/src/oci/core/models/compute_cluster.py index c017f0150b..e4a814c0d4 100644 --- a/src/oci/core/models/compute_cluster.py +++ b/src/oci/core/models/compute_cluster.py @@ -12,17 +12,13 @@ @init_model_state_from_kwargs class ComputeCluster(object): """ - The data for creating a `compute cluster`__. A compute cluster - is an empty remote direct memory access (RDMA) network group + The data for creating a `compute cluster`__. - After the compute cluster is created, you can use the compute cluster's OCID with the - :func:`launch_instance` operation to create instances in the compute cluster. - The instances must be created in the same compartment and availability domain as the cluster. + After the compute cluster is created, you can use the compute cluster's OCID to create Instance, GPU Memory + Cluster or Instance Pool resources within the compute cluster. These resources must be created in the same + compartment and availability domain as the cluster. - Use compute clusters when you want to manage instances in the cluster individually in the RDMA network group. - - For details about creating a cluster network that uses instance pools to manage groups of identical instances, - see :func:`create_cluster_network_details`. + Use `COMPUTE_CLUSTER` type when using placementConstraintDetails. __ https://docs.oracle.com/iaas/Content/Compute/Tasks/compute-clusters.htm """ @@ -60,6 +56,10 @@ def __init__(self, **kwargs): The value to assign to the freeform_tags property of this ComputeCluster. :type freeform_tags: dict(str, str) + :param placement_constraint_details: + The value to assign to the placement_constraint_details property of this ComputeCluster. + :type placement_constraint_details: oci.core.models.PlacementConstraintDetails + :param id: The value to assign to the id property of this ComputeCluster. :type id: str @@ -74,6 +74,10 @@ def __init__(self, **kwargs): The value to assign to the time_created property of this ComputeCluster. :type time_created: datetime + :param time_updated: + The value to assign to the time_updated property of this ComputeCluster. + :type time_updated: datetime + """ self.swagger_types = { 'availability_domain': 'str', @@ -81,9 +85,11 @@ def __init__(self, **kwargs): 'display_name': 'str', 'defined_tags': 'dict(str, dict(str, object))', 'freeform_tags': 'dict(str, str)', + 'placement_constraint_details': 'PlacementConstraintDetails', 'id': 'str', 'lifecycle_state': 'str', - 'time_created': 'datetime' + 'time_created': 'datetime', + 'time_updated': 'datetime' } self.attribute_map = { 'availability_domain': 'availabilityDomain', @@ -91,18 +97,22 @@ def __init__(self, **kwargs): 'display_name': 'displayName', 'defined_tags': 'definedTags', 'freeform_tags': 'freeformTags', + 'placement_constraint_details': 'placementConstraintDetails', 'id': 'id', 'lifecycle_state': 'lifecycleState', - 'time_created': 'timeCreated' + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated' } self._availability_domain = None self._compartment_id = None self._display_name = None self._defined_tags = None self._freeform_tags = None + self._placement_constraint_details = None self._id = None self._lifecycle_state = None self._time_created = None + self._time_updated = None @property def availability_domain(self): @@ -254,6 +264,26 @@ def freeform_tags(self, freeform_tags): """ self._freeform_tags = freeform_tags + @property + def placement_constraint_details(self): + """ + Gets the placement_constraint_details of this ComputeCluster. + + :return: The placement_constraint_details of this ComputeCluster. + :rtype: oci.core.models.PlacementConstraintDetails + """ + return self._placement_constraint_details + + @placement_constraint_details.setter + def placement_constraint_details(self, placement_constraint_details): + """ + Sets the placement_constraint_details of this ComputeCluster. + + :param placement_constraint_details: The placement_constraint_details of this ComputeCluster. + :type: oci.core.models.PlacementConstraintDetails + """ + self._placement_constraint_details = placement_constraint_details + @property def id(self): """ @@ -346,6 +376,40 @@ def time_created(self, time_created): """ self._time_created = time_created + @property + def time_updated(self): + """ + Gets the time_updated of this ComputeCluster. + The date and time the compute cluster was updated, + in the format defined by `RFC3339`__. + + Example: `2016-08-25T21:10:29.600Z` + + __ https://tools.ietf.org/html/rfc3339 + + + :return: The time_updated of this ComputeCluster. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this ComputeCluster. + The date and time the compute cluster was updated, + in the format defined by `RFC3339`__. + + Example: `2016-08-25T21:10:29.600Z` + + __ https://tools.ietf.org/html/rfc3339 + + + :param time_updated: The time_updated of this ComputeCluster. + :type: datetime + """ + self._time_updated = time_updated + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/core/models/compute_cluster_placement_constraint_details.py b/src/oci/core/models/compute_cluster_placement_constraint_details.py new file mode 100644 index 0000000000..97e34398be --- /dev/null +++ b/src/oci/core/models/compute_cluster_placement_constraint_details.py @@ -0,0 +1,222 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + +from .placement_constraint_details import PlacementConstraintDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ComputeClusterPlacementConstraintDetails(PlacementConstraintDetails): + """ + The details for providing placement constraints for a compute cluster. + """ + + #: A constant which can be used with the logical_placement_constraint property of a ComputeClusterPlacementConstraintDetails. + #: This constant has a value of "SINGLE_TIER" + LOGICAL_PLACEMENT_CONSTRAINT_SINGLE_TIER = "SINGLE_TIER" + + #: A constant which can be used with the logical_placement_constraint property of a ComputeClusterPlacementConstraintDetails. + #: This constant has a value of "SINGLE_BLOCK" + LOGICAL_PLACEMENT_CONSTRAINT_SINGLE_BLOCK = "SINGLE_BLOCK" + + #: A constant which can be used with the logical_placement_constraint property of a ComputeClusterPlacementConstraintDetails. + #: This constant has a value of "PACKED_DISTRIBUTION_MULTI_BLOCK" + LOGICAL_PLACEMENT_CONSTRAINT_PACKED_DISTRIBUTION_MULTI_BLOCK = "PACKED_DISTRIBUTION_MULTI_BLOCK" + + def __init__(self, **kwargs): + """ + Initializes a new ComputeClusterPlacementConstraintDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.core.models.ComputeClusterPlacementConstraintDetails.type` attribute + of this class is ``COMPUTE_CLUSTER`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param type: + The value to assign to the type property of this ComputeClusterPlacementConstraintDetails. + :type type: str + + :param hpc_island_id: + The value to assign to the hpc_island_id property of this ComputeClusterPlacementConstraintDetails. + :type hpc_island_id: str + + :param target_network_block_ids: + The value to assign to the target_network_block_ids property of this ComputeClusterPlacementConstraintDetails. + :type target_network_block_ids: list[str] + + :param target_memory_fabric_ids: + The value to assign to the target_memory_fabric_ids property of this ComputeClusterPlacementConstraintDetails. + :type target_memory_fabric_ids: list[str] + + :param logical_placement_constraint: + The value to assign to the logical_placement_constraint property of this ComputeClusterPlacementConstraintDetails. + Allowed values for this property are: "SINGLE_TIER", "SINGLE_BLOCK", "PACKED_DISTRIBUTION_MULTI_BLOCK", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type logical_placement_constraint: str + + """ + self.swagger_types = { + 'type': 'str', + 'hpc_island_id': 'str', + 'target_network_block_ids': 'list[str]', + 'target_memory_fabric_ids': 'list[str]', + 'logical_placement_constraint': 'str' + } + self.attribute_map = { + 'type': 'type', + 'hpc_island_id': 'hpcIslandId', + 'target_network_block_ids': 'targetNetworkBlockIds', + 'target_memory_fabric_ids': 'targetMemoryFabricIds', + 'logical_placement_constraint': 'logicalPlacementConstraint' + } + self._type = None + self._hpc_island_id = None + self._target_network_block_ids = None + self._target_memory_fabric_ids = None + self._logical_placement_constraint = None + self._type = 'COMPUTE_CLUSTER' + + @property + def hpc_island_id(self): + """ + Gets the hpc_island_id of this ComputeClusterPlacementConstraintDetails. + The `OCID`__ of the HPC island for the compute cluster. + + This field cannot be updated after creation of the compute cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The hpc_island_id of this ComputeClusterPlacementConstraintDetails. + :rtype: str + """ + return self._hpc_island_id + + @hpc_island_id.setter + def hpc_island_id(self, hpc_island_id): + """ + Sets the hpc_island_id of this ComputeClusterPlacementConstraintDetails. + The `OCID`__ of the HPC island for the compute cluster. + + This field cannot be updated after creation of the compute cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param hpc_island_id: The hpc_island_id of this ComputeClusterPlacementConstraintDetails. + :type: str + """ + self._hpc_island_id = hpc_island_id + + @property + def target_network_block_ids(self): + """ + Gets the target_network_block_ids of this ComputeClusterPlacementConstraintDetails. + The list of target network block OCIDs to constrain placement. + + If `targetNetworkBlockIds` is provided, the `hpcIslandId` must be set on the compute cluster, + and the provided network blocks must belong to that same HPC island. + + The ordering of the array will be preserved. Ensure that all items in the array are unique. + + + :return: The target_network_block_ids of this ComputeClusterPlacementConstraintDetails. + :rtype: list[str] + """ + return self._target_network_block_ids + + @target_network_block_ids.setter + def target_network_block_ids(self, target_network_block_ids): + """ + Sets the target_network_block_ids of this ComputeClusterPlacementConstraintDetails. + The list of target network block OCIDs to constrain placement. + + If `targetNetworkBlockIds` is provided, the `hpcIslandId` must be set on the compute cluster, + and the provided network blocks must belong to that same HPC island. + + The ordering of the array will be preserved. Ensure that all items in the array are unique. + + + :param target_network_block_ids: The target_network_block_ids of this ComputeClusterPlacementConstraintDetails. + :type: list[str] + """ + self._target_network_block_ids = target_network_block_ids + + @property + def target_memory_fabric_ids(self): + """ + Gets the target_memory_fabric_ids of this ComputeClusterPlacementConstraintDetails. + The list of target GPU memory fabric OCIDs to constrain placement. + + If GMFs are passed in, the `hpcIslandId` must be set on the compute cluster, and + the provided GMFs must belong to that same HPC island. + + The ordering of the array will be preserved. Ensure that all items in the array are unique. + + + :return: The target_memory_fabric_ids of this ComputeClusterPlacementConstraintDetails. + :rtype: list[str] + """ + return self._target_memory_fabric_ids + + @target_memory_fabric_ids.setter + def target_memory_fabric_ids(self, target_memory_fabric_ids): + """ + Sets the target_memory_fabric_ids of this ComputeClusterPlacementConstraintDetails. + The list of target GPU memory fabric OCIDs to constrain placement. + + If GMFs are passed in, the `hpcIslandId` must be set on the compute cluster, and + the provided GMFs must belong to that same HPC island. + + The ordering of the array will be preserved. Ensure that all items in the array are unique. + + + :param target_memory_fabric_ids: The target_memory_fabric_ids of this ComputeClusterPlacementConstraintDetails. + :type: list[str] + """ + self._target_memory_fabric_ids = target_memory_fabric_ids + + @property + def logical_placement_constraint(self): + """ + Gets the logical_placement_constraint of this ComputeClusterPlacementConstraintDetails. + The logical placement strategy to apply. + Allowed values are `SINGLE_TIER`, `SINGLE_BLOCK`, and `PACKED_DISTRIBUTION_MULTI_BLOCK`. + + Allowed values for this property are: "SINGLE_TIER", "SINGLE_BLOCK", "PACKED_DISTRIBUTION_MULTI_BLOCK", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The logical_placement_constraint of this ComputeClusterPlacementConstraintDetails. + :rtype: str + """ + return self._logical_placement_constraint + + @logical_placement_constraint.setter + def logical_placement_constraint(self, logical_placement_constraint): + """ + Sets the logical_placement_constraint of this ComputeClusterPlacementConstraintDetails. + The logical placement strategy to apply. + Allowed values are `SINGLE_TIER`, `SINGLE_BLOCK`, and `PACKED_DISTRIBUTION_MULTI_BLOCK`. + + + :param logical_placement_constraint: The logical_placement_constraint of this ComputeClusterPlacementConstraintDetails. + :type: str + """ + allowed_values = ["SINGLE_TIER", "SINGLE_BLOCK", "PACKED_DISTRIBUTION_MULTI_BLOCK"] + if not value_allowed_none_or_none_sentinel(logical_placement_constraint, allowed_values): + logical_placement_constraint = 'UNKNOWN_ENUM_VALUE' + self._logical_placement_constraint = logical_placement_constraint + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/core/models/create_compute_cluster_details.py b/src/oci/core/models/create_compute_cluster_details.py index 79920b0301..f8062b9e87 100644 --- a/src/oci/core/models/create_compute_cluster_details.py +++ b/src/oci/core/models/create_compute_cluster_details.py @@ -12,17 +12,13 @@ @init_model_state_from_kwargs class CreateComputeClusterDetails(object): """ - The data for creating a `compute cluster`__. A compute cluster - is an empty remote direct memory access (RDMA) network group + The data for creating a `compute cluster`__. - After the compute cluster is created, you can use the compute cluster's OCID with the - :func:`launch_instance` operation to create instances in the compute cluster. - The instances must be created in the same compartment and availability domain as the cluster. + After the compute cluster is created, you can use the compute cluster's OCID to create Instance, GPU Memory + Cluster or Instance Pool resources within the compute cluster. These resources must be created in the same + compartment and availability domain as the cluster. - Use compute clusters when you want to manage instances in the cluster individually in the RDMA network group. - - For details about creating a cluster network that uses instance pools to manage groups of identical instances, - see :func:`create_cluster_network_details`. + Use `COMPUTE_CLUSTER` type when using placementConstraintDetails. __ https://docs.oracle.com/iaas/Content/Compute/Tasks/compute-clusters.htm """ @@ -52,26 +48,33 @@ def __init__(self, **kwargs): The value to assign to the freeform_tags property of this CreateComputeClusterDetails. :type freeform_tags: dict(str, str) + :param placement_constraint_details: + The value to assign to the placement_constraint_details property of this CreateComputeClusterDetails. + :type placement_constraint_details: oci.core.models.PlacementConstraintDetails + """ self.swagger_types = { 'availability_domain': 'str', 'compartment_id': 'str', 'display_name': 'str', 'defined_tags': 'dict(str, dict(str, object))', - 'freeform_tags': 'dict(str, str)' + 'freeform_tags': 'dict(str, str)', + 'placement_constraint_details': 'PlacementConstraintDetails' } self.attribute_map = { 'availability_domain': 'availabilityDomain', 'compartment_id': 'compartmentId', 'display_name': 'displayName', 'defined_tags': 'definedTags', - 'freeform_tags': 'freeformTags' + 'freeform_tags': 'freeformTags', + 'placement_constraint_details': 'placementConstraintDetails' } self._availability_domain = None self._compartment_id = None self._display_name = None self._defined_tags = None self._freeform_tags = None + self._placement_constraint_details = None @property def availability_domain(self): @@ -223,6 +226,26 @@ def freeform_tags(self, freeform_tags): """ self._freeform_tags = freeform_tags + @property + def placement_constraint_details(self): + """ + Gets the placement_constraint_details of this CreateComputeClusterDetails. + + :return: The placement_constraint_details of this CreateComputeClusterDetails. + :rtype: oci.core.models.PlacementConstraintDetails + """ + return self._placement_constraint_details + + @placement_constraint_details.setter + def placement_constraint_details(self, placement_constraint_details): + """ + Sets the placement_constraint_details of this CreateComputeClusterDetails. + + :param placement_constraint_details: The placement_constraint_details of this CreateComputeClusterDetails. + :type: oci.core.models.PlacementConstraintDetails + """ + self._placement_constraint_details = placement_constraint_details + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/core/models/create_gmc_configuration_details.py b/src/oci/core/models/create_gmc_configuration_details.py new file mode 100644 index 0000000000..e78c7a7644 --- /dev/null +++ b/src/oci/core/models/create_gmc_configuration_details.py @@ -0,0 +1,108 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + +from .create_instance_configuration_base import CreateInstanceConfigurationBase +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateGmcConfigurationDetails(CreateInstanceConfigurationBase): + """ + Details for creating an instance configuration for GPU Memory Cluster. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateGmcConfigurationDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.core.models.CreateGmcConfigurationDetails.source` attribute + of this class is ``GMC`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param compartment_id: + The value to assign to the compartment_id property of this CreateGmcConfigurationDetails. + :type compartment_id: str + + :param defined_tags: + The value to assign to the defined_tags property of this CreateGmcConfigurationDetails. + :type defined_tags: dict(str, dict(str, object)) + + :param display_name: + The value to assign to the display_name property of this CreateGmcConfigurationDetails. + :type display_name: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this CreateGmcConfigurationDetails. + :type freeform_tags: dict(str, str) + + :param source: + The value to assign to the source property of this CreateGmcConfigurationDetails. + Allowed values for this property are: "NONE", "INSTANCE", "GMC" + :type source: str + + :param gmc_configs: + The value to assign to the gmc_configs property of this CreateGmcConfigurationDetails. + :type gmc_configs: list[oci.core.models.InstanceConfigurationGmcConfigDetail] + + """ + self.swagger_types = { + 'compartment_id': 'str', + 'defined_tags': 'dict(str, dict(str, object))', + 'display_name': 'str', + 'freeform_tags': 'dict(str, str)', + 'source': 'str', + 'gmc_configs': 'list[InstanceConfigurationGmcConfigDetail]' + } + self.attribute_map = { + 'compartment_id': 'compartmentId', + 'defined_tags': 'definedTags', + 'display_name': 'displayName', + 'freeform_tags': 'freeformTags', + 'source': 'source', + 'gmc_configs': 'gmcConfigs' + } + self._compartment_id = None + self._defined_tags = None + self._display_name = None + self._freeform_tags = None + self._source = None + self._gmc_configs = None + self._source = 'GMC' + + @property + def gmc_configs(self): + """ + **[Required]** Gets the gmc_configs of this CreateGmcConfigurationDetails. + The GPU Memory Cluster configuration entries for. + + + :return: The gmc_configs of this CreateGmcConfigurationDetails. + :rtype: list[oci.core.models.InstanceConfigurationGmcConfigDetail] + """ + return self._gmc_configs + + @gmc_configs.setter + def gmc_configs(self, gmc_configs): + """ + Sets the gmc_configs of this CreateGmcConfigurationDetails. + The GPU Memory Cluster configuration entries for. + + + :param gmc_configs: The gmc_configs of this CreateGmcConfigurationDetails. + :type: list[oci.core.models.InstanceConfigurationGmcConfigDetail] + """ + self._gmc_configs = gmc_configs + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/core/models/create_instance_configuration_base.py b/src/oci/core/models/create_instance_configuration_base.py index 6bbdebae96..bbe79dd391 100644 --- a/src/oci/core/models/create_instance_configuration_base.py +++ b/src/oci/core/models/create_instance_configuration_base.py @@ -23,11 +23,16 @@ class CreateInstanceConfigurationBase(object): #: This constant has a value of "INSTANCE" SOURCE_INSTANCE = "INSTANCE" + #: A constant which can be used with the source property of a CreateInstanceConfigurationBase. + #: This constant has a value of "GMC" + SOURCE_GMC = "GMC" + def __init__(self, **kwargs): """ Initializes a new CreateInstanceConfigurationBase object with values from keyword arguments. This class has the following subclasses and if you are using this class as input to a service operations then you should favor using a subclass over the base class: + * :class:`~oci.core.models.CreateGmcConfigurationDetails` * :class:`~oci.core.models.CreateInstanceConfigurationDetails` * :class:`~oci.core.models.CreateInstanceConfigurationFromInstanceDetails` @@ -51,7 +56,7 @@ def __init__(self, **kwargs): :param source: The value to assign to the source property of this CreateInstanceConfigurationBase. - Allowed values for this property are: "NONE", "INSTANCE" + Allowed values for this property are: "NONE", "INSTANCE", "GMC" :type source: str """ @@ -83,6 +88,9 @@ def get_subtype(object_dictionary): """ type = object_dictionary['source'] + if type == 'GMC': + return 'CreateGmcConfigurationDetails' + if type == 'NONE': return 'CreateInstanceConfigurationDetails' @@ -245,8 +253,9 @@ def source(self): * `NONE`: Creates an instance configuration using the list of settings that you specify. * `INSTANCE`: Creates an instance configuration using an existing instance as a template. + * `GMC`: Creates an instance configuration which can be used to create GMC backed pools. - Allowed values for this property are: "NONE", "INSTANCE" + Allowed values for this property are: "NONE", "INSTANCE", "GMC" :return: The source of this CreateInstanceConfigurationBase. @@ -284,12 +293,13 @@ def source(self, source): * `NONE`: Creates an instance configuration using the list of settings that you specify. * `INSTANCE`: Creates an instance configuration using an existing instance as a template. + * `GMC`: Creates an instance configuration which can be used to create GMC backed pools. :param source: The source of this CreateInstanceConfigurationBase. :type: str """ - allowed_values = ["NONE", "INSTANCE"] + allowed_values = ["NONE", "INSTANCE", "GMC"] if not value_allowed_none_or_none_sentinel(source, allowed_values): raise ValueError( f"Invalid value for `source`, must be None or one of {allowed_values}" diff --git a/src/oci/core/models/create_instance_configuration_details.py b/src/oci/core/models/create_instance_configuration_details.py index 5f4729bf43..b28ffdb416 100644 --- a/src/oci/core/models/create_instance_configuration_details.py +++ b/src/oci/core/models/create_instance_configuration_details.py @@ -39,7 +39,7 @@ def __init__(self, **kwargs): :param source: The value to assign to the source property of this CreateInstanceConfigurationDetails. - Allowed values for this property are: "NONE", "INSTANCE" + Allowed values for this property are: "NONE", "INSTANCE", "GMC" :type source: str :param instance_details: diff --git a/src/oci/core/models/create_instance_configuration_from_instance_details.py b/src/oci/core/models/create_instance_configuration_from_instance_details.py index ebae0baac6..85d1db5a08 100644 --- a/src/oci/core/models/create_instance_configuration_from_instance_details.py +++ b/src/oci/core/models/create_instance_configuration_from_instance_details.py @@ -39,7 +39,7 @@ def __init__(self, **kwargs): :param source: The value to assign to the source property of this CreateInstanceConfigurationFromInstanceDetails. - Allowed values for this property are: "NONE", "INSTANCE" + Allowed values for this property are: "NONE", "INSTANCE", "GMC" :type source: str :param instance_id: diff --git a/src/oci/core/models/create_instance_pool_details.py b/src/oci/core/models/create_instance_pool_details.py index e9977b5713..2cfb89b722 100644 --- a/src/oci/core/models/create_instance_pool_details.py +++ b/src/oci/core/models/create_instance_pool_details.py @@ -13,6 +13,8 @@ class CreateInstancePoolDetails(object): """ The data to create an instance pool. + For a GMC-enabled resource pool, the referenced instance configuration must be a GMC configuration and + the placement configuration must identify the availability domain and compute cluster for the pool. """ def __init__(self, **kwargs): @@ -296,6 +298,7 @@ def size(self): """ **[Required]** Gets the size of this CreateInstancePoolDetails. The number of instances that should be in the instance pool. + For a GMC-enabled resource pool, this is the number of GMC resources that should be in the pool. :return: The size of this CreateInstancePoolDetails. @@ -308,6 +311,7 @@ def size(self, size): """ Sets the size of this CreateInstancePoolDetails. The number of instances that should be in the instance pool. + For a GMC-enabled resource pool, this is the number of GMC resources that should be in the pool. :param size: The size of this CreateInstancePoolDetails. diff --git a/src/oci/core/models/instance_configuration.py b/src/oci/core/models/instance_configuration.py index 103816a59e..48a92b2b2e 100644 --- a/src/oci/core/models/instance_configuration.py +++ b/src/oci/core/models/instance_configuration.py @@ -13,8 +13,22 @@ class InstanceConfiguration(object): """ An instance configuration is a template that defines the settings to use when creating Compute instances. + An instance configuration is a template that defines the settings to use when creating Compute instances + or GPU Memory Clusters. + For more information about instance configurations, see + `Managing Compute Instances`__. + + __ https://docs.oracle.com/iaas/Content/Compute/Concepts/instancemanagement.htm """ + #: A constant which can be used with the source property of a InstanceConfiguration. + #: This constant has a value of "INSTANCE" + SOURCE_INSTANCE = "INSTANCE" + + #: A constant which can be used with the source property of a InstanceConfiguration. + #: This constant has a value of "GMC" + SOURCE_GMC = "GMC" + def __init__(self, **kwargs): """ Initializes a new InstanceConfiguration object with values from keyword arguments. @@ -44,6 +58,16 @@ def __init__(self, **kwargs): The value to assign to the instance_details property of this InstanceConfiguration. :type instance_details: oci.core.models.InstanceConfigurationInstanceDetails + :param gmc_configs: + The value to assign to the gmc_configs property of this InstanceConfiguration. + :type gmc_configs: list[oci.core.models.InstanceConfigurationGmcConfigDetail] + + :param source: + The value to assign to the source property of this InstanceConfiguration. + Allowed values for this property are: "INSTANCE", "GMC", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type source: str + :param deferred_fields: The value to assign to the deferred_fields property of this InstanceConfiguration. :type deferred_fields: list[str] @@ -60,6 +84,8 @@ def __init__(self, **kwargs): 'freeform_tags': 'dict(str, str)', 'id': 'str', 'instance_details': 'InstanceConfigurationInstanceDetails', + 'gmc_configs': 'list[InstanceConfigurationGmcConfigDetail]', + 'source': 'str', 'deferred_fields': 'list[str]', 'time_created': 'datetime' } @@ -70,6 +96,8 @@ def __init__(self, **kwargs): 'freeform_tags': 'freeformTags', 'id': 'id', 'instance_details': 'instanceDetails', + 'gmc_configs': 'gmcConfigs', + 'source': 'source', 'deferred_fields': 'deferredFields', 'time_created': 'timeCreated' } @@ -79,6 +107,8 @@ def __init__(self, **kwargs): self._freeform_tags = None self._id = None self._instance_details = None + self._gmc_configs = None + self._source = None self._deferred_fields = None self._time_created = None @@ -254,6 +284,66 @@ def instance_details(self, instance_details): """ self._instance_details = instance_details + @property + def gmc_configs(self): + """ + Gets the gmc_configs of this InstanceConfiguration. + The GPU Memory Cluster configuration entries for. + + + :return: The gmc_configs of this InstanceConfiguration. + :rtype: list[oci.core.models.InstanceConfigurationGmcConfigDetail] + """ + return self._gmc_configs + + @gmc_configs.setter + def gmc_configs(self, gmc_configs): + """ + Sets the gmc_configs of this InstanceConfiguration. + The GPU Memory Cluster configuration entries for. + + + :param gmc_configs: The gmc_configs of this InstanceConfiguration. + :type: list[oci.core.models.InstanceConfigurationGmcConfigDetail] + """ + self._gmc_configs = gmc_configs + + @property + def source(self): + """ + Gets the source of this InstanceConfiguration. + Differentiator for instance configuration. + Following values are supported: + * INSTANCE : All details related to instance will be passed within instanceDetails. + * GMC : All details related to gpu memory cluster will be passed within gmcConfigs. + + Allowed values for this property are: "INSTANCE", "GMC", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The source of this InstanceConfiguration. + :rtype: str + """ + return self._source + + @source.setter + def source(self, source): + """ + Sets the source of this InstanceConfiguration. + Differentiator for instance configuration. + Following values are supported: + * INSTANCE : All details related to instance will be passed within instanceDetails. + * GMC : All details related to gpu memory cluster will be passed within gmcConfigs. + + + :param source: The source of this InstanceConfiguration. + :type: str + """ + allowed_values = ["INSTANCE", "GMC"] + if not value_allowed_none_or_none_sentinel(source, allowed_values): + source = 'UNKNOWN_ENUM_VALUE' + self._source = source + @property def deferred_fields(self): """ diff --git a/src/oci/core/models/instance_configuration_gmc_config_detail.py b/src/oci/core/models/instance_configuration_gmc_config_detail.py new file mode 100644 index 0000000000..9a212c8e6e --- /dev/null +++ b/src/oci/core/models/instance_configuration_gmc_config_detail.py @@ -0,0 +1,317 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class InstanceConfigurationGmcConfigDetail(object): + """ + Configuration detail for a GPU Memory Cluster entry within an instance configuration. + """ + + def __init__(self, **kwargs): + """ + Initializes a new InstanceConfigurationGmcConfigDetail object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param instance_configuration_id: + The value to assign to the instance_configuration_id property of this InstanceConfigurationGmcConfigDetail. + :type instance_configuration_id: str + + :param availability_domain: + The value to assign to the availability_domain property of this InstanceConfigurationGmcConfigDetail. + :type availability_domain: str + + :param compartment_id: + The value to assign to the compartment_id property of this InstanceConfigurationGmcConfigDetail. + :type compartment_id: str + + :param size: + The value to assign to the size property of this InstanceConfigurationGmcConfigDetail. + :type size: int + + :param gpu_memory_cluster_scale_config: + The value to assign to the gpu_memory_cluster_scale_config property of this InstanceConfigurationGmcConfigDetail. + :type gpu_memory_cluster_scale_config: oci.core.models.InstanceConfigurationGpuMemoryClusterScaleConfig + + :param display_name: + The value to assign to the display_name property of this InstanceConfigurationGmcConfigDetail. + :type display_name: str + + :param defined_tags: + The value to assign to the defined_tags property of this InstanceConfigurationGmcConfigDetail. + :type defined_tags: dict(str, dict(str, object)) + + :param freeform_tags: + The value to assign to the freeform_tags property of this InstanceConfigurationGmcConfigDetail. + :type freeform_tags: dict(str, str) + + """ + self.swagger_types = { + 'instance_configuration_id': 'str', + 'availability_domain': 'str', + 'compartment_id': 'str', + 'size': 'int', + 'gpu_memory_cluster_scale_config': 'InstanceConfigurationGpuMemoryClusterScaleConfig', + 'display_name': 'str', + 'defined_tags': 'dict(str, dict(str, object))', + 'freeform_tags': 'dict(str, str)' + } + self.attribute_map = { + 'instance_configuration_id': 'instanceConfigurationId', + 'availability_domain': 'availabilityDomain', + 'compartment_id': 'compartmentId', + 'size': 'size', + 'gpu_memory_cluster_scale_config': 'gpuMemoryClusterScaleConfig', + 'display_name': 'displayName', + 'defined_tags': 'definedTags', + 'freeform_tags': 'freeformTags' + } + self._instance_configuration_id = None + self._availability_domain = None + self._compartment_id = None + self._size = None + self._gpu_memory_cluster_scale_config = None + self._display_name = None + self._defined_tags = None + self._freeform_tags = None + + @property + def instance_configuration_id(self): + """ + **[Required]** Gets the instance_configuration_id of this InstanceConfigurationGmcConfigDetail. + The `OCID`__ of the base compute instance configuration + associated with this GMC configuration entry. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The instance_configuration_id of this InstanceConfigurationGmcConfigDetail. + :rtype: str + """ + return self._instance_configuration_id + + @instance_configuration_id.setter + def instance_configuration_id(self, instance_configuration_id): + """ + Sets the instance_configuration_id of this InstanceConfigurationGmcConfigDetail. + The `OCID`__ of the base compute instance configuration + associated with this GMC configuration entry. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param instance_configuration_id: The instance_configuration_id of this InstanceConfigurationGmcConfigDetail. + :type: str + """ + self._instance_configuration_id = instance_configuration_id + + @property + def availability_domain(self): + """ + **[Required]** Gets the availability_domain of this InstanceConfigurationGmcConfigDetail. + The availability domain for this GMC configuration entry. + + + :return: The availability_domain of this InstanceConfigurationGmcConfigDetail. + :rtype: str + """ + return self._availability_domain + + @availability_domain.setter + def availability_domain(self, availability_domain): + """ + Sets the availability_domain of this InstanceConfigurationGmcConfigDetail. + The availability domain for this GMC configuration entry. + + + :param availability_domain: The availability_domain of this InstanceConfigurationGmcConfigDetail. + :type: str + """ + self._availability_domain = availability_domain + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this InstanceConfigurationGmcConfigDetail. + The `OCID`__ of the compartment associated with this GMC + configuration entry. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this InstanceConfigurationGmcConfigDetail. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this InstanceConfigurationGmcConfigDetail. + The `OCID`__ of the compartment associated with this GMC + configuration entry. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this InstanceConfigurationGmcConfigDetail. + :type: str + """ + self._compartment_id = compartment_id + + @property + def size(self): + """ + Gets the size of this InstanceConfigurationGmcConfigDetail. + The desired number of instances for this GMC configuration entry. + + + :return: The size of this InstanceConfigurationGmcConfigDetail. + :rtype: int + """ + return self._size + + @size.setter + def size(self, size): + """ + Sets the size of this InstanceConfigurationGmcConfigDetail. + The desired number of instances for this GMC configuration entry. + + + :param size: The size of this InstanceConfigurationGmcConfigDetail. + :type: int + """ + self._size = size + + @property + def gpu_memory_cluster_scale_config(self): + """ + Gets the gpu_memory_cluster_scale_config of this InstanceConfigurationGmcConfigDetail. + + :return: The gpu_memory_cluster_scale_config of this InstanceConfigurationGmcConfigDetail. + :rtype: oci.core.models.InstanceConfigurationGpuMemoryClusterScaleConfig + """ + return self._gpu_memory_cluster_scale_config + + @gpu_memory_cluster_scale_config.setter + def gpu_memory_cluster_scale_config(self, gpu_memory_cluster_scale_config): + """ + Sets the gpu_memory_cluster_scale_config of this InstanceConfigurationGmcConfigDetail. + + :param gpu_memory_cluster_scale_config: The gpu_memory_cluster_scale_config of this InstanceConfigurationGmcConfigDetail. + :type: oci.core.models.InstanceConfigurationGpuMemoryClusterScaleConfig + """ + self._gpu_memory_cluster_scale_config = gpu_memory_cluster_scale_config + + @property + def display_name(self): + """ + Gets the display_name of this InstanceConfigurationGmcConfigDetail. + A user-friendly name. Does not have to be unique, and it's changeable. + Avoid entering confidential information. + + + :return: The display_name of this InstanceConfigurationGmcConfigDetail. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this InstanceConfigurationGmcConfigDetail. + A user-friendly name. Does not have to be unique, and it's changeable. + Avoid entering confidential information. + + + :param display_name: The display_name of this InstanceConfigurationGmcConfigDetail. + :type: str + """ + self._display_name = display_name + + @property + def defined_tags(self): + """ + Gets the defined_tags of this InstanceConfigurationGmcConfigDetail. + Defined tags for this resource. Each key is predefined and scoped to a + namespace. For more information, see `Resource Tags`__. + + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this InstanceConfigurationGmcConfigDetail. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this InstanceConfigurationGmcConfigDetail. + Defined tags for this resource. Each key is predefined and scoped to a + namespace. For more information, see `Resource Tags`__. + + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this InstanceConfigurationGmcConfigDetail. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this InstanceConfigurationGmcConfigDetail. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this InstanceConfigurationGmcConfigDetail. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this InstanceConfigurationGmcConfigDetail. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this InstanceConfigurationGmcConfigDetail. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/core/models/instance_configuration_gpu_memory_cluster_scale_config.py b/src/oci/core/models/instance_configuration_gpu_memory_cluster_scale_config.py new file mode 100644 index 0000000000..776a50fa44 --- /dev/null +++ b/src/oci/core/models/instance_configuration_gpu_memory_cluster_scale_config.py @@ -0,0 +1,132 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class InstanceConfigurationGpuMemoryClusterScaleConfig(object): + """ + Configuration settings for GPU Memory Cluster scaling. + """ + + def __init__(self, **kwargs): + """ + Initializes a new InstanceConfigurationGpuMemoryClusterScaleConfig object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param is_upsize_enabled: + The value to assign to the is_upsize_enabled property of this InstanceConfigurationGpuMemoryClusterScaleConfig. + :type is_upsize_enabled: bool + + :param is_downsize_enabled: + The value to assign to the is_downsize_enabled property of this InstanceConfigurationGpuMemoryClusterScaleConfig. + :type is_downsize_enabled: bool + + :param target_size: + The value to assign to the target_size property of this InstanceConfigurationGpuMemoryClusterScaleConfig. + :type target_size: int + + """ + self.swagger_types = { + 'is_upsize_enabled': 'bool', + 'is_downsize_enabled': 'bool', + 'target_size': 'int' + } + self.attribute_map = { + 'is_upsize_enabled': 'isUpsizeEnabled', + 'is_downsize_enabled': 'isDownsizeEnabled', + 'target_size': 'targetSize' + } + self._is_upsize_enabled = None + self._is_downsize_enabled = None + self._target_size = None + + @property + def is_upsize_enabled(self): + """ + **[Required]** Gets the is_upsize_enabled of this InstanceConfigurationGpuMemoryClusterScaleConfig. + Enables upsizing towards the target size. + + + :return: The is_upsize_enabled of this InstanceConfigurationGpuMemoryClusterScaleConfig. + :rtype: bool + """ + return self._is_upsize_enabled + + @is_upsize_enabled.setter + def is_upsize_enabled(self, is_upsize_enabled): + """ + Sets the is_upsize_enabled of this InstanceConfigurationGpuMemoryClusterScaleConfig. + Enables upsizing towards the target size. + + + :param is_upsize_enabled: The is_upsize_enabled of this InstanceConfigurationGpuMemoryClusterScaleConfig. + :type: bool + """ + self._is_upsize_enabled = is_upsize_enabled + + @property + def is_downsize_enabled(self): + """ + Gets the is_downsize_enabled of this InstanceConfigurationGpuMemoryClusterScaleConfig. + Enables downsizing towards the target size. + + + :return: The is_downsize_enabled of this InstanceConfigurationGpuMemoryClusterScaleConfig. + :rtype: bool + """ + return self._is_downsize_enabled + + @is_downsize_enabled.setter + def is_downsize_enabled(self, is_downsize_enabled): + """ + Sets the is_downsize_enabled of this InstanceConfigurationGpuMemoryClusterScaleConfig. + Enables downsizing towards the target size. + + + :param is_downsize_enabled: The is_downsize_enabled of this InstanceConfigurationGpuMemoryClusterScaleConfig. + :type: bool + """ + self._is_downsize_enabled = is_downsize_enabled + + @property + def target_size(self): + """ + Gets the target_size of this InstanceConfigurationGpuMemoryClusterScaleConfig. + The configured target size for the GPU Memory Cluster. + + + :return: The target_size of this InstanceConfigurationGpuMemoryClusterScaleConfig. + :rtype: int + """ + return self._target_size + + @target_size.setter + def target_size(self, target_size): + """ + Sets the target_size of this InstanceConfigurationGpuMemoryClusterScaleConfig. + The configured target size for the GPU Memory Cluster. + + + :param target_size: The target_size of this InstanceConfigurationGpuMemoryClusterScaleConfig. + :type: int + """ + self._target_size = target_size + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/core/models/instance_pool.py b/src/oci/core/models/instance_pool.py index d60b8adc19..a174a151f8 100644 --- a/src/oci/core/models/instance_pool.py +++ b/src/oci/core/models/instance_pool.py @@ -19,6 +19,14 @@ class InstancePool(object): __ https://docs.oracle.com/iaas/Content/Compute/Concepts/instancemanagement.htm """ + #: A constant which can be used with the pool_type property of a InstancePool. + #: This constant has a value of "INSTANCE" + POOL_TYPE_INSTANCE = "INSTANCE" + + #: A constant which can be used with the pool_type property of a InstancePool. + #: This constant has a value of "GMC" + POOL_TYPE_GMC = "GMC" + #: A constant which can be used with the lifecycle_state property of a InstancePool. #: This constant has a value of "PROVISIONING" LIFECYCLE_STATE_PROVISIONING = "PROVISIONING" @@ -80,6 +88,12 @@ def __init__(self, **kwargs): The value to assign to the instance_configuration_id property of this InstancePool. :type instance_configuration_id: str + :param pool_type: + The value to assign to the pool_type property of this InstancePool. + Allowed values for this property are: "INSTANCE", "GMC", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type pool_type: str + :param lifecycle_state: The value to assign to the lifecycle_state property of this InstancePool. Allowed values for this property are: "PROVISIONING", "SCALING", "STARTING", "STOPPING", "TERMINATING", "STOPPED", "TERMINATED", "RUNNING", 'UNKNOWN_ENUM_VALUE'. @@ -126,6 +140,7 @@ def __init__(self, **kwargs): 'display_name': 'str', 'freeform_tags': 'dict(str, str)', 'instance_configuration_id': 'str', + 'pool_type': 'str', 'lifecycle_state': 'str', 'placement_configurations': 'list[InstancePoolPlacementConfiguration]', 'size': 'int', @@ -143,6 +158,7 @@ def __init__(self, **kwargs): 'display_name': 'displayName', 'freeform_tags': 'freeformTags', 'instance_configuration_id': 'instanceConfigurationId', + 'pool_type': 'poolType', 'lifecycle_state': 'lifecycleState', 'placement_configurations': 'placementConfigurations', 'size': 'size', @@ -159,6 +175,7 @@ def __init__(self, **kwargs): self._display_name = None self._freeform_tags = None self._instance_configuration_id = None + self._pool_type = None self._lifecycle_state = None self._placement_configurations = None self._size = None @@ -351,6 +368,36 @@ def instance_configuration_id(self, instance_configuration_id): """ self._instance_configuration_id = instance_configuration_id + @property + def pool_type(self): + """ + Gets the pool_type of this InstancePool. + The type of resources managed by the pool. + + Allowed values for this property are: "INSTANCE", "GMC", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The pool_type of this InstancePool. + :rtype: str + """ + return self._pool_type + + @pool_type.setter + def pool_type(self, pool_type): + """ + Sets the pool_type of this InstancePool. + The type of resources managed by the pool. + + + :param pool_type: The pool_type of this InstancePool. + :type: str + """ + allowed_values = ["INSTANCE", "GMC"] + if not value_allowed_none_or_none_sentinel(pool_type, allowed_values): + pool_type = 'UNKNOWN_ENUM_VALUE' + self._pool_type = pool_type + @property def lifecycle_state(self): """ diff --git a/src/oci/core/models/instance_pool_summary.py b/src/oci/core/models/instance_pool_summary.py index 02323ba2ea..2da6f69a82 100644 --- a/src/oci/core/models/instance_pool_summary.py +++ b/src/oci/core/models/instance_pool_summary.py @@ -68,6 +68,10 @@ def __init__(self, **kwargs): The value to assign to the instance_configuration_id property of this InstancePoolSummary. :type instance_configuration_id: str + :param pool_type: + The value to assign to the pool_type property of this InstancePoolSummary. + :type pool_type: str + :param lifecycle_state: The value to assign to the lifecycle_state property of this InstancePoolSummary. Allowed values for this property are: "PROVISIONING", "SCALING", "STARTING", "STOPPING", "TERMINATING", "STOPPED", "TERMINATED", "RUNNING", 'UNKNOWN_ENUM_VALUE'. @@ -104,6 +108,7 @@ def __init__(self, **kwargs): 'compartment_id': 'str', 'display_name': 'str', 'instance_configuration_id': 'str', + 'pool_type': 'str', 'lifecycle_state': 'str', 'availability_domains': 'list[str]', 'size': 'int', @@ -117,6 +122,7 @@ def __init__(self, **kwargs): 'compartment_id': 'compartmentId', 'display_name': 'displayName', 'instance_configuration_id': 'instanceConfigurationId', + 'pool_type': 'poolType', 'lifecycle_state': 'lifecycleState', 'availability_domains': 'availabilityDomains', 'size': 'size', @@ -129,6 +135,7 @@ def __init__(self, **kwargs): self._compartment_id = None self._display_name = None self._instance_configuration_id = None + self._pool_type = None self._lifecycle_state = None self._availability_domains = None self._size = None @@ -235,6 +242,30 @@ def instance_configuration_id(self, instance_configuration_id): """ self._instance_configuration_id = instance_configuration_id + @property + def pool_type(self): + """ + Gets the pool_type of this InstancePoolSummary. + The type of resources managed by the pool. + + + :return: The pool_type of this InstancePoolSummary. + :rtype: str + """ + return self._pool_type + + @pool_type.setter + def pool_type(self, pool_type): + """ + Sets the pool_type of this InstancePoolSummary. + The type of resources managed by the pool. + + + :param pool_type: The pool_type of this InstancePoolSummary. + :type: str + """ + self._pool_type = pool_type + @property def lifecycle_state(self): """ diff --git a/src/oci/core/models/placement_constraint_details.py b/src/oci/core/models/placement_constraint_details.py index 1c47fb0061..0b3fafda6d 100644 --- a/src/oci/core/models/placement_constraint_details.py +++ b/src/oci/core/models/placement_constraint_details.py @@ -21,6 +21,7 @@ def __init__(self, **kwargs): to a service operations then you should favor using a subclass over the base class: * :class:`~oci.core.models.HostGroupPlacementConstraintDetails` + * :class:`~oci.core.models.ComputeClusterPlacementConstraintDetails` * :class:`~oci.core.models.ComputeBareMetalHostPlacementConstraintDetails` The following keyword arguments are supported (corresponding to the getters/setters of this class): @@ -49,6 +50,9 @@ def get_subtype(object_dictionary): if type == 'HOST_GROUP': return 'HostGroupPlacementConstraintDetails' + if type == 'COMPUTE_CLUSTER': + return 'ComputeClusterPlacementConstraintDetails' + if type == 'COMPUTE_BARE_METAL_HOST': return 'ComputeBareMetalHostPlacementConstraintDetails' else: @@ -61,6 +65,7 @@ def type(self): The type for the placement constraints. Use `COMPUTE_BARE_METAL_HOST` when specifying the compute bare metal host OCID. Use `HOST_GROUP` when specifying the compute host group OCID. + Use `COMPUTE_CLUSTER` when specifying compute cluster placement constraints. :return: The type of this PlacementConstraintDetails. @@ -75,6 +80,7 @@ def type(self, type): The type for the placement constraints. Use `COMPUTE_BARE_METAL_HOST` when specifying the compute bare metal host OCID. Use `HOST_GROUP` when specifying the compute host group OCID. + Use `COMPUTE_CLUSTER` when specifying compute cluster placement constraints. :param type: The type of this PlacementConstraintDetails. diff --git a/src/oci/core/models/update_compute_cluster_details.py b/src/oci/core/models/update_compute_cluster_details.py index fe8fdcaee5..b0171070e6 100644 --- a/src/oci/core/models/update_compute_cluster_details.py +++ b/src/oci/core/models/update_compute_cluster_details.py @@ -12,8 +12,16 @@ @init_model_state_from_kwargs class UpdateComputeClusterDetails(object): """ - The data to update a compute cluster. A `compute cluster`__ - is a remote direct memory access (RDMA) network group. + The data to update a `compute cluster`__. + + Use `COMPUTE_CLUSTER` type when using placementConstraintDetails. + + `placementConstraintDetails.hpcIslandId` is create-only and cannot be part of this update request. + + All other fields in `placementConstraintDetails` are optional, and only the fields provided will be updated. + + If `placementConstraintDetails.targetNetworkBlockIds` or `placementConstraintDetails.targetMemoryFabricIds` is + provided, then the target compute cluster must already have `hpcIslandId` persisted. __ https://docs.oracle.com/iaas/Content/Compute/Tasks/compute-clusters.htm """ @@ -35,20 +43,27 @@ def __init__(self, **kwargs): The value to assign to the freeform_tags property of this UpdateComputeClusterDetails. :type freeform_tags: dict(str, str) + :param placement_constraint_details: + The value to assign to the placement_constraint_details property of this UpdateComputeClusterDetails. + :type placement_constraint_details: oci.core.models.PlacementConstraintDetails + """ self.swagger_types = { 'display_name': 'str', 'defined_tags': 'dict(str, dict(str, object))', - 'freeform_tags': 'dict(str, str)' + 'freeform_tags': 'dict(str, str)', + 'placement_constraint_details': 'PlacementConstraintDetails' } self.attribute_map = { 'display_name': 'displayName', 'defined_tags': 'definedTags', - 'freeform_tags': 'freeformTags' + 'freeform_tags': 'freeformTags', + 'placement_constraint_details': 'placementConstraintDetails' } self._display_name = None self._defined_tags = None self._freeform_tags = None + self._placement_constraint_details = None @property def display_name(self): @@ -144,6 +159,26 @@ def freeform_tags(self, freeform_tags): """ self._freeform_tags = freeform_tags + @property + def placement_constraint_details(self): + """ + Gets the placement_constraint_details of this UpdateComputeClusterDetails. + + :return: The placement_constraint_details of this UpdateComputeClusterDetails. + :rtype: oci.core.models.PlacementConstraintDetails + """ + return self._placement_constraint_details + + @placement_constraint_details.setter + def placement_constraint_details(self, placement_constraint_details): + """ + Sets the placement_constraint_details of this UpdateComputeClusterDetails. + + :param placement_constraint_details: The placement_constraint_details of this UpdateComputeClusterDetails. + :type: oci.core.models.PlacementConstraintDetails + """ + self._placement_constraint_details = placement_constraint_details + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/core/models/update_instance_pool_details.py b/src/oci/core/models/update_instance_pool_details.py index 7c4db5fa9c..10b9b89cb9 100644 --- a/src/oci/core/models/update_instance_pool_details.py +++ b/src/oci/core/models/update_instance_pool_details.py @@ -252,6 +252,7 @@ def size(self): """ Gets the size of this UpdateInstancePoolDetails. The number of instances that should be in the instance pool. + For a GMC-enabled resource pool, this is the number of GMC resources that should be in the pool. To determine whether capacity is available for a specific shape before you resize an instance pool, use the :func:`create_compute_capacity_report` @@ -268,6 +269,7 @@ def size(self, size): """ Sets the size of this UpdateInstancePoolDetails. The number of instances that should be in the instance pool. + For a GMC-enabled resource pool, this is the number of GMC resources that should be in the pool. To determine whether capacity is available for a specific shape before you resize an instance pool, use the :func:`create_compute_capacity_report` diff --git a/src/oci/data_safe/data_safe_client.py b/src/oci/data_safe/data_safe_client.py index c7133df1c5..d11700c77a 100644 --- a/src/oci/data_safe/data_safe_client.py +++ b/src/oci/data_safe/data_safe_client.py @@ -7883,8 +7883,8 @@ def create_sdm_masking_policy_difference(self, create_sdm_masking_policy_differe def create_security_assessment(self, create_security_assessment_details, **kwargs): """ - Creates a new saved security assessment for one or multiple targets in a compartment. When this operation is performed, - it will save the latest assessments in the specified compartment. If a schedule is passed, it will persist the latest assessments, + Creates a new saved security assessment for a target database or target database group in a compartment. When this operation is performed, + it will save the latest assessment in the specified compartment. If a schedule is passed, it will persist the latest assessment, at the defined date and time, in the format defined by `RFC3339`__. __ https://tools.ietf.org/html/rfc3339 @@ -9362,8 +9362,8 @@ def create_unified_audit_policy(self, create_unified_audit_policy_details, **kwa def create_user_assessment(self, create_user_assessment_details, **kwargs): """ - Creates a new saved user assessment for one or multiple targets in a compartment. It saves the latest assessments in the - specified compartment. If a scheduled is passed in, this operation persists the latest assessments that exist at the defined + Creates a new saved user assessment for a target database or target database group in a compartment. It saves the latest assessment in the + specified compartment. If a schedule is passed in, this operation persists the latest assessment that exists at the defined date and time, in the format defined by `RFC3339`__. __ https://tools.ietf.org/html/rfc3339 @@ -23288,7 +23288,7 @@ def list_associated_resources(self, attribute_set_id, **kwargs): :param str associated_resource_type: (optional) A filter to return attribute set associated resources that matches the specified resource type query param. - Allowed values are: "AUDIT_POLICY" + Allowed values are: "AUDIT_POLICY", "AUDIT_REPORT" :param str associated_resource_id: (optional) A filter to return attribute set associated resource that matches the specified associated resource id query param. @@ -23351,7 +23351,7 @@ def list_associated_resources(self, attribute_set_id, **kwargs): raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') if 'associated_resource_type' in kwargs: - associated_resource_type_allowed_values = ["AUDIT_POLICY"] + associated_resource_type_allowed_values = ["AUDIT_POLICY", "AUDIT_REPORT"] if kwargs['associated_resource_type'] not in associated_resource_type_allowed_values: raise ValueError( f"Invalid value for `associated_resource_type`, must be one of { associated_resource_type_allowed_values }" @@ -25806,7 +25806,7 @@ def list_checks(self, security_assessment_id, **kwargs): :param str sort_by: (optional) The field to sort by. You can specify only one sort order(sortOrder). The default order for title is ascending. - Allowed values are: "title", "category" + Allowed values are: "title", "category", "key" :param str suggested_severity: (optional) A filter to return only checks of a particular risk level. @@ -25908,7 +25908,7 @@ def list_checks(self, security_assessment_id, **kwargs): ) if 'sort_by' in kwargs: - sort_by_allowed_values = ["title", "category"] + sort_by_allowed_values = ["title", "category", "key"] if kwargs['sort_by'] not in sort_by_allowed_values: raise ValueError( f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" @@ -26971,6 +26971,7 @@ def list_database_view_access_entries(self, security_policy_report_id, **kwargs) Retrieves a list of all database view access entries in Data Safe. The ListDatabaseViewAccessEntries operation returns only the database view access objects for the specified security policy report. + If targetId is specified, it must match the target associated with the securityPolicyReportId path parameter; otherwise, the request is rejected. :param str security_policy_report_id: (required) @@ -28255,6 +28256,11 @@ def list_findings(self, security_assessment_id, **kwargs): :param str category: (optional) The category of the finding. + :param list[str] contains_oracle_defined_severity: (optional) + A filter to return only findings that match the specified risk level(s). Use containsOracleDefinedSeverity parameter if need to filter by one or multiple risk levels. + + Allowed values are: "HIGH", "MEDIUM", "LOW", "EVALUATE", "ADVISORY", "PASS", "DEFERRED" + :param str lifecycle_state: (optional) A filter to return only the findings that match the specified lifecycle states. @@ -28386,6 +28392,7 @@ def list_findings(self, security_assessment_id, **kwargs): "severity", "contains_severity", "category", + "contains_oracle_defined_severity", "lifecycle_state", "references", "contains_references", @@ -28432,6 +28439,14 @@ def list_findings(self, security_assessment_id, **kwargs): f"Invalid value for `contains_severity`, must be one of { contains_severity_allowed_values }" ) + if 'contains_oracle_defined_severity' in kwargs: + contains_oracle_defined_severity_allowed_values = ["HIGH", "MEDIUM", "LOW", "EVALUATE", "ADVISORY", "PASS", "DEFERRED"] + for contains_oracle_defined_severity_item in kwargs['contains_oracle_defined_severity']: + if contains_oracle_defined_severity_item not in contains_oracle_defined_severity_allowed_values: + raise ValueError( + f"Invalid value for `contains_oracle_defined_severity`, must be one of { contains_oracle_defined_severity_allowed_values }" + ) + if 'lifecycle_state' in kwargs: lifecycle_state_allowed_values = ["ACTIVE", "UPDATING", "NEEDS_ATTENTION", "FAILED"] if kwargs['lifecycle_state'] not in lifecycle_state_allowed_values: @@ -28488,6 +28503,7 @@ def list_findings(self, security_assessment_id, **kwargs): "severity": kwargs.get("severity", missing), "containsSeverity": self.base_client.generate_collection_format_param(kwargs.get("contains_severity", missing), 'multi'), "category": kwargs.get("category", missing), + "containsOracleDefinedSeverity": self.base_client.generate_collection_format_param(kwargs.get("contains_oracle_defined_severity", missing), 'multi'), "lifecycleState": kwargs.get("lifecycle_state", missing), "references": kwargs.get("references", missing), "containsReferences": self.base_client.generate_collection_format_param(kwargs.get("contains_references", missing), 'multi'), @@ -39497,6 +39513,11 @@ def list_target_alert_policy_associations(self, compartment_id, **kwargs): Allowed values are: "DISPLAYNAME", "TIMECREATED", "TIMEUPDATED" + :param str target_type: (optional) + A optional filter to return only resources that belong to the specified alert policy association type. + + Allowed values are: "TARGET_DATABASE", "TARGET_DATABASE_GROUP" + :param str opc_request_id: (optional) Unique identifier for the request. @@ -39571,6 +39592,7 @@ def list_target_alert_policy_associations(self, compartment_id, **kwargs): "page", "sort_order", "sort_by", + "target_type", "opc_request_id", "time_created_greater_than_or_equal_to", "time_created_less_than", @@ -39603,6 +39625,13 @@ def list_target_alert_policy_associations(self, compartment_id, **kwargs): f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" ) + if 'target_type' in kwargs: + target_type_allowed_values = ["TARGET_DATABASE", "TARGET_DATABASE_GROUP"] + if kwargs['target_type'] not in target_type_allowed_values: + raise ValueError( + f"Invalid value for `target_type`, must be one of { target_type_allowed_values }" + ) + if 'access_level' in kwargs: access_level_allowed_values = ["RESTRICTED", "ACCESSIBLE"] if kwargs['access_level'] not in access_level_allowed_values: @@ -39620,6 +39649,7 @@ def list_target_alert_policy_associations(self, compartment_id, **kwargs): "page": kwargs.get("page", missing), "sortOrder": kwargs.get("sort_order", missing), "sortBy": kwargs.get("sort_by", missing), + "targetType": kwargs.get("target_type", missing), "timeCreatedGreaterThanOrEqualTo": kwargs.get("time_created_greater_than_or_equal_to", missing), "timeCreatedLessThan": kwargs.get("time_created_less_than", missing), "compartmentIdInSubtree": kwargs.get("compartment_id_in_subtree", missing), @@ -39670,6 +39700,159 @@ def list_target_alert_policy_associations(self, compartment_id, **kwargs): api_reference_link=api_reference_link, required_arguments=required_arguments) + def list_target_alert_policy_unassociated_members(self, target_alert_policy_association_id, **kwargs): + """ + Gets the details of target-alert policy association and its unassociated members by its ID. + + + :param str target_alert_policy_association_id: (required) + The OCID of the target-alert policy association. + + :param int limit: (optional) + For list pagination. The maximum number of items to return per page in a paginated \"List\" call. For details about how pagination works, see `List Pagination`__. + + __ https://docs.oracle.com/en-us/iaas/Content/API/Concepts/usingapi.htm#nine + + :param str page: (optional) + For list pagination. The page token representing the page at which to start retrieving results. It is usually retrieved from a previous \"List\" call. For details about how pagination works, see `List Pagination`__. + + __ https://docs.oracle.com/en-us/iaas/Content/API/Concepts/usingapi.htm#nine + + :param str sort_by: (optional) + The field to sort by. Only one sort parameter may be provided. + + Allowed values are: "targetId", "notAppliedReason" + + :param str sort_order: (optional) + The sort order to use, either ascending (ASC) or descending (DESC). + + Allowed values are: "ASC", "DESC" + + :param str opc_request_id: (optional) + Unique identifier for the request. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.data_safe.models.TargetAlertPolicyUnassociatedCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_target_alert_policy_unassociated_members API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['targetAlertPolicyAssociationId'] + resource_path = "/targetAlertPolicyAssociations/{targetAlertPolicyAssociationId}/unassociatedTargetMembers" + method = "GET" + operation_name = "list_target_alert_policy_unassociated_members" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/data-safe/20181201/TargetAlertPolicyAssociation/ListTargetAlertPolicyUnassociatedMembers" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "limit", + "page", + "sort_by", + "sort_order", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_target_alert_policy_unassociated_members got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "targetAlertPolicyAssociationId": target_alert_policy_association_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + if 'sort_by' in kwargs: + sort_by_allowed_values = ["targetId", "notAppliedReason"] + if kwargs['sort_by'] not in sort_by_allowed_values: + raise ValueError( + f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" + ) + + if 'sort_order' in kwargs: + sort_order_allowed_values = ["ASC", "DESC"] + if kwargs['sort_order'] not in sort_order_allowed_values: + raise ValueError( + f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + ) + + query_params = { + "limit": kwargs.get("limit", missing), + "page": kwargs.get("page", missing), + "sortBy": kwargs.get("sort_by", missing), + "sortOrder": kwargs.get("sort_order", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="TargetAlertPolicyUnassociatedCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="TargetAlertPolicyUnassociatedCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + def list_target_database_groups(self, compartment_id, **kwargs): """ Retrieves a list of target database groups according to the specified query parameters. @@ -41943,6 +42126,9 @@ def list_users(self, user_assessment_id, **kwargs): __ https://docs.oracle.com/en-us/iaas/Content/API/Concepts/usingapi.htm#nine + :param str compartment_id: (optional) + A filter to return only resources that match the specified compartment OCID. + :param str sort_order: (optional) The sort order to use, either ascending (ASC) or descending (DESC). @@ -42017,6 +42203,7 @@ def list_users(self, user_assessment_id, **kwargs): "time_password_expiry_greater_than_or_equal_to", "time_password_expiry_less_than", "page", + "compartment_id", "sort_order", "sort_by", "opc_request_id", @@ -42081,6 +42268,7 @@ def list_users(self, user_assessment_id, **kwargs): "timePasswordExpiryGreaterThanOrEqualTo": kwargs.get("time_password_expiry_greater_than_or_equal_to", missing), "timePasswordExpiryLessThan": kwargs.get("time_password_expiry_less_than", missing), "page": kwargs.get("page", missing), + "compartmentId": kwargs.get("compartment_id", missing), "sortOrder": kwargs.get("sort_order", missing), "sortBy": kwargs.get("sort_by", missing), "schemaList": self.base_client.generate_collection_format_param(kwargs.get("schema_list", missing), 'multi'), diff --git a/src/oci/data_safe/models/__init__.py b/src/oci/data_safe/models/__init__.py index a67936fd1d..46ce221e16 100644 --- a/src/oci/data_safe/models/__init__.py +++ b/src/oci/data_safe/models/__init__.py @@ -426,6 +426,8 @@ from .target_alert_policy_association import TargetAlertPolicyAssociation from .target_alert_policy_association_collection import TargetAlertPolicyAssociationCollection from .target_alert_policy_association_summary import TargetAlertPolicyAssociationSummary +from .target_alert_policy_unassociated_collection import TargetAlertPolicyUnassociatedCollection +from .target_alert_policy_unassociated_summary import TargetAlertPolicyUnassociatedSummary from .target_database import TargetDatabase from .target_database_group import TargetDatabaseGroup from .target_database_group_collection import TargetDatabaseGroupCollection @@ -935,6 +937,8 @@ "TargetAlertPolicyAssociation": TargetAlertPolicyAssociation, "TargetAlertPolicyAssociationCollection": TargetAlertPolicyAssociationCollection, "TargetAlertPolicyAssociationSummary": TargetAlertPolicyAssociationSummary, + "TargetAlertPolicyUnassociatedCollection": TargetAlertPolicyUnassociatedCollection, + "TargetAlertPolicyUnassociatedSummary": TargetAlertPolicyUnassociatedSummary, "TargetDatabase": TargetDatabase, "TargetDatabaseGroup": TargetDatabaseGroup, "TargetDatabaseGroupCollection": TargetDatabaseGroupCollection, diff --git a/src/oci/data_safe/models/associated_resource_summary.py b/src/oci/data_safe/models/associated_resource_summary.py index e9ca3a175a..7c7643391b 100644 --- a/src/oci/data_safe/models/associated_resource_summary.py +++ b/src/oci/data_safe/models/associated_resource_summary.py @@ -19,6 +19,10 @@ class AssociatedResourceSummary(object): #: This constant has a value of "AUDIT_POLICY" ASSOCIATED_RESOURCE_TYPE_AUDIT_POLICY = "AUDIT_POLICY" + #: A constant which can be used with the associated_resource_type property of a AssociatedResourceSummary. + #: This constant has a value of "AUDIT_REPORT" + ASSOCIATED_RESOURCE_TYPE_AUDIT_REPORT = "AUDIT_REPORT" + def __init__(self, **kwargs): """ Initializes a new AssociatedResourceSummary object with values from keyword arguments. @@ -26,7 +30,7 @@ def __init__(self, **kwargs): :param associated_resource_type: The value to assign to the associated_resource_type property of this AssociatedResourceSummary. - Allowed values for this property are: "AUDIT_POLICY", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "AUDIT_POLICY", "AUDIT_REPORT", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type associated_resource_type: str @@ -73,7 +77,7 @@ def associated_resource_type(self): Gets the associated_resource_type of this AssociatedResourceSummary. The resource type that is associated with the attribute set. - Allowed values for this property are: "AUDIT_POLICY", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "AUDIT_POLICY", "AUDIT_REPORT", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -92,7 +96,7 @@ def associated_resource_type(self, associated_resource_type): :param associated_resource_type: The associated_resource_type of this AssociatedResourceSummary. :type: str """ - allowed_values = ["AUDIT_POLICY"] + allowed_values = ["AUDIT_POLICY", "AUDIT_REPORT"] if not value_allowed_none_or_none_sentinel(associated_resource_type, allowed_values): associated_resource_type = 'UNKNOWN_ENUM_VALUE' self._associated_resource_type = associated_resource_type diff --git a/src/oci/data_safe/models/audit_trail_summary.py b/src/oci/data_safe/models/audit_trail_summary.py index ed883a9185..3fc2d228c0 100644 --- a/src/oci/data_safe/models/audit_trail_summary.py +++ b/src/oci/data_safe/models/audit_trail_summary.py @@ -497,7 +497,7 @@ def lifecycle_state(self, lifecycle_state): def lifecycle_details(self): """ Gets the lifecycle_details of this AuditTrailSummary. - Details about the current state of the audit trail in Data Safe. + Details about the current state of the audit trail in Data Safe. This attribute will be deprecated, but will still be available in GET audit trail response. :return: The lifecycle_details of this AuditTrailSummary. @@ -509,7 +509,7 @@ def lifecycle_details(self): def lifecycle_details(self, lifecycle_details): """ Sets the lifecycle_details of this AuditTrailSummary. - Details about the current state of the audit trail in Data Safe. + Details about the current state of the audit trail in Data Safe. This attribute will be deprecated, but will still be available in GET audit trail response. :param lifecycle_details: The lifecycle_details of this AuditTrailSummary. diff --git a/src/oci/data_safe/models/columns_info.py b/src/oci/data_safe/models/columns_info.py index 2f583c0cae..5237e5b702 100644 --- a/src/oci/data_safe/models/columns_info.py +++ b/src/oci/data_safe/models/columns_info.py @@ -19,6 +19,10 @@ class ColumnsInfo(object): #: This constant has a value of "TABLE" OBJECT_TYPE_TABLE = "TABLE" + #: A constant which can be used with the object_type property of a ColumnsInfo. + #: This constant has a value of "EDITIONING_VIEW" + OBJECT_TYPE_EDITIONING_VIEW = "EDITIONING_VIEW" + def __init__(self, **kwargs): """ Initializes a new ColumnsInfo object with values from keyword arguments. @@ -30,7 +34,7 @@ def __init__(self, **kwargs): :param object_type: The value to assign to the object_type property of this ColumnsInfo. - Allowed values for this property are: "TABLE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "TABLE", "EDITIONING_VIEW", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type object_type: str @@ -104,7 +108,7 @@ def object_type(self): **[Required]** Gets the object_type of this ColumnsInfo. The type of the database object that contains the sensitive column. - Allowed values for this property are: "TABLE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "TABLE", "EDITIONING_VIEW", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -123,7 +127,7 @@ def object_type(self, object_type): :param object_type: The object_type of this ColumnsInfo. :type: str """ - allowed_values = ["TABLE"] + allowed_values = ["TABLE", "EDITIONING_VIEW"] if not value_allowed_none_or_none_sentinel(object_type, allowed_values): object_type = 'UNKNOWN_ENUM_VALUE' self._object_type = object_type diff --git a/src/oci/data_safe/models/create_data_safe_private_endpoint_details.py b/src/oci/data_safe/models/create_data_safe_private_endpoint_details.py index 73d531416c..7e5e14e479 100644 --- a/src/oci/data_safe/models/create_data_safe_private_endpoint_details.py +++ b/src/oci/data_safe/models/create_data_safe_private_endpoint_details.py @@ -56,6 +56,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this CreateDataSafePrivateEndpointDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this CreateDataSafePrivateEndpointDetails. + :type security_attributes: dict(str, dict(str, object)) + """ self.swagger_types = { 'display_name': 'str', @@ -66,7 +70,8 @@ def __init__(self, **kwargs): 'description': 'str', 'nsg_ids': 'list[str]', 'freeform_tags': 'dict(str, str)', - 'defined_tags': 'dict(str, dict(str, object))' + 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))' } self.attribute_map = { 'display_name': 'displayName', @@ -77,7 +82,8 @@ def __init__(self, **kwargs): 'description': 'description', 'nsg_ids': 'nsgIds', 'freeform_tags': 'freeformTags', - 'defined_tags': 'definedTags' + 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes' } self._display_name = None self._compartment_id = None @@ -88,6 +94,7 @@ def __init__(self, **kwargs): self._nsg_ids = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None @property def display_name(self): @@ -319,6 +326,38 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this CreateDataSafePrivateEndpointDetails. + 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\": \"enforce\"}}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this CreateDataSafePrivateEndpointDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this CreateDataSafePrivateEndpointDetails. + 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\": \"enforce\"}}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this CreateDataSafePrivateEndpointDetails. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/data_safe/models/create_target_alert_policy_association_details.py b/src/oci/data_safe/models/create_target_alert_policy_association_details.py index ac966a1077..f753d377bc 100644 --- a/src/oci/data_safe/models/create_target_alert_policy_association_details.py +++ b/src/oci/data_safe/models/create_target_alert_policy_association_details.py @@ -44,6 +44,10 @@ def __init__(self, **kwargs): The value to assign to the is_enabled property of this CreateTargetAlertPolicyAssociationDetails. :type is_enabled: bool + :param target_type: + The value to assign to the target_type property of this CreateTargetAlertPolicyAssociationDetails. + :type target_type: str + :param freeform_tags: The value to assign to the freeform_tags property of this CreateTargetAlertPolicyAssociationDetails. :type freeform_tags: dict(str, str) @@ -60,6 +64,7 @@ def __init__(self, **kwargs): 'description': 'str', 'compartment_id': 'str', 'is_enabled': 'bool', + 'target_type': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))' } @@ -70,6 +75,7 @@ def __init__(self, **kwargs): 'description': 'description', 'compartment_id': 'compartmentId', 'is_enabled': 'isEnabled', + 'target_type': 'targetType', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags' } @@ -79,6 +85,7 @@ def __init__(self, **kwargs): self._description = None self._compartment_id = None self._is_enabled = None + self._target_type = None self._freeform_tags = None self._defined_tags = None @@ -110,7 +117,7 @@ def policy_id(self, policy_id): def target_id(self): """ **[Required]** Gets the target_id of this CreateTargetAlertPolicyAssociationDetails. - The OCID of the target. + The OCID of the target or target database group. :return: The target_id of this CreateTargetAlertPolicyAssociationDetails. @@ -122,7 +129,7 @@ def target_id(self): def target_id(self, target_id): """ Sets the target_id of this CreateTargetAlertPolicyAssociationDetails. - The OCID of the target. + The OCID of the target or target database group. :param target_id: The target_id of this CreateTargetAlertPolicyAssociationDetails. @@ -226,6 +233,30 @@ def is_enabled(self, is_enabled): """ self._is_enabled = is_enabled + @property + def target_type(self): + """ + Gets the target_type of this CreateTargetAlertPolicyAssociationDetails. + The resource type that is represented by the alert policy association. Default is considered as TARGET_DATABASE. + + + :return: The target_type of this CreateTargetAlertPolicyAssociationDetails. + :rtype: str + """ + return self._target_type + + @target_type.setter + def target_type(self, target_type): + """ + Sets the target_type of this CreateTargetAlertPolicyAssociationDetails. + The resource type that is represented by the alert policy association. Default is considered as TARGET_DATABASE. + + + :param target_type: The target_type of this CreateTargetAlertPolicyAssociationDetails. + :type: str + """ + self._target_type = target_type + @property def freeform_tags(self): """ diff --git a/src/oci/data_safe/models/data_safe_private_endpoint.py b/src/oci/data_safe/models/data_safe_private_endpoint.py index 2ebe071197..f8387b3873 100644 --- a/src/oci/data_safe/models/data_safe_private_endpoint.py +++ b/src/oci/data_safe/models/data_safe_private_endpoint.py @@ -110,6 +110,10 @@ def __init__(self, **kwargs): The value to assign to the system_tags property of this DataSafePrivateEndpoint. :type system_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this DataSafePrivateEndpoint. + :type security_attributes: dict(str, dict(str, object)) + """ self.swagger_types = { 'id': 'str', @@ -126,7 +130,8 @@ def __init__(self, **kwargs): 'nsg_ids': 'list[str]', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', - 'system_tags': 'dict(str, dict(str, object))' + 'system_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))' } self.attribute_map = { 'id': 'id', @@ -143,7 +148,8 @@ def __init__(self, **kwargs): 'nsg_ids': 'nsgIds', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', - 'system_tags': 'systemTags' + 'system_tags': 'systemTags', + 'security_attributes': 'securityAttributes' } self._id = None self._display_name = None @@ -160,6 +166,7 @@ def __init__(self, **kwargs): self._freeform_tags = None self._defined_tags = None self._system_tags = None + self._security_attributes = None @property def id(self): @@ -547,6 +554,38 @@ def system_tags(self, system_tags): """ self._system_tags = system_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this DataSafePrivateEndpoint. + 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\": \"enforce\"}}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this DataSafePrivateEndpoint. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this DataSafePrivateEndpoint. + 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\": \"enforce\"}}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this DataSafePrivateEndpoint. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/data_safe/models/data_safe_private_endpoint_summary.py b/src/oci/data_safe/models/data_safe_private_endpoint_summary.py index 333b1b20e2..9c46d9aa48 100644 --- a/src/oci/data_safe/models/data_safe_private_endpoint_summary.py +++ b/src/oci/data_safe/models/data_safe_private_endpoint_summary.py @@ -98,6 +98,10 @@ def __init__(self, **kwargs): The value to assign to the system_tags property of this DataSafePrivateEndpointSummary. :type system_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this DataSafePrivateEndpointSummary. + :type security_attributes: dict(str, dict(str, object)) + """ self.swagger_types = { 'id': 'str', @@ -111,7 +115,8 @@ def __init__(self, **kwargs): 'lifecycle_state': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', - 'system_tags': 'dict(str, dict(str, object))' + 'system_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))' } self.attribute_map = { 'id': 'id', @@ -125,7 +130,8 @@ def __init__(self, **kwargs): 'lifecycle_state': 'lifecycleState', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', - 'system_tags': 'systemTags' + 'system_tags': 'systemTags', + 'security_attributes': 'securityAttributes' } self._id = None self._display_name = None @@ -139,6 +145,7 @@ def __init__(self, **kwargs): self._freeform_tags = None self._defined_tags = None self._system_tags = None + self._security_attributes = None @property def id(self): @@ -454,6 +461,38 @@ def system_tags(self, system_tags): """ self._system_tags = system_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this DataSafePrivateEndpointSummary. + 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\": \"enforce\"}}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this DataSafePrivateEndpointSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this DataSafePrivateEndpointSummary. + 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\": \"enforce\"}}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this DataSafePrivateEndpointSummary. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/data_safe/models/download_security_assessment_report_details.py b/src/oci/data_safe/models/download_security_assessment_report_details.py index 167db94ec7..3886b04c37 100644 --- a/src/oci/data_safe/models/download_security_assessment_report_details.py +++ b/src/oci/data_safe/models/download_security_assessment_report_details.py @@ -37,14 +37,21 @@ def __init__(self, **kwargs): Allowed values for this property are: "PDF", "XLS", "STIGXLS" :type format: str + :param is_single_report: + The value to assign to the is_single_report property of this DownloadSecurityAssessmentReportDetails. + :type is_single_report: bool + """ self.swagger_types = { - 'format': 'str' + 'format': 'str', + 'is_single_report': 'bool' } self.attribute_map = { - 'format': 'format' + 'format': 'format', + 'is_single_report': 'isSingleReport' } self._format = None + self._is_single_report = None @property def format(self): @@ -77,6 +84,44 @@ def format(self, format): ) self._format = format + @property + def is_single_report(self): + """ + Gets the is_single_report of this DownloadSecurityAssessmentReportDetails. + Optional flag controlling the output format of a target group report: + - true: Return a single consolidated report file for the entire target group. + - false/null (default): Return a ZIP archive containing one file per target in the group. + + Important: + - This flag is only applicable when the security assessment OCID refers to a target group assessment (targetType TARGET_DATABASE_GROUP). + - If `isSingleReport` is set to true for an individual target (targetType TARGET_DATABASE), the request will return an error. + - If `isSingleReport` is null or false for an individual target, the value is ignored and the selected output format for the assessment type is returned. + + + :return: The is_single_report of this DownloadSecurityAssessmentReportDetails. + :rtype: bool + """ + return self._is_single_report + + @is_single_report.setter + def is_single_report(self, is_single_report): + """ + Sets the is_single_report of this DownloadSecurityAssessmentReportDetails. + Optional flag controlling the output format of a target group report: + - true: Return a single consolidated report file for the entire target group. + - false/null (default): Return a ZIP archive containing one file per target in the group. + + Important: + - This flag is only applicable when the security assessment OCID refers to a target group assessment (targetType TARGET_DATABASE_GROUP). + - If `isSingleReport` is set to true for an individual target (targetType TARGET_DATABASE), the request will return an error. + - If `isSingleReport` is null or false for an individual target, the value is ignored and the selected output format for the assessment type is returned. + + + :param is_single_report: The is_single_report of this DownloadSecurityAssessmentReportDetails. + :type: bool + """ + self._is_single_report = is_single_report + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/data_safe/models/generate_report_details.py b/src/oci/data_safe/models/generate_report_details.py index 5328a4dd26..23ff3a3886 100644 --- a/src/oci/data_safe/models/generate_report_details.py +++ b/src/oci/data_safe/models/generate_report_details.py @@ -69,6 +69,10 @@ def __init__(self, **kwargs): The value to assign to the row_limit property of this GenerateReportDetails. :type row_limit: int + :param is_pagination_enabled: + The value to assign to the is_pagination_enabled property of this GenerateReportDetails. + :type is_pagination_enabled: bool + """ self.swagger_types = { 'display_name': 'str', @@ -79,7 +83,8 @@ def __init__(self, **kwargs): 'mime_type': 'str', 'time_less_than': 'datetime', 'time_greater_than': 'datetime', - 'row_limit': 'int' + 'row_limit': 'int', + 'is_pagination_enabled': 'bool' } self.attribute_map = { 'display_name': 'displayName', @@ -90,7 +95,8 @@ def __init__(self, **kwargs): 'mime_type': 'mimeType', 'time_less_than': 'timeLessThan', 'time_greater_than': 'timeGreaterThan', - 'row_limit': 'rowLimit' + 'row_limit': 'rowLimit', + 'is_pagination_enabled': 'isPaginationEnabled' } self._display_name = None self._target_ids = None @@ -101,6 +107,7 @@ def __init__(self, **kwargs): self._time_less_than = None self._time_greater_than = None self._row_limit = None + self._is_pagination_enabled = None @property def display_name(self): @@ -331,6 +338,34 @@ def row_limit(self, row_limit): """ self._row_limit = row_limit + @property + def is_pagination_enabled(self): + """ + Gets the is_pagination_enabled of this GenerateReportDetails. + Indicates if the reports being generated should be pagination enabled. + If set to true, multiple reports can be generated and the details of next and previous report are present in Report. + Values can either be 'true' or 'false'. + + + :return: The is_pagination_enabled of this GenerateReportDetails. + :rtype: bool + """ + return self._is_pagination_enabled + + @is_pagination_enabled.setter + def is_pagination_enabled(self, is_pagination_enabled): + """ + Sets the is_pagination_enabled of this GenerateReportDetails. + Indicates if the reports being generated should be pagination enabled. + If set to true, multiple reports can be generated and the details of next and previous report are present in Report. + Values can either be 'true' or 'false'. + + + :param is_pagination_enabled: The is_pagination_enabled of this GenerateReportDetails. + :type: bool + """ + self._is_pagination_enabled = is_pagination_enabled + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/data_safe/models/generate_security_assessment_report_details.py b/src/oci/data_safe/models/generate_security_assessment_report_details.py index eb7fdb1e46..db315ca3f3 100644 --- a/src/oci/data_safe/models/generate_security_assessment_report_details.py +++ b/src/oci/data_safe/models/generate_security_assessment_report_details.py @@ -37,14 +37,21 @@ def __init__(self, **kwargs): Allowed values for this property are: "PDF", "XLS", "STIGXLS" :type format: str + :param is_single_report: + The value to assign to the is_single_report property of this GenerateSecurityAssessmentReportDetails. + :type is_single_report: bool + """ self.swagger_types = { - 'format': 'str' + 'format': 'str', + 'is_single_report': 'bool' } self.attribute_map = { - 'format': 'format' + 'format': 'format', + 'is_single_report': 'isSingleReport' } self._format = None + self._is_single_report = None @property def format(self): @@ -77,6 +84,44 @@ def format(self, format): ) self._format = format + @property + def is_single_report(self): + """ + Gets the is_single_report of this GenerateSecurityAssessmentReportDetails. + Optional flag controlling the output format of a target group report: + - true: Generate a single consolidated report file for the entire target group. + - false: Generate a ZIP archive containing one file per target in the group. + + Important: + - This flag is only applicable when the security assessment OCID refers to a target group assessment (targetType TARGET_DATABASE_GROUP). + - If `isSingleReport` is set to true for an individual target (targetType TARGET_DATABASE), the request will return an error. + - If `isSingleReport` is null or false for an individual target, the value is ignored and the selected output format for the assessment type is generated. + + + :return: The is_single_report of this GenerateSecurityAssessmentReportDetails. + :rtype: bool + """ + return self._is_single_report + + @is_single_report.setter + def is_single_report(self, is_single_report): + """ + Sets the is_single_report of this GenerateSecurityAssessmentReportDetails. + Optional flag controlling the output format of a target group report: + - true: Generate a single consolidated report file for the entire target group. + - false: Generate a ZIP archive containing one file per target in the group. + + Important: + - This flag is only applicable when the security assessment OCID refers to a target group assessment (targetType TARGET_DATABASE_GROUP). + - If `isSingleReport` is set to true for an individual target (targetType TARGET_DATABASE), the request will return an error. + - If `isSingleReport` is null or false for an individual target, the value is ignored and the selected output format for the assessment type is generated. + + + :param is_single_report: The is_single_report of this GenerateSecurityAssessmentReportDetails. + :type: bool + """ + self._is_single_report = is_single_report + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/data_safe/models/include.py b/src/oci/data_safe/models/include.py index 9c3919bcb2..81daf2d0d4 100644 --- a/src/oci/data_safe/models/include.py +++ b/src/oci/data_safe/models/include.py @@ -13,7 +13,7 @@ class Include(object): """ Criteria to determine whether a target database should be included in the target database group. - If the database satisfies any of compartments, targetDatabaseIds, freeformTags, or definedTags criteria, it qualifies for inclusion in the target database group + If the database satisfies any of compartments, targetDatabaseIds, freeformTags, definedTags or systemTags criteria then it qualifies for inclusion in the target database group. """ def __init__(self, **kwargs): diff --git a/src/oci/data_safe/models/report.py b/src/oci/data_safe/models/report.py index bd93bc5c25..294be547b1 100644 --- a/src/oci/data_safe/models/report.py +++ b/src/oci/data_safe/models/report.py @@ -136,6 +136,14 @@ def __init__(self, **kwargs): The value to assign to the lifecycle_details property of this Report. :type lifecycle_details: str + :param previous_report_id: + The value to assign to the previous_report_id property of this Report. + :type previous_report_id: str + + :param next_report_id: + The value to assign to the next_report_id property of this Report. + :type next_report_id: str + :param freeform_tags: The value to assign to the freeform_tags property of this Report. :type freeform_tags: dict(str, str) @@ -163,6 +171,8 @@ def __init__(self, **kwargs): 'type': 'str', 'data_source': 'str', 'lifecycle_details': 'str', + 'previous_report_id': 'str', + 'next_report_id': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', 'system_tags': 'dict(str, dict(str, object))' @@ -181,6 +191,8 @@ def __init__(self, **kwargs): 'type': 'type', 'data_source': 'dataSource', 'lifecycle_details': 'lifecycleDetails', + 'previous_report_id': 'previousReportId', + 'next_report_id': 'nextReportId', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', 'system_tags': 'systemTags' @@ -198,6 +210,8 @@ def __init__(self, **kwargs): self._type = None self._data_source = None self._lifecycle_details = None + self._previous_report_id = None + self._next_report_id = None self._freeform_tags = None self._defined_tags = None self._system_tags = None @@ -538,6 +552,54 @@ def lifecycle_details(self, lifecycle_details): """ self._lifecycle_details = lifecycle_details + @property + def previous_report_id(self): + """ + Gets the previous_report_id of this Report. + The OCID of the previous report generated. + + + :return: The previous_report_id of this Report. + :rtype: str + """ + return self._previous_report_id + + @previous_report_id.setter + def previous_report_id(self, previous_report_id): + """ + Sets the previous_report_id of this Report. + The OCID of the previous report generated. + + + :param previous_report_id: The previous_report_id of this Report. + :type: str + """ + self._previous_report_id = previous_report_id + + @property + def next_report_id(self): + """ + Gets the next_report_id of this Report. + The OCID of the next report generated. + + + :return: The next_report_id of this Report. + :rtype: str + """ + return self._next_report_id + + @next_report_id.setter + def next_report_id(self, next_report_id): + """ + Sets the next_report_id of this Report. + The OCID of the next report generated. + + + :param next_report_id: The next_report_id of this Report. + :type: str + """ + self._next_report_id = next_report_id + @property def freeform_tags(self): """ diff --git a/src/oci/data_safe/models/report_definition.py b/src/oci/data_safe/models/report_definition.py index 4092ab8e95..eb3aeeec19 100644 --- a/src/oci/data_safe/models/report_definition.py +++ b/src/oci/data_safe/models/report_definition.py @@ -208,6 +208,10 @@ def __init__(self, **kwargs): The value to assign to the lifecycle_details property of this ReportDefinition. :type lifecycle_details: str + :param is_schedule_pagination_enabled: + The value to assign to the is_schedule_pagination_enabled property of this ReportDefinition. + :type is_schedule_pagination_enabled: bool + :param freeform_tags: The value to assign to the freeform_tags property of this ReportDefinition. :type freeform_tags: dict(str, str) @@ -247,6 +251,7 @@ def __init__(self, **kwargs): 'record_time_span': 'str', 'compliance_standards': 'list[str]', 'lifecycle_details': 'str', + 'is_schedule_pagination_enabled': 'bool', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', 'system_tags': 'dict(str, dict(str, object))' @@ -277,6 +282,7 @@ def __init__(self, **kwargs): 'record_time_span': 'recordTimeSpan', 'compliance_standards': 'complianceStandards', 'lifecycle_details': 'lifecycleDetails', + 'is_schedule_pagination_enabled': 'isSchedulePaginationEnabled', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', 'system_tags': 'systemTags' @@ -306,6 +312,7 @@ def __init__(self, **kwargs): self._record_time_span = None self._compliance_standards = None self._lifecycle_details = None + self._is_schedule_pagination_enabled = None self._freeform_tags = None self._defined_tags = None self._system_tags = None @@ -976,6 +983,34 @@ def lifecycle_details(self, lifecycle_details): """ self._lifecycle_details = lifecycle_details + @property + def is_schedule_pagination_enabled(self): + """ + Gets the is_schedule_pagination_enabled of this ReportDefinition. + Indicates if the reports being generated should be paginated. + If set to true, multiple reports can be generated and the details of next and previous report are present in Report. + Values can either be 'true' or 'false'. + + + :return: The is_schedule_pagination_enabled of this ReportDefinition. + :rtype: bool + """ + return self._is_schedule_pagination_enabled + + @is_schedule_pagination_enabled.setter + def is_schedule_pagination_enabled(self, is_schedule_pagination_enabled): + """ + Sets the is_schedule_pagination_enabled of this ReportDefinition. + Indicates if the reports being generated should be paginated. + If set to true, multiple reports can be generated and the details of next and previous report are present in Report. + Values can either be 'true' or 'false'. + + + :param is_schedule_pagination_enabled: The is_schedule_pagination_enabled of this ReportDefinition. + :type: bool + """ + self._is_schedule_pagination_enabled = is_schedule_pagination_enabled + @property def freeform_tags(self): """ diff --git a/src/oci/data_safe/models/schedule_report_details.py b/src/oci/data_safe/models/schedule_report_details.py index 5921da6a64..759c24a92f 100644 --- a/src/oci/data_safe/models/schedule_report_details.py +++ b/src/oci/data_safe/models/schedule_report_details.py @@ -53,26 +53,33 @@ def __init__(self, **kwargs): The value to assign to the report_details property of this ScheduleReportDetails. :type report_details: oci.data_safe.models.ReportDetails + :param is_pagination_enabled: + The value to assign to the is_pagination_enabled property of this ScheduleReportDetails. + :type is_pagination_enabled: bool + """ self.swagger_types = { 'display_name': 'str', 'schedule': 'str', 'mime_type': 'str', 'compartment_id': 'str', - 'report_details': 'ReportDetails' + 'report_details': 'ReportDetails', + 'is_pagination_enabled': 'bool' } self.attribute_map = { 'display_name': 'displayName', 'schedule': 'schedule', 'mime_type': 'mimeType', 'compartment_id': 'compartmentId', - 'report_details': 'reportDetails' + 'report_details': 'reportDetails', + 'is_pagination_enabled': 'isPaginationEnabled' } self._display_name = None self._schedule = None self._mime_type = None self._compartment_id = None self._report_details = None + self._is_pagination_enabled = None @property def display_name(self): @@ -225,6 +232,34 @@ def report_details(self, report_details): """ self._report_details = report_details + @property + def is_pagination_enabled(self): + """ + Gets the is_pagination_enabled of this ScheduleReportDetails. + Indicates if the reports being generated should be paginated. + If set to true, multiple reports can be generated and the details of next and previous report are present in Report. + Values can either be 'true' or 'false'. + + + :return: The is_pagination_enabled of this ScheduleReportDetails. + :rtype: bool + """ + return self._is_pagination_enabled + + @is_pagination_enabled.setter + def is_pagination_enabled(self, is_pagination_enabled): + """ + Sets the is_pagination_enabled of this ScheduleReportDetails. + Indicates if the reports being generated should be paginated. + If set to true, multiple reports can be generated and the details of next and previous report are present in Report. + Values can either be 'true' or 'false'. + + + :param is_pagination_enabled: The is_pagination_enabled of this ScheduleReportDetails. + :type: bool + """ + self._is_pagination_enabled = is_pagination_enabled + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/data_safe/models/target_alert_policy_association.py b/src/oci/data_safe/models/target_alert_policy_association.py index 0c172b9a4e..be30db5826 100644 --- a/src/oci/data_safe/models/target_alert_policy_association.py +++ b/src/oci/data_safe/models/target_alert_policy_association.py @@ -39,6 +39,14 @@ class TargetAlertPolicyAssociation(object): #: This constant has a value of "FAILED" LIFECYCLE_STATE_FAILED = "FAILED" + #: A constant which can be used with the target_type property of a TargetAlertPolicyAssociation. + #: This constant has a value of "TARGET_DATABASE" + TARGET_TYPE_TARGET_DATABASE = "TARGET_DATABASE" + + #: A constant which can be used with the target_type property of a TargetAlertPolicyAssociation. + #: This constant has a value of "TARGET_DATABASE_GROUP" + TARGET_TYPE_TARGET_DATABASE_GROUP = "TARGET_DATABASE_GROUP" + def __init__(self, **kwargs): """ Initializes a new TargetAlertPolicyAssociation object with values from keyword arguments. @@ -90,6 +98,12 @@ def __init__(self, **kwargs): The value to assign to the lifecycle_details property of this TargetAlertPolicyAssociation. :type lifecycle_details: str + :param target_type: + The value to assign to the target_type property of this TargetAlertPolicyAssociation. + Allowed values for this property are: "TARGET_DATABASE", "TARGET_DATABASE_GROUP", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type target_type: str + :param freeform_tags: The value to assign to the freeform_tags property of this TargetAlertPolicyAssociation. :type freeform_tags: dict(str, str) @@ -115,6 +129,7 @@ def __init__(self, **kwargs): 'time_updated': 'datetime', 'lifecycle_state': 'str', 'lifecycle_details': 'str', + 'target_type': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', 'system_tags': 'dict(str, dict(str, object))' @@ -131,6 +146,7 @@ def __init__(self, **kwargs): 'time_updated': 'timeUpdated', 'lifecycle_state': 'lifecycleState', 'lifecycle_details': 'lifecycleDetails', + 'target_type': 'targetType', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', 'system_tags': 'systemTags' @@ -146,6 +162,7 @@ def __init__(self, **kwargs): self._time_updated = None self._lifecycle_state = None self._lifecycle_details = None + self._target_type = None self._freeform_tags = None self._defined_tags = None self._system_tags = None @@ -250,7 +267,7 @@ def policy_id(self, policy_id): def target_id(self): """ Gets the target_id of this TargetAlertPolicyAssociation. - The OCID of the target on which alert policy is to be applied. + The OCID of the target or target database group on which alert policy is to be applied. :return: The target_id of this TargetAlertPolicyAssociation. @@ -262,7 +279,7 @@ def target_id(self): def target_id(self, target_id): """ Sets the target_id of this TargetAlertPolicyAssociation. - The OCID of the target on which alert policy is to be applied. + The OCID of the target or target database group on which alert policy is to be applied. :param target_id: The target_id of this TargetAlertPolicyAssociation. @@ -428,6 +445,36 @@ def lifecycle_details(self, lifecycle_details): """ self._lifecycle_details = lifecycle_details + @property + def target_type(self): + """ + **[Required]** Gets the target_type of this TargetAlertPolicyAssociation. + The resource type that is represented by the target alert policy association. + + Allowed values for this property are: "TARGET_DATABASE", "TARGET_DATABASE_GROUP", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The target_type of this TargetAlertPolicyAssociation. + :rtype: str + """ + return self._target_type + + @target_type.setter + def target_type(self, target_type): + """ + Sets the target_type of this TargetAlertPolicyAssociation. + The resource type that is represented by the target alert policy association. + + + :param target_type: The target_type of this TargetAlertPolicyAssociation. + :type: str + """ + allowed_values = ["TARGET_DATABASE", "TARGET_DATABASE_GROUP"] + if not value_allowed_none_or_none_sentinel(target_type, allowed_values): + target_type = 'UNKNOWN_ENUM_VALUE' + self._target_type = target_type + @property def freeform_tags(self): """ diff --git a/src/oci/data_safe/models/target_alert_policy_association_summary.py b/src/oci/data_safe/models/target_alert_policy_association_summary.py index 1a3bcd2440..a83970c1d6 100644 --- a/src/oci/data_safe/models/target_alert_policy_association_summary.py +++ b/src/oci/data_safe/models/target_alert_policy_association_summary.py @@ -90,6 +90,10 @@ def __init__(self, **kwargs): The value to assign to the lifecycle_details property of this TargetAlertPolicyAssociationSummary. :type lifecycle_details: str + :param target_type: + The value to assign to the target_type property of this TargetAlertPolicyAssociationSummary. + :type target_type: str + :param freeform_tags: The value to assign to the freeform_tags property of this TargetAlertPolicyAssociationSummary. :type freeform_tags: dict(str, str) @@ -111,6 +115,7 @@ def __init__(self, **kwargs): 'time_updated': 'datetime', 'lifecycle_state': 'str', 'lifecycle_details': 'str', + 'target_type': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))' } @@ -126,6 +131,7 @@ def __init__(self, **kwargs): 'time_updated': 'timeUpdated', 'lifecycle_state': 'lifecycleState', 'lifecycle_details': 'lifecycleDetails', + 'target_type': 'targetType', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags' } @@ -140,6 +146,7 @@ def __init__(self, **kwargs): self._time_updated = None self._lifecycle_state = None self._lifecycle_details = None + self._target_type = None self._freeform_tags = None self._defined_tags = None @@ -243,7 +250,7 @@ def policy_id(self, policy_id): def target_id(self): """ Gets the target_id of this TargetAlertPolicyAssociationSummary. - The OCID of the target on which alert policy is to be applied. + The OCID of the target or target database group on which alert policy is to be applied. :return: The target_id of this TargetAlertPolicyAssociationSummary. @@ -255,7 +262,7 @@ def target_id(self): def target_id(self, target_id): """ Sets the target_id of this TargetAlertPolicyAssociationSummary. - The OCID of the target on which alert policy is to be applied. + The OCID of the target or target database group on which alert policy is to be applied. :param target_id: The target_id of this TargetAlertPolicyAssociationSummary. @@ -421,6 +428,30 @@ def lifecycle_details(self, lifecycle_details): """ self._lifecycle_details = lifecycle_details + @property + def target_type(self): + """ + Gets the target_type of this TargetAlertPolicyAssociationSummary. + The resource type that is represented by the target alert policy association. + + + :return: The target_type of this TargetAlertPolicyAssociationSummary. + :rtype: str + """ + return self._target_type + + @target_type.setter + def target_type(self, target_type): + """ + Sets the target_type of this TargetAlertPolicyAssociationSummary. + The resource type that is represented by the target alert policy association. + + + :param target_type: The target_type of this TargetAlertPolicyAssociationSummary. + :type: str + """ + self._target_type = target_type + @property def freeform_tags(self): """ diff --git a/src/oci/data_safe/models/target_alert_policy_unassociated_collection.py b/src/oci/data_safe/models/target_alert_policy_unassociated_collection.py new file mode 100644 index 0000000000..53a12ca9ba --- /dev/null +++ b/src/oci/data_safe/models/target_alert_policy_unassociated_collection.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20181201 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class TargetAlertPolicyUnassociatedCollection(object): + """ + Collection of unassociated target alert policy association summary. + """ + + def __init__(self, **kwargs): + """ + Initializes a new TargetAlertPolicyUnassociatedCollection object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this TargetAlertPolicyUnassociatedCollection. + :type items: list[oci.data_safe.models.TargetAlertPolicyUnassociatedSummary] + + """ + self.swagger_types = { + 'items': 'list[TargetAlertPolicyUnassociatedSummary]' + } + self.attribute_map = { + 'items': 'items' + } + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this TargetAlertPolicyUnassociatedCollection. + Array of unassociated target alert policy association summary. + + + :return: The items of this TargetAlertPolicyUnassociatedCollection. + :rtype: list[oci.data_safe.models.TargetAlertPolicyUnassociatedSummary] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this TargetAlertPolicyUnassociatedCollection. + Array of unassociated target alert policy association summary. + + + :param items: The items of this TargetAlertPolicyUnassociatedCollection. + :type: list[oci.data_safe.models.TargetAlertPolicyUnassociatedSummary] + """ + self._items = items + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/data_safe/models/target_alert_policy_unassociated_summary.py b/src/oci/data_safe/models/target_alert_policy_unassociated_summary.py new file mode 100644 index 0000000000..1e594cf49f --- /dev/null +++ b/src/oci/data_safe/models/target_alert_policy_unassociated_summary.py @@ -0,0 +1,241 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20181201 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class TargetAlertPolicyUnassociatedSummary(object): + """ + Summary of the target databases that differ from the association of the target database group. + """ + + def __init__(self, **kwargs): + """ + Initializes a new TargetAlertPolicyUnassociatedSummary object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param target_database_id: + The value to assign to the target_database_id property of this TargetAlertPolicyUnassociatedSummary. + :type target_database_id: str + + :param is_enabled: + The value to assign to the is_enabled property of this TargetAlertPolicyUnassociatedSummary. + :type is_enabled: bool + + :param not_applied_reason: + The value to assign to the not_applied_reason property of this TargetAlertPolicyUnassociatedSummary. + :type not_applied_reason: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this TargetAlertPolicyUnassociatedSummary. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this TargetAlertPolicyUnassociatedSummary. + :type defined_tags: dict(str, dict(str, object)) + + :param system_tags: + The value to assign to the system_tags property of this TargetAlertPolicyUnassociatedSummary. + :type system_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'target_database_id': 'str', + 'is_enabled': 'bool', + 'not_applied_reason': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'target_database_id': 'targetDatabaseId', + 'is_enabled': 'isEnabled', + 'not_applied_reason': 'notAppliedReason', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags' + } + self._target_database_id = None + self._is_enabled = None + self._not_applied_reason = None + self._freeform_tags = None + self._defined_tags = None + self._system_tags = None + + @property + def target_database_id(self): + """ + **[Required]** Gets the target_database_id of this TargetAlertPolicyUnassociatedSummary. + The OCID of the target database that differs from the alert policy association of the target database group. + + + :return: The target_database_id of this TargetAlertPolicyUnassociatedSummary. + :rtype: str + """ + return self._target_database_id + + @target_database_id.setter + def target_database_id(self, target_database_id): + """ + Sets the target_database_id of this TargetAlertPolicyUnassociatedSummary. + The OCID of the target database that differs from the alert policy association of the target database group. + + + :param target_database_id: The target_database_id of this TargetAlertPolicyUnassociatedSummary. + :type: str + """ + self._target_database_id = target_database_id + + @property + def is_enabled(self): + """ + **[Required]** Gets the is_enabled of this TargetAlertPolicyUnassociatedSummary. + Indicates if the target-alert policy association is enabled or disabled by user. + + + :return: The is_enabled of this TargetAlertPolicyUnassociatedSummary. + :rtype: bool + """ + return self._is_enabled + + @is_enabled.setter + def is_enabled(self, is_enabled): + """ + Sets the is_enabled of this TargetAlertPolicyUnassociatedSummary. + Indicates if the target-alert policy association is enabled or disabled by user. + + + :param is_enabled: The is_enabled of this TargetAlertPolicyUnassociatedSummary. + :type: bool + """ + self._is_enabled = is_enabled + + @property + def not_applied_reason(self): + """ + Gets the not_applied_reason of this TargetAlertPolicyUnassociatedSummary. + Details on why policy is not applied on target. + + + :return: The not_applied_reason of this TargetAlertPolicyUnassociatedSummary. + :rtype: str + """ + return self._not_applied_reason + + @not_applied_reason.setter + def not_applied_reason(self, not_applied_reason): + """ + Sets the not_applied_reason of this TargetAlertPolicyUnassociatedSummary. + Details on why policy is not applied on target. + + + :param not_applied_reason: The not_applied_reason of this TargetAlertPolicyUnassociatedSummary. + :type: str + """ + self._not_applied_reason = not_applied_reason + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this TargetAlertPolicyUnassociatedSummary. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this TargetAlertPolicyUnassociatedSummary. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this TargetAlertPolicyUnassociatedSummary. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this TargetAlertPolicyUnassociatedSummary. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this TargetAlertPolicyUnassociatedSummary. + Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see `Resource Tags`__ + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this TargetAlertPolicyUnassociatedSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this TargetAlertPolicyUnassociatedSummary. + Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see `Resource Tags`__ + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this TargetAlertPolicyUnassociatedSummary. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def system_tags(self): + """ + Gets the system_tags of this TargetAlertPolicyUnassociatedSummary. + System tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :return: The system_tags of this TargetAlertPolicyUnassociatedSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this TargetAlertPolicyUnassociatedSummary. + System tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :param system_tags: The system_tags of this TargetAlertPolicyUnassociatedSummary. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/data_safe/models/update_data_safe_private_endpoint_details.py b/src/oci/data_safe/models/update_data_safe_private_endpoint_details.py index 93135f8d90..a4967b7e8e 100644 --- a/src/oci/data_safe/models/update_data_safe_private_endpoint_details.py +++ b/src/oci/data_safe/models/update_data_safe_private_endpoint_details.py @@ -40,26 +40,33 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this UpdateDataSafePrivateEndpointDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this UpdateDataSafePrivateEndpointDetails. + :type security_attributes: dict(str, dict(str, object)) + """ self.swagger_types = { 'display_name': 'str', 'description': 'str', 'nsg_ids': 'list[str]', 'freeform_tags': 'dict(str, str)', - 'defined_tags': 'dict(str, dict(str, object))' + 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))' } self.attribute_map = { 'display_name': 'displayName', 'description': 'description', 'nsg_ids': 'nsgIds', 'freeform_tags': 'freeformTags', - 'defined_tags': 'definedTags' + 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes' } self._display_name = None self._description = None self._nsg_ids = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None @property def display_name(self): @@ -195,6 +202,38 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this UpdateDataSafePrivateEndpointDetails. + 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\": \"enforce\"}}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this UpdateDataSafePrivateEndpointDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this UpdateDataSafePrivateEndpointDetails. + 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\": \"enforce\"}}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this UpdateDataSafePrivateEndpointDetails. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/data_safe/models/work_request.py b/src/oci/data_safe/models/work_request.py index 9ef4c73841..251fb2fdef 100644 --- a/src/oci/data_safe/models/work_request.py +++ b/src/oci/data_safe/models/work_request.py @@ -403,6 +403,10 @@ class WorkRequest(object): #: This constant has a value of "GENERATE_REPORT" OPERATION_TYPE_GENERATE_REPORT = "GENERATE_REPORT" + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "GENERATE_PAGINATED_REPORT" + OPERATION_TYPE_GENERATE_PAGINATED_REPORT = "GENERATE_PAGINATED_REPORT" + #: A constant which can be used with the operation_type property of a WorkRequest. #: This constant has a value of "CHANGE_REPORT_COMPARTMENT" OPERATION_TYPE_CHANGE_REPORT_COMPARTMENT = "CHANGE_REPORT_COMPARTMENT" @@ -802,7 +806,7 @@ def __init__(self, **kwargs): :param operation_type: The value to assign to the operation_type property of this WorkRequest. - Allowed values for this property are: "ENABLE_DATA_SAFE_CONFIGURATION", "CREATE_PRIVATE_ENDPOINT", "UPDATE_PRIVATE_ENDPOINT", "DELETE_PRIVATE_ENDPOINT", "CHANGE_PRIVATE_ENDPOINT_COMPARTMENT", "CREATE_ONPREM_CONNECTOR", "UPDATE_ONPREM_CONNECTOR", "DELETE_ONPREM_CONNECTOR", "UPDATE_ONPREM_CONNECTOR_WALLET", "CHANGE_ONPREM_CONNECTOR_COMPARTMENT", "CREATE_TARGET_DATABASE", "UPDATE_TARGET_DATABASE", "ACTIVATE_TARGET_DATABASE", "DEACTIVATE_TARGET_DATABASE", "DELETE_TARGET_DATABASE", "CHANGE_TARGET_DATABASE_COMPARTMENT", "CREATE_PEER_TARGET_DATABASE", "UPDATE_PEER_TARGET_DATABASE", "DELETE_PEER_TARGET_DATABASE", "REFRESH_TARGET_DATABASE", "PROVISION_POLICY", "RETRIEVE_POLICY", "UPDATE_POLICY", "CHANGE_POLICY_COMPARTMENT", "CREATE_USER_ASSESSMENT", "ASSESS_USER_ASSESSMENT", "CREATE_SNAPSHOT_USER_ASSESSMENT", "CREATE_SCHEDULE_USER_ASSESSMENT", "COMPARE_WITH_BASELINE_USER_ASSESSMENT", "DELETE_USER_ASSESSMENT", "UPDATE_USER_ASSESSMENT", "CHANGE_USER_ASSESSMENT_COMPARTMENT", "SET_USER_ASSESSMENT_BASELINE", "UNSET_USER_ASSESSMENT_BASELINE", "GENERATE_USER_ASSESSMENT_REPORT", "CREATE_SECURITY_ASSESSMENT", "CREATE_SECURITY_ASSESSMENT_NOW", "ASSESS_SECURITY_ASSESSMENT", "CREATE_SNAPSHOT_SECURITY_ASSESSMENT", "CREATE_SCHEDULE_SECURITY_ASSESSMENT", "COMPARE_WITH_BASELINE_SECURITY_ASSESSMENT", "DELETE_SECURITY_ASSESSMENT", "UPDATE_SECURITY_ASSESSMENT", "PATCH_CHECKS", "UPDATE_FINDING_SEVERITY", "APPLY_TEMPLATE", "FLEET_GENERATE_SECURITY_ASSESSMENT_REPORT", "FLEET_GENERATE_USER_ASSESSMENT_REPORT", "REFRESH_TARGET_DATABASE_GROUP_WITH_CHANGES", "UPDATE_FINDING_RISK", "CHANGE_SECURITY_ASSESSMENT_COMPARTMENT", "SET_SECURITY_ASSESSMENT_BASELINE", "UNSET_SECURITY_ASSESSMENT_BASELINE", "GENERATE_SECURITY_ASSESSMENT_REPORT", "DELETE_SQL_FIREWALL_ALLOWED_SQL", "BULK_CREATE_SQL_FIREWALL_ALLOWED_SQL", "BULK_DELETE_SQL_FIREWALL_ALLOWED_SQL", "CREATE_AUDIT_PROFILE", "CALCULATE_VOLUME", "CALCULATE_COLLECTED_VOLUME", "CREATE_DB_SECURITY_CONFIG", "REFRESH_DB_SECURITY_CONFIG", "UPDATE_DB_SECURITY_CONFIG", "CHANGE_DB_SECURITY_CONFIG_COMPARTMENT", "GENERATE_FIREWALL_POLICY", "UPDATE_FIREWALL_POLICY", "CHANGE_FIREWALL_POLICY_COMPARTMENT", "DELETE_FIREWALL_POLICY", "CREATE_SQL_COLLECTION", "UPDATE_SQL_COLLECTION", "START_SQL_COLLECTION", "STOP_SQL_COLLECTION", "DELETE_SQL_COLLECTION", "CHANGE_SQL_COLLECTION_COMPARTMENT", "REFRESH_SQL_COLLECTION_LOG_INSIGHTS", "PURGE_SQL_COLLECTION_LOGS", "REFRESH_VIOLATIONS", "CREATE_ARCHIVAL", "CREATE_SECURITY_POLICY", "DELETE_SECURITY_POLICY", "SECURITY_POLICY_DEPLOYMENT_ACTIONS", "PROVISION_SECURITY_POLICY_DEPLOYMENT", "UPDATE_SECURITY_POLICY", "CHANGE_SECURITY_POLICY_COMPARTMENT", "UPDATE_SECURITY_POLICY_DEPLOYMENT", "CHANGE_SECURITY_POLICY_DEPLOYMENT_COMPARTMENT", "AUDIT_TRAIL", "DELETE_AUDIT_TRAIL", "DISCOVER_AUDIT_TRAILS", "UPDATE_AUDIT_TRAIL", "UPDATE_AUDIT_PROFILE", "AUDIT_CHANGE_COMPARTMENT", "CREATE_REPORT_DEFINITION", "UPDATE_REPORT_DEFINITION", "CHANGE_REPORT_DEFINITION_COMPARTMENT", "DELETE_REPORT_DEFINITION", "GENERATE_REPORT", "CHANGE_REPORT_COMPARTMENT", "DELETE_ARCHIVE_RETRIEVAL", "CREATE_ARCHIVE_RETRIEVAL", "UPDATE_ARCHIVE_RETRIEVAL", "CHANGE_ARCHIVE_RETRIEVAL_COMPARTMENT", "UPDATE_ALERT", "TARGET_ALERT_POLICY_ASSOCIATION", "CREATE_TARGET_DATABASE_GROUP", "UPDATE_TARGET_DATABASE_GROUP", "DELETE_TARGET_DATABASE_GROUP", "CHANGE_TARGET_DATABASE_GROUP_COMPARTMENT", "CREATE_SECURITY_POLICY_CONFIG", "UPDATE_SECURITY_POLICY_CONFIG", "DELETE_SECURITY_POLICY_CONFIG", "CHANGE_SECURITY_POLICY_CONFIG_COMPARTMENT", "CREATE_UNIFIED_AUDIT_POLICY", "UPDATE_UNIFIED_AUDIT_POLICY", "DELETE_UNIFIED_AUDIT_POLICY", "CHANGE_UNIFIED_AUDIT_POLICY_COMPARTMENT", "UPDATE_UNIFIED_AUDIT_POLICY_DEFINITION", "DELETE_UNIFIED_AUDIT_POLICY_DEFINITION", "CHANGE_UNIFIED_AUDIT_POLICY_DEFINITION_COMPARTMENT", "FETCH_AUDIT_POLICY_DETAILS", "BULK_CREATE_UNIFIED_AUDIT_POLICY", "CREATE_SENSITIVE_DATA_MODEL", "UPDATE_SENSITIVE_DATA_MODEL", "DELETE_SENSITIVE_DATA_MODEL", "UPLOAD_SENSITIVE_DATA_MODEL", "GENERATE_SENSITIVE_DATA_MODEL_FOR_DOWNLOAD", "CREATE_SENSITIVE_COLUMN", "UPDATE_SENSITIVE_COLUMN", "PATCH_SENSITIVE_COLUMNS", "CREATE_DISCOVERY_JOB", "DELETE_DISCOVERY_JOB", "PATCH_DISCOVERY_JOB_RESULT", "APPLY_DISCOVERY_JOB_RESULT", "GENERATE_DISCOVERY_REPORT", "CREATE_SENSITIVE_TYPE", "UPDATE_SENSITIVE_TYPE", "CREATE_MASKING_POLICY", "UPDATE_MASKING_POLICY", "DELETE_MASKING_POLICY", "UPLOAD_MASKING_POLICY", "GENERATE_MASKING_POLICY_FOR_DOWNLOAD", "CREATE_MASKING_COLUMN", "UPDATE_MASKING_COLUMN", "PATCH_MASKING_COLUMNS", "GENERATE_MASKING_REPORT", "CREATE_LIBRARY_MASKING_FORMAT", "UPDATE_LIBRARY_MASKING_FORMAT", "ADD_COLUMNS_FROM_SDM", "MASKING_JOB", "CREATE_DIFFERENCE", "DELETE_DIFFERENCE", "UPDATE_DIFFERENCE", "PATCH_DIFFERENCE", "APPLY_DIFFERENCE", "DELETE_MASKING_REPORT", "MASK_POLICY_GENERATE_HEALTH_REPORT", "MASK_POLICY_DELETE_HEALTH_REPORT", "CREATE_SENSITIVE_TYPES_EXPORT", "UPDATE_SENSITIVE_TYPES_EXPORT", "BULK_CREATE_SENSITIVE_TYPES", "CREATE_SENSITIVE_TYPE_GROUP", "UPDATE_SENSITIVE_TYPE_GROUP", "DELETE_SENSITIVE_TYPE_GROUP", "DELETE_SENSITIVE_TYPE", "PATCH_GROUPED_SENSITIVE_TYPES", "CREATE_RELATION", "DELETE_RELATION", "ABORT_MASKING", "CREATE_SECURITY_POLICY_REPORT", "REFRESH_SECURITY_POLICY_CACHE", "DELETE_SECURITY_POLICY_CACHE", "CREATE_SCHEDULE", "REMOVE_SCHEDULE_REPORT", "UPDATE_ALL_ALERT", "PATCH_TARGET_ALERT_POLICY_ASSOCIATION", "CREATE_ALERT_POLICY", "UPDATE_ALERT_POLICY", "DELETE_ALERT_POLICY", "CREATE_ALERT_POLICY_RULE", "UPDATE_ALERT_POLICY_RULE", "DELETE_ALERT_POLICY_RULE", "CHANGE_ALERT_POLICY_COMPARTMENT", "UPDATE_TARGET_GROUP_AUDIT_PROFILE", "CREATE_ATTRIBUTE_SET", "UPDATE_ATTRIBUTE_SET", "DELETE_ATTRIBUTE_SET", "CHANGE_ATTRIBUTE_SET_COMPARTMENT", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "ENABLE_DATA_SAFE_CONFIGURATION", "CREATE_PRIVATE_ENDPOINT", "UPDATE_PRIVATE_ENDPOINT", "DELETE_PRIVATE_ENDPOINT", "CHANGE_PRIVATE_ENDPOINT_COMPARTMENT", "CREATE_ONPREM_CONNECTOR", "UPDATE_ONPREM_CONNECTOR", "DELETE_ONPREM_CONNECTOR", "UPDATE_ONPREM_CONNECTOR_WALLET", "CHANGE_ONPREM_CONNECTOR_COMPARTMENT", "CREATE_TARGET_DATABASE", "UPDATE_TARGET_DATABASE", "ACTIVATE_TARGET_DATABASE", "DEACTIVATE_TARGET_DATABASE", "DELETE_TARGET_DATABASE", "CHANGE_TARGET_DATABASE_COMPARTMENT", "CREATE_PEER_TARGET_DATABASE", "UPDATE_PEER_TARGET_DATABASE", "DELETE_PEER_TARGET_DATABASE", "REFRESH_TARGET_DATABASE", "PROVISION_POLICY", "RETRIEVE_POLICY", "UPDATE_POLICY", "CHANGE_POLICY_COMPARTMENT", "CREATE_USER_ASSESSMENT", "ASSESS_USER_ASSESSMENT", "CREATE_SNAPSHOT_USER_ASSESSMENT", "CREATE_SCHEDULE_USER_ASSESSMENT", "COMPARE_WITH_BASELINE_USER_ASSESSMENT", "DELETE_USER_ASSESSMENT", "UPDATE_USER_ASSESSMENT", "CHANGE_USER_ASSESSMENT_COMPARTMENT", "SET_USER_ASSESSMENT_BASELINE", "UNSET_USER_ASSESSMENT_BASELINE", "GENERATE_USER_ASSESSMENT_REPORT", "CREATE_SECURITY_ASSESSMENT", "CREATE_SECURITY_ASSESSMENT_NOW", "ASSESS_SECURITY_ASSESSMENT", "CREATE_SNAPSHOT_SECURITY_ASSESSMENT", "CREATE_SCHEDULE_SECURITY_ASSESSMENT", "COMPARE_WITH_BASELINE_SECURITY_ASSESSMENT", "DELETE_SECURITY_ASSESSMENT", "UPDATE_SECURITY_ASSESSMENT", "PATCH_CHECKS", "UPDATE_FINDING_SEVERITY", "APPLY_TEMPLATE", "FLEET_GENERATE_SECURITY_ASSESSMENT_REPORT", "FLEET_GENERATE_USER_ASSESSMENT_REPORT", "REFRESH_TARGET_DATABASE_GROUP_WITH_CHANGES", "UPDATE_FINDING_RISK", "CHANGE_SECURITY_ASSESSMENT_COMPARTMENT", "SET_SECURITY_ASSESSMENT_BASELINE", "UNSET_SECURITY_ASSESSMENT_BASELINE", "GENERATE_SECURITY_ASSESSMENT_REPORT", "DELETE_SQL_FIREWALL_ALLOWED_SQL", "BULK_CREATE_SQL_FIREWALL_ALLOWED_SQL", "BULK_DELETE_SQL_FIREWALL_ALLOWED_SQL", "CREATE_AUDIT_PROFILE", "CALCULATE_VOLUME", "CALCULATE_COLLECTED_VOLUME", "CREATE_DB_SECURITY_CONFIG", "REFRESH_DB_SECURITY_CONFIG", "UPDATE_DB_SECURITY_CONFIG", "CHANGE_DB_SECURITY_CONFIG_COMPARTMENT", "GENERATE_FIREWALL_POLICY", "UPDATE_FIREWALL_POLICY", "CHANGE_FIREWALL_POLICY_COMPARTMENT", "DELETE_FIREWALL_POLICY", "CREATE_SQL_COLLECTION", "UPDATE_SQL_COLLECTION", "START_SQL_COLLECTION", "STOP_SQL_COLLECTION", "DELETE_SQL_COLLECTION", "CHANGE_SQL_COLLECTION_COMPARTMENT", "REFRESH_SQL_COLLECTION_LOG_INSIGHTS", "PURGE_SQL_COLLECTION_LOGS", "REFRESH_VIOLATIONS", "CREATE_ARCHIVAL", "CREATE_SECURITY_POLICY", "DELETE_SECURITY_POLICY", "SECURITY_POLICY_DEPLOYMENT_ACTIONS", "PROVISION_SECURITY_POLICY_DEPLOYMENT", "UPDATE_SECURITY_POLICY", "CHANGE_SECURITY_POLICY_COMPARTMENT", "UPDATE_SECURITY_POLICY_DEPLOYMENT", "CHANGE_SECURITY_POLICY_DEPLOYMENT_COMPARTMENT", "AUDIT_TRAIL", "DELETE_AUDIT_TRAIL", "DISCOVER_AUDIT_TRAILS", "UPDATE_AUDIT_TRAIL", "UPDATE_AUDIT_PROFILE", "AUDIT_CHANGE_COMPARTMENT", "CREATE_REPORT_DEFINITION", "UPDATE_REPORT_DEFINITION", "CHANGE_REPORT_DEFINITION_COMPARTMENT", "DELETE_REPORT_DEFINITION", "GENERATE_REPORT", "GENERATE_PAGINATED_REPORT", "CHANGE_REPORT_COMPARTMENT", "DELETE_ARCHIVE_RETRIEVAL", "CREATE_ARCHIVE_RETRIEVAL", "UPDATE_ARCHIVE_RETRIEVAL", "CHANGE_ARCHIVE_RETRIEVAL_COMPARTMENT", "UPDATE_ALERT", "TARGET_ALERT_POLICY_ASSOCIATION", "CREATE_TARGET_DATABASE_GROUP", "UPDATE_TARGET_DATABASE_GROUP", "DELETE_TARGET_DATABASE_GROUP", "CHANGE_TARGET_DATABASE_GROUP_COMPARTMENT", "CREATE_SECURITY_POLICY_CONFIG", "UPDATE_SECURITY_POLICY_CONFIG", "DELETE_SECURITY_POLICY_CONFIG", "CHANGE_SECURITY_POLICY_CONFIG_COMPARTMENT", "CREATE_UNIFIED_AUDIT_POLICY", "UPDATE_UNIFIED_AUDIT_POLICY", "DELETE_UNIFIED_AUDIT_POLICY", "CHANGE_UNIFIED_AUDIT_POLICY_COMPARTMENT", "UPDATE_UNIFIED_AUDIT_POLICY_DEFINITION", "DELETE_UNIFIED_AUDIT_POLICY_DEFINITION", "CHANGE_UNIFIED_AUDIT_POLICY_DEFINITION_COMPARTMENT", "FETCH_AUDIT_POLICY_DETAILS", "BULK_CREATE_UNIFIED_AUDIT_POLICY", "CREATE_SENSITIVE_DATA_MODEL", "UPDATE_SENSITIVE_DATA_MODEL", "DELETE_SENSITIVE_DATA_MODEL", "UPLOAD_SENSITIVE_DATA_MODEL", "GENERATE_SENSITIVE_DATA_MODEL_FOR_DOWNLOAD", "CREATE_SENSITIVE_COLUMN", "UPDATE_SENSITIVE_COLUMN", "PATCH_SENSITIVE_COLUMNS", "CREATE_DISCOVERY_JOB", "DELETE_DISCOVERY_JOB", "PATCH_DISCOVERY_JOB_RESULT", "APPLY_DISCOVERY_JOB_RESULT", "GENERATE_DISCOVERY_REPORT", "CREATE_SENSITIVE_TYPE", "UPDATE_SENSITIVE_TYPE", "CREATE_MASKING_POLICY", "UPDATE_MASKING_POLICY", "DELETE_MASKING_POLICY", "UPLOAD_MASKING_POLICY", "GENERATE_MASKING_POLICY_FOR_DOWNLOAD", "CREATE_MASKING_COLUMN", "UPDATE_MASKING_COLUMN", "PATCH_MASKING_COLUMNS", "GENERATE_MASKING_REPORT", "CREATE_LIBRARY_MASKING_FORMAT", "UPDATE_LIBRARY_MASKING_FORMAT", "ADD_COLUMNS_FROM_SDM", "MASKING_JOB", "CREATE_DIFFERENCE", "DELETE_DIFFERENCE", "UPDATE_DIFFERENCE", "PATCH_DIFFERENCE", "APPLY_DIFFERENCE", "DELETE_MASKING_REPORT", "MASK_POLICY_GENERATE_HEALTH_REPORT", "MASK_POLICY_DELETE_HEALTH_REPORT", "CREATE_SENSITIVE_TYPES_EXPORT", "UPDATE_SENSITIVE_TYPES_EXPORT", "BULK_CREATE_SENSITIVE_TYPES", "CREATE_SENSITIVE_TYPE_GROUP", "UPDATE_SENSITIVE_TYPE_GROUP", "DELETE_SENSITIVE_TYPE_GROUP", "DELETE_SENSITIVE_TYPE", "PATCH_GROUPED_SENSITIVE_TYPES", "CREATE_RELATION", "DELETE_RELATION", "ABORT_MASKING", "CREATE_SECURITY_POLICY_REPORT", "REFRESH_SECURITY_POLICY_CACHE", "DELETE_SECURITY_POLICY_CACHE", "CREATE_SCHEDULE", "REMOVE_SCHEDULE_REPORT", "UPDATE_ALL_ALERT", "PATCH_TARGET_ALERT_POLICY_ASSOCIATION", "CREATE_ALERT_POLICY", "UPDATE_ALERT_POLICY", "DELETE_ALERT_POLICY", "CREATE_ALERT_POLICY_RULE", "UPDATE_ALERT_POLICY_RULE", "DELETE_ALERT_POLICY_RULE", "CHANGE_ALERT_POLICY_COMPARTMENT", "UPDATE_TARGET_GROUP_AUDIT_PROFILE", "CREATE_ATTRIBUTE_SET", "UPDATE_ATTRIBUTE_SET", "DELETE_ATTRIBUTE_SET", "CHANGE_ATTRIBUTE_SET_COMPARTMENT", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type operation_type: str @@ -879,7 +883,7 @@ def operation_type(self): **[Required]** Gets the operation_type of this WorkRequest. The resources that are affected by the work request. - Allowed values for this property are: "ENABLE_DATA_SAFE_CONFIGURATION", "CREATE_PRIVATE_ENDPOINT", "UPDATE_PRIVATE_ENDPOINT", "DELETE_PRIVATE_ENDPOINT", "CHANGE_PRIVATE_ENDPOINT_COMPARTMENT", "CREATE_ONPREM_CONNECTOR", "UPDATE_ONPREM_CONNECTOR", "DELETE_ONPREM_CONNECTOR", "UPDATE_ONPREM_CONNECTOR_WALLET", "CHANGE_ONPREM_CONNECTOR_COMPARTMENT", "CREATE_TARGET_DATABASE", "UPDATE_TARGET_DATABASE", "ACTIVATE_TARGET_DATABASE", "DEACTIVATE_TARGET_DATABASE", "DELETE_TARGET_DATABASE", "CHANGE_TARGET_DATABASE_COMPARTMENT", "CREATE_PEER_TARGET_DATABASE", "UPDATE_PEER_TARGET_DATABASE", "DELETE_PEER_TARGET_DATABASE", "REFRESH_TARGET_DATABASE", "PROVISION_POLICY", "RETRIEVE_POLICY", "UPDATE_POLICY", "CHANGE_POLICY_COMPARTMENT", "CREATE_USER_ASSESSMENT", "ASSESS_USER_ASSESSMENT", "CREATE_SNAPSHOT_USER_ASSESSMENT", "CREATE_SCHEDULE_USER_ASSESSMENT", "COMPARE_WITH_BASELINE_USER_ASSESSMENT", "DELETE_USER_ASSESSMENT", "UPDATE_USER_ASSESSMENT", "CHANGE_USER_ASSESSMENT_COMPARTMENT", "SET_USER_ASSESSMENT_BASELINE", "UNSET_USER_ASSESSMENT_BASELINE", "GENERATE_USER_ASSESSMENT_REPORT", "CREATE_SECURITY_ASSESSMENT", "CREATE_SECURITY_ASSESSMENT_NOW", "ASSESS_SECURITY_ASSESSMENT", "CREATE_SNAPSHOT_SECURITY_ASSESSMENT", "CREATE_SCHEDULE_SECURITY_ASSESSMENT", "COMPARE_WITH_BASELINE_SECURITY_ASSESSMENT", "DELETE_SECURITY_ASSESSMENT", "UPDATE_SECURITY_ASSESSMENT", "PATCH_CHECKS", "UPDATE_FINDING_SEVERITY", "APPLY_TEMPLATE", "FLEET_GENERATE_SECURITY_ASSESSMENT_REPORT", "FLEET_GENERATE_USER_ASSESSMENT_REPORT", "REFRESH_TARGET_DATABASE_GROUP_WITH_CHANGES", "UPDATE_FINDING_RISK", "CHANGE_SECURITY_ASSESSMENT_COMPARTMENT", "SET_SECURITY_ASSESSMENT_BASELINE", "UNSET_SECURITY_ASSESSMENT_BASELINE", "GENERATE_SECURITY_ASSESSMENT_REPORT", "DELETE_SQL_FIREWALL_ALLOWED_SQL", "BULK_CREATE_SQL_FIREWALL_ALLOWED_SQL", "BULK_DELETE_SQL_FIREWALL_ALLOWED_SQL", "CREATE_AUDIT_PROFILE", "CALCULATE_VOLUME", "CALCULATE_COLLECTED_VOLUME", "CREATE_DB_SECURITY_CONFIG", "REFRESH_DB_SECURITY_CONFIG", "UPDATE_DB_SECURITY_CONFIG", "CHANGE_DB_SECURITY_CONFIG_COMPARTMENT", "GENERATE_FIREWALL_POLICY", "UPDATE_FIREWALL_POLICY", "CHANGE_FIREWALL_POLICY_COMPARTMENT", "DELETE_FIREWALL_POLICY", "CREATE_SQL_COLLECTION", "UPDATE_SQL_COLLECTION", "START_SQL_COLLECTION", "STOP_SQL_COLLECTION", "DELETE_SQL_COLLECTION", "CHANGE_SQL_COLLECTION_COMPARTMENT", "REFRESH_SQL_COLLECTION_LOG_INSIGHTS", "PURGE_SQL_COLLECTION_LOGS", "REFRESH_VIOLATIONS", "CREATE_ARCHIVAL", "CREATE_SECURITY_POLICY", "DELETE_SECURITY_POLICY", "SECURITY_POLICY_DEPLOYMENT_ACTIONS", "PROVISION_SECURITY_POLICY_DEPLOYMENT", "UPDATE_SECURITY_POLICY", "CHANGE_SECURITY_POLICY_COMPARTMENT", "UPDATE_SECURITY_POLICY_DEPLOYMENT", "CHANGE_SECURITY_POLICY_DEPLOYMENT_COMPARTMENT", "AUDIT_TRAIL", "DELETE_AUDIT_TRAIL", "DISCOVER_AUDIT_TRAILS", "UPDATE_AUDIT_TRAIL", "UPDATE_AUDIT_PROFILE", "AUDIT_CHANGE_COMPARTMENT", "CREATE_REPORT_DEFINITION", "UPDATE_REPORT_DEFINITION", "CHANGE_REPORT_DEFINITION_COMPARTMENT", "DELETE_REPORT_DEFINITION", "GENERATE_REPORT", "CHANGE_REPORT_COMPARTMENT", "DELETE_ARCHIVE_RETRIEVAL", "CREATE_ARCHIVE_RETRIEVAL", "UPDATE_ARCHIVE_RETRIEVAL", "CHANGE_ARCHIVE_RETRIEVAL_COMPARTMENT", "UPDATE_ALERT", "TARGET_ALERT_POLICY_ASSOCIATION", "CREATE_TARGET_DATABASE_GROUP", "UPDATE_TARGET_DATABASE_GROUP", "DELETE_TARGET_DATABASE_GROUP", "CHANGE_TARGET_DATABASE_GROUP_COMPARTMENT", "CREATE_SECURITY_POLICY_CONFIG", "UPDATE_SECURITY_POLICY_CONFIG", "DELETE_SECURITY_POLICY_CONFIG", "CHANGE_SECURITY_POLICY_CONFIG_COMPARTMENT", "CREATE_UNIFIED_AUDIT_POLICY", "UPDATE_UNIFIED_AUDIT_POLICY", "DELETE_UNIFIED_AUDIT_POLICY", "CHANGE_UNIFIED_AUDIT_POLICY_COMPARTMENT", "UPDATE_UNIFIED_AUDIT_POLICY_DEFINITION", "DELETE_UNIFIED_AUDIT_POLICY_DEFINITION", "CHANGE_UNIFIED_AUDIT_POLICY_DEFINITION_COMPARTMENT", "FETCH_AUDIT_POLICY_DETAILS", "BULK_CREATE_UNIFIED_AUDIT_POLICY", "CREATE_SENSITIVE_DATA_MODEL", "UPDATE_SENSITIVE_DATA_MODEL", "DELETE_SENSITIVE_DATA_MODEL", "UPLOAD_SENSITIVE_DATA_MODEL", "GENERATE_SENSITIVE_DATA_MODEL_FOR_DOWNLOAD", "CREATE_SENSITIVE_COLUMN", "UPDATE_SENSITIVE_COLUMN", "PATCH_SENSITIVE_COLUMNS", "CREATE_DISCOVERY_JOB", "DELETE_DISCOVERY_JOB", "PATCH_DISCOVERY_JOB_RESULT", "APPLY_DISCOVERY_JOB_RESULT", "GENERATE_DISCOVERY_REPORT", "CREATE_SENSITIVE_TYPE", "UPDATE_SENSITIVE_TYPE", "CREATE_MASKING_POLICY", "UPDATE_MASKING_POLICY", "DELETE_MASKING_POLICY", "UPLOAD_MASKING_POLICY", "GENERATE_MASKING_POLICY_FOR_DOWNLOAD", "CREATE_MASKING_COLUMN", "UPDATE_MASKING_COLUMN", "PATCH_MASKING_COLUMNS", "GENERATE_MASKING_REPORT", "CREATE_LIBRARY_MASKING_FORMAT", "UPDATE_LIBRARY_MASKING_FORMAT", "ADD_COLUMNS_FROM_SDM", "MASKING_JOB", "CREATE_DIFFERENCE", "DELETE_DIFFERENCE", "UPDATE_DIFFERENCE", "PATCH_DIFFERENCE", "APPLY_DIFFERENCE", "DELETE_MASKING_REPORT", "MASK_POLICY_GENERATE_HEALTH_REPORT", "MASK_POLICY_DELETE_HEALTH_REPORT", "CREATE_SENSITIVE_TYPES_EXPORT", "UPDATE_SENSITIVE_TYPES_EXPORT", "BULK_CREATE_SENSITIVE_TYPES", "CREATE_SENSITIVE_TYPE_GROUP", "UPDATE_SENSITIVE_TYPE_GROUP", "DELETE_SENSITIVE_TYPE_GROUP", "DELETE_SENSITIVE_TYPE", "PATCH_GROUPED_SENSITIVE_TYPES", "CREATE_RELATION", "DELETE_RELATION", "ABORT_MASKING", "CREATE_SECURITY_POLICY_REPORT", "REFRESH_SECURITY_POLICY_CACHE", "DELETE_SECURITY_POLICY_CACHE", "CREATE_SCHEDULE", "REMOVE_SCHEDULE_REPORT", "UPDATE_ALL_ALERT", "PATCH_TARGET_ALERT_POLICY_ASSOCIATION", "CREATE_ALERT_POLICY", "UPDATE_ALERT_POLICY", "DELETE_ALERT_POLICY", "CREATE_ALERT_POLICY_RULE", "UPDATE_ALERT_POLICY_RULE", "DELETE_ALERT_POLICY_RULE", "CHANGE_ALERT_POLICY_COMPARTMENT", "UPDATE_TARGET_GROUP_AUDIT_PROFILE", "CREATE_ATTRIBUTE_SET", "UPDATE_ATTRIBUTE_SET", "DELETE_ATTRIBUTE_SET", "CHANGE_ATTRIBUTE_SET_COMPARTMENT", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "ENABLE_DATA_SAFE_CONFIGURATION", "CREATE_PRIVATE_ENDPOINT", "UPDATE_PRIVATE_ENDPOINT", "DELETE_PRIVATE_ENDPOINT", "CHANGE_PRIVATE_ENDPOINT_COMPARTMENT", "CREATE_ONPREM_CONNECTOR", "UPDATE_ONPREM_CONNECTOR", "DELETE_ONPREM_CONNECTOR", "UPDATE_ONPREM_CONNECTOR_WALLET", "CHANGE_ONPREM_CONNECTOR_COMPARTMENT", "CREATE_TARGET_DATABASE", "UPDATE_TARGET_DATABASE", "ACTIVATE_TARGET_DATABASE", "DEACTIVATE_TARGET_DATABASE", "DELETE_TARGET_DATABASE", "CHANGE_TARGET_DATABASE_COMPARTMENT", "CREATE_PEER_TARGET_DATABASE", "UPDATE_PEER_TARGET_DATABASE", "DELETE_PEER_TARGET_DATABASE", "REFRESH_TARGET_DATABASE", "PROVISION_POLICY", "RETRIEVE_POLICY", "UPDATE_POLICY", "CHANGE_POLICY_COMPARTMENT", "CREATE_USER_ASSESSMENT", "ASSESS_USER_ASSESSMENT", "CREATE_SNAPSHOT_USER_ASSESSMENT", "CREATE_SCHEDULE_USER_ASSESSMENT", "COMPARE_WITH_BASELINE_USER_ASSESSMENT", "DELETE_USER_ASSESSMENT", "UPDATE_USER_ASSESSMENT", "CHANGE_USER_ASSESSMENT_COMPARTMENT", "SET_USER_ASSESSMENT_BASELINE", "UNSET_USER_ASSESSMENT_BASELINE", "GENERATE_USER_ASSESSMENT_REPORT", "CREATE_SECURITY_ASSESSMENT", "CREATE_SECURITY_ASSESSMENT_NOW", "ASSESS_SECURITY_ASSESSMENT", "CREATE_SNAPSHOT_SECURITY_ASSESSMENT", "CREATE_SCHEDULE_SECURITY_ASSESSMENT", "COMPARE_WITH_BASELINE_SECURITY_ASSESSMENT", "DELETE_SECURITY_ASSESSMENT", "UPDATE_SECURITY_ASSESSMENT", "PATCH_CHECKS", "UPDATE_FINDING_SEVERITY", "APPLY_TEMPLATE", "FLEET_GENERATE_SECURITY_ASSESSMENT_REPORT", "FLEET_GENERATE_USER_ASSESSMENT_REPORT", "REFRESH_TARGET_DATABASE_GROUP_WITH_CHANGES", "UPDATE_FINDING_RISK", "CHANGE_SECURITY_ASSESSMENT_COMPARTMENT", "SET_SECURITY_ASSESSMENT_BASELINE", "UNSET_SECURITY_ASSESSMENT_BASELINE", "GENERATE_SECURITY_ASSESSMENT_REPORT", "DELETE_SQL_FIREWALL_ALLOWED_SQL", "BULK_CREATE_SQL_FIREWALL_ALLOWED_SQL", "BULK_DELETE_SQL_FIREWALL_ALLOWED_SQL", "CREATE_AUDIT_PROFILE", "CALCULATE_VOLUME", "CALCULATE_COLLECTED_VOLUME", "CREATE_DB_SECURITY_CONFIG", "REFRESH_DB_SECURITY_CONFIG", "UPDATE_DB_SECURITY_CONFIG", "CHANGE_DB_SECURITY_CONFIG_COMPARTMENT", "GENERATE_FIREWALL_POLICY", "UPDATE_FIREWALL_POLICY", "CHANGE_FIREWALL_POLICY_COMPARTMENT", "DELETE_FIREWALL_POLICY", "CREATE_SQL_COLLECTION", "UPDATE_SQL_COLLECTION", "START_SQL_COLLECTION", "STOP_SQL_COLLECTION", "DELETE_SQL_COLLECTION", "CHANGE_SQL_COLLECTION_COMPARTMENT", "REFRESH_SQL_COLLECTION_LOG_INSIGHTS", "PURGE_SQL_COLLECTION_LOGS", "REFRESH_VIOLATIONS", "CREATE_ARCHIVAL", "CREATE_SECURITY_POLICY", "DELETE_SECURITY_POLICY", "SECURITY_POLICY_DEPLOYMENT_ACTIONS", "PROVISION_SECURITY_POLICY_DEPLOYMENT", "UPDATE_SECURITY_POLICY", "CHANGE_SECURITY_POLICY_COMPARTMENT", "UPDATE_SECURITY_POLICY_DEPLOYMENT", "CHANGE_SECURITY_POLICY_DEPLOYMENT_COMPARTMENT", "AUDIT_TRAIL", "DELETE_AUDIT_TRAIL", "DISCOVER_AUDIT_TRAILS", "UPDATE_AUDIT_TRAIL", "UPDATE_AUDIT_PROFILE", "AUDIT_CHANGE_COMPARTMENT", "CREATE_REPORT_DEFINITION", "UPDATE_REPORT_DEFINITION", "CHANGE_REPORT_DEFINITION_COMPARTMENT", "DELETE_REPORT_DEFINITION", "GENERATE_REPORT", "GENERATE_PAGINATED_REPORT", "CHANGE_REPORT_COMPARTMENT", "DELETE_ARCHIVE_RETRIEVAL", "CREATE_ARCHIVE_RETRIEVAL", "UPDATE_ARCHIVE_RETRIEVAL", "CHANGE_ARCHIVE_RETRIEVAL_COMPARTMENT", "UPDATE_ALERT", "TARGET_ALERT_POLICY_ASSOCIATION", "CREATE_TARGET_DATABASE_GROUP", "UPDATE_TARGET_DATABASE_GROUP", "DELETE_TARGET_DATABASE_GROUP", "CHANGE_TARGET_DATABASE_GROUP_COMPARTMENT", "CREATE_SECURITY_POLICY_CONFIG", "UPDATE_SECURITY_POLICY_CONFIG", "DELETE_SECURITY_POLICY_CONFIG", "CHANGE_SECURITY_POLICY_CONFIG_COMPARTMENT", "CREATE_UNIFIED_AUDIT_POLICY", "UPDATE_UNIFIED_AUDIT_POLICY", "DELETE_UNIFIED_AUDIT_POLICY", "CHANGE_UNIFIED_AUDIT_POLICY_COMPARTMENT", "UPDATE_UNIFIED_AUDIT_POLICY_DEFINITION", "DELETE_UNIFIED_AUDIT_POLICY_DEFINITION", "CHANGE_UNIFIED_AUDIT_POLICY_DEFINITION_COMPARTMENT", "FETCH_AUDIT_POLICY_DETAILS", "BULK_CREATE_UNIFIED_AUDIT_POLICY", "CREATE_SENSITIVE_DATA_MODEL", "UPDATE_SENSITIVE_DATA_MODEL", "DELETE_SENSITIVE_DATA_MODEL", "UPLOAD_SENSITIVE_DATA_MODEL", "GENERATE_SENSITIVE_DATA_MODEL_FOR_DOWNLOAD", "CREATE_SENSITIVE_COLUMN", "UPDATE_SENSITIVE_COLUMN", "PATCH_SENSITIVE_COLUMNS", "CREATE_DISCOVERY_JOB", "DELETE_DISCOVERY_JOB", "PATCH_DISCOVERY_JOB_RESULT", "APPLY_DISCOVERY_JOB_RESULT", "GENERATE_DISCOVERY_REPORT", "CREATE_SENSITIVE_TYPE", "UPDATE_SENSITIVE_TYPE", "CREATE_MASKING_POLICY", "UPDATE_MASKING_POLICY", "DELETE_MASKING_POLICY", "UPLOAD_MASKING_POLICY", "GENERATE_MASKING_POLICY_FOR_DOWNLOAD", "CREATE_MASKING_COLUMN", "UPDATE_MASKING_COLUMN", "PATCH_MASKING_COLUMNS", "GENERATE_MASKING_REPORT", "CREATE_LIBRARY_MASKING_FORMAT", "UPDATE_LIBRARY_MASKING_FORMAT", "ADD_COLUMNS_FROM_SDM", "MASKING_JOB", "CREATE_DIFFERENCE", "DELETE_DIFFERENCE", "UPDATE_DIFFERENCE", "PATCH_DIFFERENCE", "APPLY_DIFFERENCE", "DELETE_MASKING_REPORT", "MASK_POLICY_GENERATE_HEALTH_REPORT", "MASK_POLICY_DELETE_HEALTH_REPORT", "CREATE_SENSITIVE_TYPES_EXPORT", "UPDATE_SENSITIVE_TYPES_EXPORT", "BULK_CREATE_SENSITIVE_TYPES", "CREATE_SENSITIVE_TYPE_GROUP", "UPDATE_SENSITIVE_TYPE_GROUP", "DELETE_SENSITIVE_TYPE_GROUP", "DELETE_SENSITIVE_TYPE", "PATCH_GROUPED_SENSITIVE_TYPES", "CREATE_RELATION", "DELETE_RELATION", "ABORT_MASKING", "CREATE_SECURITY_POLICY_REPORT", "REFRESH_SECURITY_POLICY_CACHE", "DELETE_SECURITY_POLICY_CACHE", "CREATE_SCHEDULE", "REMOVE_SCHEDULE_REPORT", "UPDATE_ALL_ALERT", "PATCH_TARGET_ALERT_POLICY_ASSOCIATION", "CREATE_ALERT_POLICY", "UPDATE_ALERT_POLICY", "DELETE_ALERT_POLICY", "CREATE_ALERT_POLICY_RULE", "UPDATE_ALERT_POLICY_RULE", "DELETE_ALERT_POLICY_RULE", "CHANGE_ALERT_POLICY_COMPARTMENT", "UPDATE_TARGET_GROUP_AUDIT_PROFILE", "CREATE_ATTRIBUTE_SET", "UPDATE_ATTRIBUTE_SET", "DELETE_ATTRIBUTE_SET", "CHANGE_ATTRIBUTE_SET_COMPARTMENT", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -898,7 +902,7 @@ def operation_type(self, operation_type): :param operation_type: The operation_type of this WorkRequest. :type: str """ - allowed_values = ["ENABLE_DATA_SAFE_CONFIGURATION", "CREATE_PRIVATE_ENDPOINT", "UPDATE_PRIVATE_ENDPOINT", "DELETE_PRIVATE_ENDPOINT", "CHANGE_PRIVATE_ENDPOINT_COMPARTMENT", "CREATE_ONPREM_CONNECTOR", "UPDATE_ONPREM_CONNECTOR", "DELETE_ONPREM_CONNECTOR", "UPDATE_ONPREM_CONNECTOR_WALLET", "CHANGE_ONPREM_CONNECTOR_COMPARTMENT", "CREATE_TARGET_DATABASE", "UPDATE_TARGET_DATABASE", "ACTIVATE_TARGET_DATABASE", "DEACTIVATE_TARGET_DATABASE", "DELETE_TARGET_DATABASE", "CHANGE_TARGET_DATABASE_COMPARTMENT", "CREATE_PEER_TARGET_DATABASE", "UPDATE_PEER_TARGET_DATABASE", "DELETE_PEER_TARGET_DATABASE", "REFRESH_TARGET_DATABASE", "PROVISION_POLICY", "RETRIEVE_POLICY", "UPDATE_POLICY", "CHANGE_POLICY_COMPARTMENT", "CREATE_USER_ASSESSMENT", "ASSESS_USER_ASSESSMENT", "CREATE_SNAPSHOT_USER_ASSESSMENT", "CREATE_SCHEDULE_USER_ASSESSMENT", "COMPARE_WITH_BASELINE_USER_ASSESSMENT", "DELETE_USER_ASSESSMENT", "UPDATE_USER_ASSESSMENT", "CHANGE_USER_ASSESSMENT_COMPARTMENT", "SET_USER_ASSESSMENT_BASELINE", "UNSET_USER_ASSESSMENT_BASELINE", "GENERATE_USER_ASSESSMENT_REPORT", "CREATE_SECURITY_ASSESSMENT", "CREATE_SECURITY_ASSESSMENT_NOW", "ASSESS_SECURITY_ASSESSMENT", "CREATE_SNAPSHOT_SECURITY_ASSESSMENT", "CREATE_SCHEDULE_SECURITY_ASSESSMENT", "COMPARE_WITH_BASELINE_SECURITY_ASSESSMENT", "DELETE_SECURITY_ASSESSMENT", "UPDATE_SECURITY_ASSESSMENT", "PATCH_CHECKS", "UPDATE_FINDING_SEVERITY", "APPLY_TEMPLATE", "FLEET_GENERATE_SECURITY_ASSESSMENT_REPORT", "FLEET_GENERATE_USER_ASSESSMENT_REPORT", "REFRESH_TARGET_DATABASE_GROUP_WITH_CHANGES", "UPDATE_FINDING_RISK", "CHANGE_SECURITY_ASSESSMENT_COMPARTMENT", "SET_SECURITY_ASSESSMENT_BASELINE", "UNSET_SECURITY_ASSESSMENT_BASELINE", "GENERATE_SECURITY_ASSESSMENT_REPORT", "DELETE_SQL_FIREWALL_ALLOWED_SQL", "BULK_CREATE_SQL_FIREWALL_ALLOWED_SQL", "BULK_DELETE_SQL_FIREWALL_ALLOWED_SQL", "CREATE_AUDIT_PROFILE", "CALCULATE_VOLUME", "CALCULATE_COLLECTED_VOLUME", "CREATE_DB_SECURITY_CONFIG", "REFRESH_DB_SECURITY_CONFIG", "UPDATE_DB_SECURITY_CONFIG", "CHANGE_DB_SECURITY_CONFIG_COMPARTMENT", "GENERATE_FIREWALL_POLICY", "UPDATE_FIREWALL_POLICY", "CHANGE_FIREWALL_POLICY_COMPARTMENT", "DELETE_FIREWALL_POLICY", "CREATE_SQL_COLLECTION", "UPDATE_SQL_COLLECTION", "START_SQL_COLLECTION", "STOP_SQL_COLLECTION", "DELETE_SQL_COLLECTION", "CHANGE_SQL_COLLECTION_COMPARTMENT", "REFRESH_SQL_COLLECTION_LOG_INSIGHTS", "PURGE_SQL_COLLECTION_LOGS", "REFRESH_VIOLATIONS", "CREATE_ARCHIVAL", "CREATE_SECURITY_POLICY", "DELETE_SECURITY_POLICY", "SECURITY_POLICY_DEPLOYMENT_ACTIONS", "PROVISION_SECURITY_POLICY_DEPLOYMENT", "UPDATE_SECURITY_POLICY", "CHANGE_SECURITY_POLICY_COMPARTMENT", "UPDATE_SECURITY_POLICY_DEPLOYMENT", "CHANGE_SECURITY_POLICY_DEPLOYMENT_COMPARTMENT", "AUDIT_TRAIL", "DELETE_AUDIT_TRAIL", "DISCOVER_AUDIT_TRAILS", "UPDATE_AUDIT_TRAIL", "UPDATE_AUDIT_PROFILE", "AUDIT_CHANGE_COMPARTMENT", "CREATE_REPORT_DEFINITION", "UPDATE_REPORT_DEFINITION", "CHANGE_REPORT_DEFINITION_COMPARTMENT", "DELETE_REPORT_DEFINITION", "GENERATE_REPORT", "CHANGE_REPORT_COMPARTMENT", "DELETE_ARCHIVE_RETRIEVAL", "CREATE_ARCHIVE_RETRIEVAL", "UPDATE_ARCHIVE_RETRIEVAL", "CHANGE_ARCHIVE_RETRIEVAL_COMPARTMENT", "UPDATE_ALERT", "TARGET_ALERT_POLICY_ASSOCIATION", "CREATE_TARGET_DATABASE_GROUP", "UPDATE_TARGET_DATABASE_GROUP", "DELETE_TARGET_DATABASE_GROUP", "CHANGE_TARGET_DATABASE_GROUP_COMPARTMENT", "CREATE_SECURITY_POLICY_CONFIG", "UPDATE_SECURITY_POLICY_CONFIG", "DELETE_SECURITY_POLICY_CONFIG", "CHANGE_SECURITY_POLICY_CONFIG_COMPARTMENT", "CREATE_UNIFIED_AUDIT_POLICY", "UPDATE_UNIFIED_AUDIT_POLICY", "DELETE_UNIFIED_AUDIT_POLICY", "CHANGE_UNIFIED_AUDIT_POLICY_COMPARTMENT", "UPDATE_UNIFIED_AUDIT_POLICY_DEFINITION", "DELETE_UNIFIED_AUDIT_POLICY_DEFINITION", "CHANGE_UNIFIED_AUDIT_POLICY_DEFINITION_COMPARTMENT", "FETCH_AUDIT_POLICY_DETAILS", "BULK_CREATE_UNIFIED_AUDIT_POLICY", "CREATE_SENSITIVE_DATA_MODEL", "UPDATE_SENSITIVE_DATA_MODEL", "DELETE_SENSITIVE_DATA_MODEL", "UPLOAD_SENSITIVE_DATA_MODEL", "GENERATE_SENSITIVE_DATA_MODEL_FOR_DOWNLOAD", "CREATE_SENSITIVE_COLUMN", "UPDATE_SENSITIVE_COLUMN", "PATCH_SENSITIVE_COLUMNS", "CREATE_DISCOVERY_JOB", "DELETE_DISCOVERY_JOB", "PATCH_DISCOVERY_JOB_RESULT", "APPLY_DISCOVERY_JOB_RESULT", "GENERATE_DISCOVERY_REPORT", "CREATE_SENSITIVE_TYPE", "UPDATE_SENSITIVE_TYPE", "CREATE_MASKING_POLICY", "UPDATE_MASKING_POLICY", "DELETE_MASKING_POLICY", "UPLOAD_MASKING_POLICY", "GENERATE_MASKING_POLICY_FOR_DOWNLOAD", "CREATE_MASKING_COLUMN", "UPDATE_MASKING_COLUMN", "PATCH_MASKING_COLUMNS", "GENERATE_MASKING_REPORT", "CREATE_LIBRARY_MASKING_FORMAT", "UPDATE_LIBRARY_MASKING_FORMAT", "ADD_COLUMNS_FROM_SDM", "MASKING_JOB", "CREATE_DIFFERENCE", "DELETE_DIFFERENCE", "UPDATE_DIFFERENCE", "PATCH_DIFFERENCE", "APPLY_DIFFERENCE", "DELETE_MASKING_REPORT", "MASK_POLICY_GENERATE_HEALTH_REPORT", "MASK_POLICY_DELETE_HEALTH_REPORT", "CREATE_SENSITIVE_TYPES_EXPORT", "UPDATE_SENSITIVE_TYPES_EXPORT", "BULK_CREATE_SENSITIVE_TYPES", "CREATE_SENSITIVE_TYPE_GROUP", "UPDATE_SENSITIVE_TYPE_GROUP", "DELETE_SENSITIVE_TYPE_GROUP", "DELETE_SENSITIVE_TYPE", "PATCH_GROUPED_SENSITIVE_TYPES", "CREATE_RELATION", "DELETE_RELATION", "ABORT_MASKING", "CREATE_SECURITY_POLICY_REPORT", "REFRESH_SECURITY_POLICY_CACHE", "DELETE_SECURITY_POLICY_CACHE", "CREATE_SCHEDULE", "REMOVE_SCHEDULE_REPORT", "UPDATE_ALL_ALERT", "PATCH_TARGET_ALERT_POLICY_ASSOCIATION", "CREATE_ALERT_POLICY", "UPDATE_ALERT_POLICY", "DELETE_ALERT_POLICY", "CREATE_ALERT_POLICY_RULE", "UPDATE_ALERT_POLICY_RULE", "DELETE_ALERT_POLICY_RULE", "CHANGE_ALERT_POLICY_COMPARTMENT", "UPDATE_TARGET_GROUP_AUDIT_PROFILE", "CREATE_ATTRIBUTE_SET", "UPDATE_ATTRIBUTE_SET", "DELETE_ATTRIBUTE_SET", "CHANGE_ATTRIBUTE_SET_COMPARTMENT"] + allowed_values = ["ENABLE_DATA_SAFE_CONFIGURATION", "CREATE_PRIVATE_ENDPOINT", "UPDATE_PRIVATE_ENDPOINT", "DELETE_PRIVATE_ENDPOINT", "CHANGE_PRIVATE_ENDPOINT_COMPARTMENT", "CREATE_ONPREM_CONNECTOR", "UPDATE_ONPREM_CONNECTOR", "DELETE_ONPREM_CONNECTOR", "UPDATE_ONPREM_CONNECTOR_WALLET", "CHANGE_ONPREM_CONNECTOR_COMPARTMENT", "CREATE_TARGET_DATABASE", "UPDATE_TARGET_DATABASE", "ACTIVATE_TARGET_DATABASE", "DEACTIVATE_TARGET_DATABASE", "DELETE_TARGET_DATABASE", "CHANGE_TARGET_DATABASE_COMPARTMENT", "CREATE_PEER_TARGET_DATABASE", "UPDATE_PEER_TARGET_DATABASE", "DELETE_PEER_TARGET_DATABASE", "REFRESH_TARGET_DATABASE", "PROVISION_POLICY", "RETRIEVE_POLICY", "UPDATE_POLICY", "CHANGE_POLICY_COMPARTMENT", "CREATE_USER_ASSESSMENT", "ASSESS_USER_ASSESSMENT", "CREATE_SNAPSHOT_USER_ASSESSMENT", "CREATE_SCHEDULE_USER_ASSESSMENT", "COMPARE_WITH_BASELINE_USER_ASSESSMENT", "DELETE_USER_ASSESSMENT", "UPDATE_USER_ASSESSMENT", "CHANGE_USER_ASSESSMENT_COMPARTMENT", "SET_USER_ASSESSMENT_BASELINE", "UNSET_USER_ASSESSMENT_BASELINE", "GENERATE_USER_ASSESSMENT_REPORT", "CREATE_SECURITY_ASSESSMENT", "CREATE_SECURITY_ASSESSMENT_NOW", "ASSESS_SECURITY_ASSESSMENT", "CREATE_SNAPSHOT_SECURITY_ASSESSMENT", "CREATE_SCHEDULE_SECURITY_ASSESSMENT", "COMPARE_WITH_BASELINE_SECURITY_ASSESSMENT", "DELETE_SECURITY_ASSESSMENT", "UPDATE_SECURITY_ASSESSMENT", "PATCH_CHECKS", "UPDATE_FINDING_SEVERITY", "APPLY_TEMPLATE", "FLEET_GENERATE_SECURITY_ASSESSMENT_REPORT", "FLEET_GENERATE_USER_ASSESSMENT_REPORT", "REFRESH_TARGET_DATABASE_GROUP_WITH_CHANGES", "UPDATE_FINDING_RISK", "CHANGE_SECURITY_ASSESSMENT_COMPARTMENT", "SET_SECURITY_ASSESSMENT_BASELINE", "UNSET_SECURITY_ASSESSMENT_BASELINE", "GENERATE_SECURITY_ASSESSMENT_REPORT", "DELETE_SQL_FIREWALL_ALLOWED_SQL", "BULK_CREATE_SQL_FIREWALL_ALLOWED_SQL", "BULK_DELETE_SQL_FIREWALL_ALLOWED_SQL", "CREATE_AUDIT_PROFILE", "CALCULATE_VOLUME", "CALCULATE_COLLECTED_VOLUME", "CREATE_DB_SECURITY_CONFIG", "REFRESH_DB_SECURITY_CONFIG", "UPDATE_DB_SECURITY_CONFIG", "CHANGE_DB_SECURITY_CONFIG_COMPARTMENT", "GENERATE_FIREWALL_POLICY", "UPDATE_FIREWALL_POLICY", "CHANGE_FIREWALL_POLICY_COMPARTMENT", "DELETE_FIREWALL_POLICY", "CREATE_SQL_COLLECTION", "UPDATE_SQL_COLLECTION", "START_SQL_COLLECTION", "STOP_SQL_COLLECTION", "DELETE_SQL_COLLECTION", "CHANGE_SQL_COLLECTION_COMPARTMENT", "REFRESH_SQL_COLLECTION_LOG_INSIGHTS", "PURGE_SQL_COLLECTION_LOGS", "REFRESH_VIOLATIONS", "CREATE_ARCHIVAL", "CREATE_SECURITY_POLICY", "DELETE_SECURITY_POLICY", "SECURITY_POLICY_DEPLOYMENT_ACTIONS", "PROVISION_SECURITY_POLICY_DEPLOYMENT", "UPDATE_SECURITY_POLICY", "CHANGE_SECURITY_POLICY_COMPARTMENT", "UPDATE_SECURITY_POLICY_DEPLOYMENT", "CHANGE_SECURITY_POLICY_DEPLOYMENT_COMPARTMENT", "AUDIT_TRAIL", "DELETE_AUDIT_TRAIL", "DISCOVER_AUDIT_TRAILS", "UPDATE_AUDIT_TRAIL", "UPDATE_AUDIT_PROFILE", "AUDIT_CHANGE_COMPARTMENT", "CREATE_REPORT_DEFINITION", "UPDATE_REPORT_DEFINITION", "CHANGE_REPORT_DEFINITION_COMPARTMENT", "DELETE_REPORT_DEFINITION", "GENERATE_REPORT", "GENERATE_PAGINATED_REPORT", "CHANGE_REPORT_COMPARTMENT", "DELETE_ARCHIVE_RETRIEVAL", "CREATE_ARCHIVE_RETRIEVAL", "UPDATE_ARCHIVE_RETRIEVAL", "CHANGE_ARCHIVE_RETRIEVAL_COMPARTMENT", "UPDATE_ALERT", "TARGET_ALERT_POLICY_ASSOCIATION", "CREATE_TARGET_DATABASE_GROUP", "UPDATE_TARGET_DATABASE_GROUP", "DELETE_TARGET_DATABASE_GROUP", "CHANGE_TARGET_DATABASE_GROUP_COMPARTMENT", "CREATE_SECURITY_POLICY_CONFIG", "UPDATE_SECURITY_POLICY_CONFIG", "DELETE_SECURITY_POLICY_CONFIG", "CHANGE_SECURITY_POLICY_CONFIG_COMPARTMENT", "CREATE_UNIFIED_AUDIT_POLICY", "UPDATE_UNIFIED_AUDIT_POLICY", "DELETE_UNIFIED_AUDIT_POLICY", "CHANGE_UNIFIED_AUDIT_POLICY_COMPARTMENT", "UPDATE_UNIFIED_AUDIT_POLICY_DEFINITION", "DELETE_UNIFIED_AUDIT_POLICY_DEFINITION", "CHANGE_UNIFIED_AUDIT_POLICY_DEFINITION_COMPARTMENT", "FETCH_AUDIT_POLICY_DETAILS", "BULK_CREATE_UNIFIED_AUDIT_POLICY", "CREATE_SENSITIVE_DATA_MODEL", "UPDATE_SENSITIVE_DATA_MODEL", "DELETE_SENSITIVE_DATA_MODEL", "UPLOAD_SENSITIVE_DATA_MODEL", "GENERATE_SENSITIVE_DATA_MODEL_FOR_DOWNLOAD", "CREATE_SENSITIVE_COLUMN", "UPDATE_SENSITIVE_COLUMN", "PATCH_SENSITIVE_COLUMNS", "CREATE_DISCOVERY_JOB", "DELETE_DISCOVERY_JOB", "PATCH_DISCOVERY_JOB_RESULT", "APPLY_DISCOVERY_JOB_RESULT", "GENERATE_DISCOVERY_REPORT", "CREATE_SENSITIVE_TYPE", "UPDATE_SENSITIVE_TYPE", "CREATE_MASKING_POLICY", "UPDATE_MASKING_POLICY", "DELETE_MASKING_POLICY", "UPLOAD_MASKING_POLICY", "GENERATE_MASKING_POLICY_FOR_DOWNLOAD", "CREATE_MASKING_COLUMN", "UPDATE_MASKING_COLUMN", "PATCH_MASKING_COLUMNS", "GENERATE_MASKING_REPORT", "CREATE_LIBRARY_MASKING_FORMAT", "UPDATE_LIBRARY_MASKING_FORMAT", "ADD_COLUMNS_FROM_SDM", "MASKING_JOB", "CREATE_DIFFERENCE", "DELETE_DIFFERENCE", "UPDATE_DIFFERENCE", "PATCH_DIFFERENCE", "APPLY_DIFFERENCE", "DELETE_MASKING_REPORT", "MASK_POLICY_GENERATE_HEALTH_REPORT", "MASK_POLICY_DELETE_HEALTH_REPORT", "CREATE_SENSITIVE_TYPES_EXPORT", "UPDATE_SENSITIVE_TYPES_EXPORT", "BULK_CREATE_SENSITIVE_TYPES", "CREATE_SENSITIVE_TYPE_GROUP", "UPDATE_SENSITIVE_TYPE_GROUP", "DELETE_SENSITIVE_TYPE_GROUP", "DELETE_SENSITIVE_TYPE", "PATCH_GROUPED_SENSITIVE_TYPES", "CREATE_RELATION", "DELETE_RELATION", "ABORT_MASKING", "CREATE_SECURITY_POLICY_REPORT", "REFRESH_SECURITY_POLICY_CACHE", "DELETE_SECURITY_POLICY_CACHE", "CREATE_SCHEDULE", "REMOVE_SCHEDULE_REPORT", "UPDATE_ALL_ALERT", "PATCH_TARGET_ALERT_POLICY_ASSOCIATION", "CREATE_ALERT_POLICY", "UPDATE_ALERT_POLICY", "DELETE_ALERT_POLICY", "CREATE_ALERT_POLICY_RULE", "UPDATE_ALERT_POLICY_RULE", "DELETE_ALERT_POLICY_RULE", "CHANGE_ALERT_POLICY_COMPARTMENT", "UPDATE_TARGET_GROUP_AUDIT_PROFILE", "CREATE_ATTRIBUTE_SET", "UPDATE_ATTRIBUTE_SET", "DELETE_ATTRIBUTE_SET", "CHANGE_ATTRIBUTE_SET_COMPARTMENT"] if not value_allowed_none_or_none_sentinel(operation_type, allowed_values): operation_type = 'UNKNOWN_ENUM_VALUE' self._operation_type = operation_type diff --git a/src/oci/data_safe/models/work_request_summary.py b/src/oci/data_safe/models/work_request_summary.py index 5a4dce3644..44d4099a31 100644 --- a/src/oci/data_safe/models/work_request_summary.py +++ b/src/oci/data_safe/models/work_request_summary.py @@ -379,6 +379,10 @@ class WorkRequestSummary(object): #: This constant has a value of "GENERATE_REPORT" OPERATION_TYPE_GENERATE_REPORT = "GENERATE_REPORT" + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "GENERATE_PAGINATED_REPORT" + OPERATION_TYPE_GENERATE_PAGINATED_REPORT = "GENERATE_PAGINATED_REPORT" + #: A constant which can be used with the operation_type property of a WorkRequestSummary. #: This constant has a value of "CHANGE_REPORT_COMPARTMENT" OPERATION_TYPE_CHANGE_REPORT_COMPARTMENT = "CHANGE_REPORT_COMPARTMENT" @@ -798,7 +802,7 @@ def __init__(self, **kwargs): :param operation_type: The value to assign to the operation_type property of this WorkRequestSummary. - Allowed values for this property are: "ENABLE_DATA_SAFE_CONFIGURATION", "CREATE_PRIVATE_ENDPOINT", "UPDATE_PRIVATE_ENDPOINT", "DELETE_PRIVATE_ENDPOINT", "CHANGE_PRIVATE_ENDPOINT_COMPARTMENT", "CREATE_ONPREM_CONNECTOR", "UPDATE_ONPREM_CONNECTOR", "DELETE_ONPREM_CONNECTOR", "UPDATE_ONPREM_CONNECTOR_WALLET", "CHANGE_ONPREM_CONNECTOR_COMPARTMENT", "PROVISION_POLICY", "RETRIEVE_POLICY", "UPDATE_POLICY", "CHANGE_POLICY_COMPARTMENT", "CREATE_TARGET_DATABASE", "UPDATE_TARGET_DATABASE", "ACTIVATE_TARGET_DATABASE", "DEACTIVATE_TARGET_DATABASE", "DELETE_TARGET_DATABASE", "CHANGE_TARGET_DATABASE_COMPARTMENT", "CREATE_PEER_TARGET_DATABASE", "UPDATE_PEER_TARGET_DATABASE", "DELETE_PEER_TARGET_DATABASE", "REFRESH_TARGET_DATABASE", "CREATE_USER_ASSESSMENT", "ASSESS_USER_ASSESSMENT", "CREATE_SNAPSHOT_USER_ASSESSMENT", "CREATE_SCHEDULE_USER_ASSESSMENT", "COMPARE_WITH_BASELINE_USER_ASSESSMENT", "DELETE_USER_ASSESSMENT", "UPDATE_USER_ASSESSMENT", "CHANGE_USER_ASSESSMENT_COMPARTMENT", "SET_USER_ASSESSMENT_BASELINE", "UNSET_USER_ASSESSMENT_BASELINE", "GENERATE_USER_ASSESSMENT_REPORT", "CREATE_SECURITY_ASSESSMENT", "CREATE_SECURITY_ASSESSMENT_NOW", "ASSESS_SECURITY_ASSESSMENT", "CREATE_SNAPSHOT_SECURITY_ASSESSMENT", "CREATE_SCHEDULE_SECURITY_ASSESSMENT", "COMPARE_WITH_BASELINE_SECURITY_ASSESSMENT", "DELETE_SECURITY_ASSESSMENT", "UPDATE_SECURITY_ASSESSMENT", "UPDATE_FINDING_RISK", "CHANGE_SECURITY_ASSESSMENT_COMPARTMENT", "SET_SECURITY_ASSESSMENT_BASELINE", "UNSET_SECURITY_ASSESSMENT_BASELINE", "GENERATE_SECURITY_ASSESSMENT_REPORT", "PATCH_CHECKS", "UPDATE_FINDING_SEVERITY", "APPLY_TEMPLATE", "DELETE_SQL_FIREWALL_ALLOWED_SQL", "BULK_CREATE_SQL_FIREWALL_ALLOWED_SQL", "BULK_DELETE_SQL_FIREWALL_ALLOWED_SQL", "CALCULATE_VOLUME", "CALCULATE_COLLECTED_VOLUME", "CREATE_DB_SECURITY_CONFIG", "REFRESH_DB_SECURITY_CONFIG", "UPDATE_DB_SECURITY_CONFIG", "CHANGE_DB_SECURITY_CONFIG_COMPARTMENT", "GENERATE_FIREWALL_POLICY", "UPDATE_FIREWALL_POLICY", "CHANGE_FIREWALL_POLICY_COMPARTMENT", "DELETE_FIREWALL_POLICY", "CREATE_SQL_COLLECTION", "UPDATE_SQL_COLLECTION", "START_SQL_COLLECTION", "STOP_SQL_COLLECTION", "DELETE_SQL_COLLECTION", "CHANGE_SQL_COLLECTION_COMPARTMENT", "REFRESH_SQL_COLLECTION_LOG_INSIGHTS", "PURGE_SQL_COLLECTION_LOGS", "REFRESH_VIOLATIONS", "CREATE_ARCHIVAL", "CREATE_SECURITY_POLICY", "DELETE_SECURITY_POLICY", "UPDATE_SECURITY_POLICY", "CHANGE_SECURITY_POLICY_COMPARTMENT", "UPDATE_SECURITY_POLICY_DEPLOYMENT", "CHANGE_SECURITY_POLICY_DEPLOYMENT_COMPARTMENT", "AUDIT_TRAIL", "DELETE_AUDIT_TRAIL", "DISCOVER_AUDIT_TRAILS", "UPDATE_AUDIT_TRAIL", "UPDATE_AUDIT_PROFILE", "AUDIT_CHANGE_COMPARTMENT", "CREATE_REPORT_DEFINITION", "UPDATE_REPORT_DEFINITION", "CHANGE_REPORT_DEFINITION_COMPARTMENT", "DELETE_REPORT_DEFINITION", "GENERATE_REPORT", "CHANGE_REPORT_COMPARTMENT", "DELETE_ARCHIVE_RETRIEVAL", "CREATE_ARCHIVE_RETRIEVAL", "UPDATE_ARCHIVE_RETRIEVAL", "CHANGE_ARCHIVE_RETRIEVAL_COMPARTMENT", "UPDATE_ALERT", "TARGET_ALERT_POLICY_ASSOCIATION", "CREATE_TARGET_DATABASE_GROUP", "UPDATE_TARGET_DATABASE_GROUP", "DELETE_TARGET_DATABASE_GROUP", "CHANGE_TARGET_DATABASE_GROUP_COMPARTMENT", "CREATE_SECURITY_POLICY_CONFIG", "UPDATE_SECURITY_POLICY_CONFIG", "DELETE_SECURITY_POLICY_CONFIG", "CHANGE_SECURITY_POLICY_CONFIG_COMPARTMENT", "CREATE_UNIFIED_AUDIT_POLICY", "UPDATE_UNIFIED_AUDIT_POLICY", "DELETE_UNIFIED_AUDIT_POLICY", "CHANGE_UNIFIED_AUDIT_POLICY_COMPARTMENT", "UPDATE_UNIFIED_AUDIT_POLICY_DEFINITION", "DELETE_UNIFIED_AUDIT_POLICY_DEFINITION", "CHANGE_UNIFIED_AUDIT_POLICY_DEFINITION_COMPARTMENT", "FLEET_GENERATE_SECURITY_ASSESSMENT_REPORT", "FLEET_GENERATE_USER_ASSESSMENT_REPORT", "REFRESH_TARGET_DATABASE_GROUP_WITH_CHANGES", "FETCH_AUDIT_POLICY_DETAILS", "BULK_CREATE_UNIFIED_AUDIT_POLICY", "SECURITY_POLICY_DEPLOYMENT_ACTIONS", "PROVISION_SECURITY_POLICY_DEPLOYMENT", "CREATE_SENSITIVE_DATA_MODEL", "UPDATE_SENSITIVE_DATA_MODEL", "DELETE_SENSITIVE_DATA_MODEL", "UPLOAD_SENSITIVE_DATA_MODEL", "GENERATE_SENSITIVE_DATA_MODEL_FOR_DOWNLOAD", "CREATE_SENSITIVE_COLUMN", "UPDATE_SENSITIVE_COLUMN", "PATCH_SENSITIVE_COLUMNS", "CREATE_DISCOVERY_JOB", "DELETE_DISCOVERY_JOB", "PATCH_DISCOVERY_JOB_RESULT", "APPLY_DISCOVERY_JOB_RESULT", "GENERATE_DISCOVERY_REPORT", "CREATE_SENSITIVE_TYPE", "UPDATE_SENSITIVE_TYPE", "CREATE_MASKING_POLICY", "UPDATE_MASKING_POLICY", "DELETE_MASKING_POLICY", "UPLOAD_MASKING_POLICY", "GENERATE_MASKING_POLICY_FOR_DOWNLOAD", "CREATE_MASKING_COLUMN", "UPDATE_MASKING_COLUMN", "PATCH_MASKING_COLUMNS", "GENERATE_MASKING_REPORT", "CREATE_LIBRARY_MASKING_FORMAT", "UPDATE_LIBRARY_MASKING_FORMAT", "ADD_COLUMNS_FROM_SDM", "MASKING_JOB", "CREATE_DIFFERENCE", "DELETE_DIFFERENCE", "UPDATE_DIFFERENCE", "PATCH_DIFFERENCE", "APPLY_DIFFERENCE", "DELETE_MASKING_REPORT", "MASK_POLICY_GENERATE_HEALTH_REPORT", "MASK_POLICY_DELETE_HEALTH_REPORT", "CREATE_SENSITIVE_TYPES_EXPORT", "UPDATE_SENSITIVE_TYPES_EXPORT", "BULK_CREATE_SENSITIVE_TYPES", "CREATE_SENSITIVE_TYPE_GROUP", "UPDATE_SENSITIVE_TYPE_GROUP", "DELETE_SENSITIVE_TYPE_GROUP", "DELETE_SENSITIVE_TYPE", "PATCH_GROUPED_SENSITIVE_TYPES", "CREATE_RELATION", "DELETE_RELATION", "ABORT_MASKING", "CREATE_SECURITY_POLICY_REPORT", "REFRESH_SECURITY_POLICY_CACHE", "DELETE_SECURITY_POLICY_CACHE", "CREATE_SCHEDULE", "REMOVE_SCHEDULE_REPORT", "UPDATE_ALL_ALERT", "PATCH_TARGET_ALERT_POLICY_ASSOCIATION", "CREATE_ALERT_POLICY", "UPDATE_ALERT_POLICY", "DELETE_ALERT_POLICY", "CREATE_ALERT_POLICY_RULE", "UPDATE_ALERT_POLICY_RULE", "DELETE_ALERT_POLICY_RULE", "CHANGE_ALERT_POLICY_COMPARTMENT", "UPDATE_TARGET_GROUP_AUDIT_PROFILE", "CREATE_ATTRIBUTE_SET", "UPDATE_ATTRIBUTE_SET", "DELETE_ATTRIBUTE_SET", "CHANGE_ATTRIBUTE_SET_COMPARTMENT", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "ENABLE_DATA_SAFE_CONFIGURATION", "CREATE_PRIVATE_ENDPOINT", "UPDATE_PRIVATE_ENDPOINT", "DELETE_PRIVATE_ENDPOINT", "CHANGE_PRIVATE_ENDPOINT_COMPARTMENT", "CREATE_ONPREM_CONNECTOR", "UPDATE_ONPREM_CONNECTOR", "DELETE_ONPREM_CONNECTOR", "UPDATE_ONPREM_CONNECTOR_WALLET", "CHANGE_ONPREM_CONNECTOR_COMPARTMENT", "PROVISION_POLICY", "RETRIEVE_POLICY", "UPDATE_POLICY", "CHANGE_POLICY_COMPARTMENT", "CREATE_TARGET_DATABASE", "UPDATE_TARGET_DATABASE", "ACTIVATE_TARGET_DATABASE", "DEACTIVATE_TARGET_DATABASE", "DELETE_TARGET_DATABASE", "CHANGE_TARGET_DATABASE_COMPARTMENT", "CREATE_PEER_TARGET_DATABASE", "UPDATE_PEER_TARGET_DATABASE", "DELETE_PEER_TARGET_DATABASE", "REFRESH_TARGET_DATABASE", "CREATE_USER_ASSESSMENT", "ASSESS_USER_ASSESSMENT", "CREATE_SNAPSHOT_USER_ASSESSMENT", "CREATE_SCHEDULE_USER_ASSESSMENT", "COMPARE_WITH_BASELINE_USER_ASSESSMENT", "DELETE_USER_ASSESSMENT", "UPDATE_USER_ASSESSMENT", "CHANGE_USER_ASSESSMENT_COMPARTMENT", "SET_USER_ASSESSMENT_BASELINE", "UNSET_USER_ASSESSMENT_BASELINE", "GENERATE_USER_ASSESSMENT_REPORT", "CREATE_SECURITY_ASSESSMENT", "CREATE_SECURITY_ASSESSMENT_NOW", "ASSESS_SECURITY_ASSESSMENT", "CREATE_SNAPSHOT_SECURITY_ASSESSMENT", "CREATE_SCHEDULE_SECURITY_ASSESSMENT", "COMPARE_WITH_BASELINE_SECURITY_ASSESSMENT", "DELETE_SECURITY_ASSESSMENT", "UPDATE_SECURITY_ASSESSMENT", "UPDATE_FINDING_RISK", "CHANGE_SECURITY_ASSESSMENT_COMPARTMENT", "SET_SECURITY_ASSESSMENT_BASELINE", "UNSET_SECURITY_ASSESSMENT_BASELINE", "GENERATE_SECURITY_ASSESSMENT_REPORT", "PATCH_CHECKS", "UPDATE_FINDING_SEVERITY", "APPLY_TEMPLATE", "DELETE_SQL_FIREWALL_ALLOWED_SQL", "BULK_CREATE_SQL_FIREWALL_ALLOWED_SQL", "BULK_DELETE_SQL_FIREWALL_ALLOWED_SQL", "CALCULATE_VOLUME", "CALCULATE_COLLECTED_VOLUME", "CREATE_DB_SECURITY_CONFIG", "REFRESH_DB_SECURITY_CONFIG", "UPDATE_DB_SECURITY_CONFIG", "CHANGE_DB_SECURITY_CONFIG_COMPARTMENT", "GENERATE_FIREWALL_POLICY", "UPDATE_FIREWALL_POLICY", "CHANGE_FIREWALL_POLICY_COMPARTMENT", "DELETE_FIREWALL_POLICY", "CREATE_SQL_COLLECTION", "UPDATE_SQL_COLLECTION", "START_SQL_COLLECTION", "STOP_SQL_COLLECTION", "DELETE_SQL_COLLECTION", "CHANGE_SQL_COLLECTION_COMPARTMENT", "REFRESH_SQL_COLLECTION_LOG_INSIGHTS", "PURGE_SQL_COLLECTION_LOGS", "REFRESH_VIOLATIONS", "CREATE_ARCHIVAL", "CREATE_SECURITY_POLICY", "DELETE_SECURITY_POLICY", "UPDATE_SECURITY_POLICY", "CHANGE_SECURITY_POLICY_COMPARTMENT", "UPDATE_SECURITY_POLICY_DEPLOYMENT", "CHANGE_SECURITY_POLICY_DEPLOYMENT_COMPARTMENT", "AUDIT_TRAIL", "DELETE_AUDIT_TRAIL", "DISCOVER_AUDIT_TRAILS", "UPDATE_AUDIT_TRAIL", "UPDATE_AUDIT_PROFILE", "AUDIT_CHANGE_COMPARTMENT", "CREATE_REPORT_DEFINITION", "UPDATE_REPORT_DEFINITION", "CHANGE_REPORT_DEFINITION_COMPARTMENT", "DELETE_REPORT_DEFINITION", "GENERATE_REPORT", "GENERATE_PAGINATED_REPORT", "CHANGE_REPORT_COMPARTMENT", "DELETE_ARCHIVE_RETRIEVAL", "CREATE_ARCHIVE_RETRIEVAL", "UPDATE_ARCHIVE_RETRIEVAL", "CHANGE_ARCHIVE_RETRIEVAL_COMPARTMENT", "UPDATE_ALERT", "TARGET_ALERT_POLICY_ASSOCIATION", "CREATE_TARGET_DATABASE_GROUP", "UPDATE_TARGET_DATABASE_GROUP", "DELETE_TARGET_DATABASE_GROUP", "CHANGE_TARGET_DATABASE_GROUP_COMPARTMENT", "CREATE_SECURITY_POLICY_CONFIG", "UPDATE_SECURITY_POLICY_CONFIG", "DELETE_SECURITY_POLICY_CONFIG", "CHANGE_SECURITY_POLICY_CONFIG_COMPARTMENT", "CREATE_UNIFIED_AUDIT_POLICY", "UPDATE_UNIFIED_AUDIT_POLICY", "DELETE_UNIFIED_AUDIT_POLICY", "CHANGE_UNIFIED_AUDIT_POLICY_COMPARTMENT", "UPDATE_UNIFIED_AUDIT_POLICY_DEFINITION", "DELETE_UNIFIED_AUDIT_POLICY_DEFINITION", "CHANGE_UNIFIED_AUDIT_POLICY_DEFINITION_COMPARTMENT", "FLEET_GENERATE_SECURITY_ASSESSMENT_REPORT", "FLEET_GENERATE_USER_ASSESSMENT_REPORT", "REFRESH_TARGET_DATABASE_GROUP_WITH_CHANGES", "FETCH_AUDIT_POLICY_DETAILS", "BULK_CREATE_UNIFIED_AUDIT_POLICY", "SECURITY_POLICY_DEPLOYMENT_ACTIONS", "PROVISION_SECURITY_POLICY_DEPLOYMENT", "CREATE_SENSITIVE_DATA_MODEL", "UPDATE_SENSITIVE_DATA_MODEL", "DELETE_SENSITIVE_DATA_MODEL", "UPLOAD_SENSITIVE_DATA_MODEL", "GENERATE_SENSITIVE_DATA_MODEL_FOR_DOWNLOAD", "CREATE_SENSITIVE_COLUMN", "UPDATE_SENSITIVE_COLUMN", "PATCH_SENSITIVE_COLUMNS", "CREATE_DISCOVERY_JOB", "DELETE_DISCOVERY_JOB", "PATCH_DISCOVERY_JOB_RESULT", "APPLY_DISCOVERY_JOB_RESULT", "GENERATE_DISCOVERY_REPORT", "CREATE_SENSITIVE_TYPE", "UPDATE_SENSITIVE_TYPE", "CREATE_MASKING_POLICY", "UPDATE_MASKING_POLICY", "DELETE_MASKING_POLICY", "UPLOAD_MASKING_POLICY", "GENERATE_MASKING_POLICY_FOR_DOWNLOAD", "CREATE_MASKING_COLUMN", "UPDATE_MASKING_COLUMN", "PATCH_MASKING_COLUMNS", "GENERATE_MASKING_REPORT", "CREATE_LIBRARY_MASKING_FORMAT", "UPDATE_LIBRARY_MASKING_FORMAT", "ADD_COLUMNS_FROM_SDM", "MASKING_JOB", "CREATE_DIFFERENCE", "DELETE_DIFFERENCE", "UPDATE_DIFFERENCE", "PATCH_DIFFERENCE", "APPLY_DIFFERENCE", "DELETE_MASKING_REPORT", "MASK_POLICY_GENERATE_HEALTH_REPORT", "MASK_POLICY_DELETE_HEALTH_REPORT", "CREATE_SENSITIVE_TYPES_EXPORT", "UPDATE_SENSITIVE_TYPES_EXPORT", "BULK_CREATE_SENSITIVE_TYPES", "CREATE_SENSITIVE_TYPE_GROUP", "UPDATE_SENSITIVE_TYPE_GROUP", "DELETE_SENSITIVE_TYPE_GROUP", "DELETE_SENSITIVE_TYPE", "PATCH_GROUPED_SENSITIVE_TYPES", "CREATE_RELATION", "DELETE_RELATION", "ABORT_MASKING", "CREATE_SECURITY_POLICY_REPORT", "REFRESH_SECURITY_POLICY_CACHE", "DELETE_SECURITY_POLICY_CACHE", "CREATE_SCHEDULE", "REMOVE_SCHEDULE_REPORT", "UPDATE_ALL_ALERT", "PATCH_TARGET_ALERT_POLICY_ASSOCIATION", "CREATE_ALERT_POLICY", "UPDATE_ALERT_POLICY", "DELETE_ALERT_POLICY", "CREATE_ALERT_POLICY_RULE", "UPDATE_ALERT_POLICY_RULE", "DELETE_ALERT_POLICY_RULE", "CHANGE_ALERT_POLICY_COMPARTMENT", "UPDATE_TARGET_GROUP_AUDIT_PROFILE", "CREATE_ATTRIBUTE_SET", "UPDATE_ATTRIBUTE_SET", "DELETE_ATTRIBUTE_SET", "CHANGE_ATTRIBUTE_SET_COMPARTMENT", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type operation_type: str @@ -875,7 +879,7 @@ def operation_type(self): **[Required]** Gets the operation_type of this WorkRequestSummary. The asynchronous operation tracked by this work request. - Allowed values for this property are: "ENABLE_DATA_SAFE_CONFIGURATION", "CREATE_PRIVATE_ENDPOINT", "UPDATE_PRIVATE_ENDPOINT", "DELETE_PRIVATE_ENDPOINT", "CHANGE_PRIVATE_ENDPOINT_COMPARTMENT", "CREATE_ONPREM_CONNECTOR", "UPDATE_ONPREM_CONNECTOR", "DELETE_ONPREM_CONNECTOR", "UPDATE_ONPREM_CONNECTOR_WALLET", "CHANGE_ONPREM_CONNECTOR_COMPARTMENT", "PROVISION_POLICY", "RETRIEVE_POLICY", "UPDATE_POLICY", "CHANGE_POLICY_COMPARTMENT", "CREATE_TARGET_DATABASE", "UPDATE_TARGET_DATABASE", "ACTIVATE_TARGET_DATABASE", "DEACTIVATE_TARGET_DATABASE", "DELETE_TARGET_DATABASE", "CHANGE_TARGET_DATABASE_COMPARTMENT", "CREATE_PEER_TARGET_DATABASE", "UPDATE_PEER_TARGET_DATABASE", "DELETE_PEER_TARGET_DATABASE", "REFRESH_TARGET_DATABASE", "CREATE_USER_ASSESSMENT", "ASSESS_USER_ASSESSMENT", "CREATE_SNAPSHOT_USER_ASSESSMENT", "CREATE_SCHEDULE_USER_ASSESSMENT", "COMPARE_WITH_BASELINE_USER_ASSESSMENT", "DELETE_USER_ASSESSMENT", "UPDATE_USER_ASSESSMENT", "CHANGE_USER_ASSESSMENT_COMPARTMENT", "SET_USER_ASSESSMENT_BASELINE", "UNSET_USER_ASSESSMENT_BASELINE", "GENERATE_USER_ASSESSMENT_REPORT", "CREATE_SECURITY_ASSESSMENT", "CREATE_SECURITY_ASSESSMENT_NOW", "ASSESS_SECURITY_ASSESSMENT", "CREATE_SNAPSHOT_SECURITY_ASSESSMENT", "CREATE_SCHEDULE_SECURITY_ASSESSMENT", "COMPARE_WITH_BASELINE_SECURITY_ASSESSMENT", "DELETE_SECURITY_ASSESSMENT", "UPDATE_SECURITY_ASSESSMENT", "UPDATE_FINDING_RISK", "CHANGE_SECURITY_ASSESSMENT_COMPARTMENT", "SET_SECURITY_ASSESSMENT_BASELINE", "UNSET_SECURITY_ASSESSMENT_BASELINE", "GENERATE_SECURITY_ASSESSMENT_REPORT", "PATCH_CHECKS", "UPDATE_FINDING_SEVERITY", "APPLY_TEMPLATE", "DELETE_SQL_FIREWALL_ALLOWED_SQL", "BULK_CREATE_SQL_FIREWALL_ALLOWED_SQL", "BULK_DELETE_SQL_FIREWALL_ALLOWED_SQL", "CALCULATE_VOLUME", "CALCULATE_COLLECTED_VOLUME", "CREATE_DB_SECURITY_CONFIG", "REFRESH_DB_SECURITY_CONFIG", "UPDATE_DB_SECURITY_CONFIG", "CHANGE_DB_SECURITY_CONFIG_COMPARTMENT", "GENERATE_FIREWALL_POLICY", "UPDATE_FIREWALL_POLICY", "CHANGE_FIREWALL_POLICY_COMPARTMENT", "DELETE_FIREWALL_POLICY", "CREATE_SQL_COLLECTION", "UPDATE_SQL_COLLECTION", "START_SQL_COLLECTION", "STOP_SQL_COLLECTION", "DELETE_SQL_COLLECTION", "CHANGE_SQL_COLLECTION_COMPARTMENT", "REFRESH_SQL_COLLECTION_LOG_INSIGHTS", "PURGE_SQL_COLLECTION_LOGS", "REFRESH_VIOLATIONS", "CREATE_ARCHIVAL", "CREATE_SECURITY_POLICY", "DELETE_SECURITY_POLICY", "UPDATE_SECURITY_POLICY", "CHANGE_SECURITY_POLICY_COMPARTMENT", "UPDATE_SECURITY_POLICY_DEPLOYMENT", "CHANGE_SECURITY_POLICY_DEPLOYMENT_COMPARTMENT", "AUDIT_TRAIL", "DELETE_AUDIT_TRAIL", "DISCOVER_AUDIT_TRAILS", "UPDATE_AUDIT_TRAIL", "UPDATE_AUDIT_PROFILE", "AUDIT_CHANGE_COMPARTMENT", "CREATE_REPORT_DEFINITION", "UPDATE_REPORT_DEFINITION", "CHANGE_REPORT_DEFINITION_COMPARTMENT", "DELETE_REPORT_DEFINITION", "GENERATE_REPORT", "CHANGE_REPORT_COMPARTMENT", "DELETE_ARCHIVE_RETRIEVAL", "CREATE_ARCHIVE_RETRIEVAL", "UPDATE_ARCHIVE_RETRIEVAL", "CHANGE_ARCHIVE_RETRIEVAL_COMPARTMENT", "UPDATE_ALERT", "TARGET_ALERT_POLICY_ASSOCIATION", "CREATE_TARGET_DATABASE_GROUP", "UPDATE_TARGET_DATABASE_GROUP", "DELETE_TARGET_DATABASE_GROUP", "CHANGE_TARGET_DATABASE_GROUP_COMPARTMENT", "CREATE_SECURITY_POLICY_CONFIG", "UPDATE_SECURITY_POLICY_CONFIG", "DELETE_SECURITY_POLICY_CONFIG", "CHANGE_SECURITY_POLICY_CONFIG_COMPARTMENT", "CREATE_UNIFIED_AUDIT_POLICY", "UPDATE_UNIFIED_AUDIT_POLICY", "DELETE_UNIFIED_AUDIT_POLICY", "CHANGE_UNIFIED_AUDIT_POLICY_COMPARTMENT", "UPDATE_UNIFIED_AUDIT_POLICY_DEFINITION", "DELETE_UNIFIED_AUDIT_POLICY_DEFINITION", "CHANGE_UNIFIED_AUDIT_POLICY_DEFINITION_COMPARTMENT", "FLEET_GENERATE_SECURITY_ASSESSMENT_REPORT", "FLEET_GENERATE_USER_ASSESSMENT_REPORT", "REFRESH_TARGET_DATABASE_GROUP_WITH_CHANGES", "FETCH_AUDIT_POLICY_DETAILS", "BULK_CREATE_UNIFIED_AUDIT_POLICY", "SECURITY_POLICY_DEPLOYMENT_ACTIONS", "PROVISION_SECURITY_POLICY_DEPLOYMENT", "CREATE_SENSITIVE_DATA_MODEL", "UPDATE_SENSITIVE_DATA_MODEL", "DELETE_SENSITIVE_DATA_MODEL", "UPLOAD_SENSITIVE_DATA_MODEL", "GENERATE_SENSITIVE_DATA_MODEL_FOR_DOWNLOAD", "CREATE_SENSITIVE_COLUMN", "UPDATE_SENSITIVE_COLUMN", "PATCH_SENSITIVE_COLUMNS", "CREATE_DISCOVERY_JOB", "DELETE_DISCOVERY_JOB", "PATCH_DISCOVERY_JOB_RESULT", "APPLY_DISCOVERY_JOB_RESULT", "GENERATE_DISCOVERY_REPORT", "CREATE_SENSITIVE_TYPE", "UPDATE_SENSITIVE_TYPE", "CREATE_MASKING_POLICY", "UPDATE_MASKING_POLICY", "DELETE_MASKING_POLICY", "UPLOAD_MASKING_POLICY", "GENERATE_MASKING_POLICY_FOR_DOWNLOAD", "CREATE_MASKING_COLUMN", "UPDATE_MASKING_COLUMN", "PATCH_MASKING_COLUMNS", "GENERATE_MASKING_REPORT", "CREATE_LIBRARY_MASKING_FORMAT", "UPDATE_LIBRARY_MASKING_FORMAT", "ADD_COLUMNS_FROM_SDM", "MASKING_JOB", "CREATE_DIFFERENCE", "DELETE_DIFFERENCE", "UPDATE_DIFFERENCE", "PATCH_DIFFERENCE", "APPLY_DIFFERENCE", "DELETE_MASKING_REPORT", "MASK_POLICY_GENERATE_HEALTH_REPORT", "MASK_POLICY_DELETE_HEALTH_REPORT", "CREATE_SENSITIVE_TYPES_EXPORT", "UPDATE_SENSITIVE_TYPES_EXPORT", "BULK_CREATE_SENSITIVE_TYPES", "CREATE_SENSITIVE_TYPE_GROUP", "UPDATE_SENSITIVE_TYPE_GROUP", "DELETE_SENSITIVE_TYPE_GROUP", "DELETE_SENSITIVE_TYPE", "PATCH_GROUPED_SENSITIVE_TYPES", "CREATE_RELATION", "DELETE_RELATION", "ABORT_MASKING", "CREATE_SECURITY_POLICY_REPORT", "REFRESH_SECURITY_POLICY_CACHE", "DELETE_SECURITY_POLICY_CACHE", "CREATE_SCHEDULE", "REMOVE_SCHEDULE_REPORT", "UPDATE_ALL_ALERT", "PATCH_TARGET_ALERT_POLICY_ASSOCIATION", "CREATE_ALERT_POLICY", "UPDATE_ALERT_POLICY", "DELETE_ALERT_POLICY", "CREATE_ALERT_POLICY_RULE", "UPDATE_ALERT_POLICY_RULE", "DELETE_ALERT_POLICY_RULE", "CHANGE_ALERT_POLICY_COMPARTMENT", "UPDATE_TARGET_GROUP_AUDIT_PROFILE", "CREATE_ATTRIBUTE_SET", "UPDATE_ATTRIBUTE_SET", "DELETE_ATTRIBUTE_SET", "CHANGE_ATTRIBUTE_SET_COMPARTMENT", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "ENABLE_DATA_SAFE_CONFIGURATION", "CREATE_PRIVATE_ENDPOINT", "UPDATE_PRIVATE_ENDPOINT", "DELETE_PRIVATE_ENDPOINT", "CHANGE_PRIVATE_ENDPOINT_COMPARTMENT", "CREATE_ONPREM_CONNECTOR", "UPDATE_ONPREM_CONNECTOR", "DELETE_ONPREM_CONNECTOR", "UPDATE_ONPREM_CONNECTOR_WALLET", "CHANGE_ONPREM_CONNECTOR_COMPARTMENT", "PROVISION_POLICY", "RETRIEVE_POLICY", "UPDATE_POLICY", "CHANGE_POLICY_COMPARTMENT", "CREATE_TARGET_DATABASE", "UPDATE_TARGET_DATABASE", "ACTIVATE_TARGET_DATABASE", "DEACTIVATE_TARGET_DATABASE", "DELETE_TARGET_DATABASE", "CHANGE_TARGET_DATABASE_COMPARTMENT", "CREATE_PEER_TARGET_DATABASE", "UPDATE_PEER_TARGET_DATABASE", "DELETE_PEER_TARGET_DATABASE", "REFRESH_TARGET_DATABASE", "CREATE_USER_ASSESSMENT", "ASSESS_USER_ASSESSMENT", "CREATE_SNAPSHOT_USER_ASSESSMENT", "CREATE_SCHEDULE_USER_ASSESSMENT", "COMPARE_WITH_BASELINE_USER_ASSESSMENT", "DELETE_USER_ASSESSMENT", "UPDATE_USER_ASSESSMENT", "CHANGE_USER_ASSESSMENT_COMPARTMENT", "SET_USER_ASSESSMENT_BASELINE", "UNSET_USER_ASSESSMENT_BASELINE", "GENERATE_USER_ASSESSMENT_REPORT", "CREATE_SECURITY_ASSESSMENT", "CREATE_SECURITY_ASSESSMENT_NOW", "ASSESS_SECURITY_ASSESSMENT", "CREATE_SNAPSHOT_SECURITY_ASSESSMENT", "CREATE_SCHEDULE_SECURITY_ASSESSMENT", "COMPARE_WITH_BASELINE_SECURITY_ASSESSMENT", "DELETE_SECURITY_ASSESSMENT", "UPDATE_SECURITY_ASSESSMENT", "UPDATE_FINDING_RISK", "CHANGE_SECURITY_ASSESSMENT_COMPARTMENT", "SET_SECURITY_ASSESSMENT_BASELINE", "UNSET_SECURITY_ASSESSMENT_BASELINE", "GENERATE_SECURITY_ASSESSMENT_REPORT", "PATCH_CHECKS", "UPDATE_FINDING_SEVERITY", "APPLY_TEMPLATE", "DELETE_SQL_FIREWALL_ALLOWED_SQL", "BULK_CREATE_SQL_FIREWALL_ALLOWED_SQL", "BULK_DELETE_SQL_FIREWALL_ALLOWED_SQL", "CALCULATE_VOLUME", "CALCULATE_COLLECTED_VOLUME", "CREATE_DB_SECURITY_CONFIG", "REFRESH_DB_SECURITY_CONFIG", "UPDATE_DB_SECURITY_CONFIG", "CHANGE_DB_SECURITY_CONFIG_COMPARTMENT", "GENERATE_FIREWALL_POLICY", "UPDATE_FIREWALL_POLICY", "CHANGE_FIREWALL_POLICY_COMPARTMENT", "DELETE_FIREWALL_POLICY", "CREATE_SQL_COLLECTION", "UPDATE_SQL_COLLECTION", "START_SQL_COLLECTION", "STOP_SQL_COLLECTION", "DELETE_SQL_COLLECTION", "CHANGE_SQL_COLLECTION_COMPARTMENT", "REFRESH_SQL_COLLECTION_LOG_INSIGHTS", "PURGE_SQL_COLLECTION_LOGS", "REFRESH_VIOLATIONS", "CREATE_ARCHIVAL", "CREATE_SECURITY_POLICY", "DELETE_SECURITY_POLICY", "UPDATE_SECURITY_POLICY", "CHANGE_SECURITY_POLICY_COMPARTMENT", "UPDATE_SECURITY_POLICY_DEPLOYMENT", "CHANGE_SECURITY_POLICY_DEPLOYMENT_COMPARTMENT", "AUDIT_TRAIL", "DELETE_AUDIT_TRAIL", "DISCOVER_AUDIT_TRAILS", "UPDATE_AUDIT_TRAIL", "UPDATE_AUDIT_PROFILE", "AUDIT_CHANGE_COMPARTMENT", "CREATE_REPORT_DEFINITION", "UPDATE_REPORT_DEFINITION", "CHANGE_REPORT_DEFINITION_COMPARTMENT", "DELETE_REPORT_DEFINITION", "GENERATE_REPORT", "GENERATE_PAGINATED_REPORT", "CHANGE_REPORT_COMPARTMENT", "DELETE_ARCHIVE_RETRIEVAL", "CREATE_ARCHIVE_RETRIEVAL", "UPDATE_ARCHIVE_RETRIEVAL", "CHANGE_ARCHIVE_RETRIEVAL_COMPARTMENT", "UPDATE_ALERT", "TARGET_ALERT_POLICY_ASSOCIATION", "CREATE_TARGET_DATABASE_GROUP", "UPDATE_TARGET_DATABASE_GROUP", "DELETE_TARGET_DATABASE_GROUP", "CHANGE_TARGET_DATABASE_GROUP_COMPARTMENT", "CREATE_SECURITY_POLICY_CONFIG", "UPDATE_SECURITY_POLICY_CONFIG", "DELETE_SECURITY_POLICY_CONFIG", "CHANGE_SECURITY_POLICY_CONFIG_COMPARTMENT", "CREATE_UNIFIED_AUDIT_POLICY", "UPDATE_UNIFIED_AUDIT_POLICY", "DELETE_UNIFIED_AUDIT_POLICY", "CHANGE_UNIFIED_AUDIT_POLICY_COMPARTMENT", "UPDATE_UNIFIED_AUDIT_POLICY_DEFINITION", "DELETE_UNIFIED_AUDIT_POLICY_DEFINITION", "CHANGE_UNIFIED_AUDIT_POLICY_DEFINITION_COMPARTMENT", "FLEET_GENERATE_SECURITY_ASSESSMENT_REPORT", "FLEET_GENERATE_USER_ASSESSMENT_REPORT", "REFRESH_TARGET_DATABASE_GROUP_WITH_CHANGES", "FETCH_AUDIT_POLICY_DETAILS", "BULK_CREATE_UNIFIED_AUDIT_POLICY", "SECURITY_POLICY_DEPLOYMENT_ACTIONS", "PROVISION_SECURITY_POLICY_DEPLOYMENT", "CREATE_SENSITIVE_DATA_MODEL", "UPDATE_SENSITIVE_DATA_MODEL", "DELETE_SENSITIVE_DATA_MODEL", "UPLOAD_SENSITIVE_DATA_MODEL", "GENERATE_SENSITIVE_DATA_MODEL_FOR_DOWNLOAD", "CREATE_SENSITIVE_COLUMN", "UPDATE_SENSITIVE_COLUMN", "PATCH_SENSITIVE_COLUMNS", "CREATE_DISCOVERY_JOB", "DELETE_DISCOVERY_JOB", "PATCH_DISCOVERY_JOB_RESULT", "APPLY_DISCOVERY_JOB_RESULT", "GENERATE_DISCOVERY_REPORT", "CREATE_SENSITIVE_TYPE", "UPDATE_SENSITIVE_TYPE", "CREATE_MASKING_POLICY", "UPDATE_MASKING_POLICY", "DELETE_MASKING_POLICY", "UPLOAD_MASKING_POLICY", "GENERATE_MASKING_POLICY_FOR_DOWNLOAD", "CREATE_MASKING_COLUMN", "UPDATE_MASKING_COLUMN", "PATCH_MASKING_COLUMNS", "GENERATE_MASKING_REPORT", "CREATE_LIBRARY_MASKING_FORMAT", "UPDATE_LIBRARY_MASKING_FORMAT", "ADD_COLUMNS_FROM_SDM", "MASKING_JOB", "CREATE_DIFFERENCE", "DELETE_DIFFERENCE", "UPDATE_DIFFERENCE", "PATCH_DIFFERENCE", "APPLY_DIFFERENCE", "DELETE_MASKING_REPORT", "MASK_POLICY_GENERATE_HEALTH_REPORT", "MASK_POLICY_DELETE_HEALTH_REPORT", "CREATE_SENSITIVE_TYPES_EXPORT", "UPDATE_SENSITIVE_TYPES_EXPORT", "BULK_CREATE_SENSITIVE_TYPES", "CREATE_SENSITIVE_TYPE_GROUP", "UPDATE_SENSITIVE_TYPE_GROUP", "DELETE_SENSITIVE_TYPE_GROUP", "DELETE_SENSITIVE_TYPE", "PATCH_GROUPED_SENSITIVE_TYPES", "CREATE_RELATION", "DELETE_RELATION", "ABORT_MASKING", "CREATE_SECURITY_POLICY_REPORT", "REFRESH_SECURITY_POLICY_CACHE", "DELETE_SECURITY_POLICY_CACHE", "CREATE_SCHEDULE", "REMOVE_SCHEDULE_REPORT", "UPDATE_ALL_ALERT", "PATCH_TARGET_ALERT_POLICY_ASSOCIATION", "CREATE_ALERT_POLICY", "UPDATE_ALERT_POLICY", "DELETE_ALERT_POLICY", "CREATE_ALERT_POLICY_RULE", "UPDATE_ALERT_POLICY_RULE", "DELETE_ALERT_POLICY_RULE", "CHANGE_ALERT_POLICY_COMPARTMENT", "UPDATE_TARGET_GROUP_AUDIT_PROFILE", "CREATE_ATTRIBUTE_SET", "UPDATE_ATTRIBUTE_SET", "DELETE_ATTRIBUTE_SET", "CHANGE_ATTRIBUTE_SET_COMPARTMENT", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -894,7 +898,7 @@ def operation_type(self, operation_type): :param operation_type: The operation_type of this WorkRequestSummary. :type: str """ - allowed_values = ["ENABLE_DATA_SAFE_CONFIGURATION", "CREATE_PRIVATE_ENDPOINT", "UPDATE_PRIVATE_ENDPOINT", "DELETE_PRIVATE_ENDPOINT", "CHANGE_PRIVATE_ENDPOINT_COMPARTMENT", "CREATE_ONPREM_CONNECTOR", "UPDATE_ONPREM_CONNECTOR", "DELETE_ONPREM_CONNECTOR", "UPDATE_ONPREM_CONNECTOR_WALLET", "CHANGE_ONPREM_CONNECTOR_COMPARTMENT", "PROVISION_POLICY", "RETRIEVE_POLICY", "UPDATE_POLICY", "CHANGE_POLICY_COMPARTMENT", "CREATE_TARGET_DATABASE", "UPDATE_TARGET_DATABASE", "ACTIVATE_TARGET_DATABASE", "DEACTIVATE_TARGET_DATABASE", "DELETE_TARGET_DATABASE", "CHANGE_TARGET_DATABASE_COMPARTMENT", "CREATE_PEER_TARGET_DATABASE", "UPDATE_PEER_TARGET_DATABASE", "DELETE_PEER_TARGET_DATABASE", "REFRESH_TARGET_DATABASE", "CREATE_USER_ASSESSMENT", "ASSESS_USER_ASSESSMENT", "CREATE_SNAPSHOT_USER_ASSESSMENT", "CREATE_SCHEDULE_USER_ASSESSMENT", "COMPARE_WITH_BASELINE_USER_ASSESSMENT", "DELETE_USER_ASSESSMENT", "UPDATE_USER_ASSESSMENT", "CHANGE_USER_ASSESSMENT_COMPARTMENT", "SET_USER_ASSESSMENT_BASELINE", "UNSET_USER_ASSESSMENT_BASELINE", "GENERATE_USER_ASSESSMENT_REPORT", "CREATE_SECURITY_ASSESSMENT", "CREATE_SECURITY_ASSESSMENT_NOW", "ASSESS_SECURITY_ASSESSMENT", "CREATE_SNAPSHOT_SECURITY_ASSESSMENT", "CREATE_SCHEDULE_SECURITY_ASSESSMENT", "COMPARE_WITH_BASELINE_SECURITY_ASSESSMENT", "DELETE_SECURITY_ASSESSMENT", "UPDATE_SECURITY_ASSESSMENT", "UPDATE_FINDING_RISK", "CHANGE_SECURITY_ASSESSMENT_COMPARTMENT", "SET_SECURITY_ASSESSMENT_BASELINE", "UNSET_SECURITY_ASSESSMENT_BASELINE", "GENERATE_SECURITY_ASSESSMENT_REPORT", "PATCH_CHECKS", "UPDATE_FINDING_SEVERITY", "APPLY_TEMPLATE", "DELETE_SQL_FIREWALL_ALLOWED_SQL", "BULK_CREATE_SQL_FIREWALL_ALLOWED_SQL", "BULK_DELETE_SQL_FIREWALL_ALLOWED_SQL", "CALCULATE_VOLUME", "CALCULATE_COLLECTED_VOLUME", "CREATE_DB_SECURITY_CONFIG", "REFRESH_DB_SECURITY_CONFIG", "UPDATE_DB_SECURITY_CONFIG", "CHANGE_DB_SECURITY_CONFIG_COMPARTMENT", "GENERATE_FIREWALL_POLICY", "UPDATE_FIREWALL_POLICY", "CHANGE_FIREWALL_POLICY_COMPARTMENT", "DELETE_FIREWALL_POLICY", "CREATE_SQL_COLLECTION", "UPDATE_SQL_COLLECTION", "START_SQL_COLLECTION", "STOP_SQL_COLLECTION", "DELETE_SQL_COLLECTION", "CHANGE_SQL_COLLECTION_COMPARTMENT", "REFRESH_SQL_COLLECTION_LOG_INSIGHTS", "PURGE_SQL_COLLECTION_LOGS", "REFRESH_VIOLATIONS", "CREATE_ARCHIVAL", "CREATE_SECURITY_POLICY", "DELETE_SECURITY_POLICY", "UPDATE_SECURITY_POLICY", "CHANGE_SECURITY_POLICY_COMPARTMENT", "UPDATE_SECURITY_POLICY_DEPLOYMENT", "CHANGE_SECURITY_POLICY_DEPLOYMENT_COMPARTMENT", "AUDIT_TRAIL", "DELETE_AUDIT_TRAIL", "DISCOVER_AUDIT_TRAILS", "UPDATE_AUDIT_TRAIL", "UPDATE_AUDIT_PROFILE", "AUDIT_CHANGE_COMPARTMENT", "CREATE_REPORT_DEFINITION", "UPDATE_REPORT_DEFINITION", "CHANGE_REPORT_DEFINITION_COMPARTMENT", "DELETE_REPORT_DEFINITION", "GENERATE_REPORT", "CHANGE_REPORT_COMPARTMENT", "DELETE_ARCHIVE_RETRIEVAL", "CREATE_ARCHIVE_RETRIEVAL", "UPDATE_ARCHIVE_RETRIEVAL", "CHANGE_ARCHIVE_RETRIEVAL_COMPARTMENT", "UPDATE_ALERT", "TARGET_ALERT_POLICY_ASSOCIATION", "CREATE_TARGET_DATABASE_GROUP", "UPDATE_TARGET_DATABASE_GROUP", "DELETE_TARGET_DATABASE_GROUP", "CHANGE_TARGET_DATABASE_GROUP_COMPARTMENT", "CREATE_SECURITY_POLICY_CONFIG", "UPDATE_SECURITY_POLICY_CONFIG", "DELETE_SECURITY_POLICY_CONFIG", "CHANGE_SECURITY_POLICY_CONFIG_COMPARTMENT", "CREATE_UNIFIED_AUDIT_POLICY", "UPDATE_UNIFIED_AUDIT_POLICY", "DELETE_UNIFIED_AUDIT_POLICY", "CHANGE_UNIFIED_AUDIT_POLICY_COMPARTMENT", "UPDATE_UNIFIED_AUDIT_POLICY_DEFINITION", "DELETE_UNIFIED_AUDIT_POLICY_DEFINITION", "CHANGE_UNIFIED_AUDIT_POLICY_DEFINITION_COMPARTMENT", "FLEET_GENERATE_SECURITY_ASSESSMENT_REPORT", "FLEET_GENERATE_USER_ASSESSMENT_REPORT", "REFRESH_TARGET_DATABASE_GROUP_WITH_CHANGES", "FETCH_AUDIT_POLICY_DETAILS", "BULK_CREATE_UNIFIED_AUDIT_POLICY", "SECURITY_POLICY_DEPLOYMENT_ACTIONS", "PROVISION_SECURITY_POLICY_DEPLOYMENT", "CREATE_SENSITIVE_DATA_MODEL", "UPDATE_SENSITIVE_DATA_MODEL", "DELETE_SENSITIVE_DATA_MODEL", "UPLOAD_SENSITIVE_DATA_MODEL", "GENERATE_SENSITIVE_DATA_MODEL_FOR_DOWNLOAD", "CREATE_SENSITIVE_COLUMN", "UPDATE_SENSITIVE_COLUMN", "PATCH_SENSITIVE_COLUMNS", "CREATE_DISCOVERY_JOB", "DELETE_DISCOVERY_JOB", "PATCH_DISCOVERY_JOB_RESULT", "APPLY_DISCOVERY_JOB_RESULT", "GENERATE_DISCOVERY_REPORT", "CREATE_SENSITIVE_TYPE", "UPDATE_SENSITIVE_TYPE", "CREATE_MASKING_POLICY", "UPDATE_MASKING_POLICY", "DELETE_MASKING_POLICY", "UPLOAD_MASKING_POLICY", "GENERATE_MASKING_POLICY_FOR_DOWNLOAD", "CREATE_MASKING_COLUMN", "UPDATE_MASKING_COLUMN", "PATCH_MASKING_COLUMNS", "GENERATE_MASKING_REPORT", "CREATE_LIBRARY_MASKING_FORMAT", "UPDATE_LIBRARY_MASKING_FORMAT", "ADD_COLUMNS_FROM_SDM", "MASKING_JOB", "CREATE_DIFFERENCE", "DELETE_DIFFERENCE", "UPDATE_DIFFERENCE", "PATCH_DIFFERENCE", "APPLY_DIFFERENCE", "DELETE_MASKING_REPORT", "MASK_POLICY_GENERATE_HEALTH_REPORT", "MASK_POLICY_DELETE_HEALTH_REPORT", "CREATE_SENSITIVE_TYPES_EXPORT", "UPDATE_SENSITIVE_TYPES_EXPORT", "BULK_CREATE_SENSITIVE_TYPES", "CREATE_SENSITIVE_TYPE_GROUP", "UPDATE_SENSITIVE_TYPE_GROUP", "DELETE_SENSITIVE_TYPE_GROUP", "DELETE_SENSITIVE_TYPE", "PATCH_GROUPED_SENSITIVE_TYPES", "CREATE_RELATION", "DELETE_RELATION", "ABORT_MASKING", "CREATE_SECURITY_POLICY_REPORT", "REFRESH_SECURITY_POLICY_CACHE", "DELETE_SECURITY_POLICY_CACHE", "CREATE_SCHEDULE", "REMOVE_SCHEDULE_REPORT", "UPDATE_ALL_ALERT", "PATCH_TARGET_ALERT_POLICY_ASSOCIATION", "CREATE_ALERT_POLICY", "UPDATE_ALERT_POLICY", "DELETE_ALERT_POLICY", "CREATE_ALERT_POLICY_RULE", "UPDATE_ALERT_POLICY_RULE", "DELETE_ALERT_POLICY_RULE", "CHANGE_ALERT_POLICY_COMPARTMENT", "UPDATE_TARGET_GROUP_AUDIT_PROFILE", "CREATE_ATTRIBUTE_SET", "UPDATE_ATTRIBUTE_SET", "DELETE_ATTRIBUTE_SET", "CHANGE_ATTRIBUTE_SET_COMPARTMENT"] + allowed_values = ["ENABLE_DATA_SAFE_CONFIGURATION", "CREATE_PRIVATE_ENDPOINT", "UPDATE_PRIVATE_ENDPOINT", "DELETE_PRIVATE_ENDPOINT", "CHANGE_PRIVATE_ENDPOINT_COMPARTMENT", "CREATE_ONPREM_CONNECTOR", "UPDATE_ONPREM_CONNECTOR", "DELETE_ONPREM_CONNECTOR", "UPDATE_ONPREM_CONNECTOR_WALLET", "CHANGE_ONPREM_CONNECTOR_COMPARTMENT", "PROVISION_POLICY", "RETRIEVE_POLICY", "UPDATE_POLICY", "CHANGE_POLICY_COMPARTMENT", "CREATE_TARGET_DATABASE", "UPDATE_TARGET_DATABASE", "ACTIVATE_TARGET_DATABASE", "DEACTIVATE_TARGET_DATABASE", "DELETE_TARGET_DATABASE", "CHANGE_TARGET_DATABASE_COMPARTMENT", "CREATE_PEER_TARGET_DATABASE", "UPDATE_PEER_TARGET_DATABASE", "DELETE_PEER_TARGET_DATABASE", "REFRESH_TARGET_DATABASE", "CREATE_USER_ASSESSMENT", "ASSESS_USER_ASSESSMENT", "CREATE_SNAPSHOT_USER_ASSESSMENT", "CREATE_SCHEDULE_USER_ASSESSMENT", "COMPARE_WITH_BASELINE_USER_ASSESSMENT", "DELETE_USER_ASSESSMENT", "UPDATE_USER_ASSESSMENT", "CHANGE_USER_ASSESSMENT_COMPARTMENT", "SET_USER_ASSESSMENT_BASELINE", "UNSET_USER_ASSESSMENT_BASELINE", "GENERATE_USER_ASSESSMENT_REPORT", "CREATE_SECURITY_ASSESSMENT", "CREATE_SECURITY_ASSESSMENT_NOW", "ASSESS_SECURITY_ASSESSMENT", "CREATE_SNAPSHOT_SECURITY_ASSESSMENT", "CREATE_SCHEDULE_SECURITY_ASSESSMENT", "COMPARE_WITH_BASELINE_SECURITY_ASSESSMENT", "DELETE_SECURITY_ASSESSMENT", "UPDATE_SECURITY_ASSESSMENT", "UPDATE_FINDING_RISK", "CHANGE_SECURITY_ASSESSMENT_COMPARTMENT", "SET_SECURITY_ASSESSMENT_BASELINE", "UNSET_SECURITY_ASSESSMENT_BASELINE", "GENERATE_SECURITY_ASSESSMENT_REPORT", "PATCH_CHECKS", "UPDATE_FINDING_SEVERITY", "APPLY_TEMPLATE", "DELETE_SQL_FIREWALL_ALLOWED_SQL", "BULK_CREATE_SQL_FIREWALL_ALLOWED_SQL", "BULK_DELETE_SQL_FIREWALL_ALLOWED_SQL", "CALCULATE_VOLUME", "CALCULATE_COLLECTED_VOLUME", "CREATE_DB_SECURITY_CONFIG", "REFRESH_DB_SECURITY_CONFIG", "UPDATE_DB_SECURITY_CONFIG", "CHANGE_DB_SECURITY_CONFIG_COMPARTMENT", "GENERATE_FIREWALL_POLICY", "UPDATE_FIREWALL_POLICY", "CHANGE_FIREWALL_POLICY_COMPARTMENT", "DELETE_FIREWALL_POLICY", "CREATE_SQL_COLLECTION", "UPDATE_SQL_COLLECTION", "START_SQL_COLLECTION", "STOP_SQL_COLLECTION", "DELETE_SQL_COLLECTION", "CHANGE_SQL_COLLECTION_COMPARTMENT", "REFRESH_SQL_COLLECTION_LOG_INSIGHTS", "PURGE_SQL_COLLECTION_LOGS", "REFRESH_VIOLATIONS", "CREATE_ARCHIVAL", "CREATE_SECURITY_POLICY", "DELETE_SECURITY_POLICY", "UPDATE_SECURITY_POLICY", "CHANGE_SECURITY_POLICY_COMPARTMENT", "UPDATE_SECURITY_POLICY_DEPLOYMENT", "CHANGE_SECURITY_POLICY_DEPLOYMENT_COMPARTMENT", "AUDIT_TRAIL", "DELETE_AUDIT_TRAIL", "DISCOVER_AUDIT_TRAILS", "UPDATE_AUDIT_TRAIL", "UPDATE_AUDIT_PROFILE", "AUDIT_CHANGE_COMPARTMENT", "CREATE_REPORT_DEFINITION", "UPDATE_REPORT_DEFINITION", "CHANGE_REPORT_DEFINITION_COMPARTMENT", "DELETE_REPORT_DEFINITION", "GENERATE_REPORT", "GENERATE_PAGINATED_REPORT", "CHANGE_REPORT_COMPARTMENT", "DELETE_ARCHIVE_RETRIEVAL", "CREATE_ARCHIVE_RETRIEVAL", "UPDATE_ARCHIVE_RETRIEVAL", "CHANGE_ARCHIVE_RETRIEVAL_COMPARTMENT", "UPDATE_ALERT", "TARGET_ALERT_POLICY_ASSOCIATION", "CREATE_TARGET_DATABASE_GROUP", "UPDATE_TARGET_DATABASE_GROUP", "DELETE_TARGET_DATABASE_GROUP", "CHANGE_TARGET_DATABASE_GROUP_COMPARTMENT", "CREATE_SECURITY_POLICY_CONFIG", "UPDATE_SECURITY_POLICY_CONFIG", "DELETE_SECURITY_POLICY_CONFIG", "CHANGE_SECURITY_POLICY_CONFIG_COMPARTMENT", "CREATE_UNIFIED_AUDIT_POLICY", "UPDATE_UNIFIED_AUDIT_POLICY", "DELETE_UNIFIED_AUDIT_POLICY", "CHANGE_UNIFIED_AUDIT_POLICY_COMPARTMENT", "UPDATE_UNIFIED_AUDIT_POLICY_DEFINITION", "DELETE_UNIFIED_AUDIT_POLICY_DEFINITION", "CHANGE_UNIFIED_AUDIT_POLICY_DEFINITION_COMPARTMENT", "FLEET_GENERATE_SECURITY_ASSESSMENT_REPORT", "FLEET_GENERATE_USER_ASSESSMENT_REPORT", "REFRESH_TARGET_DATABASE_GROUP_WITH_CHANGES", "FETCH_AUDIT_POLICY_DETAILS", "BULK_CREATE_UNIFIED_AUDIT_POLICY", "SECURITY_POLICY_DEPLOYMENT_ACTIONS", "PROVISION_SECURITY_POLICY_DEPLOYMENT", "CREATE_SENSITIVE_DATA_MODEL", "UPDATE_SENSITIVE_DATA_MODEL", "DELETE_SENSITIVE_DATA_MODEL", "UPLOAD_SENSITIVE_DATA_MODEL", "GENERATE_SENSITIVE_DATA_MODEL_FOR_DOWNLOAD", "CREATE_SENSITIVE_COLUMN", "UPDATE_SENSITIVE_COLUMN", "PATCH_SENSITIVE_COLUMNS", "CREATE_DISCOVERY_JOB", "DELETE_DISCOVERY_JOB", "PATCH_DISCOVERY_JOB_RESULT", "APPLY_DISCOVERY_JOB_RESULT", "GENERATE_DISCOVERY_REPORT", "CREATE_SENSITIVE_TYPE", "UPDATE_SENSITIVE_TYPE", "CREATE_MASKING_POLICY", "UPDATE_MASKING_POLICY", "DELETE_MASKING_POLICY", "UPLOAD_MASKING_POLICY", "GENERATE_MASKING_POLICY_FOR_DOWNLOAD", "CREATE_MASKING_COLUMN", "UPDATE_MASKING_COLUMN", "PATCH_MASKING_COLUMNS", "GENERATE_MASKING_REPORT", "CREATE_LIBRARY_MASKING_FORMAT", "UPDATE_LIBRARY_MASKING_FORMAT", "ADD_COLUMNS_FROM_SDM", "MASKING_JOB", "CREATE_DIFFERENCE", "DELETE_DIFFERENCE", "UPDATE_DIFFERENCE", "PATCH_DIFFERENCE", "APPLY_DIFFERENCE", "DELETE_MASKING_REPORT", "MASK_POLICY_GENERATE_HEALTH_REPORT", "MASK_POLICY_DELETE_HEALTH_REPORT", "CREATE_SENSITIVE_TYPES_EXPORT", "UPDATE_SENSITIVE_TYPES_EXPORT", "BULK_CREATE_SENSITIVE_TYPES", "CREATE_SENSITIVE_TYPE_GROUP", "UPDATE_SENSITIVE_TYPE_GROUP", "DELETE_SENSITIVE_TYPE_GROUP", "DELETE_SENSITIVE_TYPE", "PATCH_GROUPED_SENSITIVE_TYPES", "CREATE_RELATION", "DELETE_RELATION", "ABORT_MASKING", "CREATE_SECURITY_POLICY_REPORT", "REFRESH_SECURITY_POLICY_CACHE", "DELETE_SECURITY_POLICY_CACHE", "CREATE_SCHEDULE", "REMOVE_SCHEDULE_REPORT", "UPDATE_ALL_ALERT", "PATCH_TARGET_ALERT_POLICY_ASSOCIATION", "CREATE_ALERT_POLICY", "UPDATE_ALERT_POLICY", "DELETE_ALERT_POLICY", "CREATE_ALERT_POLICY_RULE", "UPDATE_ALERT_POLICY_RULE", "DELETE_ALERT_POLICY_RULE", "CHANGE_ALERT_POLICY_COMPARTMENT", "UPDATE_TARGET_GROUP_AUDIT_PROFILE", "CREATE_ATTRIBUTE_SET", "UPDATE_ATTRIBUTE_SET", "DELETE_ATTRIBUTE_SET", "CHANGE_ATTRIBUTE_SET_COMPARTMENT"] if not value_allowed_none_or_none_sentinel(operation_type, allowed_values): operation_type = 'UNKNOWN_ENUM_VALUE' self._operation_type = operation_type diff --git a/src/oci/datacc/__init__.py b/src/oci/datacc/__init__.py new file mode 100644 index 0000000000..c64247ddb0 --- /dev/null +++ b/src/oci/datacc/__init__.py @@ -0,0 +1,14 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + +from __future__ import absolute_import + + +from .baseinfra_client import BaseinfraClient +from .baseinfra_client_composite_operations import BaseinfraClientCompositeOperations +from . import models + +__all__ = ["BaseinfraClient", "BaseinfraClientCompositeOperations", "models"] diff --git a/src/oci/datacc/baseinfra_client.py b/src/oci/datacc/baseinfra_client.py new file mode 100644 index 0000000000..a9bab2f5d7 --- /dev/null +++ b/src/oci/datacc/baseinfra_client.py @@ -0,0 +1,5452 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + +from __future__ import absolute_import + +from oci._vendor import requests # noqa: F401 +from oci._vendor import six + +from oci import retry, circuit_breaker # noqa: F401 +from oci.base_client import BaseClient +from oci.config import get_config_value_or_default, validate_config +from oci.signer import Signer +from oci.util import Sentinel, get_signer_from_authentication_type, AUTHENTICATION_TYPE_FIELD_NAME +from oci.exceptions import InvalidDeveloperToolConfiguration +from oci.developer_tool_configuration import OCI_SDK_ENABLED_SERVICES_SET +from .models import datacc_type_mapping +missing = Sentinel("Missing") + + +class BaseinfraClient(object): + """ + API for Database Infrastructure Cloud@Customer Service. Use this API to manage Database Infrastructure VM clusters, Application VMs, and related resources. + """ + + def __init__(self, config, **kwargs): + """ + Creates a new service client + + :param dict config: + Configuration keys and values as per `SDK and Tool Configuration `__. + The :py:meth:`~oci.config.from_file` method can be used to load configuration from a file. Alternatively, a ``dict`` can be passed. You can validate_config + the dict using :py:meth:`~oci.config.validate_config` + + :param str service_endpoint: (optional) + The endpoint of the service to call using this client. For example ``https://iaas.us-ashburn-1.oraclecloud.com``. If this keyword argument is + not provided then it will be derived using the region in the config parameter. You should only provide this keyword argument if you have an explicit + need to specify a service endpoint. + + :param timeout: (optional) + The connection and read timeouts for the client. The default values are connection timeout 10 seconds and read timeout 60 seconds. This keyword argument can be provided + as a single float, in which case the value provided is used for both the read and connection timeouts, or as a tuple of two floats. If + a tuple is provided then the first value is used as the connection timeout and the second value as the read timeout. + :type timeout: float or tuple(float, float) + + :param signer: (optional) + The signer to use when signing requests made by the service client. The default is to use a :py:class:`~oci.signer.Signer` based on the values + provided in the config parameter. + + One use case for this parameter is for `Instance Principals authentication `__ + by passing an instance of :py:class:`~oci.auth.signers.InstancePrincipalsSecurityTokenSigner` as the value for this keyword argument + :type signer: :py:class:`~oci.signer.AbstractBaseSigner` + + :param obj retry_strategy: (optional) + A retry strategy to apply to all calls made by this service client (i.e. at the client level). There is no retry strategy applied by default. + Retry strategies can also be applied at the operation level by passing a ``retry_strategy`` keyword argument as part of calling the operation. + Any value provided at the operation level will override whatever is specified at the client level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` + is also available. The specifics of the default retry strategy are described `here `__. + + :param obj circuit_breaker_strategy: (optional) + A circuit breaker strategy to apply to all calls made by this service client (i.e. at the client level). + This client uses :py:data:`~oci.circuit_breaker.DEFAULT_CIRCUIT_BREAKER_STRATEGY` as default if no circuit breaker strategy is provided. + The specifics of circuit breaker strategy are described `here `__. + + :param function circuit_breaker_callback: (optional) + Callback function to receive any exceptions triggerred by the circuit breaker. + + :param bool client_level_realm_specific_endpoint_template_enabled: (optional) + A boolean flag to indicate whether or not this client should be created with realm specific endpoint template enabled or disable. By default, this will be set as None. + + :param allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this client should allow control characters in the response object. By default, the client will not + allow control characters to be in the response object. + + :param enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this client should enable strict url encoding in path params of a request. + By default, the client will not enable strict url encoding + """ + if not OCI_SDK_ENABLED_SERVICES_SET.is_service_enabled("datacc"): + raise InvalidDeveloperToolConfiguration("The Developer Tool Configuration has disabled this service, this behavior is controlled by OCI_SDK_ENABLED_SERVICES_SET variable. Please check if your local developer-tool-configuration file configured the service you're targeting or contact the cloud provider on the availability of this service") + + validate_config(config, signer=kwargs.get('signer')) + if 'signer' in kwargs: + signer = kwargs['signer'] + + elif AUTHENTICATION_TYPE_FIELD_NAME in config: + signer = get_signer_from_authentication_type(config) + + else: + signer = Signer( + tenancy=config["tenancy"], + user=config["user"], + fingerprint=config["fingerprint"], + private_key_file_location=config.get("key_file"), + pass_phrase=get_config_value_or_default(config, "pass_phrase"), + private_key_content=config.get("key_content") + ) + + base_client_init_kwargs = { + 'regional_client': True, + 'service_endpoint': kwargs.get('service_endpoint'), + 'base_path': '/20251101', + 'service_endpoint_template': 'https://datacc.{region}.ocp.{secondLevelDomain}', + 'service_endpoint_template_per_realm': { }, # noqa: E201 E202 + 'service_uses_dualstack_endpoints_by_default': False, + 'skip_deserialization': kwargs.get('skip_deserialization', False), + 'circuit_breaker_strategy': kwargs.get('circuit_breaker_strategy', circuit_breaker.GLOBAL_CIRCUIT_BREAKER_STRATEGY), + 'client_level_realm_specific_endpoint_template_enabled': kwargs.get('client_level_realm_specific_endpoint_template_enabled'), + 'client_level_dualstack_endpoints_enabled': kwargs.get('client_level_dualstack_endpoints_enabled') + } + if 'timeout' in kwargs: + base_client_init_kwargs['timeout'] = kwargs.get('timeout') + if base_client_init_kwargs.get('circuit_breaker_strategy') is None: + base_client_init_kwargs['circuit_breaker_strategy'] = circuit_breaker.DEFAULT_CIRCUIT_BREAKER_STRATEGY + if 'allow_control_chars' in kwargs: + base_client_init_kwargs['allow_control_chars'] = kwargs.get('allow_control_chars') + if 'enable_strict_url_encoding' in kwargs: + base_client_init_kwargs['enable_strict_url_encoding'] = kwargs.get('enable_strict_url_encoding') + self.base_client = BaseClient("baseinfra", config, signer, datacc_type_mapping, **base_client_init_kwargs) + self.retry_strategy = kwargs.get('retry_strategy') + self.circuit_breaker_callback = kwargs.get('circuit_breaker_callback') + + def activate_infrastructure(self, activate_infrastructure_details, infrastructure_id, **kwargs): + """ + Activate an Database Infrastructure using the specified details. + + + :param oci.datacc.models.ActivateInfrastructureDetails activate_infrastructure_details: (required) + The activation details for the Database Infrastructure. + + :param str infrastructure_id: (required) + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str if_match: (optional) + For Optimistic concurrency control. In the PUT or DELETE call + for a resource, set the 'if-match' parameter to the value of the + Etag from a previous GET or POST response for that resource. + The resource is updated or deleted only if the Etag that you + provide matches the current Etag value for the resource. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request, so the request can be retried without risk of processing that + same action again, in the event of a timeout or server error. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + was deleted and purged from the system, then a retry of the original creation request + can be rejected. + + :param str opc_request_id: (optional) + The client request identifier. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.datacc.models.Infrastructure` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use activate_infrastructure API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['infrastructureId'] + resource_path = "/infrastructures/{infrastructureId}/actions/activate" + method = "POST" + operation_name = "activate_infrastructure" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_retry_token", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"activate_infrastructure got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "infrastructureId": infrastructure_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=activate_infrastructure_details, + response_type="Infrastructure", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=activate_infrastructure_details, + response_type="Infrastructure", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def change_infrastructure_compartment(self, infrastructure_id, change_infrastructure_compartment_details, **kwargs): + """ + Change the Database Infrastructure Cloud@Customer Compartment to the specified + `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param str infrastructure_id: (required) + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param oci.datacc.models.ChangeInfrastructureCompartmentDetails change_infrastructure_compartment_details: (required) + Updated Compartment details. + + :param str if_match: (optional) + For Optimistic concurrency control. In the PUT or DELETE call + for a resource, set the 'if-match' parameter to the value of the + Etag from a previous GET or POST response for that resource. + The resource is updated or deleted only if the Etag that you + provide matches the current Etag value for the resource. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request, so the request can be retried without risk of processing that + same action again, in the event of a timeout or server error. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + was deleted and purged from the system, then a retry of the original creation request + can be rejected. + + :param str opc_request_id: (optional) + The client request identifier. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use change_infrastructure_compartment API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['infrastructureId'] + resource_path = "/infrastructures/{infrastructureId}/actions/changeCompartment" + method = "POST" + operation_name = "change_infrastructure_compartment" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_retry_token", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"change_infrastructure_compartment got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "infrastructureId": infrastructure_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=change_infrastructure_compartment_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=change_infrastructure_compartment_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def change_vm_cluster_network_compartment(self, vm_cluster_network_id, change_vm_cluster_network_compartment_details, **kwargs): + """ + Change the VM cluster network Compartment to the specified + `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param str vm_cluster_network_id: (required) + The `OCID`__ of the VM cluster network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param oci.datacc.models.ChangeVmClusterNetworkCompartmentDetails change_vm_cluster_network_compartment_details: (required) + Updated Compartment details. + + :param str if_match: (optional) + For Optimistic concurrency control. In the PUT or DELETE call + for a resource, set the 'if-match' parameter to the value of the + Etag from a previous GET or POST response for that resource. + The resource is updated or deleted only if the Etag that you + provide matches the current Etag value for the resource. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request, so the request can be retried without risk of processing that + same action again, in the event of a timeout or server error. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + was deleted and purged from the system, then a retry of the original creation request + can be rejected. + + :param str opc_request_id: (optional) + The client request identifier. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use change_vm_cluster_network_compartment API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['vmClusterNetworkId'] + resource_path = "/vmClusterNetworks/{vmClusterNetworkId}/actions/changeCompartment" + method = "POST" + operation_name = "change_vm_cluster_network_compartment" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_retry_token", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"change_vm_cluster_network_compartment got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "vmClusterNetworkId": vm_cluster_network_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=change_vm_cluster_network_compartment_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=change_vm_cluster_network_compartment_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def change_vm_instance_compartment(self, vm_instance_id, change_vm_instance_compartment_details, **kwargs): + """ + Change the VM instance on Database Infrastructure Compartment to the specified `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param str vm_instance_id: (required) + The `OCID`__ of the VM instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param oci.datacc.models.ChangeVmInstanceCompartmentDetails change_vm_instance_compartment_details: (required) + Updated Compartment details. + + :param str if_match: (optional) + For Optimistic concurrency control. In the PUT or DELETE call + for a resource, set the 'if-match' parameter to the value of the + Etag from a previous GET or POST response for that resource. + The resource is updated or deleted only if the Etag that you + provide matches the current Etag value for the resource. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request, so the request can be retried without risk of processing that + same action again, in the event of a timeout or server error. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + was deleted and purged from the system, then a retry of the original creation request + can be rejected. + + :param str opc_request_id: (optional) + The client request identifier. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use change_vm_instance_compartment API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['vmInstanceId'] + resource_path = "/vmInstances/{vmInstanceId}/actions/changeCompartment" + method = "POST" + operation_name = "change_vm_instance_compartment" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_retry_token", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"change_vm_instance_compartment got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "vmInstanceId": vm_instance_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=change_vm_instance_compartment_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=change_vm_instance_compartment_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def create_infrastructure(self, create_infrastructure_details, **kwargs): + """ + Create a Database Infrastructure using the specified details. + + + :param oci.datacc.models.CreateInfrastructureDetails create_infrastructure_details: (required) + New Database Infrastructure details. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request, so the request can be retried without risk of processing that + same action again, in the event of a timeout or server error. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + was deleted and purged from the system, then a retry of the original creation request + can be rejected. + + :param str opc_request_id: (optional) + The client request identifier. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.datacc.models.Infrastructure` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use create_infrastructure API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = [] + resource_path = "/infrastructures" + method = "POST" + operation_name = "create_infrastructure" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_retry_token", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"create_infrastructure got unknown kwargs: {extra_kwargs!r}") + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + header_params=header_params, + body=create_infrastructure_details, + response_type="Infrastructure", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + header_params=header_params, + body=create_infrastructure_details, + response_type="Infrastructure", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def create_vm_cluster_network(self, create_vm_cluster_network_details, **kwargs): + """ + Create an VM cluster on Database Infrastructure network using the specified details. + + + :param oci.datacc.models.CreateVmClusterNetworkDetails create_vm_cluster_network_details: (required) + New VM cluster network details. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request, so the request can be retried without risk of processing that + same action again, in the event of a timeout or server error. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + was deleted and purged from the system, then a retry of the original creation request + can be rejected. + + :param str opc_request_id: (optional) + The client request identifier. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.datacc.models.VmClusterNetwork` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use create_vm_cluster_network API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = [] + resource_path = "/vmClusterNetworks" + method = "POST" + operation_name = "create_vm_cluster_network" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_retry_token", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"create_vm_cluster_network got unknown kwargs: {extra_kwargs!r}") + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + header_params=header_params, + body=create_vm_cluster_network_details, + response_type="VmClusterNetwork", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + header_params=header_params, + body=create_vm_cluster_network_details, + response_type="VmClusterNetwork", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def create_vm_instance(self, create_vm_instance_details, **kwargs): + """ + Create an VM instance on Database Infrastructure using the specified details. + + + :param oci.datacc.models.CreateVmInstanceDetails create_vm_instance_details: (required) + New VM instance details. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request, so the request can be retried without risk of processing that + same action again, in the event of a timeout or server error. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + was deleted and purged from the system, then a retry of the original creation request + can be rejected. + + :param str opc_request_id: (optional) + The client request identifier. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.datacc.models.VmInstance` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use create_vm_instance API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = [] + resource_path = "/vmInstances" + method = "POST" + operation_name = "create_vm_instance" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_retry_token", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"create_vm_instance got unknown kwargs: {extra_kwargs!r}") + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + header_params=header_params, + body=create_vm_instance_details, + response_type="VmInstance", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + header_params=header_params, + body=create_vm_instance_details, + response_type="VmInstance", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def delete_infrastructure(self, infrastructure_id, **kwargs): + """ + Delete the Database Infrastructure that has the specified + `OCID`__. It must be called once the resource usage is complete. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param str infrastructure_id: (required) + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str if_match: (optional) + For Optimistic concurrency control. In the PUT or DELETE call + for a resource, set the 'if-match' parameter to the value of the + Etag from a previous GET or POST response for that resource. + The resource is updated or deleted only if the Etag that you + provide matches the current Etag value for the resource. + + :param str opc_request_id: (optional) + The client request identifier. + + :param bool is_force_delete_infrastructure: (optional) + When set to `true`, infrastructure will be deleted even if it has dependent resources. + If set to `false`, deletion will fail if the infrastructure has dependent resources. + Default is `false`. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use delete_infrastructure API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['infrastructureId'] + resource_path = "/infrastructures/{infrastructureId}" + method = "DELETE" + operation_name = "delete_infrastructure" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id", + "is_force_delete_infrastructure" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"delete_infrastructure got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "infrastructureId": infrastructure_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + query_params = { + "isForceDeleteInfrastructure": kwargs.get("is_force_delete_infrastructure", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def delete_vm_cluster_network(self, vm_cluster_network_id, **kwargs): + """ + Delete the VM cluster network on Database Infrastructure that has the specified + `OCID`__. It must be called once the resource usage is complete. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param str vm_cluster_network_id: (required) + The `OCID`__ of the VM cluster network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str if_match: (optional) + For Optimistic concurrency control. In the PUT or DELETE call + for a resource, set the 'if-match' parameter to the value of the + Etag from a previous GET or POST response for that resource. + The resource is updated or deleted only if the Etag that you + provide matches the current Etag value for the resource. + + :param str opc_request_id: (optional) + The client request identifier. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use delete_vm_cluster_network API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['vmClusterNetworkId'] + resource_path = "/vmClusterNetworks/{vmClusterNetworkId}" + method = "DELETE" + operation_name = "delete_vm_cluster_network" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"delete_vm_cluster_network got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "vmClusterNetworkId": vm_cluster_network_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def delete_vm_instance(self, vm_instance_id, **kwargs): + """ + Delete the VM instance on Database Infrastructure that has the specified + `OCID`__. It must be called once the resource usage is complete. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param str vm_instance_id: (required) + The `OCID`__ of the VM instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str if_match: (optional) + For Optimistic concurrency control. In the PUT or DELETE call + for a resource, set the 'if-match' parameter to the value of the + Etag from a previous GET or POST response for that resource. + The resource is updated or deleted only if the Etag that you + provide matches the current Etag value for the resource. + + :param str opc_request_id: (optional) + The client request identifier. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use delete_vm_instance API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['vmInstanceId'] + resource_path = "/vmInstances/{vmInstanceId}" + method = "DELETE" + operation_name = "delete_vm_instance" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"delete_vm_instance got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "vmInstanceId": vm_instance_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def download_infrastructure_config_file(self, infrastructure_id, **kwargs): + """ + Downloads the configuration file for the specified Database Infrastructure Cloud@Customer. + + + :param str infrastructure_id: (required) + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + The client request identifier. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type stream + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use download_infrastructure_config_file API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['infrastructureId'] + resource_path = "/infrastructures/{infrastructureId}/actions/downloadConfigFile" + method = "GET" + operation_name = "download_infrastructure_config_file" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"download_infrastructure_config_file got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "infrastructureId": infrastructure_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/octet-stream", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="stream", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="stream", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def download_infrastructure_validation_script(self, infrastructure_id, **kwargs): + """ + Downloads the validation script for the specified Database Infrastructure Cloud@Customer. + + + :param str infrastructure_id: (required) + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + The client request identifier. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type stream + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use download_infrastructure_validation_script API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['infrastructureId'] + resource_path = "/infrastructures/{infrastructureId}/actions/downloadValidationScript" + method = "GET" + operation_name = "download_infrastructure_validation_script" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"download_infrastructure_validation_script got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "infrastructureId": infrastructure_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/octet-stream", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="stream", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="stream", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def generate_recommended_vm_cluster_network(self, generate_recommended_vm_cluster_network_details, **kwargs): + """ + Generates an VM cluster network configuration using the specified details. + + + :param oci.datacc.models.GenerateRecommendedVmClusterNetworkDetails generate_recommended_vm_cluster_network_details: (required) + Request to generate a recommended VM cluster network details configuration. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request, so the request can be retried without risk of processing that + same action again, in the event of a timeout or server error. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + was deleted and purged from the system, then a retry of the original creation request + can be rejected. + + :param str opc_request_id: (optional) + The client request identifier. + + :param str if_match: (optional) + For Optimistic concurrency control. In the PUT or DELETE call + for a resource, set the 'if-match' parameter to the value of the + Etag from a previous GET or POST response for that resource. + The resource is updated or deleted only if the Etag that you + provide matches the current Etag value for the resource. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.datacc.models.CreateVmClusterNetworkDetails` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use generate_recommended_vm_cluster_network API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = [] + resource_path = "/vmClusterNetworks/actions/generateRecommendedVmClusterNetwork" + method = "POST" + operation_name = "generate_recommended_vm_cluster_network" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_retry_token", + "opc_request_id", + "if_match" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"generate_recommended_vm_cluster_network got unknown kwargs: {extra_kwargs!r}") + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + header_params=header_params, + body=generate_recommended_vm_cluster_network_details, + response_type="CreateVmClusterNetworkDetails", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + header_params=header_params, + body=generate_recommended_vm_cluster_network_details, + response_type="CreateVmClusterNetworkDetails", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def get_infrastructure(self, infrastructure_id, **kwargs): + """ + Obtain the Database Infrastructure that has the specified + `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param str infrastructure_id: (required) + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + The client request identifier. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.datacc.models.Infrastructure` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_infrastructure API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['infrastructureId'] + resource_path = "/infrastructures/{infrastructureId}" + method = "GET" + operation_name = "get_infrastructure" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"get_infrastructure got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "infrastructureId": infrastructure_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="Infrastructure", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="Infrastructure", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def get_infrastructure_scale_option(self, infrastructure_id, **kwargs): + """ + Get the available scale options for the infrastructure that has the specified + `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param str infrastructure_id: (required) + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + The client request identifier. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.datacc.models.InfrastructureScaleOption` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_infrastructure_scale_option API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['infrastructureId'] + resource_path = "/infrastructures/{infrastructureId}/scaleOptions" + method = "GET" + operation_name = "get_infrastructure_scale_option" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"get_infrastructure_scale_option got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "infrastructureId": infrastructure_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="InfrastructureScaleOption", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="InfrastructureScaleOption", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def get_maintenance_execution(self, maintenance_execution_id, **kwargs): + """ + Gets information about the specified `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param str maintenance_execution_id: (required) + The maintenance execution OCID. + + :param str opc_request_id: (optional) + The client request identifier. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.datacc.models.MaintenanceExecution` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_maintenance_execution API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['maintenanceExecutionId'] + resource_path = "/maintenanceExecutions/{maintenanceExecutionId}" + method = "GET" + operation_name = "get_maintenance_execution" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"get_maintenance_execution got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "maintenanceExecutionId": maintenance_execution_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="MaintenanceExecution", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="MaintenanceExecution", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def get_maintenance_run(self, maintenance_run_id, **kwargs): + """ + Gets information about the specified `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param str maintenance_run_id: (required) + The maintenance run OCID. + + :param str opc_request_id: (optional) + The client request identifier. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.datacc.models.MaintenanceRun` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_maintenance_run API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['maintenanceRunId'] + resource_path = "/maintenanceRuns/{maintenanceRunId}" + method = "GET" + operation_name = "get_maintenance_run" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"get_maintenance_run got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "maintenanceRunId": maintenance_run_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="MaintenanceRun", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="MaintenanceRun", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def get_vm_cluster_network(self, vm_cluster_network_id, **kwargs): + """ + Obtain the VM cluster network on Database Infrastructure that has the specified + `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param str vm_cluster_network_id: (required) + The `OCID`__ of the VM cluster network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + The client request identifier. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.datacc.models.VmClusterNetwork` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_vm_cluster_network API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['vmClusterNetworkId'] + resource_path = "/vmClusterNetworks/{vmClusterNetworkId}" + method = "GET" + operation_name = "get_vm_cluster_network" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"get_vm_cluster_network got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "vmClusterNetworkId": vm_cluster_network_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="VmClusterNetwork", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="VmClusterNetwork", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def get_vm_instance(self, vm_instance_id, **kwargs): + """ + Obtain the VM instance on Database Infrastructure that has the specified `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param str vm_instance_id: (required) + The `OCID`__ of the VM instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + The client request identifier. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.datacc.models.VmInstance` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_vm_instance API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['vmInstanceId'] + resource_path = "/vmInstances/{vmInstanceId}" + method = "GET" + operation_name = "get_vm_instance" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"get_vm_instance got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "vmInstanceId": vm_instance_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="VmInstance", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="VmInstance", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def get_work_request(self, work_request_id, **kwargs): + """ + Get the status of the work request having the specified work request `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param str work_request_id: (required) + The `OCID`__ of the asynchronous work request. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + The client request identifier. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.datacc.models.WorkRequest` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_work_request API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['workRequestId'] + resource_path = "/workRequests/{workRequestId}" + method = "GET" + operation_name = "get_work_request" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"get_work_request got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "workRequestId": work_request_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="WorkRequest", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="WorkRequest", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_infrastructures(self, compartment_id, **kwargs): + """ + Obtain a list of Database Infrastructures. + + + :param str compartment_id: (required) + The `OCID`__ of the compartment. + For list operations, you may provide the tenant [OCID] in this field. When a tenant OCID is provided, + it will be validated against the caller's tenant and then treated as tenant scope (compartmentId filtering is not applied). + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str display_name: (optional) + A filter to return resources that match the entire display name given. The match is case sensitive. + + :param list[str] lifecycle_state: (optional) + A filter to return resources that match the specified lifecycle state. + + Allowed values are: "CREATING", "REQUIRES_VALIDATION", "VALIDATING", "VALIDATION_FAILED", "REQUIRES_ACTIVATION", "ACTIVATING", "ACTIVE", "ACTIVATION_FAILED", "FAILED", "UPDATING", "DELETING", "DELETED", "DISCONNECTED", "MAINTENANCE_IN_PROGRESS" + + :param int limit: (optional) + The maximum number of items to return in a page. + + :param str page: (optional) + The page token representing the page at which you want to start retrieving results. This token is usually retrieved from a previous list call. + + :param str sort_order: (optional) + The sort order that you want to use, which is either `ASC` or `DESC`. + + Allowed values are: "ASC", "DESC" + + :param str sort_by: (optional) + The field by which you want to sort. You can provide only one type of sort order. The default order for `timeCreated` is descending. The default order for `displayName` is ascending. If no value is specified, then `timeCreated` is the default. + When listing software images within the same `version`, using `sortBy=buildIdentifier` is recommended. `buildIdentifier` is a monotonically increasing, time-ordered string marker (yyyy-mm-dd-hh:mm:ss) stored with the image. + + Allowed values are: "timeCreated", "displayName", "buildIdentifier" + + :param str opc_request_id: (optional) + The client request identifier. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.datacc.models.InfrastructureCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_infrastructures API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['compartmentId'] + resource_path = "/infrastructures" + method = "GET" + operation_name = "list_infrastructures" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "display_name", + "lifecycle_state", + "limit", + "page", + "sort_order", + "sort_by", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_infrastructures got unknown kwargs: {extra_kwargs!r}") + + if 'lifecycle_state' in kwargs: + lifecycle_state_allowed_values = ["CREATING", "REQUIRES_VALIDATION", "VALIDATING", "VALIDATION_FAILED", "REQUIRES_ACTIVATION", "ACTIVATING", "ACTIVE", "ACTIVATION_FAILED", "FAILED", "UPDATING", "DELETING", "DELETED", "DISCONNECTED", "MAINTENANCE_IN_PROGRESS"] + for lifecycle_state_item in kwargs['lifecycle_state']: + if lifecycle_state_item not in lifecycle_state_allowed_values: + raise ValueError( + f"Invalid value for `lifecycle_state`, must be one of { lifecycle_state_allowed_values }" + ) + + if 'sort_order' in kwargs: + sort_order_allowed_values = ["ASC", "DESC"] + if kwargs['sort_order'] not in sort_order_allowed_values: + raise ValueError( + f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + ) + + if 'sort_by' in kwargs: + sort_by_allowed_values = ["timeCreated", "displayName", "buildIdentifier"] + if kwargs['sort_by'] not in sort_by_allowed_values: + raise ValueError( + f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" + ) + + query_params = { + "compartmentId": compartment_id, + "displayName": kwargs.get("display_name", missing), + "lifecycleState": self.base_client.generate_collection_format_param(kwargs.get("lifecycle_state", missing), 'multi'), + "limit": kwargs.get("limit", missing), + "page": kwargs.get("page", missing), + "sortOrder": kwargs.get("sort_order", missing), + "sortBy": kwargs.get("sort_by", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="InfrastructureCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="InfrastructureCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_maintenance_executions(self, compartment_id, **kwargs): + """ + Gets a list of the maintenance executions in the specified compartment. + + + :param str compartment_id: (required) + The `OCID`__ of the compartment. + For list operations, you may provide the tenant [OCID] in this field. When a tenant OCID is provided, + it will be validated against the caller's tenant and then treated as tenant scope (compartmentId filtering is not applied). + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str display_name: (optional) + A filter to return resources that match the entire display name given. The match is case sensitive. + + :param str infrastructure_id: (optional) + The Database Infrastructure ID. + + :param str target_resource_type: (optional) + The type of the target resource. + + Allowed values are: "DB_CC_INFRASTRUCTURE" + + :param str maintenance_type: (optional) + The maintenance type. + + Allowed values are: "PLANNED", "UNPLANNED" + + :param str maintenance_run_id: (optional) + The maintenance run OCID. + + :param str lifecycle_state: (optional) + A filter to return only resources that match the given lifecycle state exactly. + + Allowed values are: "CREATING", "SCHEDULED", "IN_PROGRESS", "SUCCEEDED", "SKIPPED", "FAILED", "UPDATING", "DELETING", "DELETED", "CANCELED", "PARTIAL_SUCCESS" + + :param str maintenance_subtype: (optional) + The sub-type of the maintenance run. + + Allowed values are: "YEARLY", "HALFYEARLY", "QUARTERLY", "MONTHLY", "DAILY", "HARDWARE", "CRITICAL", "INFRA_UPDATE", "CPS_SERVICES_UPDATE", "CPS_VM_UPDATE", "SECURITY_MONTHLY" + + :param datetime time_accepted_less_than_or_equal_to: (optional) + Filter maintenance run for before given time. + + :param datetime time_accepted_greater_than_or_equal_to: (optional) + Filter maintenance run for after given time. + + :param str type: (optional) + The maintenance execution type. + + Allowed values are: "NOTIFY", "EXECUTE" + + :param int limit: (optional) + The maximum number of items to return in a page. + + :param str page: (optional) + The page token representing the page at which you want to start retrieving results. This token is usually retrieved from a previous list call. + + :param str sort_by: (optional) + The field by which you want to sort. You can provide only one type of sort order. The default order for `timeCreated` is descending. The default order for `displayName` is ascending. If no value is specified, then `timeCreated` is the default. + When listing software images within the same `version`, using `sortBy=buildIdentifier` is recommended. `buildIdentifier` is a monotonically increasing, time-ordered string marker (yyyy-mm-dd-hh:mm:ss) stored with the image. + + Allowed values are: "timeCreated", "displayName", "buildIdentifier" + + :param str sort_order: (optional) + The sort order that you want to use, which is either `ASC` or `DESC`. + + Allowed values are: "ASC", "DESC" + + :param str opc_request_id: (optional) + The client request identifier. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.datacc.models.MaintenanceExecutionCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_maintenance_executions API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['compartmentId'] + resource_path = "/maintenanceExecutions" + method = "GET" + operation_name = "list_maintenance_executions" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "display_name", + "infrastructure_id", + "target_resource_type", + "maintenance_type", + "maintenance_run_id", + "lifecycle_state", + "maintenance_subtype", + "time_accepted_less_than_or_equal_to", + "time_accepted_greater_than_or_equal_to", + "type", + "limit", + "page", + "sort_by", + "sort_order", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_maintenance_executions got unknown kwargs: {extra_kwargs!r}") + + if 'target_resource_type' in kwargs: + target_resource_type_allowed_values = ["DB_CC_INFRASTRUCTURE"] + if kwargs['target_resource_type'] not in target_resource_type_allowed_values: + raise ValueError( + f"Invalid value for `target_resource_type`, must be one of { target_resource_type_allowed_values }" + ) + + if 'maintenance_type' in kwargs: + maintenance_type_allowed_values = ["PLANNED", "UNPLANNED"] + if kwargs['maintenance_type'] not in maintenance_type_allowed_values: + raise ValueError( + f"Invalid value for `maintenance_type`, must be one of { maintenance_type_allowed_values }" + ) + + if 'lifecycle_state' in kwargs: + lifecycle_state_allowed_values = ["CREATING", "SCHEDULED", "IN_PROGRESS", "SUCCEEDED", "SKIPPED", "FAILED", "UPDATING", "DELETING", "DELETED", "CANCELED", "PARTIAL_SUCCESS"] + if kwargs['lifecycle_state'] not in lifecycle_state_allowed_values: + raise ValueError( + f"Invalid value for `lifecycle_state`, must be one of { lifecycle_state_allowed_values }" + ) + + if 'maintenance_subtype' in kwargs: + maintenance_subtype_allowed_values = ["YEARLY", "HALFYEARLY", "QUARTERLY", "MONTHLY", "DAILY", "HARDWARE", "CRITICAL", "INFRA_UPDATE", "CPS_SERVICES_UPDATE", "CPS_VM_UPDATE", "SECURITY_MONTHLY"] + if kwargs['maintenance_subtype'] not in maintenance_subtype_allowed_values: + raise ValueError( + f"Invalid value for `maintenance_subtype`, must be one of { maintenance_subtype_allowed_values }" + ) + + if 'type' in kwargs: + type_allowed_values = ["NOTIFY", "EXECUTE"] + if kwargs['type'] not in type_allowed_values: + raise ValueError( + f"Invalid value for `type`, must be one of { type_allowed_values }" + ) + + if 'sort_by' in kwargs: + sort_by_allowed_values = ["timeCreated", "displayName", "buildIdentifier"] + if kwargs['sort_by'] not in sort_by_allowed_values: + raise ValueError( + f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" + ) + + if 'sort_order' in kwargs: + sort_order_allowed_values = ["ASC", "DESC"] + if kwargs['sort_order'] not in sort_order_allowed_values: + raise ValueError( + f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + ) + + query_params = { + "compartmentId": compartment_id, + "displayName": kwargs.get("display_name", missing), + "infrastructureId": kwargs.get("infrastructure_id", missing), + "targetResourceType": kwargs.get("target_resource_type", missing), + "maintenanceType": kwargs.get("maintenance_type", missing), + "maintenanceRunId": kwargs.get("maintenance_run_id", missing), + "lifecycleState": kwargs.get("lifecycle_state", missing), + "maintenanceSubtype": kwargs.get("maintenance_subtype", missing), + "timeAcceptedLessThanOrEqualTo": kwargs.get("time_accepted_less_than_or_equal_to", missing), + "timeAcceptedGreaterThanOrEqualTo": kwargs.get("time_accepted_greater_than_or_equal_to", missing), + "type": kwargs.get("type", missing), + "limit": kwargs.get("limit", missing), + "page": kwargs.get("page", missing), + "sortBy": kwargs.get("sort_by", missing), + "sortOrder": kwargs.get("sort_order", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="MaintenanceExecutionCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="MaintenanceExecutionCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_maintenance_runs(self, compartment_id, **kwargs): + """ + Gets a list of the maintenance runs in the specified compartment. + + + :param str compartment_id: (required) + The `OCID`__ of the compartment. + For list operations, you may provide the tenant [OCID] in this field. When a tenant OCID is provided, + it will be validated against the caller's tenant and then treated as tenant scope (compartmentId filtering is not applied). + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str display_name: (optional) + A filter to return resources that match the entire display name given. The match is case sensitive. + + :param str infrastructure_id: (optional) + The Database Infrastructure ID. + + :param str target_resource_type: (optional) + The type of the target resource. + + Allowed values are: "DB_CC_INFRASTRUCTURE" + + :param str maintenance_type: (optional) + The maintenance type. + + Allowed values are: "PLANNED", "UNPLANNED" + + :param str lifecycle_state: (optional) + A filter to return only resources that match the given lifecycle state exactly. + + Allowed values are: "CREATING", "SCHEDULED", "IN_PROGRESS", "SUCCEEDED", "SKIPPED", "FAILED", "UPDATING", "DELETING", "DELETED", "CANCELED", "PARTIAL_SUCCESS" + + :param str maintenance_subtype: (optional) + The sub-type of the maintenance run. + + Allowed values are: "YEARLY", "HALFYEARLY", "QUARTERLY", "MONTHLY", "DAILY", "HARDWARE", "CRITICAL", "INFRA_UPDATE", "CPS_SERVICES_UPDATE", "CPS_VM_UPDATE", "SECURITY_MONTHLY" + + :param datetime time_accepted_less_than_or_equal_to: (optional) + Filter maintenance run for before given time. + + :param datetime time_accepted_greater_than_or_equal_to: (optional) + Filter maintenance run for after given time. + + :param int limit: (optional) + The maximum number of items to return in a page. + + :param str page: (optional) + The page token representing the page at which you want to start retrieving results. This token is usually retrieved from a previous list call. + + :param str sort_by: (optional) + The field by which you want to sort. You can provide only one type of sort order. The default order for `timeCreated` is descending. The default order for `displayName` is ascending. If no value is specified, then `timeCreated` is the default. + When listing software images within the same `version`, using `sortBy=buildIdentifier` is recommended. `buildIdentifier` is a monotonically increasing, time-ordered string marker (yyyy-mm-dd-hh:mm:ss) stored with the image. + + Allowed values are: "timeCreated", "displayName", "buildIdentifier" + + :param str sort_order: (optional) + The sort order that you want to use, which is either `ASC` or `DESC`. + + Allowed values are: "ASC", "DESC" + + :param str opc_request_id: (optional) + The client request identifier. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.datacc.models.MaintenanceRunCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_maintenance_runs API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['compartmentId'] + resource_path = "/maintenanceRuns" + method = "GET" + operation_name = "list_maintenance_runs" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "display_name", + "infrastructure_id", + "target_resource_type", + "maintenance_type", + "lifecycle_state", + "maintenance_subtype", + "time_accepted_less_than_or_equal_to", + "time_accepted_greater_than_or_equal_to", + "limit", + "page", + "sort_by", + "sort_order", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_maintenance_runs got unknown kwargs: {extra_kwargs!r}") + + if 'target_resource_type' in kwargs: + target_resource_type_allowed_values = ["DB_CC_INFRASTRUCTURE"] + if kwargs['target_resource_type'] not in target_resource_type_allowed_values: + raise ValueError( + f"Invalid value for `target_resource_type`, must be one of { target_resource_type_allowed_values }" + ) + + if 'maintenance_type' in kwargs: + maintenance_type_allowed_values = ["PLANNED", "UNPLANNED"] + if kwargs['maintenance_type'] not in maintenance_type_allowed_values: + raise ValueError( + f"Invalid value for `maintenance_type`, must be one of { maintenance_type_allowed_values }" + ) + + if 'lifecycle_state' in kwargs: + lifecycle_state_allowed_values = ["CREATING", "SCHEDULED", "IN_PROGRESS", "SUCCEEDED", "SKIPPED", "FAILED", "UPDATING", "DELETING", "DELETED", "CANCELED", "PARTIAL_SUCCESS"] + if kwargs['lifecycle_state'] not in lifecycle_state_allowed_values: + raise ValueError( + f"Invalid value for `lifecycle_state`, must be one of { lifecycle_state_allowed_values }" + ) + + if 'maintenance_subtype' in kwargs: + maintenance_subtype_allowed_values = ["YEARLY", "HALFYEARLY", "QUARTERLY", "MONTHLY", "DAILY", "HARDWARE", "CRITICAL", "INFRA_UPDATE", "CPS_SERVICES_UPDATE", "CPS_VM_UPDATE", "SECURITY_MONTHLY"] + if kwargs['maintenance_subtype'] not in maintenance_subtype_allowed_values: + raise ValueError( + f"Invalid value for `maintenance_subtype`, must be one of { maintenance_subtype_allowed_values }" + ) + + if 'sort_by' in kwargs: + sort_by_allowed_values = ["timeCreated", "displayName", "buildIdentifier"] + if kwargs['sort_by'] not in sort_by_allowed_values: + raise ValueError( + f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" + ) + + if 'sort_order' in kwargs: + sort_order_allowed_values = ["ASC", "DESC"] + if kwargs['sort_order'] not in sort_order_allowed_values: + raise ValueError( + f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + ) + + query_params = { + "compartmentId": compartment_id, + "displayName": kwargs.get("display_name", missing), + "infrastructureId": kwargs.get("infrastructure_id", missing), + "targetResourceType": kwargs.get("target_resource_type", missing), + "maintenanceType": kwargs.get("maintenance_type", missing), + "lifecycleState": kwargs.get("lifecycle_state", missing), + "maintenanceSubtype": kwargs.get("maintenance_subtype", missing), + "timeAcceptedLessThanOrEqualTo": kwargs.get("time_accepted_less_than_or_equal_to", missing), + "timeAcceptedGreaterThanOrEqualTo": kwargs.get("time_accepted_greater_than_or_equal_to", missing), + "limit": kwargs.get("limit", missing), + "page": kwargs.get("page", missing), + "sortBy": kwargs.get("sort_by", missing), + "sortOrder": kwargs.get("sort_order", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="MaintenanceRunCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="MaintenanceRunCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_vm_cluster_networks(self, compartment_id, **kwargs): + """ + Obtain a list of VM cluster networks on Database Infrastructure. + + + :param str compartment_id: (required) + The `OCID`__ of the compartment. + For list operations, you may provide the tenant [OCID] in this field. When a tenant OCID is provided, + it will be validated against the caller's tenant and then treated as tenant scope (compartmentId filtering is not applied). + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str display_name: (optional) + A filter to return resources that match the entire display name given. The match is case sensitive. + + :param list[str] lifecycle_state: (optional) + A filter to return resources that match the specified lifecycle state. + + Allowed values are: "CREATING", "REQUIRES_VALIDATION", "VALIDATING", "VALIDATED", "VALIDATION_FAILED", "UPDATING", "ALLOCATED", "DELETING", "DELETED" + + :param bool is_scan_enabled: (optional) + A filter to return VM cluster network resources that matches the specified value. + + :param int limit: (optional) + The maximum number of items to return in a page. + + :param str page: (optional) + The page token representing the page at which you want to start retrieving results. This token is usually retrieved from a previous list call. + + :param str sort_order: (optional) + The sort order that you want to use, which is either `ASC` or `DESC`. + + Allowed values are: "ASC", "DESC" + + :param str sort_by: (optional) + The field by which you want to sort. You can provide only one type of sort order. The default order for `timeCreated` is descending. The default order for `displayName` is ascending. If no value is specified, then `timeCreated` is the default. + When listing software images within the same `version`, using `sortBy=buildIdentifier` is recommended. `buildIdentifier` is a monotonically increasing, time-ordered string marker (yyyy-mm-dd-hh:mm:ss) stored with the image. + + Allowed values are: "timeCreated", "displayName", "buildIdentifier" + + :param str opc_request_id: (optional) + The client request identifier. + + :param str infrastructure_id: (optional) + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param int node_count: (optional) + Count of virtual machines in this VM cluster. + + :param str vm_network_consumer_type: (optional) + VM network consumer type. + + Allowed values are: "INSTANCE", "CLUSTER" + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.datacc.models.VmClusterNetworkCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_vm_cluster_networks API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['compartmentId'] + resource_path = "/vmClusterNetworks" + method = "GET" + operation_name = "list_vm_cluster_networks" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "display_name", + "lifecycle_state", + "is_scan_enabled", + "limit", + "page", + "sort_order", + "sort_by", + "opc_request_id", + "infrastructure_id", + "node_count", + "vm_network_consumer_type" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_vm_cluster_networks got unknown kwargs: {extra_kwargs!r}") + + if 'lifecycle_state' in kwargs: + lifecycle_state_allowed_values = ["CREATING", "REQUIRES_VALIDATION", "VALIDATING", "VALIDATED", "VALIDATION_FAILED", "UPDATING", "ALLOCATED", "DELETING", "DELETED"] + for lifecycle_state_item in kwargs['lifecycle_state']: + if lifecycle_state_item not in lifecycle_state_allowed_values: + raise ValueError( + f"Invalid value for `lifecycle_state`, must be one of { lifecycle_state_allowed_values }" + ) + + if 'sort_order' in kwargs: + sort_order_allowed_values = ["ASC", "DESC"] + if kwargs['sort_order'] not in sort_order_allowed_values: + raise ValueError( + f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + ) + + if 'sort_by' in kwargs: + sort_by_allowed_values = ["timeCreated", "displayName", "buildIdentifier"] + if kwargs['sort_by'] not in sort_by_allowed_values: + raise ValueError( + f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" + ) + + if 'vm_network_consumer_type' in kwargs: + vm_network_consumer_type_allowed_values = ["INSTANCE", "CLUSTER"] + if kwargs['vm_network_consumer_type'] not in vm_network_consumer_type_allowed_values: + raise ValueError( + f"Invalid value for `vm_network_consumer_type`, must be one of { vm_network_consumer_type_allowed_values }" + ) + + query_params = { + "compartmentId": compartment_id, + "displayName": kwargs.get("display_name", missing), + "lifecycleState": self.base_client.generate_collection_format_param(kwargs.get("lifecycle_state", missing), 'multi'), + "isScanEnabled": kwargs.get("is_scan_enabled", missing), + "limit": kwargs.get("limit", missing), + "page": kwargs.get("page", missing), + "sortOrder": kwargs.get("sort_order", missing), + "sortBy": kwargs.get("sort_by", missing), + "infrastructureId": kwargs.get("infrastructure_id", missing), + "nodeCount": kwargs.get("node_count", missing), + "vmNetworkConsumerType": kwargs.get("vm_network_consumer_type", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="VmClusterNetworkCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="VmClusterNetworkCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_vm_instances(self, compartment_id, **kwargs): + """ + Obtain a list of VM instances. + + + :param str compartment_id: (required) + The `OCID`__ of the compartment. + For list operations, you may provide the tenant [OCID] in this field. When a tenant OCID is provided, + it will be validated against the caller's tenant and then treated as tenant scope (compartmentId filtering is not applied). + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str display_name: (optional) + A filter to return resources that match the entire display name given. The match is case sensitive. + + :param list[str] lifecycle_state: (optional) + A filter to return resources that match the specified lifecycle state. + + Allowed values are: "CREATING", "ACTIVE", "INACTIVE", "UPDATING", "DELETING", "DELETED" + + :param int limit: (optional) + The maximum number of items to return in a page. + + :param str page: (optional) + The page token representing the page at which you want to start retrieving results. This token is usually retrieved from a previous list call. + + :param str sort_order: (optional) + The sort order that you want to use, which is either `ASC` or `DESC`. + + Allowed values are: "ASC", "DESC" + + :param str sort_by: (optional) + The field by which you want to sort. You can provide only one type of sort order. The default order for `timeCreated` is descending. The default order for `displayName` is ascending. If no value is specified, then `timeCreated` is the default. + When listing software images within the same `version`, using `sortBy=buildIdentifier` is recommended. `buildIdentifier` is a monotonically increasing, time-ordered string marker (yyyy-mm-dd-hh:mm:ss) stored with the image. + + Allowed values are: "timeCreated", "displayName", "buildIdentifier" + + :param str opc_request_id: (optional) + The client request identifier. + + :param str infrastructure_id: (optional) + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str base_server_id: (optional) + The `OCID`__ of the Database Infrastructure Server Id. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.datacc.models.VmInstanceCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_vm_instances API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['compartmentId'] + resource_path = "/vmInstances" + method = "GET" + operation_name = "list_vm_instances" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "display_name", + "lifecycle_state", + "limit", + "page", + "sort_order", + "sort_by", + "opc_request_id", + "infrastructure_id", + "base_server_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_vm_instances got unknown kwargs: {extra_kwargs!r}") + + if 'lifecycle_state' in kwargs: + lifecycle_state_allowed_values = ["CREATING", "ACTIVE", "INACTIVE", "UPDATING", "DELETING", "DELETED"] + for lifecycle_state_item in kwargs['lifecycle_state']: + if lifecycle_state_item not in lifecycle_state_allowed_values: + raise ValueError( + f"Invalid value for `lifecycle_state`, must be one of { lifecycle_state_allowed_values }" + ) + + if 'sort_order' in kwargs: + sort_order_allowed_values = ["ASC", "DESC"] + if kwargs['sort_order'] not in sort_order_allowed_values: + raise ValueError( + f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + ) + + if 'sort_by' in kwargs: + sort_by_allowed_values = ["timeCreated", "displayName", "buildIdentifier"] + if kwargs['sort_by'] not in sort_by_allowed_values: + raise ValueError( + f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" + ) + + query_params = { + "compartmentId": compartment_id, + "displayName": kwargs.get("display_name", missing), + "lifecycleState": self.base_client.generate_collection_format_param(kwargs.get("lifecycle_state", missing), 'multi'), + "limit": kwargs.get("limit", missing), + "page": kwargs.get("page", missing), + "sortOrder": kwargs.get("sort_order", missing), + "sortBy": kwargs.get("sort_by", missing), + "infrastructureId": kwargs.get("infrastructure_id", missing), + "baseServerId": kwargs.get("base_server_id", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="VmInstanceCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="VmInstanceCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_work_request_errors(self, work_request_id, **kwargs): + """ + View the list of errors for the work request that have the specified work request `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param str work_request_id: (required) + The `OCID`__ of the asynchronous work request. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + The client request identifier. + + :param str page: (optional) + The page token representing the page at which you want to start retrieving results. This token is usually retrieved from a previous list call. + + :param int limit: (optional) + The maximum number of items to return in a page. + + :param str sort_order: (optional) + The sort order that you want to use, which is either `ASC` or `DESC`. + + Allowed values are: "ASC", "DESC" + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.datacc.models.WorkRequestErrorCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_work_request_errors API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['workRequestId'] + resource_path = "/workRequests/{workRequestId}/errors" + method = "GET" + operation_name = "list_work_request_errors" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id", + "page", + "limit", + "sort_order" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_work_request_errors got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "workRequestId": work_request_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + if 'sort_order' in kwargs: + sort_order_allowed_values = ["ASC", "DESC"] + if kwargs['sort_order'] not in sort_order_allowed_values: + raise ValueError( + f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + ) + + query_params = { + "page": kwargs.get("page", missing), + "limit": kwargs.get("limit", missing), + "sortOrder": kwargs.get("sort_order", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="WorkRequestErrorCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="WorkRequestErrorCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_work_request_logs(self, work_request_id, **kwargs): + """ + View the log entries for the work request that have the specified work request `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param str work_request_id: (required) + The `OCID`__ of the asynchronous work request. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + The client request identifier. + + :param str page: (optional) + The page token representing the page at which you want to start retrieving results. This token is usually retrieved from a previous list call. + + :param int limit: (optional) + The maximum number of items to return in a page. + + :param str sort_order: (optional) + The sort order that you want to use, which is either `ASC` or `DESC`. + + Allowed values are: "ASC", "DESC" + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.datacc.models.WorkRequestLogEntryCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_work_request_logs API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['workRequestId'] + resource_path = "/workRequests/{workRequestId}/logs" + method = "GET" + operation_name = "list_work_request_logs" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id", + "page", + "limit", + "sort_order" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_work_request_logs got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "workRequestId": work_request_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + if 'sort_order' in kwargs: + sort_order_allowed_values = ["ASC", "DESC"] + if kwargs['sort_order'] not in sort_order_allowed_values: + raise ValueError( + f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + ) + + query_params = { + "page": kwargs.get("page", missing), + "limit": kwargs.get("limit", missing), + "sortOrder": kwargs.get("sort_order", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="WorkRequestLogEntryCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="WorkRequestLogEntryCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_work_requests(self, compartment_id, **kwargs): + """ + View a list of work request details in the specified compartment. + + + :param str compartment_id: (required) + The `OCID`__ of the compartment. + For list operations, you may provide the tenant [OCID] in this field. When a tenant OCID is provided, + it will be validated against the caller's tenant and then treated as tenant scope (compartmentId filtering is not applied). + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str resource_id: (optional) + The `OCID`__ of the work request resource. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + The client request identifier. + + :param str page: (optional) + The page token representing the page at which you want to start retrieving results. This token is usually retrieved from a previous list call. + + :param int limit: (optional) + The maximum number of items to return in a page. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.datacc.models.WorkRequestCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_work_requests API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['compartmentId'] + resource_path = "/workRequests" + method = "GET" + operation_name = "list_work_requests" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "resource_id", + "opc_request_id", + "page", + "limit" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_work_requests got unknown kwargs: {extra_kwargs!r}") + + query_params = { + "compartmentId": compartment_id, + "resourceId": kwargs.get("resource_id", missing), + "page": kwargs.get("page", missing), + "limit": kwargs.get("limit", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="WorkRequestCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="WorkRequestCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def migrate_vm_instance(self, vm_instance_id, **kwargs): + """ + Migrate the VM instance on Database Infrastructure that has the specified `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param str vm_instance_id: (required) + The `OCID`__ of the VM instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str if_match: (optional) + For Optimistic concurrency control. In the PUT or DELETE call + for a resource, set the 'if-match' parameter to the value of the + Etag from a previous GET or POST response for that resource. + The resource is updated or deleted only if the Etag that you + provide matches the current Etag value for the resource. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request, so the request can be retried without risk of processing that + same action again, in the event of a timeout or server error. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + was deleted and purged from the system, then a retry of the original creation request + can be rejected. + + :param str opc_request_id: (optional) + The client request identifier. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use migrate_vm_instance API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['vmInstanceId'] + resource_path = "/vmInstances/{vmInstanceId}/actions/migrate" + method = "POST" + operation_name = "migrate_vm_instance" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_retry_token", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"migrate_vm_instance got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "vmInstanceId": vm_instance_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def reschedule_maintenance_run(self, maintenance_run_id, reschedule_maintenance_run_details, **kwargs): + """ + Reschedules the specified maintenance run by providing a new `timeScheduled` value. + Only maintenance runs in eligible states may be rescheduled. + + + :param str maintenance_run_id: (required) + The maintenance run OCID. + + :param oci.datacc.models.RescheduleMaintenanceRunDetails reschedule_maintenance_run_details: (required) + The new scheduled time for the maintenance run. + + :param str if_match: (optional) + For Optimistic concurrency control. In the PUT or DELETE call + for a resource, set the 'if-match' parameter to the value of the + Etag from a previous GET or POST response for that resource. + The resource is updated or deleted only if the Etag that you + provide matches the current Etag value for the resource. + + :param str opc_request_id: (optional) + The client request identifier. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request, so the request can be retried without risk of processing that + same action again, in the event of a timeout or server error. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + was deleted and purged from the system, then a retry of the original creation request + can be rejected. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.datacc.models.MaintenanceRun` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use reschedule_maintenance_run API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['maintenanceRunId'] + resource_path = "/maintenanceRuns/{maintenanceRunId}/actions/reschedule" + method = "POST" + operation_name = "reschedule_maintenance_run" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id", + "opc_retry_token" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"reschedule_maintenance_run got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "maintenanceRunId": maintenance_run_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=reschedule_maintenance_run_details, + response_type="MaintenanceRun", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=reschedule_maintenance_run_details, + response_type="MaintenanceRun", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def restart_vm_instance(self, vm_instance_id, **kwargs): + """ + Restart the VM instance on Database Infrastructure that has the specified + `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param str vm_instance_id: (required) + The `OCID`__ of the VM instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str if_match: (optional) + For Optimistic concurrency control. In the PUT or DELETE call + for a resource, set the 'if-match' parameter to the value of the + Etag from a previous GET or POST response for that resource. + The resource is updated or deleted only if the Etag that you + provide matches the current Etag value for the resource. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request, so the request can be retried without risk of processing that + same action again, in the event of a timeout or server error. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + was deleted and purged from the system, then a retry of the original creation request + can be rejected. + + :param str opc_request_id: (optional) + The client request identifier. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use restart_vm_instance API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['vmInstanceId'] + resource_path = "/vmInstances/{vmInstanceId}/actions/restart" + method = "POST" + operation_name = "restart_vm_instance" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_retry_token", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"restart_vm_instance got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "vmInstanceId": vm_instance_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def scale_infrastructure_storage(self, scale_infrastructure_storage_details, infrastructure_id, **kwargs): + """ + Scale storage for the specified infrastructure using the specified details. + + + :param oci.datacc.models.ScaleInfrastructureStorageDetails scale_infrastructure_storage_details: (required) + The scale storage details for the Database Infrastructure. + + :param str infrastructure_id: (required) + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str if_match: (optional) + For Optimistic concurrency control. In the PUT or DELETE call + for a resource, set the 'if-match' parameter to the value of the + Etag from a previous GET or POST response for that resource. + The resource is updated or deleted only if the Etag that you + provide matches the current Etag value for the resource. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request, so the request can be retried without risk of processing that + same action again, in the event of a timeout or server error. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + was deleted and purged from the system, then a retry of the original creation request + can be rejected. + + :param str opc_request_id: (optional) + The client request identifier. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use scale_infrastructure_storage API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['infrastructureId'] + resource_path = "/infrastructures/{infrastructureId}/actions/scaleStorage" + method = "POST" + operation_name = "scale_infrastructure_storage" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_retry_token", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"scale_infrastructure_storage got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "infrastructureId": infrastructure_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=scale_infrastructure_storage_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=scale_infrastructure_storage_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def scale_vm_instance(self, scale_vm_instance_details, vm_instance_id, **kwargs): + """ + Scale the VM instance on Database Infrastructure that has the specified `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param oci.datacc.models.ScaleVmInstanceDetails scale_vm_instance_details: (required) + Scale the VM instance. + + :param str vm_instance_id: (required) + The `OCID`__ of the VM instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str if_match: (optional) + For Optimistic concurrency control. In the PUT or DELETE call + for a resource, set the 'if-match' parameter to the value of the + Etag from a previous GET or POST response for that resource. + The resource is updated or deleted only if the Etag that you + provide matches the current Etag value for the resource. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request, so the request can be retried without risk of processing that + same action again, in the event of a timeout or server error. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + was deleted and purged from the system, then a retry of the original creation request + can be rejected. + + :param str opc_request_id: (optional) + The client request identifier. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use scale_vm_instance API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['vmInstanceId'] + resource_path = "/vmInstances/{vmInstanceId}/actions/scale" + method = "POST" + operation_name = "scale_vm_instance" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_retry_token", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"scale_vm_instance got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "vmInstanceId": vm_instance_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=scale_vm_instance_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=scale_vm_instance_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def start_vm_instance(self, vm_instance_id, **kwargs): + """ + Start the VM instance on Database Infrastructure that has the specified + `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param str vm_instance_id: (required) + The `OCID`__ of the VM instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str if_match: (optional) + For Optimistic concurrency control. In the PUT or DELETE call + for a resource, set the 'if-match' parameter to the value of the + Etag from a previous GET or POST response for that resource. + The resource is updated or deleted only if the Etag that you + provide matches the current Etag value for the resource. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request, so the request can be retried without risk of processing that + same action again, in the event of a timeout or server error. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + was deleted and purged from the system, then a retry of the original creation request + can be rejected. + + :param str opc_request_id: (optional) + The client request identifier. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use start_vm_instance API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['vmInstanceId'] + resource_path = "/vmInstances/{vmInstanceId}/actions/start" + method = "POST" + operation_name = "start_vm_instance" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_retry_token", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"start_vm_instance got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "vmInstanceId": vm_instance_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def stop_vm_instance(self, vm_instance_id, **kwargs): + """ + Stop the VM instance on Database Infrastructure that has the specified + `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param str vm_instance_id: (required) + The `OCID`__ of the VM instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str if_match: (optional) + For Optimistic concurrency control. In the PUT or DELETE call + for a resource, set the 'if-match' parameter to the value of the + Etag from a previous GET or POST response for that resource. + The resource is updated or deleted only if the Etag that you + provide matches the current Etag value for the resource. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request, so the request can be retried without risk of processing that + same action again, in the event of a timeout or server error. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + was deleted and purged from the system, then a retry of the original creation request + can be rejected. + + :param str opc_request_id: (optional) + The client request identifier. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use stop_vm_instance API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['vmInstanceId'] + resource_path = "/vmInstances/{vmInstanceId}/actions/stop" + method = "POST" + operation_name = "stop_vm_instance" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_retry_token", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"stop_vm_instance got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "vmInstanceId": vm_instance_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def update_infrastructure(self, update_infrastructure_details, infrastructure_id, **kwargs): + """ + Update the Database Infrastructure that has the specified + `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param oci.datacc.models.UpdateInfrastructureDetails update_infrastructure_details: (required) + The updated Database Infrastructure details. + + :param str infrastructure_id: (required) + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str if_match: (optional) + For Optimistic concurrency control. In the PUT or DELETE call + for a resource, set the 'if-match' parameter to the value of the + Etag from a previous GET or POST response for that resource. + The resource is updated or deleted only if the Etag that you + provide matches the current Etag value for the resource. + + :param str opc_request_id: (optional) + The client request identifier. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.datacc.models.Infrastructure` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use update_infrastructure API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['infrastructureId'] + resource_path = "/infrastructures/{infrastructureId}" + method = "PUT" + operation_name = "update_infrastructure" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"update_infrastructure got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "infrastructureId": infrastructure_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=update_infrastructure_details, + response_type="Infrastructure", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=update_infrastructure_details, + response_type="Infrastructure", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def update_maintenance_run(self, update_maintenance_run_details, maintenance_run_id, **kwargs): + """ + Update maintenance run attributes. + + + :param oci.datacc.models.UpdateMaintenanceRunDetails update_maintenance_run_details: (required) + The updated maintenance run details. + + :param str maintenance_run_id: (required) + The maintenance run OCID. + + :param str if_match: (optional) + For Optimistic concurrency control. In the PUT or DELETE call + for a resource, set the 'if-match' parameter to the value of the + Etag from a previous GET or POST response for that resource. + The resource is updated or deleted only if the Etag that you + provide matches the current Etag value for the resource. + + :param str opc_request_id: (optional) + The client request identifier. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.datacc.models.MaintenanceRun` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use update_maintenance_run API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['maintenanceRunId'] + resource_path = "/maintenanceRuns/{maintenanceRunId}" + method = "PUT" + operation_name = "update_maintenance_run" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"update_maintenance_run got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "maintenanceRunId": maintenance_run_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=update_maintenance_run_details, + response_type="MaintenanceRun", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=update_maintenance_run_details, + response_type="MaintenanceRun", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def update_vm_cluster_network(self, update_vm_cluster_network_details, vm_cluster_network_id, **kwargs): + """ + Update the VM cluster network on Database Infrastructure that has the specified + `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param oci.datacc.models.UpdateVmClusterNetworkDetails update_vm_cluster_network_details: (required) + The updated VM cluster details. + + :param str vm_cluster_network_id: (required) + The `OCID`__ of the VM cluster network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str if_match: (optional) + For Optimistic concurrency control. In the PUT or DELETE call + for a resource, set the 'if-match' parameter to the value of the + Etag from a previous GET or POST response for that resource. + The resource is updated or deleted only if the Etag that you + provide matches the current Etag value for the resource. + + :param str opc_request_id: (optional) + The client request identifier. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.datacc.models.VmClusterNetwork` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use update_vm_cluster_network API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['vmClusterNetworkId'] + resource_path = "/vmClusterNetworks/{vmClusterNetworkId}" + method = "PUT" + operation_name = "update_vm_cluster_network" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"update_vm_cluster_network got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "vmClusterNetworkId": vm_cluster_network_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=update_vm_cluster_network_details, + response_type="VmClusterNetwork", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=update_vm_cluster_network_details, + response_type="VmClusterNetwork", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def update_vm_instance(self, update_vm_instance_details, vm_instance_id, **kwargs): + """ + Update the VM instance on Database Infrastructure that has the specified `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param oci.datacc.models.UpdateVmInstanceDetails update_vm_instance_details: (required) + The updated VM instance details. + + :param str vm_instance_id: (required) + The `OCID`__ of the VM instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str if_match: (optional) + For Optimistic concurrency control. In the PUT or DELETE call + for a resource, set the 'if-match' parameter to the value of the + Etag from a previous GET or POST response for that resource. + The resource is updated or deleted only if the Etag that you + provide matches the current Etag value for the resource. + + :param str opc_request_id: (optional) + The client request identifier. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.datacc.models.VmInstance` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use update_vm_instance API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['vmInstanceId'] + resource_path = "/vmInstances/{vmInstanceId}" + method = "PUT" + operation_name = "update_vm_instance" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"update_vm_instance got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "vmInstanceId": vm_instance_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=update_vm_instance_details, + response_type="VmInstance", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=update_vm_instance_details, + response_type="VmInstance", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def validate_infrastructure(self, validate_infrastructure_details, infrastructure_id, **kwargs): + """ + Validate an Database Infrastructure using the specified details. + + + :param oci.datacc.models.ValidateInfrastructureDetails validate_infrastructure_details: (required) + The validation details for the Database Infrastructure. + + :param str infrastructure_id: (required) + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str if_match: (optional) + For Optimistic concurrency control. In the PUT or DELETE call + for a resource, set the 'if-match' parameter to the value of the + Etag from a previous GET or POST response for that resource. + The resource is updated or deleted only if the Etag that you + provide matches the current Etag value for the resource. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request, so the request can be retried without risk of processing that + same action again, in the event of a timeout or server error. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + was deleted and purged from the system, then a retry of the original creation request + can be rejected. + + :param str opc_request_id: (optional) + The client request identifier. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.datacc.models.Infrastructure` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use validate_infrastructure API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['infrastructureId'] + resource_path = "/infrastructures/{infrastructureId}/actions/validate" + method = "POST" + operation_name = "validate_infrastructure" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_retry_token", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"validate_infrastructure got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "infrastructureId": infrastructure_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=validate_infrastructure_details, + response_type="Infrastructure", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=validate_infrastructure_details, + response_type="Infrastructure", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def validate_vm_cluster_network(self, vm_cluster_network_id, **kwargs): + """ + Validates an VM cluster network on Database Infrastructure. + + + :param str vm_cluster_network_id: (required) + The `OCID`__ of the VM cluster network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request, so the request can be retried without risk of processing that + same action again, in the event of a timeout or server error. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + was deleted and purged from the system, then a retry of the original creation request + can be rejected. + + :param str opc_request_id: (optional) + The client request identifier. + + :param str if_match: (optional) + For Optimistic concurrency control. In the PUT or DELETE call + for a resource, set the 'if-match' parameter to the value of the + Etag from a previous GET or POST response for that resource. + The resource is updated or deleted only if the Etag that you + provide matches the current Etag value for the resource. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use validate_vm_cluster_network API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['vmClusterNetworkId'] + resource_path = "/vmClusterNetworks/{vmClusterNetworkId}/actions/validateVmClusterNetwork" + method = "POST" + operation_name = "validate_vm_cluster_network" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_retry_token", + "opc_request_id", + "if_match" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"validate_vm_cluster_network got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "vmClusterNetworkId": vm_cluster_network_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) diff --git a/src/oci/datacc/baseinfra_client_composite_operations.py b/src/oci/datacc/baseinfra_client_composite_operations.py new file mode 100644 index 0000000000..1eb0764bc4 --- /dev/null +++ b/src/oci/datacc/baseinfra_client_composite_operations.py @@ -0,0 +1,1058 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + +import oci # noqa: F401 +from oci.util import WAIT_RESOURCE_NOT_FOUND # noqa: F401 + + +class BaseinfraClientCompositeOperations(object): + """ + This class provides a wrapper around :py:class:`~oci.datacc.BaseinfraClient` and offers convenience methods + for operations that would otherwise need to be chained together. For example, instead of performing an action + on a resource (e.g. launching an instance, creating a load balancer) and then using a waiter to wait for the resource + to enter a given state, you can call a single method in this class to accomplish the same functionality + """ + + def __init__(self, client, **kwargs): + """ + Creates a new BaseinfraClientCompositeOperations object + + :param BaseinfraClient client: + The service client which will be wrapped by this object + """ + self.client = client + + def activate_infrastructure_and_wait_for_state(self, activate_infrastructure_details, infrastructure_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.datacc.BaseinfraClient.activate_infrastructure` and waits for the :py:class:`~oci.datacc.models.WorkRequest` + to enter the given state(s). + + :param oci.datacc.models.ActivateInfrastructureDetails activate_infrastructure_details: (required) + The activation details for the Database Infrastructure. + + :param str infrastructure_id: (required) + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.datacc.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.datacc.BaseinfraClient.activate_infrastructure` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.activate_infrastructure(activate_infrastructure_details, infrastructure_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def change_infrastructure_compartment_and_wait_for_state(self, infrastructure_id, change_infrastructure_compartment_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.datacc.BaseinfraClient.change_infrastructure_compartment` and waits for the :py:class:`~oci.datacc.models.WorkRequest` + to enter the given state(s). + + :param str infrastructure_id: (required) + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param oci.datacc.models.ChangeInfrastructureCompartmentDetails change_infrastructure_compartment_details: (required) + Updated Compartment details. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.datacc.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.datacc.BaseinfraClient.change_infrastructure_compartment` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.change_infrastructure_compartment(infrastructure_id, change_infrastructure_compartment_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def change_vm_cluster_network_compartment_and_wait_for_state(self, vm_cluster_network_id, change_vm_cluster_network_compartment_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.datacc.BaseinfraClient.change_vm_cluster_network_compartment` and waits for the :py:class:`~oci.datacc.models.WorkRequest` + to enter the given state(s). + + :param str vm_cluster_network_id: (required) + The `OCID`__ of the VM cluster network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param oci.datacc.models.ChangeVmClusterNetworkCompartmentDetails change_vm_cluster_network_compartment_details: (required) + Updated Compartment details. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.datacc.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.datacc.BaseinfraClient.change_vm_cluster_network_compartment` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.change_vm_cluster_network_compartment(vm_cluster_network_id, change_vm_cluster_network_compartment_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def change_vm_instance_compartment_and_wait_for_state(self, vm_instance_id, change_vm_instance_compartment_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.datacc.BaseinfraClient.change_vm_instance_compartment` and waits for the :py:class:`~oci.datacc.models.WorkRequest` + to enter the given state(s). + + :param str vm_instance_id: (required) + The `OCID`__ of the VM instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param oci.datacc.models.ChangeVmInstanceCompartmentDetails change_vm_instance_compartment_details: (required) + Updated Compartment details. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.datacc.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.datacc.BaseinfraClient.change_vm_instance_compartment` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.change_vm_instance_compartment(vm_instance_id, change_vm_instance_compartment_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def create_infrastructure_and_wait_for_state(self, create_infrastructure_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.datacc.BaseinfraClient.create_infrastructure` and waits for the :py:class:`~oci.datacc.models.WorkRequest` + to enter the given state(s). + + :param oci.datacc.models.CreateInfrastructureDetails create_infrastructure_details: (required) + New Database Infrastructure details. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.datacc.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.datacc.BaseinfraClient.create_infrastructure` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.create_infrastructure(create_infrastructure_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def create_vm_cluster_network_and_wait_for_state(self, create_vm_cluster_network_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.datacc.BaseinfraClient.create_vm_cluster_network` and waits for the :py:class:`~oci.datacc.models.WorkRequest` + to enter the given state(s). + + :param oci.datacc.models.CreateVmClusterNetworkDetails create_vm_cluster_network_details: (required) + New VM cluster network details. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.datacc.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.datacc.BaseinfraClient.create_vm_cluster_network` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.create_vm_cluster_network(create_vm_cluster_network_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def create_vm_instance_and_wait_for_state(self, create_vm_instance_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.datacc.BaseinfraClient.create_vm_instance` and waits for the :py:class:`~oci.datacc.models.WorkRequest` + to enter the given state(s). + + :param oci.datacc.models.CreateVmInstanceDetails create_vm_instance_details: (required) + New VM instance details. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.datacc.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.datacc.BaseinfraClient.create_vm_instance` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.create_vm_instance(create_vm_instance_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def delete_infrastructure_and_wait_for_state(self, infrastructure_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.datacc.BaseinfraClient.delete_infrastructure` and waits for the :py:class:`~oci.datacc.models.WorkRequest` + to enter the given state(s). + + :param str infrastructure_id: (required) + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.datacc.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.datacc.BaseinfraClient.delete_infrastructure` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = None + try: + operation_result = self.client.delete_infrastructure(infrastructure_id, **operation_kwargs) + except oci.exceptions.ServiceError as e: + if e.status == 404: + return WAIT_RESOURCE_NOT_FOUND + else: + raise e + + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def delete_vm_cluster_network_and_wait_for_state(self, vm_cluster_network_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.datacc.BaseinfraClient.delete_vm_cluster_network` and waits for the :py:class:`~oci.datacc.models.WorkRequest` + to enter the given state(s). + + :param str vm_cluster_network_id: (required) + The `OCID`__ of the VM cluster network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.datacc.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.datacc.BaseinfraClient.delete_vm_cluster_network` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = None + try: + operation_result = self.client.delete_vm_cluster_network(vm_cluster_network_id, **operation_kwargs) + except oci.exceptions.ServiceError as e: + if e.status == 404: + return WAIT_RESOURCE_NOT_FOUND + else: + raise e + + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def delete_vm_instance_and_wait_for_state(self, vm_instance_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.datacc.BaseinfraClient.delete_vm_instance` and waits for the :py:class:`~oci.datacc.models.WorkRequest` + to enter the given state(s). + + :param str vm_instance_id: (required) + The `OCID`__ of the VM instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.datacc.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.datacc.BaseinfraClient.delete_vm_instance` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = None + try: + operation_result = self.client.delete_vm_instance(vm_instance_id, **operation_kwargs) + except oci.exceptions.ServiceError as e: + if e.status == 404: + return WAIT_RESOURCE_NOT_FOUND + else: + raise e + + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def generate_recommended_vm_cluster_network_and_wait_for_state(self, generate_recommended_vm_cluster_network_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.datacc.BaseinfraClient.generate_recommended_vm_cluster_network` and waits for the :py:class:`~oci.datacc.models.WorkRequest` + to enter the given state(s). + + :param oci.datacc.models.GenerateRecommendedVmClusterNetworkDetails generate_recommended_vm_cluster_network_details: (required) + Request to generate a recommended VM cluster network details configuration. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.datacc.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.datacc.BaseinfraClient.generate_recommended_vm_cluster_network` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.generate_recommended_vm_cluster_network(generate_recommended_vm_cluster_network_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def migrate_vm_instance_and_wait_for_state(self, vm_instance_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.datacc.BaseinfraClient.migrate_vm_instance` and waits for the :py:class:`~oci.datacc.models.WorkRequest` + to enter the given state(s). + + :param str vm_instance_id: (required) + The `OCID`__ of the VM instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.datacc.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.datacc.BaseinfraClient.migrate_vm_instance` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.migrate_vm_instance(vm_instance_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def reschedule_maintenance_run_and_wait_for_state(self, maintenance_run_id, reschedule_maintenance_run_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.datacc.BaseinfraClient.reschedule_maintenance_run` and waits for the :py:class:`~oci.datacc.models.WorkRequest` + to enter the given state(s). + + :param str maintenance_run_id: (required) + The maintenance run OCID. + + :param oci.datacc.models.RescheduleMaintenanceRunDetails reschedule_maintenance_run_details: (required) + The new scheduled time for the maintenance run. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.datacc.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.datacc.BaseinfraClient.reschedule_maintenance_run` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.reschedule_maintenance_run(maintenance_run_id, reschedule_maintenance_run_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def restart_vm_instance_and_wait_for_state(self, vm_instance_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.datacc.BaseinfraClient.restart_vm_instance` and waits for the :py:class:`~oci.datacc.models.WorkRequest` + to enter the given state(s). + + :param str vm_instance_id: (required) + The `OCID`__ of the VM instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.datacc.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.datacc.BaseinfraClient.restart_vm_instance` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.restart_vm_instance(vm_instance_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def scale_infrastructure_storage_and_wait_for_state(self, scale_infrastructure_storage_details, infrastructure_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.datacc.BaseinfraClient.scale_infrastructure_storage` and waits for the :py:class:`~oci.datacc.models.WorkRequest` + to enter the given state(s). + + :param oci.datacc.models.ScaleInfrastructureStorageDetails scale_infrastructure_storage_details: (required) + The scale storage details for the Database Infrastructure. + + :param str infrastructure_id: (required) + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.datacc.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.datacc.BaseinfraClient.scale_infrastructure_storage` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.scale_infrastructure_storage(scale_infrastructure_storage_details, infrastructure_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def scale_vm_instance_and_wait_for_state(self, scale_vm_instance_details, vm_instance_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.datacc.BaseinfraClient.scale_vm_instance` and waits for the :py:class:`~oci.datacc.models.WorkRequest` + to enter the given state(s). + + :param oci.datacc.models.ScaleVmInstanceDetails scale_vm_instance_details: (required) + Scale the VM instance. + + :param str vm_instance_id: (required) + The `OCID`__ of the VM instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.datacc.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.datacc.BaseinfraClient.scale_vm_instance` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.scale_vm_instance(scale_vm_instance_details, vm_instance_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def start_vm_instance_and_wait_for_state(self, vm_instance_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.datacc.BaseinfraClient.start_vm_instance` and waits for the :py:class:`~oci.datacc.models.WorkRequest` + to enter the given state(s). + + :param str vm_instance_id: (required) + The `OCID`__ of the VM instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.datacc.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.datacc.BaseinfraClient.start_vm_instance` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.start_vm_instance(vm_instance_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def stop_vm_instance_and_wait_for_state(self, vm_instance_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.datacc.BaseinfraClient.stop_vm_instance` and waits for the :py:class:`~oci.datacc.models.WorkRequest` + to enter the given state(s). + + :param str vm_instance_id: (required) + The `OCID`__ of the VM instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.datacc.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.datacc.BaseinfraClient.stop_vm_instance` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.stop_vm_instance(vm_instance_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def update_infrastructure_and_wait_for_state(self, update_infrastructure_details, infrastructure_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.datacc.BaseinfraClient.update_infrastructure` and waits for the :py:class:`~oci.datacc.models.WorkRequest` + to enter the given state(s). + + :param oci.datacc.models.UpdateInfrastructureDetails update_infrastructure_details: (required) + The updated Database Infrastructure details. + + :param str infrastructure_id: (required) + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.datacc.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.datacc.BaseinfraClient.update_infrastructure` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.update_infrastructure(update_infrastructure_details, infrastructure_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def update_maintenance_run_and_wait_for_state(self, update_maintenance_run_details, maintenance_run_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.datacc.BaseinfraClient.update_maintenance_run` and waits for the :py:class:`~oci.datacc.models.WorkRequest` + to enter the given state(s). + + :param oci.datacc.models.UpdateMaintenanceRunDetails update_maintenance_run_details: (required) + The updated maintenance run details. + + :param str maintenance_run_id: (required) + The maintenance run OCID. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.datacc.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.datacc.BaseinfraClient.update_maintenance_run` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.update_maintenance_run(update_maintenance_run_details, maintenance_run_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def update_vm_cluster_network_and_wait_for_state(self, update_vm_cluster_network_details, vm_cluster_network_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.datacc.BaseinfraClient.update_vm_cluster_network` and waits for the :py:class:`~oci.datacc.models.WorkRequest` + to enter the given state(s). + + :param oci.datacc.models.UpdateVmClusterNetworkDetails update_vm_cluster_network_details: (required) + The updated VM cluster details. + + :param str vm_cluster_network_id: (required) + The `OCID`__ of the VM cluster network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.datacc.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.datacc.BaseinfraClient.update_vm_cluster_network` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.update_vm_cluster_network(update_vm_cluster_network_details, vm_cluster_network_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def update_vm_instance_and_wait_for_state(self, update_vm_instance_details, vm_instance_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.datacc.BaseinfraClient.update_vm_instance` and waits for the :py:class:`~oci.datacc.models.WorkRequest` + to enter the given state(s). + + :param oci.datacc.models.UpdateVmInstanceDetails update_vm_instance_details: (required) + The updated VM instance details. + + :param str vm_instance_id: (required) + The `OCID`__ of the VM instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.datacc.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.datacc.BaseinfraClient.update_vm_instance` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.update_vm_instance(update_vm_instance_details, vm_instance_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def validate_infrastructure_and_wait_for_state(self, validate_infrastructure_details, infrastructure_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.datacc.BaseinfraClient.validate_infrastructure` and waits for the :py:class:`~oci.datacc.models.WorkRequest` + to enter the given state(s). + + :param oci.datacc.models.ValidateInfrastructureDetails validate_infrastructure_details: (required) + The validation details for the Database Infrastructure. + + :param str infrastructure_id: (required) + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.datacc.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.datacc.BaseinfraClient.validate_infrastructure` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.validate_infrastructure(validate_infrastructure_details, infrastructure_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def validate_vm_cluster_network_and_wait_for_state(self, vm_cluster_network_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.datacc.BaseinfraClient.validate_vm_cluster_network` and waits for the :py:class:`~oci.datacc.models.WorkRequest` + to enter the given state(s). + + :param str vm_cluster_network_id: (required) + The `OCID`__ of the VM cluster network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.datacc.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.datacc.BaseinfraClient.validate_vm_cluster_network` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.validate_vm_cluster_network(vm_cluster_network_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) diff --git a/src/oci/datacc/models/__init__.py b/src/oci/datacc/models/__init__.py new file mode 100644 index 0000000000..41382d8af6 --- /dev/null +++ b/src/oci/datacc/models/__init__.py @@ -0,0 +1,114 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + +from __future__ import absolute_import + +from .acfs_capacity_details import AcfsCapacityDetails +from .activate_infrastructure_details import ActivateInfrastructureDetails +from .change_infrastructure_compartment_details import ChangeInfrastructureCompartmentDetails +from .change_vm_cluster_network_compartment_details import ChangeVmClusterNetworkCompartmentDetails +from .change_vm_instance_compartment_details import ChangeVmInstanceCompartmentDetails +from .compute_capacity_details import ComputeCapacityDetails +from .create_infrastructure_details import CreateInfrastructureDetails +from .create_vm_cluster_network_details import CreateVmClusterNetworkDetails +from .create_vm_instance_details import CreateVmInstanceDetails +from .disk_group_capacity_details import DiskGroupCapacityDetails +from .generate_recommended_vm_cluster_network_details import GenerateRecommendedVmClusterNetworkDetails +from .info_vm_network_details import InfoVmNetworkDetails +from .infrastructure import Infrastructure +from .infrastructure_collection import InfrastructureCollection +from .infrastructure_contact import InfrastructureContact +from .infrastructure_scale_option import InfrastructureScaleOption +from .infrastructure_server import InfrastructureServer +from .infrastructure_summary import InfrastructureSummary +from .maintenance_execution import MaintenanceExecution +from .maintenance_execution_collection import MaintenanceExecutionCollection +from .maintenance_execution_summary import MaintenanceExecutionSummary +from .maintenance_run import MaintenanceRun +from .maintenance_run_collection import MaintenanceRunCollection +from .maintenance_run_summary import MaintenanceRunSummary +from .maintenance_window import MaintenanceWindow +from .node_details import NodeDetails +from .reschedule_maintenance_run_details import RescheduleMaintenanceRunDetails +from .scale_infrastructure_storage_details import ScaleInfrastructureStorageDetails +from .scale_vm_instance_details import ScaleVmInstanceDetails +from .scan_details import ScanDetails +from .storage_capacity_details import StorageCapacityDetails +from .system_storage_capacity_details import SystemStorageCapacityDetails +from .update_infrastructure_details import UpdateInfrastructureDetails +from .update_maintenance_run_details import UpdateMaintenanceRunDetails +from .update_vm_cluster_network_details import UpdateVmClusterNetworkDetails +from .update_vm_instance_details import UpdateVmInstanceDetails +from .validate_infrastructure_details import ValidateInfrastructureDetails +from .vm_cluster_network import VmClusterNetwork +from .vm_cluster_network_collection import VmClusterNetworkCollection +from .vm_cluster_network_summary import VmClusterNetworkSummary +from .vm_instance import VmInstance +from .vm_instance_collection import VmInstanceCollection +from .vm_instance_summary import VmInstanceSummary +from .vm_network_details import VmNetworkDetails +from .work_request import WorkRequest +from .work_request_collection import WorkRequestCollection +from .work_request_error import WorkRequestError +from .work_request_error_collection import WorkRequestErrorCollection +from .work_request_log_entry import WorkRequestLogEntry +from .work_request_log_entry_collection import WorkRequestLogEntryCollection +from .work_request_resource import WorkRequestResource + +# Maps type names to classes for datacc services. +datacc_type_mapping = { + "AcfsCapacityDetails": AcfsCapacityDetails, + "ActivateInfrastructureDetails": ActivateInfrastructureDetails, + "ChangeInfrastructureCompartmentDetails": ChangeInfrastructureCompartmentDetails, + "ChangeVmClusterNetworkCompartmentDetails": ChangeVmClusterNetworkCompartmentDetails, + "ChangeVmInstanceCompartmentDetails": ChangeVmInstanceCompartmentDetails, + "ComputeCapacityDetails": ComputeCapacityDetails, + "CreateInfrastructureDetails": CreateInfrastructureDetails, + "CreateVmClusterNetworkDetails": CreateVmClusterNetworkDetails, + "CreateVmInstanceDetails": CreateVmInstanceDetails, + "DiskGroupCapacityDetails": DiskGroupCapacityDetails, + "GenerateRecommendedVmClusterNetworkDetails": GenerateRecommendedVmClusterNetworkDetails, + "InfoVmNetworkDetails": InfoVmNetworkDetails, + "Infrastructure": Infrastructure, + "InfrastructureCollection": InfrastructureCollection, + "InfrastructureContact": InfrastructureContact, + "InfrastructureScaleOption": InfrastructureScaleOption, + "InfrastructureServer": InfrastructureServer, + "InfrastructureSummary": InfrastructureSummary, + "MaintenanceExecution": MaintenanceExecution, + "MaintenanceExecutionCollection": MaintenanceExecutionCollection, + "MaintenanceExecutionSummary": MaintenanceExecutionSummary, + "MaintenanceRun": MaintenanceRun, + "MaintenanceRunCollection": MaintenanceRunCollection, + "MaintenanceRunSummary": MaintenanceRunSummary, + "MaintenanceWindow": MaintenanceWindow, + "NodeDetails": NodeDetails, + "RescheduleMaintenanceRunDetails": RescheduleMaintenanceRunDetails, + "ScaleInfrastructureStorageDetails": ScaleInfrastructureStorageDetails, + "ScaleVmInstanceDetails": ScaleVmInstanceDetails, + "ScanDetails": ScanDetails, + "StorageCapacityDetails": StorageCapacityDetails, + "SystemStorageCapacityDetails": SystemStorageCapacityDetails, + "UpdateInfrastructureDetails": UpdateInfrastructureDetails, + "UpdateMaintenanceRunDetails": UpdateMaintenanceRunDetails, + "UpdateVmClusterNetworkDetails": UpdateVmClusterNetworkDetails, + "UpdateVmInstanceDetails": UpdateVmInstanceDetails, + "ValidateInfrastructureDetails": ValidateInfrastructureDetails, + "VmClusterNetwork": VmClusterNetwork, + "VmClusterNetworkCollection": VmClusterNetworkCollection, + "VmClusterNetworkSummary": VmClusterNetworkSummary, + "VmInstance": VmInstance, + "VmInstanceCollection": VmInstanceCollection, + "VmInstanceSummary": VmInstanceSummary, + "VmNetworkDetails": VmNetworkDetails, + "WorkRequest": WorkRequest, + "WorkRequestCollection": WorkRequestCollection, + "WorkRequestError": WorkRequestError, + "WorkRequestErrorCollection": WorkRequestErrorCollection, + "WorkRequestLogEntry": WorkRequestLogEntry, + "WorkRequestLogEntryCollection": WorkRequestLogEntryCollection, + "WorkRequestResource": WorkRequestResource +} diff --git a/src/oci/datacc/models/acfs_capacity_details.py b/src/oci/datacc/models/acfs_capacity_details.py new file mode 100644 index 0000000000..b4cb4232a2 --- /dev/null +++ b/src/oci/datacc/models/acfs_capacity_details.py @@ -0,0 +1,101 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class AcfsCapacityDetails(object): + """ + The amount of storage (in GB) in the DATA disk group that is currently utilized for creating local storage for VM Clusters and application VMs. + """ + + def __init__(self, **kwargs): + """ + Initializes a new AcfsCapacityDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param total_space_in_gbs: + The value to assign to the total_space_in_gbs property of this AcfsCapacityDetails. + :type total_space_in_gbs: float + + :param free_space_in_gbs: + The value to assign to the free_space_in_gbs property of this AcfsCapacityDetails. + :type free_space_in_gbs: float + + """ + self.swagger_types = { + 'total_space_in_gbs': 'float', + 'free_space_in_gbs': 'float' + } + self.attribute_map = { + 'total_space_in_gbs': 'totalSpaceInGbs', + 'free_space_in_gbs': 'freeSpaceInGbs' + } + self._total_space_in_gbs = None + self._free_space_in_gbs = None + + @property + def total_space_in_gbs(self): + """ + Gets the total_space_in_gbs of this AcfsCapacityDetails. + The total amount of logical disk space available, in gigabytes (GB). + + + :return: The total_space_in_gbs of this AcfsCapacityDetails. + :rtype: float + """ + return self._total_space_in_gbs + + @total_space_in_gbs.setter + def total_space_in_gbs(self, total_space_in_gbs): + """ + Sets the total_space_in_gbs of this AcfsCapacityDetails. + The total amount of logical disk space available, in gigabytes (GB). + + + :param total_space_in_gbs: The total_space_in_gbs of this AcfsCapacityDetails. + :type: float + """ + self._total_space_in_gbs = total_space_in_gbs + + @property + def free_space_in_gbs(self): + """ + Gets the free_space_in_gbs of this AcfsCapacityDetails. + The total amount of logical disk space that is currently available for use, in gigabytes (GB). + + + :return: The free_space_in_gbs of this AcfsCapacityDetails. + :rtype: float + """ + return self._free_space_in_gbs + + @free_space_in_gbs.setter + def free_space_in_gbs(self, free_space_in_gbs): + """ + Sets the free_space_in_gbs of this AcfsCapacityDetails. + The total amount of logical disk space that is currently available for use, in gigabytes (GB). + + + :param free_space_in_gbs: The free_space_in_gbs of this AcfsCapacityDetails. + :type: float + """ + self._free_space_in_gbs = free_space_in_gbs + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/activate_infrastructure_details.py b/src/oci/datacc/models/activate_infrastructure_details.py new file mode 100644 index 0000000000..b6c64d6e3a --- /dev/null +++ b/src/oci/datacc/models/activate_infrastructure_details.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ActivateInfrastructureDetails(object): + """ + The activation details for the Database Infrastructure. + """ + + def __init__(self, **kwargs): + """ + Initializes a new ActivateInfrastructureDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param activation_zip_file: + The value to assign to the activation_zip_file property of this ActivateInfrastructureDetails. + :type activation_zip_file: str + + """ + self.swagger_types = { + 'activation_zip_file': 'str' + } + self.attribute_map = { + 'activation_zip_file': 'activationZipFile' + } + self._activation_zip_file = None + + @property + def activation_zip_file(self): + """ + **[Required]** Gets the activation_zip_file of this ActivateInfrastructureDetails. + The activation zip file. + + + :return: The activation_zip_file of this ActivateInfrastructureDetails. + :rtype: str + """ + return self._activation_zip_file + + @activation_zip_file.setter + def activation_zip_file(self, activation_zip_file): + """ + Sets the activation_zip_file of this ActivateInfrastructureDetails. + The activation zip file. + + + :param activation_zip_file: The activation_zip_file of this ActivateInfrastructureDetails. + :type: str + """ + self._activation_zip_file = activation_zip_file + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/change_infrastructure_compartment_details.py b/src/oci/datacc/models/change_infrastructure_compartment_details.py new file mode 100644 index 0000000000..2dd99a8ee5 --- /dev/null +++ b/src/oci/datacc/models/change_infrastructure_compartment_details.py @@ -0,0 +1,74 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ChangeInfrastructureCompartmentDetails(object): + """ + Updated compartment details. + """ + + def __init__(self, **kwargs): + """ + Initializes a new ChangeInfrastructureCompartmentDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param compartment_id: + The value to assign to the compartment_id property of this ChangeInfrastructureCompartmentDetails. + :type compartment_id: str + + """ + self.swagger_types = { + 'compartment_id': 'str' + } + self.attribute_map = { + 'compartment_id': 'compartmentId' + } + self._compartment_id = None + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this ChangeInfrastructureCompartmentDetails. + The `OCID`__ of the compartment to which the Database Infrastructure Cloud@Customer is moving. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this ChangeInfrastructureCompartmentDetails. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this ChangeInfrastructureCompartmentDetails. + The `OCID`__ of the compartment to which the Database Infrastructure Cloud@Customer is moving. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this ChangeInfrastructureCompartmentDetails. + :type: str + """ + self._compartment_id = compartment_id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/change_vm_cluster_network_compartment_details.py b/src/oci/datacc/models/change_vm_cluster_network_compartment_details.py new file mode 100644 index 0000000000..da1ea28a1f --- /dev/null +++ b/src/oci/datacc/models/change_vm_cluster_network_compartment_details.py @@ -0,0 +1,74 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ChangeVmClusterNetworkCompartmentDetails(object): + """ + Updated compartment details. + """ + + def __init__(self, **kwargs): + """ + Initializes a new ChangeVmClusterNetworkCompartmentDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param compartment_id: + The value to assign to the compartment_id property of this ChangeVmClusterNetworkCompartmentDetails. + :type compartment_id: str + + """ + self.swagger_types = { + 'compartment_id': 'str' + } + self.attribute_map = { + 'compartment_id': 'compartmentId' + } + self._compartment_id = None + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this ChangeVmClusterNetworkCompartmentDetails. + The `OCID`__ of the compartment to which the VM cluster network is moving. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this ChangeVmClusterNetworkCompartmentDetails. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this ChangeVmClusterNetworkCompartmentDetails. + The `OCID`__ of the compartment to which the VM cluster network is moving. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this ChangeVmClusterNetworkCompartmentDetails. + :type: str + """ + self._compartment_id = compartment_id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/change_vm_instance_compartment_details.py b/src/oci/datacc/models/change_vm_instance_compartment_details.py new file mode 100644 index 0000000000..fda016583a --- /dev/null +++ b/src/oci/datacc/models/change_vm_instance_compartment_details.py @@ -0,0 +1,74 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ChangeVmInstanceCompartmentDetails(object): + """ + Updated compartment details. + """ + + def __init__(self, **kwargs): + """ + Initializes a new ChangeVmInstanceCompartmentDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param compartment_id: + The value to assign to the compartment_id property of this ChangeVmInstanceCompartmentDetails. + :type compartment_id: str + + """ + self.swagger_types = { + 'compartment_id': 'str' + } + self.attribute_map = { + 'compartment_id': 'compartmentId' + } + self._compartment_id = None + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this ChangeVmInstanceCompartmentDetails. + The `OCID`__ of the compartment to which the VM instance is moving. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this ChangeVmInstanceCompartmentDetails. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this ChangeVmInstanceCompartmentDetails. + The `OCID`__ of the compartment to which the VM instance is moving. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this ChangeVmInstanceCompartmentDetails. + :type: str + """ + self._compartment_id = compartment_id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/compute_capacity_details.py b/src/oci/datacc/models/compute_capacity_details.py new file mode 100644 index 0000000000..558f28ad20 --- /dev/null +++ b/src/oci/datacc/models/compute_capacity_details.py @@ -0,0 +1,287 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ComputeCapacityDetails(object): + """ + Capacity details of the Database Infrastructure. + """ + + def __init__(self, **kwargs): + """ + Initializes a new ComputeCapacityDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param total_cores: + The value to assign to the total_cores property of this ComputeCapacityDetails. + :type total_cores: int + + :param allocated_cores: + The value to assign to the allocated_cores property of this ComputeCapacityDetails. + :type allocated_cores: int + + :param reserved_cores: + The value to assign to the reserved_cores property of this ComputeCapacityDetails. + :type reserved_cores: int + + :param available_cores: + The value to assign to the available_cores property of this ComputeCapacityDetails. + :type available_cores: int + + :param total_memory_in_gbs: + The value to assign to the total_memory_in_gbs property of this ComputeCapacityDetails. + :type total_memory_in_gbs: int + + :param used_memory_in_gbs: + The value to assign to the used_memory_in_gbs property of this ComputeCapacityDetails. + :type used_memory_in_gbs: int + + :param reserved_memory_in_gbs: + The value to assign to the reserved_memory_in_gbs property of this ComputeCapacityDetails. + :type reserved_memory_in_gbs: int + + :param available_memory_in_gbs: + The value to assign to the available_memory_in_gbs property of this ComputeCapacityDetails. + :type available_memory_in_gbs: int + + """ + self.swagger_types = { + 'total_cores': 'int', + 'allocated_cores': 'int', + 'reserved_cores': 'int', + 'available_cores': 'int', + 'total_memory_in_gbs': 'int', + 'used_memory_in_gbs': 'int', + 'reserved_memory_in_gbs': 'int', + 'available_memory_in_gbs': 'int' + } + self.attribute_map = { + 'total_cores': 'totalCores', + 'allocated_cores': 'allocatedCores', + 'reserved_cores': 'reservedCores', + 'available_cores': 'availableCores', + 'total_memory_in_gbs': 'totalMemoryInGBs', + 'used_memory_in_gbs': 'usedMemoryInGBs', + 'reserved_memory_in_gbs': 'reservedMemoryInGBs', + 'available_memory_in_gbs': 'availableMemoryInGBs' + } + self._total_cores = None + self._allocated_cores = None + self._reserved_cores = None + self._available_cores = None + self._total_memory_in_gbs = None + self._used_memory_in_gbs = None + self._reserved_memory_in_gbs = None + self._available_memory_in_gbs = None + + @property + def total_cores(self): + """ + Gets the total_cores of this ComputeCapacityDetails. + Total CPU cores count. + + + :return: The total_cores of this ComputeCapacityDetails. + :rtype: int + """ + return self._total_cores + + @total_cores.setter + def total_cores(self, total_cores): + """ + Sets the total_cores of this ComputeCapacityDetails. + Total CPU cores count. + + + :param total_cores: The total_cores of this ComputeCapacityDetails. + :type: int + """ + self._total_cores = total_cores + + @property + def allocated_cores(self): + """ + Gets the allocated_cores of this ComputeCapacityDetails. + Total CPU cores count allocated.. + + + :return: The allocated_cores of this ComputeCapacityDetails. + :rtype: int + """ + return self._allocated_cores + + @allocated_cores.setter + def allocated_cores(self, allocated_cores): + """ + Sets the allocated_cores of this ComputeCapacityDetails. + Total CPU cores count allocated.. + + + :param allocated_cores: The allocated_cores of this ComputeCapacityDetails. + :type: int + """ + self._allocated_cores = allocated_cores + + @property + def reserved_cores(self): + """ + Gets the reserved_cores of this ComputeCapacityDetails. + Total Reserved CPU cores count. + + + :return: The reserved_cores of this ComputeCapacityDetails. + :rtype: int + """ + return self._reserved_cores + + @reserved_cores.setter + def reserved_cores(self, reserved_cores): + """ + Sets the reserved_cores of this ComputeCapacityDetails. + Total Reserved CPU cores count. + + + :param reserved_cores: The reserved_cores of this ComputeCapacityDetails. + :type: int + """ + self._reserved_cores = reserved_cores + + @property + def available_cores(self): + """ + Gets the available_cores of this ComputeCapacityDetails. + Total available CPU cores count. + + + :return: The available_cores of this ComputeCapacityDetails. + :rtype: int + """ + return self._available_cores + + @available_cores.setter + def available_cores(self, available_cores): + """ + Sets the available_cores of this ComputeCapacityDetails. + Total available CPU cores count. + + + :param available_cores: The available_cores of this ComputeCapacityDetails. + :type: int + """ + self._available_cores = available_cores + + @property + def total_memory_in_gbs(self): + """ + Gets the total_memory_in_gbs of this ComputeCapacityDetails. + Total memory allocated, in gigabytes (GB). + + + :return: The total_memory_in_gbs of this ComputeCapacityDetails. + :rtype: int + """ + return self._total_memory_in_gbs + + @total_memory_in_gbs.setter + def total_memory_in_gbs(self, total_memory_in_gbs): + """ + Sets the total_memory_in_gbs of this ComputeCapacityDetails. + Total memory allocated, in gigabytes (GB). + + + :param total_memory_in_gbs: The total_memory_in_gbs of this ComputeCapacityDetails. + :type: int + """ + self._total_memory_in_gbs = total_memory_in_gbs + + @property + def used_memory_in_gbs(self): + """ + Gets the used_memory_in_gbs of this ComputeCapacityDetails. + Memory allocated to Oracle database virtual machine cluster or Instance, in gigabytes (GB). + + + :return: The used_memory_in_gbs of this ComputeCapacityDetails. + :rtype: int + """ + return self._used_memory_in_gbs + + @used_memory_in_gbs.setter + def used_memory_in_gbs(self, used_memory_in_gbs): + """ + Sets the used_memory_in_gbs of this ComputeCapacityDetails. + Memory allocated to Oracle database virtual machine cluster or Instance, in gigabytes (GB). + + + :param used_memory_in_gbs: The used_memory_in_gbs of this ComputeCapacityDetails. + :type: int + """ + self._used_memory_in_gbs = used_memory_in_gbs + + @property + def reserved_memory_in_gbs(self): + """ + Gets the reserved_memory_in_gbs of this ComputeCapacityDetails. + Reserved memory, in gigabytes (GB). + + + :return: The reserved_memory_in_gbs of this ComputeCapacityDetails. + :rtype: int + """ + return self._reserved_memory_in_gbs + + @reserved_memory_in_gbs.setter + def reserved_memory_in_gbs(self, reserved_memory_in_gbs): + """ + Sets the reserved_memory_in_gbs of this ComputeCapacityDetails. + Reserved memory, in gigabytes (GB). + + + :param reserved_memory_in_gbs: The reserved_memory_in_gbs of this ComputeCapacityDetails. + :type: int + """ + self._reserved_memory_in_gbs = reserved_memory_in_gbs + + @property + def available_memory_in_gbs(self): + """ + Gets the available_memory_in_gbs of this ComputeCapacityDetails. + Available memory, in gigabytes (GB). + + + :return: The available_memory_in_gbs of this ComputeCapacityDetails. + :rtype: int + """ + return self._available_memory_in_gbs + + @available_memory_in_gbs.setter + def available_memory_in_gbs(self, available_memory_in_gbs): + """ + Sets the available_memory_in_gbs of this ComputeCapacityDetails. + Available memory, in gigabytes (GB). + + + :param available_memory_in_gbs: The available_memory_in_gbs of this ComputeCapacityDetails. + :type: int + """ + self._available_memory_in_gbs = available_memory_in_gbs + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/create_infrastructure_details.py b/src/oci/datacc/models/create_infrastructure_details.py new file mode 100644 index 0000000000..9e425fdd13 --- /dev/null +++ b/src/oci/datacc/models/create_infrastructure_details.py @@ -0,0 +1,1039 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateInfrastructureDetails(object): + """ + Request to create Database Infrastructure resource. + """ + + #: A constant which can be used with the system_model property of a CreateInfrastructureDetails. + #: This constant has a value of "X11_HA_768" + SYSTEM_MODEL_X11_HA_768 = "X11_HA_768" + + #: A constant which can be used with the system_model property of a CreateInfrastructureDetails. + #: This constant has a value of "X10_HA_512" + SYSTEM_MODEL_X10_HA_512 = "X10_HA_512" + + #: A constant which can be used with the system_model property of a CreateInfrastructureDetails. + #: This constant has a value of "X8_HA_384" + SYSTEM_MODEL_X8_HA_384 = "X8_HA_384" + + #: A constant which can be used with the shape property of a CreateInfrastructureDetails. + #: This constant has a value of "SIX_SSDS" + SHAPE_SIX_SSDS = "SIX_SSDS" + + #: A constant which can be used with the shape property of a CreateInfrastructureDetails. + #: This constant has a value of "TWELVE_SSDS" + SHAPE_TWELVE_SSDS = "TWELVE_SSDS" + + #: A constant which can be used with the shape property of a CreateInfrastructureDetails. + #: This constant has a value of "EIGHTEEN_SSDS" + SHAPE_EIGHTEEN_SSDS = "EIGHTEEN_SSDS" + + #: A constant which can be used with the shape property of a CreateInfrastructureDetails. + #: This constant has a value of "TWENTY_FOUR_SSDS" + SHAPE_TWENTY_FOUR_SSDS = "TWENTY_FOUR_SSDS" + + #: A constant which can be used with the client_network_bonding_mode property of a CreateInfrastructureDetails. + #: This constant has a value of "ACTIVE_BACKUP" + CLIENT_NETWORK_BONDING_MODE_ACTIVE_BACKUP = "ACTIVE_BACKUP" + + #: A constant which can be used with the client_network_bonding_mode property of a CreateInfrastructureDetails. + #: This constant has a value of "LACP" + CLIENT_NETWORK_BONDING_MODE_LACP = "LACP" + + #: A constant which can be used with the backup_network_bonding_mode property of a CreateInfrastructureDetails. + #: This constant has a value of "ACTIVE_BACKUP" + BACKUP_NETWORK_BONDING_MODE_ACTIVE_BACKUP = "ACTIVE_BACKUP" + + #: A constant which can be used with the backup_network_bonding_mode property of a CreateInfrastructureDetails. + #: This constant has a value of "LACP" + BACKUP_NETWORK_BONDING_MODE_LACP = "LACP" + + #: A constant which can be used with the cps_network_bonding_mode property of a CreateInfrastructureDetails. + #: This constant has a value of "ACTIVE_BACKUP" + CPS_NETWORK_BONDING_MODE_ACTIVE_BACKUP = "ACTIVE_BACKUP" + + #: A constant which can be used with the cps_network_bonding_mode property of a CreateInfrastructureDetails. + #: This constant has a value of "LACP" + CPS_NETWORK_BONDING_MODE_LACP = "LACP" + + #: A constant which can be used with the client_network_bonding_interface property of a CreateInfrastructureDetails. + #: This constant has a value of "BTBOND1" + CLIENT_NETWORK_BONDING_INTERFACE_BTBOND1 = "BTBOND1" + + #: A constant which can be used with the client_network_bonding_interface property of a CreateInfrastructureDetails. + #: This constant has a value of "BTBOND2" + CLIENT_NETWORK_BONDING_INTERFACE_BTBOND2 = "BTBOND2" + + #: A constant which can be used with the client_network_bonding_interface property of a CreateInfrastructureDetails. + #: This constant has a value of "BTBOND3" + CLIENT_NETWORK_BONDING_INTERFACE_BTBOND3 = "BTBOND3" + + #: A constant which can be used with the client_network_bonding_interface property of a CreateInfrastructureDetails. + #: This constant has a value of "BTBOND4" + CLIENT_NETWORK_BONDING_INTERFACE_BTBOND4 = "BTBOND4" + + #: A constant which can be used with the client_network_bonding_interface property of a CreateInfrastructureDetails. + #: This constant has a value of "BTBOND5" + CLIENT_NETWORK_BONDING_INTERFACE_BTBOND5 = "BTBOND5" + + #: A constant which can be used with the client_network_bonding_interface property of a CreateInfrastructureDetails. + #: This constant has a value of "BTBOND6" + CLIENT_NETWORK_BONDING_INTERFACE_BTBOND6 = "BTBOND6" + + #: A constant which can be used with the backup_network_bonding_interface property of a CreateInfrastructureDetails. + #: This constant has a value of "BTBOND1" + BACKUP_NETWORK_BONDING_INTERFACE_BTBOND1 = "BTBOND1" + + #: A constant which can be used with the backup_network_bonding_interface property of a CreateInfrastructureDetails. + #: This constant has a value of "BTBOND2" + BACKUP_NETWORK_BONDING_INTERFACE_BTBOND2 = "BTBOND2" + + #: A constant which can be used with the backup_network_bonding_interface property of a CreateInfrastructureDetails. + #: This constant has a value of "BTBOND3" + BACKUP_NETWORK_BONDING_INTERFACE_BTBOND3 = "BTBOND3" + + #: A constant which can be used with the backup_network_bonding_interface property of a CreateInfrastructureDetails. + #: This constant has a value of "BTBOND4" + BACKUP_NETWORK_BONDING_INTERFACE_BTBOND4 = "BTBOND4" + + #: A constant which can be used with the backup_network_bonding_interface property of a CreateInfrastructureDetails. + #: This constant has a value of "BTBOND5" + BACKUP_NETWORK_BONDING_INTERFACE_BTBOND5 = "BTBOND5" + + #: A constant which can be used with the backup_network_bonding_interface property of a CreateInfrastructureDetails. + #: This constant has a value of "BTBOND6" + BACKUP_NETWORK_BONDING_INTERFACE_BTBOND6 = "BTBOND6" + + #: A constant which can be used with the cps_network_bonding_interface property of a CreateInfrastructureDetails. + #: This constant has a value of "BTBOND1" + CPS_NETWORK_BONDING_INTERFACE_BTBOND1 = "BTBOND1" + + #: A constant which can be used with the cps_network_bonding_interface property of a CreateInfrastructureDetails. + #: This constant has a value of "BTBOND2" + CPS_NETWORK_BONDING_INTERFACE_BTBOND2 = "BTBOND2" + + #: A constant which can be used with the cps_network_bonding_interface property of a CreateInfrastructureDetails. + #: This constant has a value of "BTBOND3" + CPS_NETWORK_BONDING_INTERFACE_BTBOND3 = "BTBOND3" + + #: A constant which can be used with the cps_network_bonding_interface property of a CreateInfrastructureDetails. + #: This constant has a value of "BTBOND4" + CPS_NETWORK_BONDING_INTERFACE_BTBOND4 = "BTBOND4" + + #: A constant which can be used with the cps_network_bonding_interface property of a CreateInfrastructureDetails. + #: This constant has a value of "BTBOND5" + CPS_NETWORK_BONDING_INTERFACE_BTBOND5 = "BTBOND5" + + #: A constant which can be used with the cps_network_bonding_interface property of a CreateInfrastructureDetails. + #: This constant has a value of "BTBOND6" + CPS_NETWORK_BONDING_INTERFACE_BTBOND6 = "BTBOND6" + + def __init__(self, **kwargs): + """ + Initializes a new CreateInfrastructureDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param description: + The value to assign to the description property of this CreateInfrastructureDetails. + :type description: str + + :param compartment_id: + The value to assign to the compartment_id property of this CreateInfrastructureDetails. + :type compartment_id: str + + :param display_name: + The value to assign to the display_name property of this CreateInfrastructureDetails. + :type display_name: str + + :param system_model: + The value to assign to the system_model property of this CreateInfrastructureDetails. + Allowed values for this property are: "X11_HA_768", "X10_HA_512", "X8_HA_384" + :type system_model: str + + :param shape: + The value to assign to the shape property of this CreateInfrastructureDetails. + Allowed values for this property are: "SIX_SSDS", "TWELVE_SSDS", "EIGHTEEN_SSDS", "TWENTY_FOUR_SSDS" + :type shape: str + + :param cloud_control_plane_server1: + The value to assign to the cloud_control_plane_server1 property of this CreateInfrastructureDetails. + :type cloud_control_plane_server1: str + + :param cloud_control_plane_server2: + The value to assign to the cloud_control_plane_server2 property of this CreateInfrastructureDetails. + :type cloud_control_plane_server2: str + + :param netmask: + The value to assign to the netmask property of this CreateInfrastructureDetails. + :type netmask: str + + :param gateway: + The value to assign to the gateway property of this CreateInfrastructureDetails. + :type gateway: str + + :param admin_networkcidr: + The value to assign to the admin_networkcidr property of this CreateInfrastructureDetails. + :type admin_networkcidr: str + + :param data_disk_percentage: + The value to assign to the data_disk_percentage property of this CreateInfrastructureDetails. + :type data_disk_percentage: int + + :param contacts: + The value to assign to the contacts property of this CreateInfrastructureDetails. + :type contacts: list[oci.datacc.models.InfrastructureContact] + + :param dns_servers: + The value to assign to the dns_servers property of this CreateInfrastructureDetails. + :type dns_servers: list[str] + + :param ntp_servers: + The value to assign to the ntp_servers property of this CreateInfrastructureDetails. + :type ntp_servers: list[str] + + :param client_network_bonding_mode: + The value to assign to the client_network_bonding_mode property of this CreateInfrastructureDetails. + Allowed values for this property are: "ACTIVE_BACKUP", "LACP" + :type client_network_bonding_mode: str + + :param backup_network_bonding_mode: + The value to assign to the backup_network_bonding_mode property of this CreateInfrastructureDetails. + Allowed values for this property are: "ACTIVE_BACKUP", "LACP" + :type backup_network_bonding_mode: str + + :param cps_network_bonding_mode: + The value to assign to the cps_network_bonding_mode property of this CreateInfrastructureDetails. + Allowed values for this property are: "ACTIVE_BACKUP", "LACP" + :type cps_network_bonding_mode: str + + :param client_network_bonding_interface: + The value to assign to the client_network_bonding_interface property of this CreateInfrastructureDetails. + Allowed values for this property are: "BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6" + :type client_network_bonding_interface: str + + :param backup_network_bonding_interface: + The value to assign to the backup_network_bonding_interface property of this CreateInfrastructureDetails. + Allowed values for this property are: "BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6" + :type backup_network_bonding_interface: str + + :param cps_network_bonding_interface: + The value to assign to the cps_network_bonding_interface property of this CreateInfrastructureDetails. + Allowed values for this property are: "BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6" + :type cps_network_bonding_interface: str + + :param acfs_file_system_storage_in_gbs: + The value to assign to the acfs_file_system_storage_in_gbs property of this CreateInfrastructureDetails. + :type acfs_file_system_storage_in_gbs: float + + :param corporate_proxy: + The value to assign to the corporate_proxy property of this CreateInfrastructureDetails. + :type corporate_proxy: str + + :param vlan_id: + The value to assign to the vlan_id property of this CreateInfrastructureDetails. + :type vlan_id: str + + :param maintenance_window: + The value to assign to the maintenance_window property of this CreateInfrastructureDetails. + :type maintenance_window: oci.datacc.models.MaintenanceWindow + + :param freeform_tags: + The value to assign to the freeform_tags property of this CreateInfrastructureDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this CreateInfrastructureDetails. + :type defined_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'description': 'str', + 'compartment_id': 'str', + 'display_name': 'str', + 'system_model': 'str', + 'shape': 'str', + 'cloud_control_plane_server1': 'str', + 'cloud_control_plane_server2': 'str', + 'netmask': 'str', + 'gateway': 'str', + 'admin_networkcidr': 'str', + 'data_disk_percentage': 'int', + 'contacts': 'list[InfrastructureContact]', + 'dns_servers': 'list[str]', + 'ntp_servers': 'list[str]', + 'client_network_bonding_mode': 'str', + 'backup_network_bonding_mode': 'str', + 'cps_network_bonding_mode': 'str', + 'client_network_bonding_interface': 'str', + 'backup_network_bonding_interface': 'str', + 'cps_network_bonding_interface': 'str', + 'acfs_file_system_storage_in_gbs': 'float', + 'corporate_proxy': 'str', + 'vlan_id': 'str', + 'maintenance_window': 'MaintenanceWindow', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'description': 'description', + 'compartment_id': 'compartmentId', + 'display_name': 'displayName', + 'system_model': 'systemModel', + 'shape': 'shape', + 'cloud_control_plane_server1': 'cloudControlPlaneServer1', + 'cloud_control_plane_server2': 'cloudControlPlaneServer2', + 'netmask': 'netmask', + 'gateway': 'gateway', + 'admin_networkcidr': 'adminNetworkcidr', + 'data_disk_percentage': 'dataDiskPercentage', + 'contacts': 'contacts', + 'dns_servers': 'dnsServers', + 'ntp_servers': 'ntpServers', + 'client_network_bonding_mode': 'clientNetworkBondingMode', + 'backup_network_bonding_mode': 'backupNetworkBondingMode', + 'cps_network_bonding_mode': 'cpsNetworkBondingMode', + 'client_network_bonding_interface': 'clientNetworkBondingInterface', + 'backup_network_bonding_interface': 'backupNetworkBondingInterface', + 'cps_network_bonding_interface': 'cpsNetworkBondingInterface', + 'acfs_file_system_storage_in_gbs': 'acfsFileSystemStorageInGbs', + 'corporate_proxy': 'corporateProxy', + 'vlan_id': 'vlanId', + 'maintenance_window': 'maintenanceWindow', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' + } + self._description = None + self._compartment_id = None + self._display_name = None + self._system_model = None + self._shape = None + self._cloud_control_plane_server1 = None + self._cloud_control_plane_server2 = None + self._netmask = None + self._gateway = None + self._admin_networkcidr = None + self._data_disk_percentage = None + self._contacts = None + self._dns_servers = None + self._ntp_servers = None + self._client_network_bonding_mode = None + self._backup_network_bonding_mode = None + self._cps_network_bonding_mode = None + self._client_network_bonding_interface = None + self._backup_network_bonding_interface = None + self._cps_network_bonding_interface = None + self._acfs_file_system_storage_in_gbs = None + self._corporate_proxy = None + self._vlan_id = None + self._maintenance_window = None + self._freeform_tags = None + self._defined_tags = None + + @property + def description(self): + """ + Gets the description of this CreateInfrastructureDetails. + Database Infrastructure description. + + + :return: The description of this CreateInfrastructureDetails. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this CreateInfrastructureDetails. + Database Infrastructure description. + + + :param description: The description of this CreateInfrastructureDetails. + :type: str + """ + self._description = description + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this CreateInfrastructureDetails. + The `OCID`__ of the compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this CreateInfrastructureDetails. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this CreateInfrastructureDetails. + The `OCID`__ of the compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this CreateInfrastructureDetails. + :type: str + """ + self._compartment_id = compartment_id + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this CreateInfrastructureDetails. + The user-friendly name for the Database Infrastructure. The name does not need to be unique. + + + :return: The display_name of this CreateInfrastructureDetails. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this CreateInfrastructureDetails. + The user-friendly name for the Database Infrastructure. The name does not need to be unique. + + + :param display_name: The display_name of this CreateInfrastructureDetails. + :type: str + """ + self._display_name = display_name + + @property + def system_model(self): + """ + **[Required]** Gets the system_model of this CreateInfrastructureDetails. + Database Infrastructure System Model specification. The system model determines the model of the Database Infrastructure hardware to be used. + + Allowed values for this property are: "X11_HA_768", "X10_HA_512", "X8_HA_384" + + + :return: The system_model of this CreateInfrastructureDetails. + :rtype: str + """ + return self._system_model + + @system_model.setter + def system_model(self, system_model): + """ + Sets the system_model of this CreateInfrastructureDetails. + Database Infrastructure System Model specification. The system model determines the model of the Database Infrastructure hardware to be used. + + + :param system_model: The system_model of this CreateInfrastructureDetails. + :type: str + """ + allowed_values = ["X11_HA_768", "X10_HA_512", "X8_HA_384"] + if not value_allowed_none_or_none_sentinel(system_model, allowed_values): + raise ValueError( + f"Invalid value for `system_model`, must be None or one of {allowed_values}" + ) + self._system_model = system_model + + @property + def shape(self): + """ + **[Required]** Gets the shape of this CreateInfrastructureDetails. + The shape of the Database Infrastructure. The shape determines the amount of CPU, storage, and memory resources allocated to the instance. + + Allowed values for this property are: "SIX_SSDS", "TWELVE_SSDS", "EIGHTEEN_SSDS", "TWENTY_FOUR_SSDS" + + + :return: The shape of this CreateInfrastructureDetails. + :rtype: str + """ + return self._shape + + @shape.setter + def shape(self, shape): + """ + Sets the shape of this CreateInfrastructureDetails. + The shape of the Database Infrastructure. The shape determines the amount of CPU, storage, and memory resources allocated to the instance. + + + :param shape: The shape of this CreateInfrastructureDetails. + :type: str + """ + allowed_values = ["SIX_SSDS", "TWELVE_SSDS", "EIGHTEEN_SSDS", "TWENTY_FOUR_SSDS"] + if not value_allowed_none_or_none_sentinel(shape, allowed_values): + raise ValueError( + f"Invalid value for `shape`, must be None or one of {allowed_values}" + ) + self._shape = shape + + @property + def cloud_control_plane_server1(self): + """ + **[Required]** Gets the cloud_control_plane_server1 of this CreateInfrastructureDetails. + The IP address for the first control plane server. + + + :return: The cloud_control_plane_server1 of this CreateInfrastructureDetails. + :rtype: str + """ + return self._cloud_control_plane_server1 + + @cloud_control_plane_server1.setter + def cloud_control_plane_server1(self, cloud_control_plane_server1): + """ + Sets the cloud_control_plane_server1 of this CreateInfrastructureDetails. + The IP address for the first control plane server. + + + :param cloud_control_plane_server1: The cloud_control_plane_server1 of this CreateInfrastructureDetails. + :type: str + """ + self._cloud_control_plane_server1 = cloud_control_plane_server1 + + @property + def cloud_control_plane_server2(self): + """ + **[Required]** Gets the cloud_control_plane_server2 of this CreateInfrastructureDetails. + The IP address for the second control plane server. + + + :return: The cloud_control_plane_server2 of this CreateInfrastructureDetails. + :rtype: str + """ + return self._cloud_control_plane_server2 + + @cloud_control_plane_server2.setter + def cloud_control_plane_server2(self, cloud_control_plane_server2): + """ + Sets the cloud_control_plane_server2 of this CreateInfrastructureDetails. + The IP address for the second control plane server. + + + :param cloud_control_plane_server2: The cloud_control_plane_server2 of this CreateInfrastructureDetails. + :type: str + """ + self._cloud_control_plane_server2 = cloud_control_plane_server2 + + @property + def netmask(self): + """ + **[Required]** Gets the netmask of this CreateInfrastructureDetails. + The netmask for the control plane network. + + + :return: The netmask of this CreateInfrastructureDetails. + :rtype: str + """ + return self._netmask + + @netmask.setter + def netmask(self, netmask): + """ + Sets the netmask of this CreateInfrastructureDetails. + The netmask for the control plane network. + + + :param netmask: The netmask of this CreateInfrastructureDetails. + :type: str + """ + self._netmask = netmask + + @property + def gateway(self): + """ + **[Required]** Gets the gateway of this CreateInfrastructureDetails. + The gateway for the control plane network. + + + :return: The gateway of this CreateInfrastructureDetails. + :rtype: str + """ + return self._gateway + + @gateway.setter + def gateway(self, gateway): + """ + Sets the gateway of this CreateInfrastructureDetails. + The gateway for the control plane network. + + + :param gateway: The gateway of this CreateInfrastructureDetails. + :type: str + """ + self._gateway = gateway + + @property + def admin_networkcidr(self): + """ + Gets the admin_networkcidr of this CreateInfrastructureDetails. + The CIDR block for the system network. The system network is a private network in Database Infrastructure and is not connected to your corporate network. The system network is used for storage (ASM) traffic, high-performance interconnect traffic and administration of infrastructure components. + + + :return: The admin_networkcidr of this CreateInfrastructureDetails. + :rtype: str + """ + return self._admin_networkcidr + + @admin_networkcidr.setter + def admin_networkcidr(self, admin_networkcidr): + """ + Sets the admin_networkcidr of this CreateInfrastructureDetails. + The CIDR block for the system network. The system network is a private network in Database Infrastructure and is not connected to your corporate network. The system network is used for storage (ASM) traffic, high-performance interconnect traffic and administration of infrastructure components. + + + :param admin_networkcidr: The admin_networkcidr of this CreateInfrastructureDetails. + :type: str + """ + self._admin_networkcidr = admin_networkcidr + + @property + def data_disk_percentage(self): + """ + Gets the data_disk_percentage of this CreateInfrastructureDetails. + Percentage of disk space assigned for DATA disk group. Remaining disk space will get assiged to RECO disk group + + + :return: The data_disk_percentage of this CreateInfrastructureDetails. + :rtype: int + """ + return self._data_disk_percentage + + @data_disk_percentage.setter + def data_disk_percentage(self, data_disk_percentage): + """ + Sets the data_disk_percentage of this CreateInfrastructureDetails. + Percentage of disk space assigned for DATA disk group. Remaining disk space will get assiged to RECO disk group + + + :param data_disk_percentage: The data_disk_percentage of this CreateInfrastructureDetails. + :type: int + """ + self._data_disk_percentage = data_disk_percentage + + @property + def contacts(self): + """ + Gets the contacts of this CreateInfrastructureDetails. + The list of contacts for the Database Infrastructure. + + + :return: The contacts of this CreateInfrastructureDetails. + :rtype: list[oci.datacc.models.InfrastructureContact] + """ + return self._contacts + + @contacts.setter + def contacts(self, contacts): + """ + Sets the contacts of this CreateInfrastructureDetails. + The list of contacts for the Database Infrastructure. + + + :param contacts: The contacts of this CreateInfrastructureDetails. + :type: list[oci.datacc.models.InfrastructureContact] + """ + self._contacts = contacts + + @property + def dns_servers(self): + """ + **[Required]** Gets the dns_servers of this CreateInfrastructureDetails. + The list of DNS server IP addresses. Maximum of 3 allowed. + + + :return: The dns_servers of this CreateInfrastructureDetails. + :rtype: list[str] + """ + return self._dns_servers + + @dns_servers.setter + def dns_servers(self, dns_servers): + """ + Sets the dns_servers of this CreateInfrastructureDetails. + The list of DNS server IP addresses. Maximum of 3 allowed. + + + :param dns_servers: The dns_servers of this CreateInfrastructureDetails. + :type: list[str] + """ + self._dns_servers = dns_servers + + @property + def ntp_servers(self): + """ + **[Required]** Gets the ntp_servers of this CreateInfrastructureDetails. + The list of NTP server IP addresses. Maximum of 3 allowed. + + + :return: The ntp_servers of this CreateInfrastructureDetails. + :rtype: list[str] + """ + return self._ntp_servers + + @ntp_servers.setter + def ntp_servers(self, ntp_servers): + """ + Sets the ntp_servers of this CreateInfrastructureDetails. + The list of NTP server IP addresses. Maximum of 3 allowed. + + + :param ntp_servers: The ntp_servers of this CreateInfrastructureDetails. + :type: list[str] + """ + self._ntp_servers = ntp_servers + + @property + def client_network_bonding_mode(self): + """ + Gets the client_network_bonding_mode of this CreateInfrastructureDetails. + The network bonding mode for Client networks for the Database Infrastructure. + + Allowed values for this property are: "ACTIVE_BACKUP", "LACP" + + + :return: The client_network_bonding_mode of this CreateInfrastructureDetails. + :rtype: str + """ + return self._client_network_bonding_mode + + @client_network_bonding_mode.setter + def client_network_bonding_mode(self, client_network_bonding_mode): + """ + Sets the client_network_bonding_mode of this CreateInfrastructureDetails. + The network bonding mode for Client networks for the Database Infrastructure. + + + :param client_network_bonding_mode: The client_network_bonding_mode of this CreateInfrastructureDetails. + :type: str + """ + allowed_values = ["ACTIVE_BACKUP", "LACP"] + if not value_allowed_none_or_none_sentinel(client_network_bonding_mode, allowed_values): + raise ValueError( + f"Invalid value for `client_network_bonding_mode`, must be None or one of {allowed_values}" + ) + self._client_network_bonding_mode = client_network_bonding_mode + + @property + def backup_network_bonding_mode(self): + """ + Gets the backup_network_bonding_mode of this CreateInfrastructureDetails. + The network bonding mode for Backup networks for the Database Infrastructure. + + Allowed values for this property are: "ACTIVE_BACKUP", "LACP" + + + :return: The backup_network_bonding_mode of this CreateInfrastructureDetails. + :rtype: str + """ + return self._backup_network_bonding_mode + + @backup_network_bonding_mode.setter + def backup_network_bonding_mode(self, backup_network_bonding_mode): + """ + Sets the backup_network_bonding_mode of this CreateInfrastructureDetails. + The network bonding mode for Backup networks for the Database Infrastructure. + + + :param backup_network_bonding_mode: The backup_network_bonding_mode of this CreateInfrastructureDetails. + :type: str + """ + allowed_values = ["ACTIVE_BACKUP", "LACP"] + if not value_allowed_none_or_none_sentinel(backup_network_bonding_mode, allowed_values): + raise ValueError( + f"Invalid value for `backup_network_bonding_mode`, must be None or one of {allowed_values}" + ) + self._backup_network_bonding_mode = backup_network_bonding_mode + + @property + def cps_network_bonding_mode(self): + """ + Gets the cps_network_bonding_mode of this CreateInfrastructureDetails. + The network bonding mode for CPS networks for the Database Infrastructure. + + Allowed values for this property are: "ACTIVE_BACKUP", "LACP" + + + :return: The cps_network_bonding_mode of this CreateInfrastructureDetails. + :rtype: str + """ + return self._cps_network_bonding_mode + + @cps_network_bonding_mode.setter + def cps_network_bonding_mode(self, cps_network_bonding_mode): + """ + Sets the cps_network_bonding_mode of this CreateInfrastructureDetails. + The network bonding mode for CPS networks for the Database Infrastructure. + + + :param cps_network_bonding_mode: The cps_network_bonding_mode of this CreateInfrastructureDetails. + :type: str + """ + allowed_values = ["ACTIVE_BACKUP", "LACP"] + if not value_allowed_none_or_none_sentinel(cps_network_bonding_mode, allowed_values): + raise ValueError( + f"Invalid value for `cps_network_bonding_mode`, must be None or one of {allowed_values}" + ) + self._cps_network_bonding_mode = cps_network_bonding_mode + + @property + def client_network_bonding_interface(self): + """ + Gets the client_network_bonding_interface of this CreateInfrastructureDetails. + The network bonding interface for client network for the Database Infrastructure. + + Allowed values for this property are: "BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6" + + + :return: The client_network_bonding_interface of this CreateInfrastructureDetails. + :rtype: str + """ + return self._client_network_bonding_interface + + @client_network_bonding_interface.setter + def client_network_bonding_interface(self, client_network_bonding_interface): + """ + Sets the client_network_bonding_interface of this CreateInfrastructureDetails. + The network bonding interface for client network for the Database Infrastructure. + + + :param client_network_bonding_interface: The client_network_bonding_interface of this CreateInfrastructureDetails. + :type: str + """ + allowed_values = ["BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6"] + if not value_allowed_none_or_none_sentinel(client_network_bonding_interface, allowed_values): + raise ValueError( + f"Invalid value for `client_network_bonding_interface`, must be None or one of {allowed_values}" + ) + self._client_network_bonding_interface = client_network_bonding_interface + + @property + def backup_network_bonding_interface(self): + """ + Gets the backup_network_bonding_interface of this CreateInfrastructureDetails. + The network bonding interface for backup network for the Database Infrastructure. + + Allowed values for this property are: "BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6" + + + :return: The backup_network_bonding_interface of this CreateInfrastructureDetails. + :rtype: str + """ + return self._backup_network_bonding_interface + + @backup_network_bonding_interface.setter + def backup_network_bonding_interface(self, backup_network_bonding_interface): + """ + Sets the backup_network_bonding_interface of this CreateInfrastructureDetails. + The network bonding interface for backup network for the Database Infrastructure. + + + :param backup_network_bonding_interface: The backup_network_bonding_interface of this CreateInfrastructureDetails. + :type: str + """ + allowed_values = ["BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6"] + if not value_allowed_none_or_none_sentinel(backup_network_bonding_interface, allowed_values): + raise ValueError( + f"Invalid value for `backup_network_bonding_interface`, must be None or one of {allowed_values}" + ) + self._backup_network_bonding_interface = backup_network_bonding_interface + + @property + def cps_network_bonding_interface(self): + """ + Gets the cps_network_bonding_interface of this CreateInfrastructureDetails. + The network bonding interface for CPS network for the Database Infrastructure. + + Allowed values for this property are: "BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6" + + + :return: The cps_network_bonding_interface of this CreateInfrastructureDetails. + :rtype: str + """ + return self._cps_network_bonding_interface + + @cps_network_bonding_interface.setter + def cps_network_bonding_interface(self, cps_network_bonding_interface): + """ + Sets the cps_network_bonding_interface of this CreateInfrastructureDetails. + The network bonding interface for CPS network for the Database Infrastructure. + + + :param cps_network_bonding_interface: The cps_network_bonding_interface of this CreateInfrastructureDetails. + :type: str + """ + allowed_values = ["BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6"] + if not value_allowed_none_or_none_sentinel(cps_network_bonding_interface, allowed_values): + raise ValueError( + f"Invalid value for `cps_network_bonding_interface`, must be None or one of {allowed_values}" + ) + self._cps_network_bonding_interface = cps_network_bonding_interface + + @property + def acfs_file_system_storage_in_gbs(self): + """ + Gets the acfs_file_system_storage_in_gbs of this CreateInfrastructureDetails. + The amount of storage (in GB) in the DATA disk group that is reserved for creating local storage for VM Clusters and application VMs. + + + :return: The acfs_file_system_storage_in_gbs of this CreateInfrastructureDetails. + :rtype: float + """ + return self._acfs_file_system_storage_in_gbs + + @acfs_file_system_storage_in_gbs.setter + def acfs_file_system_storage_in_gbs(self, acfs_file_system_storage_in_gbs): + """ + Sets the acfs_file_system_storage_in_gbs of this CreateInfrastructureDetails. + The amount of storage (in GB) in the DATA disk group that is reserved for creating local storage for VM Clusters and application VMs. + + + :param acfs_file_system_storage_in_gbs: The acfs_file_system_storage_in_gbs of this CreateInfrastructureDetails. + :type: float + """ + self._acfs_file_system_storage_in_gbs = acfs_file_system_storage_in_gbs + + @property + def corporate_proxy(self): + """ + Gets the corporate_proxy of this CreateInfrastructureDetails. + The corporate network proxy for access to the control plane network. Oracle recommends using an HTTPS proxy when possible + for enhanced security. + + + :return: The corporate_proxy of this CreateInfrastructureDetails. + :rtype: str + """ + return self._corporate_proxy + + @corporate_proxy.setter + def corporate_proxy(self, corporate_proxy): + """ + Sets the corporate_proxy of this CreateInfrastructureDetails. + The corporate network proxy for access to the control plane network. Oracle recommends using an HTTPS proxy when possible + for enhanced security. + + + :param corporate_proxy: The corporate_proxy of this CreateInfrastructureDetails. + :type: str + """ + self._corporate_proxy = corporate_proxy + + @property + def vlan_id(self): + """ + Gets the vlan_id of this CreateInfrastructureDetails. + The CPS network VLAN ID. + + + :return: The vlan_id of this CreateInfrastructureDetails. + :rtype: str + """ + return self._vlan_id + + @vlan_id.setter + def vlan_id(self, vlan_id): + """ + Sets the vlan_id of this CreateInfrastructureDetails. + The CPS network VLAN ID. + + + :param vlan_id: The vlan_id of this CreateInfrastructureDetails. + :type: str + """ + self._vlan_id = vlan_id + + @property + def maintenance_window(self): + """ + Gets the maintenance_window of this CreateInfrastructureDetails. + + :return: The maintenance_window of this CreateInfrastructureDetails. + :rtype: oci.datacc.models.MaintenanceWindow + """ + return self._maintenance_window + + @maintenance_window.setter + def maintenance_window(self, maintenance_window): + """ + Sets the maintenance_window of this CreateInfrastructureDetails. + + :param maintenance_window: The maintenance_window of this CreateInfrastructureDetails. + :type: oci.datacc.models.MaintenanceWindow + """ + self._maintenance_window = maintenance_window + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this CreateInfrastructureDetails. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this CreateInfrastructureDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this CreateInfrastructureDetails. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this CreateInfrastructureDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this CreateInfrastructureDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this CreateInfrastructureDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this CreateInfrastructureDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this CreateInfrastructureDetails. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/create_vm_cluster_network_details.py b/src/oci/datacc/models/create_vm_cluster_network_details.py new file mode 100644 index 0000000000..b412a858dd --- /dev/null +++ b/src/oci/datacc/models/create_vm_cluster_network_details.py @@ -0,0 +1,470 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateVmClusterNetworkDetails(object): + """ + Details for an VM cluster network. + """ + + #: A constant which can be used with the consumer_type property of a CreateVmClusterNetworkDetails. + #: This constant has a value of "INSTANCE" + CONSUMER_TYPE_INSTANCE = "INSTANCE" + + #: A constant which can be used with the consumer_type property of a CreateVmClusterNetworkDetails. + #: This constant has a value of "CLUSTER" + CONSUMER_TYPE_CLUSTER = "CLUSTER" + + def __init__(self, **kwargs): + """ + Initializes a new CreateVmClusterNetworkDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param compartment_id: + The value to assign to the compartment_id property of this CreateVmClusterNetworkDetails. + :type compartment_id: str + + :param infrastructure_id: + The value to assign to the infrastructure_id property of this CreateVmClusterNetworkDetails. + :type infrastructure_id: str + + :param display_name: + The value to assign to the display_name property of this CreateVmClusterNetworkDetails. + :type display_name: str + + :param node_count: + The value to assign to the node_count property of this CreateVmClusterNetworkDetails. + :type node_count: int + + :param scans: + The value to assign to the scans property of this CreateVmClusterNetworkDetails. + :type scans: list[oci.datacc.models.ScanDetails] + + :param listener_port: + The value to assign to the listener_port property of this CreateVmClusterNetworkDetails. + :type listener_port: int + + :param listener_port_ssl: + The value to assign to the listener_port_ssl property of this CreateVmClusterNetworkDetails. + :type listener_port_ssl: int + + :param dns_servers: + The value to assign to the dns_servers property of this CreateVmClusterNetworkDetails. + :type dns_servers: list[str] + + :param ntp_servers: + The value to assign to the ntp_servers property of this CreateVmClusterNetworkDetails. + :type ntp_servers: list[str] + + :param vm_networks: + The value to assign to the vm_networks property of this CreateVmClusterNetworkDetails. + :type vm_networks: list[oci.datacc.models.VmNetworkDetails] + + :param consumer_type: + The value to assign to the consumer_type property of this CreateVmClusterNetworkDetails. + Allowed values for this property are: "INSTANCE", "CLUSTER", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type consumer_type: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this CreateVmClusterNetworkDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this CreateVmClusterNetworkDetails. + :type defined_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'compartment_id': 'str', + 'infrastructure_id': 'str', + 'display_name': 'str', + 'node_count': 'int', + 'scans': 'list[ScanDetails]', + 'listener_port': 'int', + 'listener_port_ssl': 'int', + 'dns_servers': 'list[str]', + 'ntp_servers': 'list[str]', + 'vm_networks': 'list[VmNetworkDetails]', + 'consumer_type': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'compartment_id': 'compartmentId', + 'infrastructure_id': 'infrastructureId', + 'display_name': 'displayName', + 'node_count': 'nodeCount', + 'scans': 'scans', + 'listener_port': 'listenerPort', + 'listener_port_ssl': 'listenerPortSsl', + 'dns_servers': 'dnsServers', + 'ntp_servers': 'ntpServers', + 'vm_networks': 'vmNetworks', + 'consumer_type': 'consumerType', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' + } + self._compartment_id = None + self._infrastructure_id = None + self._display_name = None + self._node_count = None + self._scans = None + self._listener_port = None + self._listener_port_ssl = None + self._dns_servers = None + self._ntp_servers = None + self._vm_networks = None + self._consumer_type = None + self._freeform_tags = None + self._defined_tags = None + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this CreateVmClusterNetworkDetails. + The `OCID`__ of the compartment containing the VM cluster network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this CreateVmClusterNetworkDetails. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this CreateVmClusterNetworkDetails. + The `OCID`__ of the compartment containing the VM cluster network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this CreateVmClusterNetworkDetails. + :type: str + """ + self._compartment_id = compartment_id + + @property + def infrastructure_id(self): + """ + **[Required]** Gets the infrastructure_id of this CreateVmClusterNetworkDetails. + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The infrastructure_id of this CreateVmClusterNetworkDetails. + :rtype: str + """ + return self._infrastructure_id + + @infrastructure_id.setter + def infrastructure_id(self, infrastructure_id): + """ + Sets the infrastructure_id of this CreateVmClusterNetworkDetails. + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param infrastructure_id: The infrastructure_id of this CreateVmClusterNetworkDetails. + :type: str + """ + self._infrastructure_id = infrastructure_id + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this CreateVmClusterNetworkDetails. + The user-friendly name for the VM cluster network. The name does not need to be unique. + + + :return: The display_name of this CreateVmClusterNetworkDetails. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this CreateVmClusterNetworkDetails. + The user-friendly name for the VM cluster network. The name does not need to be unique. + + + :param display_name: The display_name of this CreateVmClusterNetworkDetails. + :type: str + """ + self._display_name = display_name + + @property + def node_count(self): + """ + Gets the node_count of this CreateVmClusterNetworkDetails. + Count of virtual machines in this VM cluster. + + + :return: The node_count of this CreateVmClusterNetworkDetails. + :rtype: int + """ + return self._node_count + + @node_count.setter + def node_count(self, node_count): + """ + Sets the node_count of this CreateVmClusterNetworkDetails. + Count of virtual machines in this VM cluster. + + + :param node_count: The node_count of this CreateVmClusterNetworkDetails. + :type: int + """ + self._node_count = node_count + + @property + def scans(self): + """ + Gets the scans of this CreateVmClusterNetworkDetails. + The SCAN details. + + + :return: The scans of this CreateVmClusterNetworkDetails. + :rtype: list[oci.datacc.models.ScanDetails] + """ + return self._scans + + @scans.setter + def scans(self, scans): + """ + Sets the scans of this CreateVmClusterNetworkDetails. + The SCAN details. + + + :param scans: The scans of this CreateVmClusterNetworkDetails. + :type: list[oci.datacc.models.ScanDetails] + """ + self._scans = scans + + @property + def listener_port(self): + """ + Gets the listener_port of this CreateVmClusterNetworkDetails. + The listener TCP/IP port. + + + :return: The listener_port of this CreateVmClusterNetworkDetails. + :rtype: int + """ + return self._listener_port + + @listener_port.setter + def listener_port(self, listener_port): + """ + Sets the listener_port of this CreateVmClusterNetworkDetails. + The listener TCP/IP port. + + + :param listener_port: The listener_port of this CreateVmClusterNetworkDetails. + :type: int + """ + self._listener_port = listener_port + + @property + def listener_port_ssl(self): + """ + Gets the listener_port_ssl of this CreateVmClusterNetworkDetails. + The listener TCP/IP SSL port. Default is 2484. + + + :return: The listener_port_ssl of this CreateVmClusterNetworkDetails. + :rtype: int + """ + return self._listener_port_ssl + + @listener_port_ssl.setter + def listener_port_ssl(self, listener_port_ssl): + """ + Sets the listener_port_ssl of this CreateVmClusterNetworkDetails. + The listener TCP/IP SSL port. Default is 2484. + + + :param listener_port_ssl: The listener_port_ssl of this CreateVmClusterNetworkDetails. + :type: int + """ + self._listener_port_ssl = listener_port_ssl + + @property + def dns_servers(self): + """ + Gets the dns_servers of this CreateVmClusterNetworkDetails. + The list of DNS server IP addresses. Maximum of 3 allowed. + + + :return: The dns_servers of this CreateVmClusterNetworkDetails. + :rtype: list[str] + """ + return self._dns_servers + + @dns_servers.setter + def dns_servers(self, dns_servers): + """ + Sets the dns_servers of this CreateVmClusterNetworkDetails. + The list of DNS server IP addresses. Maximum of 3 allowed. + + + :param dns_servers: The dns_servers of this CreateVmClusterNetworkDetails. + :type: list[str] + """ + self._dns_servers = dns_servers + + @property + def ntp_servers(self): + """ + Gets the ntp_servers of this CreateVmClusterNetworkDetails. + The list of NTP server IP addresses. Maximum of 3 allowed. + + + :return: The ntp_servers of this CreateVmClusterNetworkDetails. + :rtype: list[str] + """ + return self._ntp_servers + + @ntp_servers.setter + def ntp_servers(self, ntp_servers): + """ + Sets the ntp_servers of this CreateVmClusterNetworkDetails. + The list of NTP server IP addresses. Maximum of 3 allowed. + + + :param ntp_servers: The ntp_servers of this CreateVmClusterNetworkDetails. + :type: list[str] + """ + self._ntp_servers = ntp_servers + + @property + def vm_networks(self): + """ + **[Required]** Gets the vm_networks of this CreateVmClusterNetworkDetails. + Details of the client and backup networks. + + + :return: The vm_networks of this CreateVmClusterNetworkDetails. + :rtype: list[oci.datacc.models.VmNetworkDetails] + """ + return self._vm_networks + + @vm_networks.setter + def vm_networks(self, vm_networks): + """ + Sets the vm_networks of this CreateVmClusterNetworkDetails. + Details of the client and backup networks. + + + :param vm_networks: The vm_networks of this CreateVmClusterNetworkDetails. + :type: list[oci.datacc.models.VmNetworkDetails] + """ + self._vm_networks = vm_networks + + @property + def consumer_type(self): + """ + Gets the consumer_type of this CreateVmClusterNetworkDetails. + Consumer type for the VM cluster network. + + Allowed values for this property are: "INSTANCE", "CLUSTER", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The consumer_type of this CreateVmClusterNetworkDetails. + :rtype: str + """ + return self._consumer_type + + @consumer_type.setter + def consumer_type(self, consumer_type): + """ + Sets the consumer_type of this CreateVmClusterNetworkDetails. + Consumer type for the VM cluster network. + + + :param consumer_type: The consumer_type of this CreateVmClusterNetworkDetails. + :type: str + """ + allowed_values = ["INSTANCE", "CLUSTER"] + if not value_allowed_none_or_none_sentinel(consumer_type, allowed_values): + consumer_type = 'UNKNOWN_ENUM_VALUE' + self._consumer_type = consumer_type + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this CreateVmClusterNetworkDetails. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this CreateVmClusterNetworkDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this CreateVmClusterNetworkDetails. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this CreateVmClusterNetworkDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this CreateVmClusterNetworkDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this CreateVmClusterNetworkDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this CreateVmClusterNetworkDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this CreateVmClusterNetworkDetails. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/create_vm_instance_details.py b/src/oci/datacc/models/create_vm_instance_details.py new file mode 100644 index 0000000000..427849830e --- /dev/null +++ b/src/oci/datacc/models/create_vm_instance_details.py @@ -0,0 +1,887 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateVmInstanceDetails(object): + """ + Create VM instance details. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateVmInstanceDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param compartment_id: + The value to assign to the compartment_id property of this CreateVmInstanceDetails. + :type compartment_id: str + + :param display_name: + The value to assign to the display_name property of this CreateVmInstanceDetails. + :type display_name: str + + :param description: + The value to assign to the description property of this CreateVmInstanceDetails. + :type description: str + + :param infrastructure_id: + The value to assign to the infrastructure_id property of this CreateVmInstanceDetails. + :type infrastructure_id: str + + :param cpus_enabled: + The value to assign to the cpus_enabled property of this CreateVmInstanceDetails. + :type cpus_enabled: int + + :param memory_size_in_gbs: + The value to assign to the memory_size_in_gbs property of this CreateVmInstanceDetails. + :type memory_size_in_gbs: float + + :param boot_storage_size_in_gbs: + The value to assign to the boot_storage_size_in_gbs property of this CreateVmInstanceDetails. + :type boot_storage_size_in_gbs: float + + :param data_storage_size_in_gbs: + The value to assign to the data_storage_size_in_gbs property of this CreateVmInstanceDetails. + :type data_storage_size_in_gbs: float + + :param image_id: + The value to assign to the image_id property of this CreateVmInstanceDetails. + :type image_id: str + + :param server_id: + The value to assign to the server_id property of this CreateVmInstanceDetails. + :type server_id: str + + :param ssh_public_keys: + The value to assign to the ssh_public_keys property of this CreateVmInstanceDetails. + :type ssh_public_keys: list[str] + + :param domain_name: + The value to assign to the domain_name property of this CreateVmInstanceDetails. + :type domain_name: str + + :param time_zone: + The value to assign to the time_zone property of this CreateVmInstanceDetails. + :type time_zone: str + + :param dns_servers: + The value to assign to the dns_servers property of this CreateVmInstanceDetails. + :type dns_servers: list[str] + + :param ntp_servers: + The value to assign to the ntp_servers property of this CreateVmInstanceDetails. + :type ntp_servers: list[str] + + :param hostname: + The value to assign to the hostname property of this CreateVmInstanceDetails. + :type hostname: str + + :param ip_address: + The value to assign to the ip_address property of this CreateVmInstanceDetails. + :type ip_address: str + + :param netmask: + The value to assign to the netmask property of this CreateVmInstanceDetails. + :type netmask: str + + :param gateway: + The value to assign to the gateway property of this CreateVmInstanceDetails. + :type gateway: str + + :param vlan_id: + The value to assign to the vlan_id property of this CreateVmInstanceDetails. + :type vlan_id: str + + :param userdata: + The value to assign to the userdata property of this CreateVmInstanceDetails. + :type userdata: str + + :param metadata: + The value to assign to the metadata property of this CreateVmInstanceDetails. + :type metadata: dict(str, str) + + :param vm_network_id: + The value to assign to the vm_network_id property of this CreateVmInstanceDetails. + :type vm_network_id: str + + :param defined_tags: + The value to assign to the defined_tags property of this CreateVmInstanceDetails. + :type defined_tags: dict(str, dict(str, object)) + + :param freeform_tags: + The value to assign to the freeform_tags property of this CreateVmInstanceDetails. + :type freeform_tags: dict(str, str) + + :param system_tags: + The value to assign to the system_tags property of this CreateVmInstanceDetails. + :type system_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'compartment_id': 'str', + 'display_name': 'str', + 'description': 'str', + 'infrastructure_id': 'str', + 'cpus_enabled': 'int', + 'memory_size_in_gbs': 'float', + 'boot_storage_size_in_gbs': 'float', + 'data_storage_size_in_gbs': 'float', + 'image_id': 'str', + 'server_id': 'str', + 'ssh_public_keys': 'list[str]', + 'domain_name': 'str', + 'time_zone': 'str', + 'dns_servers': 'list[str]', + 'ntp_servers': 'list[str]', + 'hostname': 'str', + 'ip_address': 'str', + 'netmask': 'str', + 'gateway': 'str', + 'vlan_id': 'str', + 'userdata': 'str', + 'metadata': 'dict(str, str)', + 'vm_network_id': 'str', + 'defined_tags': 'dict(str, dict(str, object))', + 'freeform_tags': 'dict(str, str)', + 'system_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'compartment_id': 'compartmentId', + 'display_name': 'displayName', + 'description': 'description', + 'infrastructure_id': 'infrastructureId', + 'cpus_enabled': 'cpusEnabled', + 'memory_size_in_gbs': 'memorySizeInGBs', + 'boot_storage_size_in_gbs': 'bootStorageSizeInGBs', + 'data_storage_size_in_gbs': 'dataStorageSizeInGBs', + 'image_id': 'imageId', + 'server_id': 'serverId', + 'ssh_public_keys': 'sshPublicKeys', + 'domain_name': 'domainName', + 'time_zone': 'timeZone', + 'dns_servers': 'dnsServers', + 'ntp_servers': 'ntpServers', + 'hostname': 'hostname', + 'ip_address': 'ipAddress', + 'netmask': 'netmask', + 'gateway': 'gateway', + 'vlan_id': 'vlanId', + 'userdata': 'userdata', + 'metadata': 'metadata', + 'vm_network_id': 'vmNetworkId', + 'defined_tags': 'definedTags', + 'freeform_tags': 'freeformTags', + 'system_tags': 'systemTags' + } + self._compartment_id = None + self._display_name = None + self._description = None + self._infrastructure_id = None + self._cpus_enabled = None + self._memory_size_in_gbs = None + self._boot_storage_size_in_gbs = None + self._data_storage_size_in_gbs = None + self._image_id = None + self._server_id = None + self._ssh_public_keys = None + self._domain_name = None + self._time_zone = None + self._dns_servers = None + self._ntp_servers = None + self._hostname = None + self._ip_address = None + self._netmask = None + self._gateway = None + self._vlan_id = None + self._userdata = None + self._metadata = None + self._vm_network_id = None + self._defined_tags = None + self._freeform_tags = None + self._system_tags = None + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this CreateVmInstanceDetails. + The `OCID`__ of the compartment containing the VM + instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this CreateVmInstanceDetails. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this CreateVmInstanceDetails. + The `OCID`__ of the compartment containing the VM + instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this CreateVmInstanceDetails. + :type: str + """ + self._compartment_id = compartment_id + + @property + def display_name(self): + """ + Gets the display_name of this CreateVmInstanceDetails. + VM instance display name. This name does not have to be unique, and is changeable. + + + :return: The display_name of this CreateVmInstanceDetails. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this CreateVmInstanceDetails. + VM instance display name. This name does not have to be unique, and is changeable. + + + :param display_name: The display_name of this CreateVmInstanceDetails. + :type: str + """ + self._display_name = display_name + + @property + def description(self): + """ + Gets the description of this CreateVmInstanceDetails. + VM instance description. + + + :return: The description of this CreateVmInstanceDetails. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this CreateVmInstanceDetails. + VM instance description. + + + :param description: The description of this CreateVmInstanceDetails. + :type: str + """ + self._description = description + + @property + def infrastructure_id(self): + """ + **[Required]** Gets the infrastructure_id of this CreateVmInstanceDetails. + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The infrastructure_id of this CreateVmInstanceDetails. + :rtype: str + """ + return self._infrastructure_id + + @infrastructure_id.setter + def infrastructure_id(self, infrastructure_id): + """ + Sets the infrastructure_id of this CreateVmInstanceDetails. + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param infrastructure_id: The infrastructure_id of this CreateVmInstanceDetails. + :type: str + """ + self._infrastructure_id = infrastructure_id + + @property + def cpus_enabled(self): + """ + **[Required]** Gets the cpus_enabled of this CreateVmInstanceDetails. + The number of CPU cores enabled for each VM instance. + + + :return: The cpus_enabled of this CreateVmInstanceDetails. + :rtype: int + """ + return self._cpus_enabled + + @cpus_enabled.setter + def cpus_enabled(self, cpus_enabled): + """ + Sets the cpus_enabled of this CreateVmInstanceDetails. + The number of CPU cores enabled for each VM instance. + + + :param cpus_enabled: The cpus_enabled of this CreateVmInstanceDetails. + :type: int + """ + self._cpus_enabled = cpus_enabled + + @property + def memory_size_in_gbs(self): + """ + Gets the memory_size_in_gbs of this CreateVmInstanceDetails. + The memory to be allocated in GBs. + + + :return: The memory_size_in_gbs of this CreateVmInstanceDetails. + :rtype: float + """ + return self._memory_size_in_gbs + + @memory_size_in_gbs.setter + def memory_size_in_gbs(self, memory_size_in_gbs): + """ + Sets the memory_size_in_gbs of this CreateVmInstanceDetails. + The memory to be allocated in GBs. + + + :param memory_size_in_gbs: The memory_size_in_gbs of this CreateVmInstanceDetails. + :type: float + """ + self._memory_size_in_gbs = memory_size_in_gbs + + @property + def boot_storage_size_in_gbs(self): + """ + Gets the boot_storage_size_in_gbs of this CreateVmInstanceDetails. + Boot storage memory to be allocated in GBs. + + + :return: The boot_storage_size_in_gbs of this CreateVmInstanceDetails. + :rtype: float + """ + return self._boot_storage_size_in_gbs + + @boot_storage_size_in_gbs.setter + def boot_storage_size_in_gbs(self, boot_storage_size_in_gbs): + """ + Sets the boot_storage_size_in_gbs of this CreateVmInstanceDetails. + Boot storage memory to be allocated in GBs. + + + :param boot_storage_size_in_gbs: The boot_storage_size_in_gbs of this CreateVmInstanceDetails. + :type: float + """ + self._boot_storage_size_in_gbs = boot_storage_size_in_gbs + + @property + def data_storage_size_in_gbs(self): + """ + Gets the data_storage_size_in_gbs of this CreateVmInstanceDetails. + Data storage to be allocated in GBs. + + + :return: The data_storage_size_in_gbs of this CreateVmInstanceDetails. + :rtype: float + """ + return self._data_storage_size_in_gbs + + @data_storage_size_in_gbs.setter + def data_storage_size_in_gbs(self, data_storage_size_in_gbs): + """ + Sets the data_storage_size_in_gbs of this CreateVmInstanceDetails. + Data storage to be allocated in GBs. + + + :param data_storage_size_in_gbs: The data_storage_size_in_gbs of this CreateVmInstanceDetails. + :type: float + """ + self._data_storage_size_in_gbs = data_storage_size_in_gbs + + @property + def image_id(self): + """ + Gets the image_id of this CreateVmInstanceDetails. + The `OCID`__ of the VM custom instance uploaded. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The image_id of this CreateVmInstanceDetails. + :rtype: str + """ + return self._image_id + + @image_id.setter + def image_id(self, image_id): + """ + Sets the image_id of this CreateVmInstanceDetails. + The `OCID`__ of the VM custom instance uploaded. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param image_id: The image_id of this CreateVmInstanceDetails. + :type: str + """ + self._image_id = image_id + + @property + def server_id(self): + """ + Gets the server_id of this CreateVmInstanceDetails. + The `OCID`__ of the compute node on which VM instance should be launched. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The server_id of this CreateVmInstanceDetails. + :rtype: str + """ + return self._server_id + + @server_id.setter + def server_id(self, server_id): + """ + Sets the server_id of this CreateVmInstanceDetails. + The `OCID`__ of the compute node on which VM instance should be launched. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param server_id: The server_id of this CreateVmInstanceDetails. + :type: str + """ + self._server_id = server_id + + @property + def ssh_public_keys(self): + """ + **[Required]** Gets the ssh_public_keys of this CreateVmInstanceDetails. + List of public key used for SSH access to the VM instance. + + + :return: The ssh_public_keys of this CreateVmInstanceDetails. + :rtype: list[str] + """ + return self._ssh_public_keys + + @ssh_public_keys.setter + def ssh_public_keys(self, ssh_public_keys): + """ + Sets the ssh_public_keys of this CreateVmInstanceDetails. + List of public key used for SSH access to the VM instance. + + + :param ssh_public_keys: The ssh_public_keys of this CreateVmInstanceDetails. + :type: list[str] + """ + self._ssh_public_keys = ssh_public_keys + + @property + def domain_name(self): + """ + Gets the domain_name of this CreateVmInstanceDetails. + The domain name of the VM instance. + + + :return: The domain_name of this CreateVmInstanceDetails. + :rtype: str + """ + return self._domain_name + + @domain_name.setter + def domain_name(self, domain_name): + """ + Sets the domain_name of this CreateVmInstanceDetails. + The domain name of the VM instance. + + + :param domain_name: The domain_name of this CreateVmInstanceDetails. + :type: str + """ + self._domain_name = domain_name + + @property + def time_zone(self): + """ + Gets the time_zone of this CreateVmInstanceDetails. + The time zone to use for the VM instance. + + + :return: The time_zone of this CreateVmInstanceDetails. + :rtype: str + """ + return self._time_zone + + @time_zone.setter + def time_zone(self, time_zone): + """ + Sets the time_zone of this CreateVmInstanceDetails. + The time zone to use for the VM instance. + + + :param time_zone: The time_zone of this CreateVmInstanceDetails. + :type: str + """ + self._time_zone = time_zone + + @property + def dns_servers(self): + """ + Gets the dns_servers of this CreateVmInstanceDetails. + The list of DNS server IP addresses. Maximum of 3 allowed. + + + :return: The dns_servers of this CreateVmInstanceDetails. + :rtype: list[str] + """ + return self._dns_servers + + @dns_servers.setter + def dns_servers(self, dns_servers): + """ + Sets the dns_servers of this CreateVmInstanceDetails. + The list of DNS server IP addresses. Maximum of 3 allowed. + + + :param dns_servers: The dns_servers of this CreateVmInstanceDetails. + :type: list[str] + """ + self._dns_servers = dns_servers + + @property + def ntp_servers(self): + """ + Gets the ntp_servers of this CreateVmInstanceDetails. + The list of NTP server IP addresses. Maximum of 3 allowed. + + + :return: The ntp_servers of this CreateVmInstanceDetails. + :rtype: list[str] + """ + return self._ntp_servers + + @ntp_servers.setter + def ntp_servers(self, ntp_servers): + """ + Sets the ntp_servers of this CreateVmInstanceDetails. + The list of NTP server IP addresses. Maximum of 3 allowed. + + + :param ntp_servers: The ntp_servers of this CreateVmInstanceDetails. + :type: list[str] + """ + self._ntp_servers = ntp_servers + + @property + def hostname(self): + """ + Gets the hostname of this CreateVmInstanceDetails. + The host name of the instance. + + + :return: The hostname of this CreateVmInstanceDetails. + :rtype: str + """ + return self._hostname + + @hostname.setter + def hostname(self, hostname): + """ + Sets the hostname of this CreateVmInstanceDetails. + The host name of the instance. + + + :param hostname: The hostname of this CreateVmInstanceDetails. + :type: str + """ + self._hostname = hostname + + @property + def ip_address(self): + """ + Gets the ip_address of this CreateVmInstanceDetails. + The IP address of the instance. + + + :return: The ip_address of this CreateVmInstanceDetails. + :rtype: str + """ + return self._ip_address + + @ip_address.setter + def ip_address(self, ip_address): + """ + Sets the ip_address of this CreateVmInstanceDetails. + The IP address of the instance. + + + :param ip_address: The ip_address of this CreateVmInstanceDetails. + :type: str + """ + self._ip_address = ip_address + + @property + def netmask(self): + """ + Gets the netmask of this CreateVmInstanceDetails. + The netmask of the VM instance network. + + + :return: The netmask of this CreateVmInstanceDetails. + :rtype: str + """ + return self._netmask + + @netmask.setter + def netmask(self, netmask): + """ + Sets the netmask of this CreateVmInstanceDetails. + The netmask of the VM instance network. + + + :param netmask: The netmask of this CreateVmInstanceDetails. + :type: str + """ + self._netmask = netmask + + @property + def gateway(self): + """ + Gets the gateway of this CreateVmInstanceDetails. + The gateway IP address of the VM instance network + + + :return: The gateway of this CreateVmInstanceDetails. + :rtype: str + """ + return self._gateway + + @gateway.setter + def gateway(self, gateway): + """ + Sets the gateway of this CreateVmInstanceDetails. + The gateway IP address of the VM instance network + + + :param gateway: The gateway of this CreateVmInstanceDetails. + :type: str + """ + self._gateway = gateway + + @property + def vlan_id(self): + """ + Gets the vlan_id of this CreateVmInstanceDetails. + The network VLAN ID. + + + :return: The vlan_id of this CreateVmInstanceDetails. + :rtype: str + """ + return self._vlan_id + + @vlan_id.setter + def vlan_id(self, vlan_id): + """ + Sets the vlan_id of this CreateVmInstanceDetails. + The network VLAN ID. + + + :param vlan_id: The vlan_id of this CreateVmInstanceDetails. + :type: str + """ + self._vlan_id = vlan_id + + @property + def userdata(self): + """ + Gets the userdata of this CreateVmInstanceDetails. + Base64-encoded data to be used by Cloud-Init to run custom scripts or provide custom Cloud-Init configuration. + For information about how to take advantage of user data, see the `Cloud-Init Documentation`__. + + __ http://cloudinit.readthedocs.org/en/latest/topics/format.html + + + :return: The userdata of this CreateVmInstanceDetails. + :rtype: str + """ + return self._userdata + + @userdata.setter + def userdata(self, userdata): + """ + Sets the userdata of this CreateVmInstanceDetails. + Base64-encoded data to be used by Cloud-Init to run custom scripts or provide custom Cloud-Init configuration. + For information about how to take advantage of user data, see the `Cloud-Init Documentation`__. + + __ http://cloudinit.readthedocs.org/en/latest/topics/format.html + + + :param userdata: The userdata of this CreateVmInstanceDetails. + :type: str + """ + self._userdata = userdata + + @property + def metadata(self): + """ + Gets the metadata of this CreateVmInstanceDetails. + Custom metadata key/value pairs which can be used to: + - Provide information to `Cloud-Init`__ to be used for various system initialization tasks. + - Provide additional information which is exposed inside the instance context and can be queried or referenced by user-data scripts for dynamic configuration. + + __ https://cloudinit.readthedocs.org/en/latest/ + + + :return: The metadata of this CreateVmInstanceDetails. + :rtype: dict(str, str) + """ + return self._metadata + + @metadata.setter + def metadata(self, metadata): + """ + Sets the metadata of this CreateVmInstanceDetails. + Custom metadata key/value pairs which can be used to: + - Provide information to `Cloud-Init`__ to be used for various system initialization tasks. + - Provide additional information which is exposed inside the instance context and can be queried or referenced by user-data scripts for dynamic configuration. + + __ https://cloudinit.readthedocs.org/en/latest/ + + + :param metadata: The metadata of this CreateVmInstanceDetails. + :type: dict(str, str) + """ + self._metadata = metadata + + @property + def vm_network_id(self): + """ + Gets the vm_network_id of this CreateVmInstanceDetails. + The `OCID`__ of the VM Network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The vm_network_id of this CreateVmInstanceDetails. + :rtype: str + """ + return self._vm_network_id + + @vm_network_id.setter + def vm_network_id(self, vm_network_id): + """ + Sets the vm_network_id of this CreateVmInstanceDetails. + The `OCID`__ of the VM Network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param vm_network_id: The vm_network_id of this CreateVmInstanceDetails. + :type: str + """ + self._vm_network_id = vm_network_id + + @property + def defined_tags(self): + """ + Gets the defined_tags of this CreateVmInstanceDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this CreateVmInstanceDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this CreateVmInstanceDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this CreateVmInstanceDetails. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this CreateVmInstanceDetails. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this CreateVmInstanceDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this CreateVmInstanceDetails. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this CreateVmInstanceDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def system_tags(self): + """ + Gets the system_tags of this CreateVmInstanceDetails. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :return: The system_tags of this CreateVmInstanceDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this CreateVmInstanceDetails. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :param system_tags: The system_tags of this CreateVmInstanceDetails. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/disk_group_capacity_details.py b/src/oci/datacc/models/disk_group_capacity_details.py new file mode 100644 index 0000000000..f3f15762b0 --- /dev/null +++ b/src/oci/datacc/models/disk_group_capacity_details.py @@ -0,0 +1,163 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DiskGroupCapacityDetails(object): + """ + Capacity details of the storage disk group. + """ + + def __init__(self, **kwargs): + """ + Initializes a new DiskGroupCapacityDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param storage_type: + The value to assign to the storage_type property of this DiskGroupCapacityDetails. + :type storage_type: str + + :param total_space_in_gbs: + The value to assign to the total_space_in_gbs property of this DiskGroupCapacityDetails. + :type total_space_in_gbs: float + + :param reserved_space_in_gbs: + The value to assign to the reserved_space_in_gbs property of this DiskGroupCapacityDetails. + :type reserved_space_in_gbs: float + + :param free_space_in_gbs: + The value to assign to the free_space_in_gbs property of this DiskGroupCapacityDetails. + :type free_space_in_gbs: float + + """ + self.swagger_types = { + 'storage_type': 'str', + 'total_space_in_gbs': 'float', + 'reserved_space_in_gbs': 'float', + 'free_space_in_gbs': 'float' + } + self.attribute_map = { + 'storage_type': 'storageType', + 'total_space_in_gbs': 'totalSpaceInGbs', + 'reserved_space_in_gbs': 'reservedSpaceInGbs', + 'free_space_in_gbs': 'freeSpaceInGbs' + } + self._storage_type = None + self._total_space_in_gbs = None + self._reserved_space_in_gbs = None + self._free_space_in_gbs = None + + @property + def storage_type(self): + """ + Gets the storage_type of this DiskGroupCapacityDetails. + The storage type for the Cloud Database Infrastructure. + + + :return: The storage_type of this DiskGroupCapacityDetails. + :rtype: str + """ + return self._storage_type + + @storage_type.setter + def storage_type(self, storage_type): + """ + Sets the storage_type of this DiskGroupCapacityDetails. + The storage type for the Cloud Database Infrastructure. + + + :param storage_type: The storage_type of this DiskGroupCapacityDetails. + :type: str + """ + self._storage_type = storage_type + + @property + def total_space_in_gbs(self): + """ + Gets the total_space_in_gbs of this DiskGroupCapacityDetails. + The total amount of logical disk space available, in gigabytes (GB). + + + :return: The total_space_in_gbs of this DiskGroupCapacityDetails. + :rtype: float + """ + return self._total_space_in_gbs + + @total_space_in_gbs.setter + def total_space_in_gbs(self, total_space_in_gbs): + """ + Sets the total_space_in_gbs of this DiskGroupCapacityDetails. + The total amount of logical disk space available, in gigabytes (GB). + + + :param total_space_in_gbs: The total_space_in_gbs of this DiskGroupCapacityDetails. + :type: float + """ + self._total_space_in_gbs = total_space_in_gbs + + @property + def reserved_space_in_gbs(self): + """ + Gets the reserved_space_in_gbs of this DiskGroupCapacityDetails. + The total amount of logical disk space that is reserved for system use, in gigabytes (GB). + + + :return: The reserved_space_in_gbs of this DiskGroupCapacityDetails. + :rtype: float + """ + return self._reserved_space_in_gbs + + @reserved_space_in_gbs.setter + def reserved_space_in_gbs(self, reserved_space_in_gbs): + """ + Sets the reserved_space_in_gbs of this DiskGroupCapacityDetails. + The total amount of logical disk space that is reserved for system use, in gigabytes (GB). + + + :param reserved_space_in_gbs: The reserved_space_in_gbs of this DiskGroupCapacityDetails. + :type: float + """ + self._reserved_space_in_gbs = reserved_space_in_gbs + + @property + def free_space_in_gbs(self): + """ + Gets the free_space_in_gbs of this DiskGroupCapacityDetails. + The total amount of logical disk space that is currently available for use, in gigabytes (GB). + + + :return: The free_space_in_gbs of this DiskGroupCapacityDetails. + :rtype: float + """ + return self._free_space_in_gbs + + @free_space_in_gbs.setter + def free_space_in_gbs(self, free_space_in_gbs): + """ + Sets the free_space_in_gbs of this DiskGroupCapacityDetails. + The total amount of logical disk space that is currently available for use, in gigabytes (GB). + + + :param free_space_in_gbs: The free_space_in_gbs of this DiskGroupCapacityDetails. + :type: float + """ + self._free_space_in_gbs = free_space_in_gbs + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/generate_recommended_vm_cluster_network_details.py b/src/oci/datacc/models/generate_recommended_vm_cluster_network_details.py new file mode 100644 index 0000000000..ede5d57292 --- /dev/null +++ b/src/oci/datacc/models/generate_recommended_vm_cluster_network_details.py @@ -0,0 +1,392 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class GenerateRecommendedVmClusterNetworkDetails(object): + """ + Generates a recommended VM cluster network configuration for VM cluster. + """ + + def __init__(self, **kwargs): + """ + Initializes a new GenerateRecommendedVmClusterNetworkDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param infrastructure_id: + The value to assign to the infrastructure_id property of this GenerateRecommendedVmClusterNetworkDetails. + :type infrastructure_id: str + + :param compartment_id: + The value to assign to the compartment_id property of this GenerateRecommendedVmClusterNetworkDetails. + :type compartment_id: str + + :param display_name: + The value to assign to the display_name property of this GenerateRecommendedVmClusterNetworkDetails. + :type display_name: str + + :param node_count: + The value to assign to the node_count property of this GenerateRecommendedVmClusterNetworkDetails. + :type node_count: int + + :param listener_port: + The value to assign to the listener_port property of this GenerateRecommendedVmClusterNetworkDetails. + :type listener_port: int + + :param listener_port_ssl: + The value to assign to the listener_port_ssl property of this GenerateRecommendedVmClusterNetworkDetails. + :type listener_port_ssl: int + + :param vm_networks: + The value to assign to the vm_networks property of this GenerateRecommendedVmClusterNetworkDetails. + :type vm_networks: list[oci.datacc.models.InfoVmNetworkDetails] + + :param dns_servers: + The value to assign to the dns_servers property of this GenerateRecommendedVmClusterNetworkDetails. + :type dns_servers: list[str] + + :param ntp_servers: + The value to assign to the ntp_servers property of this GenerateRecommendedVmClusterNetworkDetails. + :type ntp_servers: list[str] + + :param defined_tags: + The value to assign to the defined_tags property of this GenerateRecommendedVmClusterNetworkDetails. + :type defined_tags: dict(str, dict(str, object)) + + :param freeform_tags: + The value to assign to the freeform_tags property of this GenerateRecommendedVmClusterNetworkDetails. + :type freeform_tags: dict(str, str) + + """ + self.swagger_types = { + 'infrastructure_id': 'str', + 'compartment_id': 'str', + 'display_name': 'str', + 'node_count': 'int', + 'listener_port': 'int', + 'listener_port_ssl': 'int', + 'vm_networks': 'list[InfoVmNetworkDetails]', + 'dns_servers': 'list[str]', + 'ntp_servers': 'list[str]', + 'defined_tags': 'dict(str, dict(str, object))', + 'freeform_tags': 'dict(str, str)' + } + self.attribute_map = { + 'infrastructure_id': 'infrastructureId', + 'compartment_id': 'compartmentId', + 'display_name': 'displayName', + 'node_count': 'nodeCount', + 'listener_port': 'listenerPort', + 'listener_port_ssl': 'listenerPortSsl', + 'vm_networks': 'vmNetworks', + 'dns_servers': 'dnsServers', + 'ntp_servers': 'ntpServers', + 'defined_tags': 'definedTags', + 'freeform_tags': 'freeformTags' + } + self._infrastructure_id = None + self._compartment_id = None + self._display_name = None + self._node_count = None + self._listener_port = None + self._listener_port_ssl = None + self._vm_networks = None + self._dns_servers = None + self._ntp_servers = None + self._defined_tags = None + self._freeform_tags = None + + @property + def infrastructure_id(self): + """ + **[Required]** Gets the infrastructure_id of this GenerateRecommendedVmClusterNetworkDetails. + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The infrastructure_id of this GenerateRecommendedVmClusterNetworkDetails. + :rtype: str + """ + return self._infrastructure_id + + @infrastructure_id.setter + def infrastructure_id(self, infrastructure_id): + """ + Sets the infrastructure_id of this GenerateRecommendedVmClusterNetworkDetails. + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param infrastructure_id: The infrastructure_id of this GenerateRecommendedVmClusterNetworkDetails. + :type: str + """ + self._infrastructure_id = infrastructure_id + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this GenerateRecommendedVmClusterNetworkDetails. + The `OCID`__ of the compartment containing the VM cluster network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this GenerateRecommendedVmClusterNetworkDetails. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this GenerateRecommendedVmClusterNetworkDetails. + The `OCID`__ of the compartment containing the VM cluster network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this GenerateRecommendedVmClusterNetworkDetails. + :type: str + """ + self._compartment_id = compartment_id + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this GenerateRecommendedVmClusterNetworkDetails. + The user-friendly name for the VM cluster network. The name does not need to be unique. + + + :return: The display_name of this GenerateRecommendedVmClusterNetworkDetails. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this GenerateRecommendedVmClusterNetworkDetails. + The user-friendly name for the VM cluster network. The name does not need to be unique. + + + :param display_name: The display_name of this GenerateRecommendedVmClusterNetworkDetails. + :type: str + """ + self._display_name = display_name + + @property + def node_count(self): + """ + Gets the node_count of this GenerateRecommendedVmClusterNetworkDetails. + Count of virtual machines in this VM cluster. + + + :return: The node_count of this GenerateRecommendedVmClusterNetworkDetails. + :rtype: int + """ + return self._node_count + + @node_count.setter + def node_count(self, node_count): + """ + Sets the node_count of this GenerateRecommendedVmClusterNetworkDetails. + Count of virtual machines in this VM cluster. + + + :param node_count: The node_count of this GenerateRecommendedVmClusterNetworkDetails. + :type: int + """ + self._node_count = node_count + + @property + def listener_port(self): + """ + Gets the listener_port of this GenerateRecommendedVmClusterNetworkDetails. + The listener TCP/IP port. + + + :return: The listener_port of this GenerateRecommendedVmClusterNetworkDetails. + :rtype: int + """ + return self._listener_port + + @listener_port.setter + def listener_port(self, listener_port): + """ + Sets the listener_port of this GenerateRecommendedVmClusterNetworkDetails. + The listener TCP/IP port. + + + :param listener_port: The listener_port of this GenerateRecommendedVmClusterNetworkDetails. + :type: int + """ + self._listener_port = listener_port + + @property + def listener_port_ssl(self): + """ + Gets the listener_port_ssl of this GenerateRecommendedVmClusterNetworkDetails. + The listener TCP/IP SSL port. Default is 2484. + + + :return: The listener_port_ssl of this GenerateRecommendedVmClusterNetworkDetails. + :rtype: int + """ + return self._listener_port_ssl + + @listener_port_ssl.setter + def listener_port_ssl(self, listener_port_ssl): + """ + Sets the listener_port_ssl of this GenerateRecommendedVmClusterNetworkDetails. + The listener TCP/IP SSL port. Default is 2484. + + + :param listener_port_ssl: The listener_port_ssl of this GenerateRecommendedVmClusterNetworkDetails. + :type: int + """ + self._listener_port_ssl = listener_port_ssl + + @property + def vm_networks(self): + """ + **[Required]** Gets the vm_networks of this GenerateRecommendedVmClusterNetworkDetails. + Details of the client and backup networks. + + + :return: The vm_networks of this GenerateRecommendedVmClusterNetworkDetails. + :rtype: list[oci.datacc.models.InfoVmNetworkDetails] + """ + return self._vm_networks + + @vm_networks.setter + def vm_networks(self, vm_networks): + """ + Sets the vm_networks of this GenerateRecommendedVmClusterNetworkDetails. + Details of the client and backup networks. + + + :param vm_networks: The vm_networks of this GenerateRecommendedVmClusterNetworkDetails. + :type: list[oci.datacc.models.InfoVmNetworkDetails] + """ + self._vm_networks = vm_networks + + @property + def dns_servers(self): + """ + Gets the dns_servers of this GenerateRecommendedVmClusterNetworkDetails. + The list of DNS server IP addresses. Maximum of 3 allowed. + + + :return: The dns_servers of this GenerateRecommendedVmClusterNetworkDetails. + :rtype: list[str] + """ + return self._dns_servers + + @dns_servers.setter + def dns_servers(self, dns_servers): + """ + Sets the dns_servers of this GenerateRecommendedVmClusterNetworkDetails. + The list of DNS server IP addresses. Maximum of 3 allowed. + + + :param dns_servers: The dns_servers of this GenerateRecommendedVmClusterNetworkDetails. + :type: list[str] + """ + self._dns_servers = dns_servers + + @property + def ntp_servers(self): + """ + Gets the ntp_servers of this GenerateRecommendedVmClusterNetworkDetails. + The list of NTP server IP addresses. Maximum of 3 allowed. + + + :return: The ntp_servers of this GenerateRecommendedVmClusterNetworkDetails. + :rtype: list[str] + """ + return self._ntp_servers + + @ntp_servers.setter + def ntp_servers(self, ntp_servers): + """ + Sets the ntp_servers of this GenerateRecommendedVmClusterNetworkDetails. + The list of NTP server IP addresses. Maximum of 3 allowed. + + + :param ntp_servers: The ntp_servers of this GenerateRecommendedVmClusterNetworkDetails. + :type: list[str] + """ + self._ntp_servers = ntp_servers + + @property + def defined_tags(self): + """ + Gets the defined_tags of this GenerateRecommendedVmClusterNetworkDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this GenerateRecommendedVmClusterNetworkDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this GenerateRecommendedVmClusterNetworkDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this GenerateRecommendedVmClusterNetworkDetails. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this GenerateRecommendedVmClusterNetworkDetails. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this GenerateRecommendedVmClusterNetworkDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this GenerateRecommendedVmClusterNetworkDetails. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this GenerateRecommendedVmClusterNetworkDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/info_vm_network_details.py b/src/oci/datacc/models/info_vm_network_details.py new file mode 100644 index 0000000000..d252792589 --- /dev/null +++ b/src/oci/datacc/models/info_vm_network_details.py @@ -0,0 +1,272 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class InfoVmNetworkDetails(object): + """ + Details of the client or backup networks in an VM cluster. + """ + + #: A constant which can be used with the network_type property of a InfoVmNetworkDetails. + #: This constant has a value of "CLIENT" + NETWORK_TYPE_CLIENT = "CLIENT" + + #: A constant which can be used with the network_type property of a InfoVmNetworkDetails. + #: This constant has a value of "BACKUP" + NETWORK_TYPE_BACKUP = "BACKUP" + + def __init__(self, **kwargs): + """ + Initializes a new InfoVmNetworkDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param vlan_id: + The value to assign to the vlan_id property of this InfoVmNetworkDetails. + :type vlan_id: str + + :param network_type: + The value to assign to the network_type property of this InfoVmNetworkDetails. + Allowed values for this property are: "CLIENT", "BACKUP" + :type network_type: str + + :param netmask: + The value to assign to the netmask property of this InfoVmNetworkDetails. + :type netmask: str + + :param gateway: + The value to assign to the gateway property of this InfoVmNetworkDetails. + :type gateway: str + + :param domain_name: + The value to assign to the domain_name property of this InfoVmNetworkDetails. + :type domain_name: str + + :param prefix: + The value to assign to the prefix property of this InfoVmNetworkDetails. + :type prefix: str + + :param starting_ip: + The value to assign to the starting_ip property of this InfoVmNetworkDetails. + :type starting_ip: str + + """ + self.swagger_types = { + 'vlan_id': 'str', + 'network_type': 'str', + 'netmask': 'str', + 'gateway': 'str', + 'domain_name': 'str', + 'prefix': 'str', + 'starting_ip': 'str' + } + self.attribute_map = { + 'vlan_id': 'vlanId', + 'network_type': 'networkType', + 'netmask': 'netmask', + 'gateway': 'gateway', + 'domain_name': 'domainName', + 'prefix': 'prefix', + 'starting_ip': 'startingIp' + } + self._vlan_id = None + self._network_type = None + self._netmask = None + self._gateway = None + self._domain_name = None + self._prefix = None + self._starting_ip = None + + @property + def vlan_id(self): + """ + Gets the vlan_id of this InfoVmNetworkDetails. + The network VLAN ID. + + + :return: The vlan_id of this InfoVmNetworkDetails. + :rtype: str + """ + return self._vlan_id + + @vlan_id.setter + def vlan_id(self, vlan_id): + """ + Sets the vlan_id of this InfoVmNetworkDetails. + The network VLAN ID. + + + :param vlan_id: The vlan_id of this InfoVmNetworkDetails. + :type: str + """ + self._vlan_id = vlan_id + + @property + def network_type(self): + """ + **[Required]** Gets the network_type of this InfoVmNetworkDetails. + The network type. + + Allowed values for this property are: "CLIENT", "BACKUP" + + + :return: The network_type of this InfoVmNetworkDetails. + :rtype: str + """ + return self._network_type + + @network_type.setter + def network_type(self, network_type): + """ + Sets the network_type of this InfoVmNetworkDetails. + The network type. + + + :param network_type: The network_type of this InfoVmNetworkDetails. + :type: str + """ + allowed_values = ["CLIENT", "BACKUP"] + if not value_allowed_none_or_none_sentinel(network_type, allowed_values): + raise ValueError( + f"Invalid value for `network_type`, must be None or one of {allowed_values}" + ) + self._network_type = network_type + + @property + def netmask(self): + """ + **[Required]** Gets the netmask of this InfoVmNetworkDetails. + The network netmask. + + + :return: The netmask of this InfoVmNetworkDetails. + :rtype: str + """ + return self._netmask + + @netmask.setter + def netmask(self, netmask): + """ + Sets the netmask of this InfoVmNetworkDetails. + The network netmask. + + + :param netmask: The netmask of this InfoVmNetworkDetails. + :type: str + """ + self._netmask = netmask + + @property + def gateway(self): + """ + **[Required]** Gets the gateway of this InfoVmNetworkDetails. + The network gateway. + + + :return: The gateway of this InfoVmNetworkDetails. + :rtype: str + """ + return self._gateway + + @gateway.setter + def gateway(self, gateway): + """ + Sets the gateway of this InfoVmNetworkDetails. + The network gateway. + + + :param gateway: The gateway of this InfoVmNetworkDetails. + :type: str + """ + self._gateway = gateway + + @property + def domain_name(self): + """ + **[Required]** Gets the domain_name of this InfoVmNetworkDetails. + The network domain name. + + + :return: The domain_name of this InfoVmNetworkDetails. + :rtype: str + """ + return self._domain_name + + @domain_name.setter + def domain_name(self, domain_name): + """ + Sets the domain_name of this InfoVmNetworkDetails. + The network domain name. + + + :param domain_name: The domain_name of this InfoVmNetworkDetails. + :type: str + """ + self._domain_name = domain_name + + @property + def prefix(self): + """ + Gets the prefix of this InfoVmNetworkDetails. + The network domain name prefix. + + + :return: The prefix of this InfoVmNetworkDetails. + :rtype: str + """ + return self._prefix + + @prefix.setter + def prefix(self, prefix): + """ + Sets the prefix of this InfoVmNetworkDetails. + The network domain name prefix. + + + :param prefix: The prefix of this InfoVmNetworkDetails. + :type: str + """ + self._prefix = prefix + + @property + def starting_ip(self): + """ + Gets the starting_ip of this InfoVmNetworkDetails. + Starting ip address of the virtual machines. + + + :return: The starting_ip of this InfoVmNetworkDetails. + :rtype: str + """ + return self._starting_ip + + @starting_ip.setter + def starting_ip(self, starting_ip): + """ + Sets the starting_ip of this InfoVmNetworkDetails. + Starting ip address of the virtual machines. + + + :param starting_ip: The starting_ip of this InfoVmNetworkDetails. + :type: str + """ + self._starting_ip = starting_ip + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/infrastructure.py b/src/oci/datacc/models/infrastructure.py new file mode 100644 index 0000000000..eb98e0579e --- /dev/null +++ b/src/oci/datacc/models/infrastructure.py @@ -0,0 +1,1751 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class Infrastructure(object): + """ + Details about Database Infrastructure resource. + """ + + #: A constant which can be used with the system_model property of a Infrastructure. + #: This constant has a value of "X11_HA_768" + SYSTEM_MODEL_X11_HA_768 = "X11_HA_768" + + #: A constant which can be used with the system_model property of a Infrastructure. + #: This constant has a value of "X10_HA_512" + SYSTEM_MODEL_X10_HA_512 = "X10_HA_512" + + #: A constant which can be used with the system_model property of a Infrastructure. + #: This constant has a value of "X8_HA_384" + SYSTEM_MODEL_X8_HA_384 = "X8_HA_384" + + #: A constant which can be used with the shape property of a Infrastructure. + #: This constant has a value of "SIX_SSDS" + SHAPE_SIX_SSDS = "SIX_SSDS" + + #: A constant which can be used with the shape property of a Infrastructure. + #: This constant has a value of "TWELVE_SSDS" + SHAPE_TWELVE_SSDS = "TWELVE_SSDS" + + #: A constant which can be used with the shape property of a Infrastructure. + #: This constant has a value of "EIGHTEEN_SSDS" + SHAPE_EIGHTEEN_SSDS = "EIGHTEEN_SSDS" + + #: A constant which can be used with the shape property of a Infrastructure. + #: This constant has a value of "TWENTY_FOUR_SSDS" + SHAPE_TWENTY_FOUR_SSDS = "TWENTY_FOUR_SSDS" + + #: A constant which can be used with the client_network_bonding_mode property of a Infrastructure. + #: This constant has a value of "ACTIVE_BACKUP" + CLIENT_NETWORK_BONDING_MODE_ACTIVE_BACKUP = "ACTIVE_BACKUP" + + #: A constant which can be used with the client_network_bonding_mode property of a Infrastructure. + #: This constant has a value of "LACP" + CLIENT_NETWORK_BONDING_MODE_LACP = "LACP" + + #: A constant which can be used with the backup_network_bonding_mode property of a Infrastructure. + #: This constant has a value of "ACTIVE_BACKUP" + BACKUP_NETWORK_BONDING_MODE_ACTIVE_BACKUP = "ACTIVE_BACKUP" + + #: A constant which can be used with the backup_network_bonding_mode property of a Infrastructure. + #: This constant has a value of "LACP" + BACKUP_NETWORK_BONDING_MODE_LACP = "LACP" + + #: A constant which can be used with the cps_network_bonding_mode property of a Infrastructure. + #: This constant has a value of "ACTIVE_BACKUP" + CPS_NETWORK_BONDING_MODE_ACTIVE_BACKUP = "ACTIVE_BACKUP" + + #: A constant which can be used with the cps_network_bonding_mode property of a Infrastructure. + #: This constant has a value of "LACP" + CPS_NETWORK_BONDING_MODE_LACP = "LACP" + + #: A constant which can be used with the client_network_bonding_interface property of a Infrastructure. + #: This constant has a value of "BTBOND1" + CLIENT_NETWORK_BONDING_INTERFACE_BTBOND1 = "BTBOND1" + + #: A constant which can be used with the client_network_bonding_interface property of a Infrastructure. + #: This constant has a value of "BTBOND2" + CLIENT_NETWORK_BONDING_INTERFACE_BTBOND2 = "BTBOND2" + + #: A constant which can be used with the client_network_bonding_interface property of a Infrastructure. + #: This constant has a value of "BTBOND3" + CLIENT_NETWORK_BONDING_INTERFACE_BTBOND3 = "BTBOND3" + + #: A constant which can be used with the client_network_bonding_interface property of a Infrastructure. + #: This constant has a value of "BTBOND4" + CLIENT_NETWORK_BONDING_INTERFACE_BTBOND4 = "BTBOND4" + + #: A constant which can be used with the client_network_bonding_interface property of a Infrastructure. + #: This constant has a value of "BTBOND5" + CLIENT_NETWORK_BONDING_INTERFACE_BTBOND5 = "BTBOND5" + + #: A constant which can be used with the client_network_bonding_interface property of a Infrastructure. + #: This constant has a value of "BTBOND6" + CLIENT_NETWORK_BONDING_INTERFACE_BTBOND6 = "BTBOND6" + + #: A constant which can be used with the backup_network_bonding_interface property of a Infrastructure. + #: This constant has a value of "BTBOND1" + BACKUP_NETWORK_BONDING_INTERFACE_BTBOND1 = "BTBOND1" + + #: A constant which can be used with the backup_network_bonding_interface property of a Infrastructure. + #: This constant has a value of "BTBOND2" + BACKUP_NETWORK_BONDING_INTERFACE_BTBOND2 = "BTBOND2" + + #: A constant which can be used with the backup_network_bonding_interface property of a Infrastructure. + #: This constant has a value of "BTBOND3" + BACKUP_NETWORK_BONDING_INTERFACE_BTBOND3 = "BTBOND3" + + #: A constant which can be used with the backup_network_bonding_interface property of a Infrastructure. + #: This constant has a value of "BTBOND4" + BACKUP_NETWORK_BONDING_INTERFACE_BTBOND4 = "BTBOND4" + + #: A constant which can be used with the backup_network_bonding_interface property of a Infrastructure. + #: This constant has a value of "BTBOND5" + BACKUP_NETWORK_BONDING_INTERFACE_BTBOND5 = "BTBOND5" + + #: A constant which can be used with the backup_network_bonding_interface property of a Infrastructure. + #: This constant has a value of "BTBOND6" + BACKUP_NETWORK_BONDING_INTERFACE_BTBOND6 = "BTBOND6" + + #: A constant which can be used with the cps_network_bonding_interface property of a Infrastructure. + #: This constant has a value of "BTBOND1" + CPS_NETWORK_BONDING_INTERFACE_BTBOND1 = "BTBOND1" + + #: A constant which can be used with the cps_network_bonding_interface property of a Infrastructure. + #: This constant has a value of "BTBOND2" + CPS_NETWORK_BONDING_INTERFACE_BTBOND2 = "BTBOND2" + + #: A constant which can be used with the cps_network_bonding_interface property of a Infrastructure. + #: This constant has a value of "BTBOND3" + CPS_NETWORK_BONDING_INTERFACE_BTBOND3 = "BTBOND3" + + #: A constant which can be used with the cps_network_bonding_interface property of a Infrastructure. + #: This constant has a value of "BTBOND4" + CPS_NETWORK_BONDING_INTERFACE_BTBOND4 = "BTBOND4" + + #: A constant which can be used with the cps_network_bonding_interface property of a Infrastructure. + #: This constant has a value of "BTBOND5" + CPS_NETWORK_BONDING_INTERFACE_BTBOND5 = "BTBOND5" + + #: A constant which can be used with the cps_network_bonding_interface property of a Infrastructure. + #: This constant has a value of "BTBOND6" + CPS_NETWORK_BONDING_INTERFACE_BTBOND6 = "BTBOND6" + + #: A constant which can be used with the lifecycle_state property of a Infrastructure. + #: This constant has a value of "CREATING" + LIFECYCLE_STATE_CREATING = "CREATING" + + #: A constant which can be used with the lifecycle_state property of a Infrastructure. + #: This constant has a value of "REQUIRES_VALIDATION" + LIFECYCLE_STATE_REQUIRES_VALIDATION = "REQUIRES_VALIDATION" + + #: A constant which can be used with the lifecycle_state property of a Infrastructure. + #: This constant has a value of "VALIDATING" + LIFECYCLE_STATE_VALIDATING = "VALIDATING" + + #: A constant which can be used with the lifecycle_state property of a Infrastructure. + #: This constant has a value of "VALIDATION_FAILED" + LIFECYCLE_STATE_VALIDATION_FAILED = "VALIDATION_FAILED" + + #: A constant which can be used with the lifecycle_state property of a Infrastructure. + #: This constant has a value of "REQUIRES_ACTIVATION" + LIFECYCLE_STATE_REQUIRES_ACTIVATION = "REQUIRES_ACTIVATION" + + #: A constant which can be used with the lifecycle_state property of a Infrastructure. + #: This constant has a value of "ACTIVATING" + LIFECYCLE_STATE_ACTIVATING = "ACTIVATING" + + #: A constant which can be used with the lifecycle_state property of a Infrastructure. + #: This constant has a value of "ACTIVE" + LIFECYCLE_STATE_ACTIVE = "ACTIVE" + + #: A constant which can be used with the lifecycle_state property of a Infrastructure. + #: This constant has a value of "ACTIVATION_FAILED" + LIFECYCLE_STATE_ACTIVATION_FAILED = "ACTIVATION_FAILED" + + #: A constant which can be used with the lifecycle_state property of a Infrastructure. + #: This constant has a value of "FAILED" + LIFECYCLE_STATE_FAILED = "FAILED" + + #: A constant which can be used with the lifecycle_state property of a Infrastructure. + #: This constant has a value of "UPDATING" + LIFECYCLE_STATE_UPDATING = "UPDATING" + + #: A constant which can be used with the lifecycle_state property of a Infrastructure. + #: This constant has a value of "DELETING" + LIFECYCLE_STATE_DELETING = "DELETING" + + #: A constant which can be used with the lifecycle_state property of a Infrastructure. + #: This constant has a value of "DELETED" + LIFECYCLE_STATE_DELETED = "DELETED" + + #: A constant which can be used with the lifecycle_state property of a Infrastructure. + #: This constant has a value of "DISCONNECTED" + LIFECYCLE_STATE_DISCONNECTED = "DISCONNECTED" + + #: A constant which can be used with the lifecycle_state property of a Infrastructure. + #: This constant has a value of "MAINTENANCE_IN_PROGRESS" + LIFECYCLE_STATE_MAINTENANCE_IN_PROGRESS = "MAINTENANCE_IN_PROGRESS" + + #: A constant which can be used with the ssd_configuration_requested property of a Infrastructure. + #: This constant has a value of "SIX_SSDS" + SSD_CONFIGURATION_REQUESTED_SIX_SSDS = "SIX_SSDS" + + #: A constant which can be used with the ssd_configuration_requested property of a Infrastructure. + #: This constant has a value of "TWELVE_SSDS" + SSD_CONFIGURATION_REQUESTED_TWELVE_SSDS = "TWELVE_SSDS" + + #: A constant which can be used with the ssd_configuration_requested property of a Infrastructure. + #: This constant has a value of "EIGHTEEN_SSDS" + SSD_CONFIGURATION_REQUESTED_EIGHTEEN_SSDS = "EIGHTEEN_SSDS" + + #: A constant which can be used with the ssd_configuration_requested property of a Infrastructure. + #: This constant has a value of "TWENTY_FOUR_SSDS" + SSD_CONFIGURATION_REQUESTED_TWENTY_FOUR_SSDS = "TWENTY_FOUR_SSDS" + + def __init__(self, **kwargs): + """ + Initializes a new Infrastructure object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this Infrastructure. + :type id: str + + :param description: + The value to assign to the description property of this Infrastructure. + :type description: str + + :param compartment_id: + The value to assign to the compartment_id property of this Infrastructure. + :type compartment_id: str + + :param display_name: + The value to assign to the display_name property of this Infrastructure. + :type display_name: str + + :param system_model: + The value to assign to the system_model property of this Infrastructure. + Allowed values for this property are: "X11_HA_768", "X10_HA_512", "X8_HA_384", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type system_model: str + + :param version: + The value to assign to the version property of this Infrastructure. + :type version: str + + :param shape: + The value to assign to the shape property of this Infrastructure. + Allowed values for this property are: "SIX_SSDS", "TWELVE_SSDS", "EIGHTEEN_SSDS", "TWENTY_FOUR_SSDS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type shape: str + + :param cloud_control_plane_server1: + The value to assign to the cloud_control_plane_server1 property of this Infrastructure. + :type cloud_control_plane_server1: str + + :param cloud_control_plane_server2: + The value to assign to the cloud_control_plane_server2 property of this Infrastructure. + :type cloud_control_plane_server2: str + + :param netmask: + The value to assign to the netmask property of this Infrastructure. + :type netmask: str + + :param gateway: + The value to assign to the gateway property of this Infrastructure. + :type gateway: str + + :param admin_networkcidr: + The value to assign to the admin_networkcidr property of this Infrastructure. + :type admin_networkcidr: str + + :param data_disk_percentage: + The value to assign to the data_disk_percentage property of this Infrastructure. + :type data_disk_percentage: int + + :param reco_disk_percentage: + The value to assign to the reco_disk_percentage property of this Infrastructure. + :type reco_disk_percentage: int + + :param contacts: + The value to assign to the contacts property of this Infrastructure. + :type contacts: list[oci.datacc.models.InfrastructureContact] + + :param dns_servers: + The value to assign to the dns_servers property of this Infrastructure. + :type dns_servers: list[str] + + :param ntp_servers: + The value to assign to the ntp_servers property of this Infrastructure. + :type ntp_servers: list[str] + + :param client_network_bonding_mode: + The value to assign to the client_network_bonding_mode property of this Infrastructure. + Allowed values for this property are: "ACTIVE_BACKUP", "LACP", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type client_network_bonding_mode: str + + :param backup_network_bonding_mode: + The value to assign to the backup_network_bonding_mode property of this Infrastructure. + Allowed values for this property are: "ACTIVE_BACKUP", "LACP", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type backup_network_bonding_mode: str + + :param cps_network_bonding_mode: + The value to assign to the cps_network_bonding_mode property of this Infrastructure. + Allowed values for this property are: "ACTIVE_BACKUP", "LACP", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type cps_network_bonding_mode: str + + :param client_network_bonding_interface: + The value to assign to the client_network_bonding_interface property of this Infrastructure. + Allowed values for this property are: "BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type client_network_bonding_interface: str + + :param backup_network_bonding_interface: + The value to assign to the backup_network_bonding_interface property of this Infrastructure. + Allowed values for this property are: "BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type backup_network_bonding_interface: str + + :param cps_network_bonding_interface: + The value to assign to the cps_network_bonding_interface property of this Infrastructure. + Allowed values for this property are: "BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type cps_network_bonding_interface: str + + :param acfs_file_system_storage_in_gbs: + The value to assign to the acfs_file_system_storage_in_gbs property of this Infrastructure. + :type acfs_file_system_storage_in_gbs: float + + :param acfs_file_system_used_storage_in_gbs: + The value to assign to the acfs_file_system_used_storage_in_gbs property of this Infrastructure. + :type acfs_file_system_used_storage_in_gbs: float + + :param corporate_proxy: + The value to assign to the corporate_proxy property of this Infrastructure. + :type corporate_proxy: str + + :param vlan_id: + The value to assign to the vlan_id property of this Infrastructure. + :type vlan_id: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this Infrastructure. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this Infrastructure. + :type defined_tags: dict(str, dict(str, object)) + + :param system_tags: + The value to assign to the system_tags property of this Infrastructure. + :type system_tags: dict(str, dict(str, object)) + + :param maintenance_window: + The value to assign to the maintenance_window property of this Infrastructure. + :type maintenance_window: oci.datacc.models.MaintenanceWindow + + :param time_created: + The value to assign to the time_created property of this Infrastructure. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this Infrastructure. + :type time_updated: datetime + + :param time_last_state_updated: + The value to assign to the time_last_state_updated property of this Infrastructure. + :type time_last_state_updated: datetime + + :param time_activated: + The value to assign to the time_activated property of this Infrastructure. + :type time_activated: datetime + + :param time_validated: + The value to assign to the time_validated property of this Infrastructure. + :type time_validated: datetime + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this Infrastructure. + Allowed values for this property are: "CREATING", "REQUIRES_VALIDATION", "VALIDATING", "VALIDATION_FAILED", "REQUIRES_ACTIVATION", "ACTIVATING", "ACTIVE", "ACTIVATION_FAILED", "FAILED", "UPDATING", "DELETING", "DELETED", "DISCONNECTED", "MAINTENANCE_IN_PROGRESS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + :param lifecycle_state_details: + The value to assign to the lifecycle_state_details property of this Infrastructure. + :type lifecycle_state_details: str + + :param rack_serial_number: + The value to assign to the rack_serial_number property of this Infrastructure. + :type rack_serial_number: str + + :param servers: + The value to assign to the servers property of this Infrastructure. + :type servers: list[oci.datacc.models.InfrastructureServer] + + :param compute_capacity: + The value to assign to the compute_capacity property of this Infrastructure. + :type compute_capacity: oci.datacc.models.ComputeCapacityDetails + + :param storage_capacity: + The value to assign to the storage_capacity property of this Infrastructure. + :type storage_capacity: list[oci.datacc.models.StorageCapacityDetails] + + :param system_storage_capacity: + The value to assign to the system_storage_capacity property of this Infrastructure. + :type system_storage_capacity: oci.datacc.models.SystemStorageCapacityDetails + + :param network_adapter_configuration: + The value to assign to the network_adapter_configuration property of this Infrastructure. + :type network_adapter_configuration: str + + :param subscription_plan_number: + The value to assign to the subscription_plan_number property of this Infrastructure. + :type subscription_plan_number: str + + :param ssd_configuration_requested: + The value to assign to the ssd_configuration_requested property of this Infrastructure. + Allowed values for this property are: "SIX_SSDS", "TWELVE_SSDS", "EIGHTEEN_SSDS", "TWENTY_FOUR_SSDS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type ssd_configuration_requested: str + + """ + self.swagger_types = { + 'id': 'str', + 'description': 'str', + 'compartment_id': 'str', + 'display_name': 'str', + 'system_model': 'str', + 'version': 'str', + 'shape': 'str', + 'cloud_control_plane_server1': 'str', + 'cloud_control_plane_server2': 'str', + 'netmask': 'str', + 'gateway': 'str', + 'admin_networkcidr': 'str', + 'data_disk_percentage': 'int', + 'reco_disk_percentage': 'int', + 'contacts': 'list[InfrastructureContact]', + 'dns_servers': 'list[str]', + 'ntp_servers': 'list[str]', + 'client_network_bonding_mode': 'str', + 'backup_network_bonding_mode': 'str', + 'cps_network_bonding_mode': 'str', + 'client_network_bonding_interface': 'str', + 'backup_network_bonding_interface': 'str', + 'cps_network_bonding_interface': 'str', + 'acfs_file_system_storage_in_gbs': 'float', + 'acfs_file_system_used_storage_in_gbs': 'float', + 'corporate_proxy': 'str', + 'vlan_id': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))', + 'maintenance_window': 'MaintenanceWindow', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'time_last_state_updated': 'datetime', + 'time_activated': 'datetime', + 'time_validated': 'datetime', + 'lifecycle_state': 'str', + 'lifecycle_state_details': 'str', + 'rack_serial_number': 'str', + 'servers': 'list[InfrastructureServer]', + 'compute_capacity': 'ComputeCapacityDetails', + 'storage_capacity': 'list[StorageCapacityDetails]', + 'system_storage_capacity': 'SystemStorageCapacityDetails', + 'network_adapter_configuration': 'str', + 'subscription_plan_number': 'str', + 'ssd_configuration_requested': 'str' + } + self.attribute_map = { + 'id': 'id', + 'description': 'description', + 'compartment_id': 'compartmentId', + 'display_name': 'displayName', + 'system_model': 'systemModel', + 'version': 'version', + 'shape': 'shape', + 'cloud_control_plane_server1': 'cloudControlPlaneServer1', + 'cloud_control_plane_server2': 'cloudControlPlaneServer2', + 'netmask': 'netmask', + 'gateway': 'gateway', + 'admin_networkcidr': 'adminNetworkcidr', + 'data_disk_percentage': 'dataDiskPercentage', + 'reco_disk_percentage': 'recoDiskPercentage', + 'contacts': 'contacts', + 'dns_servers': 'dnsServers', + 'ntp_servers': 'ntpServers', + 'client_network_bonding_mode': 'clientNetworkBondingMode', + 'backup_network_bonding_mode': 'backupNetworkBondingMode', + 'cps_network_bonding_mode': 'cpsNetworkBondingMode', + 'client_network_bonding_interface': 'clientNetworkBondingInterface', + 'backup_network_bonding_interface': 'backupNetworkBondingInterface', + 'cps_network_bonding_interface': 'cpsNetworkBondingInterface', + 'acfs_file_system_storage_in_gbs': 'acfsFileSystemStorageInGbs', + 'acfs_file_system_used_storage_in_gbs': 'acfsFileSystemUsedStorageInGbs', + 'corporate_proxy': 'corporateProxy', + 'vlan_id': 'vlanId', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags', + 'maintenance_window': 'maintenanceWindow', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'time_last_state_updated': 'timeLastStateUpdated', + 'time_activated': 'timeActivated', + 'time_validated': 'timeValidated', + 'lifecycle_state': 'lifecycleState', + 'lifecycle_state_details': 'lifecycleStateDetails', + 'rack_serial_number': 'rackSerialNumber', + 'servers': 'servers', + 'compute_capacity': 'computeCapacity', + 'storage_capacity': 'storageCapacity', + 'system_storage_capacity': 'systemStorageCapacity', + 'network_adapter_configuration': 'networkAdapterConfiguration', + 'subscription_plan_number': 'subscriptionPlanNumber', + 'ssd_configuration_requested': 'ssdConfigurationRequested' + } + self._id = None + self._description = None + self._compartment_id = None + self._display_name = None + self._system_model = None + self._version = None + self._shape = None + self._cloud_control_plane_server1 = None + self._cloud_control_plane_server2 = None + self._netmask = None + self._gateway = None + self._admin_networkcidr = None + self._data_disk_percentage = None + self._reco_disk_percentage = None + self._contacts = None + self._dns_servers = None + self._ntp_servers = None + self._client_network_bonding_mode = None + self._backup_network_bonding_mode = None + self._cps_network_bonding_mode = None + self._client_network_bonding_interface = None + self._backup_network_bonding_interface = None + self._cps_network_bonding_interface = None + self._acfs_file_system_storage_in_gbs = None + self._acfs_file_system_used_storage_in_gbs = None + self._corporate_proxy = None + self._vlan_id = None + self._freeform_tags = None + self._defined_tags = None + self._system_tags = None + self._maintenance_window = None + self._time_created = None + self._time_updated = None + self._time_last_state_updated = None + self._time_activated = None + self._time_validated = None + self._lifecycle_state = None + self._lifecycle_state_details = None + self._rack_serial_number = None + self._servers = None + self._compute_capacity = None + self._storage_capacity = None + self._system_storage_capacity = None + self._network_adapter_configuration = None + self._subscription_plan_number = None + self._ssd_configuration_requested = None + + @property + def id(self): + """ + **[Required]** Gets the id of this Infrastructure. + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this Infrastructure. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this Infrastructure. + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this Infrastructure. + :type: str + """ + self._id = id + + @property + def description(self): + """ + Gets the description of this Infrastructure. + Database Infrastructure description. + + + :return: The description of this Infrastructure. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this Infrastructure. + Database Infrastructure description. + + + :param description: The description of this Infrastructure. + :type: str + """ + self._description = description + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this Infrastructure. + The `OCID`__ of the compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this Infrastructure. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this Infrastructure. + The `OCID`__ of the compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this Infrastructure. + :type: str + """ + self._compartment_id = compartment_id + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this Infrastructure. + The user-friendly name for the Database Infrastructure. The name does not need to be unique. + + + :return: The display_name of this Infrastructure. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this Infrastructure. + The user-friendly name for the Database Infrastructure. The name does not need to be unique. + + + :param display_name: The display_name of this Infrastructure. + :type: str + """ + self._display_name = display_name + + @property + def system_model(self): + """ + **[Required]** Gets the system_model of this Infrastructure. + Database Infrastructure System Model specification. The system model determines the model of the Database Infrastructure hardware to be used. + + Allowed values for this property are: "X11_HA_768", "X10_HA_512", "X8_HA_384", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The system_model of this Infrastructure. + :rtype: str + """ + return self._system_model + + @system_model.setter + def system_model(self, system_model): + """ + Sets the system_model of this Infrastructure. + Database Infrastructure System Model specification. The system model determines the model of the Database Infrastructure hardware to be used. + + + :param system_model: The system_model of this Infrastructure. + :type: str + """ + allowed_values = ["X11_HA_768", "X10_HA_512", "X8_HA_384"] + if not value_allowed_none_or_none_sentinel(system_model, allowed_values): + system_model = 'UNKNOWN_ENUM_VALUE' + self._system_model = system_model + + @property + def version(self): + """ + Gets the version of this Infrastructure. + The version of the system software on the Database Infrastructure. + + + :return: The version of this Infrastructure. + :rtype: str + """ + return self._version + + @version.setter + def version(self, version): + """ + Sets the version of this Infrastructure. + The version of the system software on the Database Infrastructure. + + + :param version: The version of this Infrastructure. + :type: str + """ + self._version = version + + @property + def shape(self): + """ + **[Required]** Gets the shape of this Infrastructure. + The shape of the Database Infrastructure. The shape determines the amount of CPU, storage, and memory resources allocated to the instance. + + Allowed values for this property are: "SIX_SSDS", "TWELVE_SSDS", "EIGHTEEN_SSDS", "TWENTY_FOUR_SSDS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The shape of this Infrastructure. + :rtype: str + """ + return self._shape + + @shape.setter + def shape(self, shape): + """ + Sets the shape of this Infrastructure. + The shape of the Database Infrastructure. The shape determines the amount of CPU, storage, and memory resources allocated to the instance. + + + :param shape: The shape of this Infrastructure. + :type: str + """ + allowed_values = ["SIX_SSDS", "TWELVE_SSDS", "EIGHTEEN_SSDS", "TWENTY_FOUR_SSDS"] + if not value_allowed_none_or_none_sentinel(shape, allowed_values): + shape = 'UNKNOWN_ENUM_VALUE' + self._shape = shape + + @property + def cloud_control_plane_server1(self): + """ + **[Required]** Gets the cloud_control_plane_server1 of this Infrastructure. + The IP address for the first control plane server. + + + :return: The cloud_control_plane_server1 of this Infrastructure. + :rtype: str + """ + return self._cloud_control_plane_server1 + + @cloud_control_plane_server1.setter + def cloud_control_plane_server1(self, cloud_control_plane_server1): + """ + Sets the cloud_control_plane_server1 of this Infrastructure. + The IP address for the first control plane server. + + + :param cloud_control_plane_server1: The cloud_control_plane_server1 of this Infrastructure. + :type: str + """ + self._cloud_control_plane_server1 = cloud_control_plane_server1 + + @property + def cloud_control_plane_server2(self): + """ + **[Required]** Gets the cloud_control_plane_server2 of this Infrastructure. + The IP address for the second control plane server. + + + :return: The cloud_control_plane_server2 of this Infrastructure. + :rtype: str + """ + return self._cloud_control_plane_server2 + + @cloud_control_plane_server2.setter + def cloud_control_plane_server2(self, cloud_control_plane_server2): + """ + Sets the cloud_control_plane_server2 of this Infrastructure. + The IP address for the second control plane server. + + + :param cloud_control_plane_server2: The cloud_control_plane_server2 of this Infrastructure. + :type: str + """ + self._cloud_control_plane_server2 = cloud_control_plane_server2 + + @property + def netmask(self): + """ + **[Required]** Gets the netmask of this Infrastructure. + The netmask for the control plane network. + + + :return: The netmask of this Infrastructure. + :rtype: str + """ + return self._netmask + + @netmask.setter + def netmask(self, netmask): + """ + Sets the netmask of this Infrastructure. + The netmask for the control plane network. + + + :param netmask: The netmask of this Infrastructure. + :type: str + """ + self._netmask = netmask + + @property + def gateway(self): + """ + **[Required]** Gets the gateway of this Infrastructure. + The gateway for the control plane network. + + + :return: The gateway of this Infrastructure. + :rtype: str + """ + return self._gateway + + @gateway.setter + def gateway(self, gateway): + """ + Sets the gateway of this Infrastructure. + The gateway for the control plane network. + + + :param gateway: The gateway of this Infrastructure. + :type: str + """ + self._gateway = gateway + + @property + def admin_networkcidr(self): + """ + **[Required]** Gets the admin_networkcidr of this Infrastructure. + The CIDR block for the system network. The system network is a private network in Database Infrastructure and is not connected to your corporate network. The system network is used for storage (ASM) traffic, high-performance interconnect traffic and administration of infrastructure components. + + + :return: The admin_networkcidr of this Infrastructure. + :rtype: str + """ + return self._admin_networkcidr + + @admin_networkcidr.setter + def admin_networkcidr(self, admin_networkcidr): + """ + Sets the admin_networkcidr of this Infrastructure. + The CIDR block for the system network. The system network is a private network in Database Infrastructure and is not connected to your corporate network. The system network is used for storage (ASM) traffic, high-performance interconnect traffic and administration of infrastructure components. + + + :param admin_networkcidr: The admin_networkcidr of this Infrastructure. + :type: str + """ + self._admin_networkcidr = admin_networkcidr + + @property + def data_disk_percentage(self): + """ + Gets the data_disk_percentage of this Infrastructure. + Percentage of disk space assigned for DATA disk group. + + + :return: The data_disk_percentage of this Infrastructure. + :rtype: int + """ + return self._data_disk_percentage + + @data_disk_percentage.setter + def data_disk_percentage(self, data_disk_percentage): + """ + Sets the data_disk_percentage of this Infrastructure. + Percentage of disk space assigned for DATA disk group. + + + :param data_disk_percentage: The data_disk_percentage of this Infrastructure. + :type: int + """ + self._data_disk_percentage = data_disk_percentage + + @property + def reco_disk_percentage(self): + """ + Gets the reco_disk_percentage of this Infrastructure. + Percentage of disk space assigned for RECO disk group. + + + :return: The reco_disk_percentage of this Infrastructure. + :rtype: int + """ + return self._reco_disk_percentage + + @reco_disk_percentage.setter + def reco_disk_percentage(self, reco_disk_percentage): + """ + Sets the reco_disk_percentage of this Infrastructure. + Percentage of disk space assigned for RECO disk group. + + + :param reco_disk_percentage: The reco_disk_percentage of this Infrastructure. + :type: int + """ + self._reco_disk_percentage = reco_disk_percentage + + @property + def contacts(self): + """ + Gets the contacts of this Infrastructure. + The list of contacts for the Database Infrastructure. + + + :return: The contacts of this Infrastructure. + :rtype: list[oci.datacc.models.InfrastructureContact] + """ + return self._contacts + + @contacts.setter + def contacts(self, contacts): + """ + Sets the contacts of this Infrastructure. + The list of contacts for the Database Infrastructure. + + + :param contacts: The contacts of this Infrastructure. + :type: list[oci.datacc.models.InfrastructureContact] + """ + self._contacts = contacts + + @property + def dns_servers(self): + """ + **[Required]** Gets the dns_servers of this Infrastructure. + The list of DNS server IP addresses. Maximum of 3 allowed. + + + :return: The dns_servers of this Infrastructure. + :rtype: list[str] + """ + return self._dns_servers + + @dns_servers.setter + def dns_servers(self, dns_servers): + """ + Sets the dns_servers of this Infrastructure. + The list of DNS server IP addresses. Maximum of 3 allowed. + + + :param dns_servers: The dns_servers of this Infrastructure. + :type: list[str] + """ + self._dns_servers = dns_servers + + @property + def ntp_servers(self): + """ + **[Required]** Gets the ntp_servers of this Infrastructure. + The list of NTP server IP addresses. Maximum of 3 allowed. + + + :return: The ntp_servers of this Infrastructure. + :rtype: list[str] + """ + return self._ntp_servers + + @ntp_servers.setter + def ntp_servers(self, ntp_servers): + """ + Sets the ntp_servers of this Infrastructure. + The list of NTP server IP addresses. Maximum of 3 allowed. + + + :param ntp_servers: The ntp_servers of this Infrastructure. + :type: list[str] + """ + self._ntp_servers = ntp_servers + + @property + def client_network_bonding_mode(self): + """ + Gets the client_network_bonding_mode of this Infrastructure. + The network bonding mode for Client networks for the Database Infrastructure. + + Allowed values for this property are: "ACTIVE_BACKUP", "LACP", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The client_network_bonding_mode of this Infrastructure. + :rtype: str + """ + return self._client_network_bonding_mode + + @client_network_bonding_mode.setter + def client_network_bonding_mode(self, client_network_bonding_mode): + """ + Sets the client_network_bonding_mode of this Infrastructure. + The network bonding mode for Client networks for the Database Infrastructure. + + + :param client_network_bonding_mode: The client_network_bonding_mode of this Infrastructure. + :type: str + """ + allowed_values = ["ACTIVE_BACKUP", "LACP"] + if not value_allowed_none_or_none_sentinel(client_network_bonding_mode, allowed_values): + client_network_bonding_mode = 'UNKNOWN_ENUM_VALUE' + self._client_network_bonding_mode = client_network_bonding_mode + + @property + def backup_network_bonding_mode(self): + """ + Gets the backup_network_bonding_mode of this Infrastructure. + The network bonding mode for Backup networks for the Database Infrastructure. + + Allowed values for this property are: "ACTIVE_BACKUP", "LACP", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The backup_network_bonding_mode of this Infrastructure. + :rtype: str + """ + return self._backup_network_bonding_mode + + @backup_network_bonding_mode.setter + def backup_network_bonding_mode(self, backup_network_bonding_mode): + """ + Sets the backup_network_bonding_mode of this Infrastructure. + The network bonding mode for Backup networks for the Database Infrastructure. + + + :param backup_network_bonding_mode: The backup_network_bonding_mode of this Infrastructure. + :type: str + """ + allowed_values = ["ACTIVE_BACKUP", "LACP"] + if not value_allowed_none_or_none_sentinel(backup_network_bonding_mode, allowed_values): + backup_network_bonding_mode = 'UNKNOWN_ENUM_VALUE' + self._backup_network_bonding_mode = backup_network_bonding_mode + + @property + def cps_network_bonding_mode(self): + """ + Gets the cps_network_bonding_mode of this Infrastructure. + The network bonding mode for CPS networks for the Database Infrastructure. + + Allowed values for this property are: "ACTIVE_BACKUP", "LACP", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The cps_network_bonding_mode of this Infrastructure. + :rtype: str + """ + return self._cps_network_bonding_mode + + @cps_network_bonding_mode.setter + def cps_network_bonding_mode(self, cps_network_bonding_mode): + """ + Sets the cps_network_bonding_mode of this Infrastructure. + The network bonding mode for CPS networks for the Database Infrastructure. + + + :param cps_network_bonding_mode: The cps_network_bonding_mode of this Infrastructure. + :type: str + """ + allowed_values = ["ACTIVE_BACKUP", "LACP"] + if not value_allowed_none_or_none_sentinel(cps_network_bonding_mode, allowed_values): + cps_network_bonding_mode = 'UNKNOWN_ENUM_VALUE' + self._cps_network_bonding_mode = cps_network_bonding_mode + + @property + def client_network_bonding_interface(self): + """ + Gets the client_network_bonding_interface of this Infrastructure. + The network bonding interface for client network for the Database Infrastructure. + + Allowed values for this property are: "BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The client_network_bonding_interface of this Infrastructure. + :rtype: str + """ + return self._client_network_bonding_interface + + @client_network_bonding_interface.setter + def client_network_bonding_interface(self, client_network_bonding_interface): + """ + Sets the client_network_bonding_interface of this Infrastructure. + The network bonding interface for client network for the Database Infrastructure. + + + :param client_network_bonding_interface: The client_network_bonding_interface of this Infrastructure. + :type: str + """ + allowed_values = ["BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6"] + if not value_allowed_none_or_none_sentinel(client_network_bonding_interface, allowed_values): + client_network_bonding_interface = 'UNKNOWN_ENUM_VALUE' + self._client_network_bonding_interface = client_network_bonding_interface + + @property + def backup_network_bonding_interface(self): + """ + Gets the backup_network_bonding_interface of this Infrastructure. + The network bonding interface for backup network for the Database Infrastructure. + + Allowed values for this property are: "BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The backup_network_bonding_interface of this Infrastructure. + :rtype: str + """ + return self._backup_network_bonding_interface + + @backup_network_bonding_interface.setter + def backup_network_bonding_interface(self, backup_network_bonding_interface): + """ + Sets the backup_network_bonding_interface of this Infrastructure. + The network bonding interface for backup network for the Database Infrastructure. + + + :param backup_network_bonding_interface: The backup_network_bonding_interface of this Infrastructure. + :type: str + """ + allowed_values = ["BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6"] + if not value_allowed_none_or_none_sentinel(backup_network_bonding_interface, allowed_values): + backup_network_bonding_interface = 'UNKNOWN_ENUM_VALUE' + self._backup_network_bonding_interface = backup_network_bonding_interface + + @property + def cps_network_bonding_interface(self): + """ + Gets the cps_network_bonding_interface of this Infrastructure. + The network bonding interface for CPS network for the Database Infrastructure. + + Allowed values for this property are: "BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The cps_network_bonding_interface of this Infrastructure. + :rtype: str + """ + return self._cps_network_bonding_interface + + @cps_network_bonding_interface.setter + def cps_network_bonding_interface(self, cps_network_bonding_interface): + """ + Sets the cps_network_bonding_interface of this Infrastructure. + The network bonding interface for CPS network for the Database Infrastructure. + + + :param cps_network_bonding_interface: The cps_network_bonding_interface of this Infrastructure. + :type: str + """ + allowed_values = ["BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6"] + if not value_allowed_none_or_none_sentinel(cps_network_bonding_interface, allowed_values): + cps_network_bonding_interface = 'UNKNOWN_ENUM_VALUE' + self._cps_network_bonding_interface = cps_network_bonding_interface + + @property + def acfs_file_system_storage_in_gbs(self): + """ + Gets the acfs_file_system_storage_in_gbs of this Infrastructure. + The amount of storage (in GB) in the DATA disk group that is reserved for creating local storage for VM Clusters and application VMs. + + + :return: The acfs_file_system_storage_in_gbs of this Infrastructure. + :rtype: float + """ + return self._acfs_file_system_storage_in_gbs + + @acfs_file_system_storage_in_gbs.setter + def acfs_file_system_storage_in_gbs(self, acfs_file_system_storage_in_gbs): + """ + Sets the acfs_file_system_storage_in_gbs of this Infrastructure. + The amount of storage (in GB) in the DATA disk group that is reserved for creating local storage for VM Clusters and application VMs. + + + :param acfs_file_system_storage_in_gbs: The acfs_file_system_storage_in_gbs of this Infrastructure. + :type: float + """ + self._acfs_file_system_storage_in_gbs = acfs_file_system_storage_in_gbs + + @property + def acfs_file_system_used_storage_in_gbs(self): + """ + Gets the acfs_file_system_used_storage_in_gbs of this Infrastructure. + The amount of storage (in GB) in the DATA disk group that is currently utilized for creating local storage for VM Clusters and application VMs. + This attribute is deprecated and will be removed in a subsequent release. Please read from systemStorageCapacity instead. + + + :return: The acfs_file_system_used_storage_in_gbs of this Infrastructure. + :rtype: float + """ + return self._acfs_file_system_used_storage_in_gbs + + @acfs_file_system_used_storage_in_gbs.setter + def acfs_file_system_used_storage_in_gbs(self, acfs_file_system_used_storage_in_gbs): + """ + Sets the acfs_file_system_used_storage_in_gbs of this Infrastructure. + The amount of storage (in GB) in the DATA disk group that is currently utilized for creating local storage for VM Clusters and application VMs. + This attribute is deprecated and will be removed in a subsequent release. Please read from systemStorageCapacity instead. + + + :param acfs_file_system_used_storage_in_gbs: The acfs_file_system_used_storage_in_gbs of this Infrastructure. + :type: float + """ + self._acfs_file_system_used_storage_in_gbs = acfs_file_system_used_storage_in_gbs + + @property + def corporate_proxy(self): + """ + Gets the corporate_proxy of this Infrastructure. + The corporate network proxy for access to the control plane network. Oracle recommends using an HTTPS proxy when possible + for enhanced security. + + + :return: The corporate_proxy of this Infrastructure. + :rtype: str + """ + return self._corporate_proxy + + @corporate_proxy.setter + def corporate_proxy(self, corporate_proxy): + """ + Sets the corporate_proxy of this Infrastructure. + The corporate network proxy for access to the control plane network. Oracle recommends using an HTTPS proxy when possible + for enhanced security. + + + :param corporate_proxy: The corporate_proxy of this Infrastructure. + :type: str + """ + self._corporate_proxy = corporate_proxy + + @property + def vlan_id(self): + """ + Gets the vlan_id of this Infrastructure. + The CPS network VLAN ID. + + + :return: The vlan_id of this Infrastructure. + :rtype: str + """ + return self._vlan_id + + @vlan_id.setter + def vlan_id(self, vlan_id): + """ + Sets the vlan_id of this Infrastructure. + The CPS network VLAN ID. + + + :param vlan_id: The vlan_id of this Infrastructure. + :type: str + """ + self._vlan_id = vlan_id + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this Infrastructure. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this Infrastructure. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this Infrastructure. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this Infrastructure. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this Infrastructure. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this Infrastructure. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this Infrastructure. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this Infrastructure. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def system_tags(self): + """ + Gets the system_tags of this Infrastructure. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :return: The system_tags of this Infrastructure. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this Infrastructure. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :param system_tags: The system_tags of this Infrastructure. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + @property + def maintenance_window(self): + """ + Gets the maintenance_window of this Infrastructure. + + :return: The maintenance_window of this Infrastructure. + :rtype: oci.datacc.models.MaintenanceWindow + """ + return self._maintenance_window + + @maintenance_window.setter + def maintenance_window(self, maintenance_window): + """ + Sets the maintenance_window of this Infrastructure. + + :param maintenance_window: The maintenance_window of this Infrastructure. + :type: oci.datacc.models.MaintenanceWindow + """ + self._maintenance_window = maintenance_window + + @property + def time_created(self): + """ + Gets the time_created of this Infrastructure. + The time that the Database Infrastructure cluster was created. An RFC3339 formatted datetime string. + + + :return: The time_created of this Infrastructure. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this Infrastructure. + The time that the Database Infrastructure cluster was created. An RFC3339 formatted datetime string. + + + :param time_created: The time_created of this Infrastructure. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + Gets the time_updated of this Infrastructure. + The time that the Database Infrastructure was last updated. An RFC3339 formatted datetime string. + + + :return: The time_updated of this Infrastructure. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this Infrastructure. + The time that the Database Infrastructure was last updated. An RFC3339 formatted datetime string. + + + :param time_updated: The time_updated of this Infrastructure. + :type: datetime + """ + self._time_updated = time_updated + + @property + def time_last_state_updated(self): + """ + Gets the time_last_state_updated of this Infrastructure. + The time, in RFC3339 format, when the lifecycle state was last updated. + + + :return: The time_last_state_updated of this Infrastructure. + :rtype: datetime + """ + return self._time_last_state_updated + + @time_last_state_updated.setter + def time_last_state_updated(self, time_last_state_updated): + """ + Sets the time_last_state_updated of this Infrastructure. + The time, in RFC3339 format, when the lifecycle state was last updated. + + + :param time_last_state_updated: The time_last_state_updated of this Infrastructure. + :type: datetime + """ + self._time_last_state_updated = time_last_state_updated + + @property + def time_activated(self): + """ + Gets the time_activated of this Infrastructure. + The time, in RFC3339 format, when the Database Infrastructure was activated. + + + :return: The time_activated of this Infrastructure. + :rtype: datetime + """ + return self._time_activated + + @time_activated.setter + def time_activated(self, time_activated): + """ + Sets the time_activated of this Infrastructure. + The time, in RFC3339 format, when the Database Infrastructure was activated. + + + :param time_activated: The time_activated of this Infrastructure. + :type: datetime + """ + self._time_activated = time_activated + + @property + def time_validated(self): + """ + Gets the time_validated of this Infrastructure. + The time, in RFC3339 format, when the Database Infrastructure network was validated. + + + :return: The time_validated of this Infrastructure. + :rtype: datetime + """ + return self._time_validated + + @time_validated.setter + def time_validated(self, time_validated): + """ + Sets the time_validated of this Infrastructure. + The time, in RFC3339 format, when the Database Infrastructure network was validated. + + + :param time_validated: The time_validated of this Infrastructure. + :type: datetime + """ + self._time_validated = time_validated + + @property + def lifecycle_state(self): + """ + Gets the lifecycle_state of this Infrastructure. + The current state of the Database Infrastructure. + + Allowed values for this property are: "CREATING", "REQUIRES_VALIDATION", "VALIDATING", "VALIDATION_FAILED", "REQUIRES_ACTIVATION", "ACTIVATING", "ACTIVE", "ACTIVATION_FAILED", "FAILED", "UPDATING", "DELETING", "DELETED", "DISCONNECTED", "MAINTENANCE_IN_PROGRESS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this Infrastructure. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this Infrastructure. + The current state of the Database Infrastructure. + + + :param lifecycle_state: The lifecycle_state of this Infrastructure. + :type: str + """ + allowed_values = ["CREATING", "REQUIRES_VALIDATION", "VALIDATING", "VALIDATION_FAILED", "REQUIRES_ACTIVATION", "ACTIVATING", "ACTIVE", "ACTIVATION_FAILED", "FAILED", "UPDATING", "DELETING", "DELETED", "DISCONNECTED", "MAINTENANCE_IN_PROGRESS"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + + @property + def lifecycle_state_details(self): + """ + Gets the lifecycle_state_details of this Infrastructure. + Lifecycle state details of the Database Infrastructure. + + + :return: The lifecycle_state_details of this Infrastructure. + :rtype: str + """ + return self._lifecycle_state_details + + @lifecycle_state_details.setter + def lifecycle_state_details(self, lifecycle_state_details): + """ + Sets the lifecycle_state_details of this Infrastructure. + Lifecycle state details of the Database Infrastructure. + + + :param lifecycle_state_details: The lifecycle_state_details of this Infrastructure. + :type: str + """ + self._lifecycle_state_details = lifecycle_state_details + + @property + def rack_serial_number(self): + """ + Gets the rack_serial_number of this Infrastructure. + The serial number for the Database Infrastructure. + + + :return: The rack_serial_number of this Infrastructure. + :rtype: str + """ + return self._rack_serial_number + + @rack_serial_number.setter + def rack_serial_number(self, rack_serial_number): + """ + Sets the rack_serial_number of this Infrastructure. + The serial number for the Database Infrastructure. + + + :param rack_serial_number: The rack_serial_number of this Infrastructure. + :type: str + """ + self._rack_serial_number = rack_serial_number + + @property + def servers(self): + """ + Gets the servers of this Infrastructure. + A list of Database Infrastructure nodes. + + + :return: The servers of this Infrastructure. + :rtype: list[oci.datacc.models.InfrastructureServer] + """ + return self._servers + + @servers.setter + def servers(self, servers): + """ + Sets the servers of this Infrastructure. + A list of Database Infrastructure nodes. + + + :param servers: The servers of this Infrastructure. + :type: list[oci.datacc.models.InfrastructureServer] + """ + self._servers = servers + + @property + def compute_capacity(self): + """ + Gets the compute_capacity of this Infrastructure. + + :return: The compute_capacity of this Infrastructure. + :rtype: oci.datacc.models.ComputeCapacityDetails + """ + return self._compute_capacity + + @compute_capacity.setter + def compute_capacity(self, compute_capacity): + """ + Sets the compute_capacity of this Infrastructure. + + :param compute_capacity: The compute_capacity of this Infrastructure. + :type: oci.datacc.models.ComputeCapacityDetails + """ + self._compute_capacity = compute_capacity + + @property + def storage_capacity(self): + """ + Gets the storage_capacity of this Infrastructure. + Capacity details of the Storage disk group. + This attribute is deprecated and will be removed in a subsequent release. Please + use systemStorageCapacity instead. + + + :return: The storage_capacity of this Infrastructure. + :rtype: list[oci.datacc.models.StorageCapacityDetails] + """ + return self._storage_capacity + + @storage_capacity.setter + def storage_capacity(self, storage_capacity): + """ + Sets the storage_capacity of this Infrastructure. + Capacity details of the Storage disk group. + This attribute is deprecated and will be removed in a subsequent release. Please + use systemStorageCapacity instead. + + + :param storage_capacity: The storage_capacity of this Infrastructure. + :type: list[oci.datacc.models.StorageCapacityDetails] + """ + self._storage_capacity = storage_capacity + + @property + def system_storage_capacity(self): + """ + Gets the system_storage_capacity of this Infrastructure. + + :return: The system_storage_capacity of this Infrastructure. + :rtype: oci.datacc.models.SystemStorageCapacityDetails + """ + return self._system_storage_capacity + + @system_storage_capacity.setter + def system_storage_capacity(self, system_storage_capacity): + """ + Sets the system_storage_capacity of this Infrastructure. + + :param system_storage_capacity: The system_storage_capacity of this Infrastructure. + :type: oci.datacc.models.SystemStorageCapacityDetails + """ + self._system_storage_capacity = system_storage_capacity + + @property + def network_adapter_configuration(self): + """ + Gets the network_adapter_configuration of this Infrastructure. + The network adapter, transceiver and cable configuration for the client and backup networks. + + + :return: The network_adapter_configuration of this Infrastructure. + :rtype: str + """ + return self._network_adapter_configuration + + @network_adapter_configuration.setter + def network_adapter_configuration(self, network_adapter_configuration): + """ + Sets the network_adapter_configuration of this Infrastructure. + The network adapter, transceiver and cable configuration for the client and backup networks. + + + :param network_adapter_configuration: The network_adapter_configuration of this Infrastructure. + :type: str + """ + self._network_adapter_configuration = network_adapter_configuration + + @property + def subscription_plan_number(self): + """ + Gets the subscription_plan_number of this Infrastructure. + The unique identifier for the subscription plan number. + + + :return: The subscription_plan_number of this Infrastructure. + :rtype: str + """ + return self._subscription_plan_number + + @subscription_plan_number.setter + def subscription_plan_number(self, subscription_plan_number): + """ + Sets the subscription_plan_number of this Infrastructure. + The unique identifier for the subscription plan number. + + + :param subscription_plan_number: The subscription_plan_number of this Infrastructure. + :type: str + """ + self._subscription_plan_number = subscription_plan_number + + @property + def ssd_configuration_requested(self): + """ + Gets the ssd_configuration_requested of this Infrastructure. + SSD configuration requested for the infrastructure. + + Allowed values for this property are: "SIX_SSDS", "TWELVE_SSDS", "EIGHTEEN_SSDS", "TWENTY_FOUR_SSDS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The ssd_configuration_requested of this Infrastructure. + :rtype: str + """ + return self._ssd_configuration_requested + + @ssd_configuration_requested.setter + def ssd_configuration_requested(self, ssd_configuration_requested): + """ + Sets the ssd_configuration_requested of this Infrastructure. + SSD configuration requested for the infrastructure. + + + :param ssd_configuration_requested: The ssd_configuration_requested of this Infrastructure. + :type: str + """ + allowed_values = ["SIX_SSDS", "TWELVE_SSDS", "EIGHTEEN_SSDS", "TWENTY_FOUR_SSDS"] + if not value_allowed_none_or_none_sentinel(ssd_configuration_requested, allowed_values): + ssd_configuration_requested = 'UNKNOWN_ENUM_VALUE' + self._ssd_configuration_requested = ssd_configuration_requested + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/infrastructure_collection.py b/src/oci/datacc/models/infrastructure_collection.py new file mode 100644 index 0000000000..2dfc13569b --- /dev/null +++ b/src/oci/datacc/models/infrastructure_collection.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class InfrastructureCollection(object): + """ + A collection of Database Infrastructure resources. + """ + + def __init__(self, **kwargs): + """ + Initializes a new InfrastructureCollection object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this InfrastructureCollection. + :type items: list[oci.datacc.models.InfrastructureSummary] + + """ + self.swagger_types = { + 'items': 'list[InfrastructureSummary]' + } + self.attribute_map = { + 'items': 'items' + } + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this InfrastructureCollection. + A list of Database Infrastructure resources. + + + :return: The items of this InfrastructureCollection. + :rtype: list[oci.datacc.models.InfrastructureSummary] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this InfrastructureCollection. + A list of Database Infrastructure resources. + + + :param items: The items of this InfrastructureCollection. + :type: list[oci.datacc.models.InfrastructureSummary] + """ + self._items = items + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/infrastructure_contact.py b/src/oci/datacc/models/infrastructure_contact.py new file mode 100644 index 0000000000..131f2ccb69 --- /dev/null +++ b/src/oci/datacc/models/infrastructure_contact.py @@ -0,0 +1,198 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class InfrastructureContact(object): + """ + Contact details for Database Infrastructure. + """ + + def __init__(self, **kwargs): + """ + Initializes a new InfrastructureContact object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this InfrastructureContact. + :type name: str + + :param phone_number: + The value to assign to the phone_number property of this InfrastructureContact. + :type phone_number: str + + :param email: + The value to assign to the email property of this InfrastructureContact. + :type email: str + + :param is_primary: + The value to assign to the is_primary property of this InfrastructureContact. + :type is_primary: bool + + :param is_contact_mos_validated: + The value to assign to the is_contact_mos_validated property of this InfrastructureContact. + :type is_contact_mos_validated: bool + + """ + self.swagger_types = { + 'name': 'str', + 'phone_number': 'str', + 'email': 'str', + 'is_primary': 'bool', + 'is_contact_mos_validated': 'bool' + } + self.attribute_map = { + 'name': 'name', + 'phone_number': 'phoneNumber', + 'email': 'email', + 'is_primary': 'isPrimary', + 'is_contact_mos_validated': 'isContactMosValidated' + } + self._name = None + self._phone_number = None + self._email = None + self._is_primary = None + self._is_contact_mos_validated = None + + @property + def name(self): + """ + **[Required]** Gets the name of this InfrastructureContact. + The name of the Database Infrastructure contact. + + + :return: The name of this InfrastructureContact. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this InfrastructureContact. + The name of the Database Infrastructure contact. + + + :param name: The name of this InfrastructureContact. + :type: str + """ + self._name = name + + @property + def phone_number(self): + """ + Gets the phone_number of this InfrastructureContact. + The phone number for the Database Infrastructure contact. + + + :return: The phone_number of this InfrastructureContact. + :rtype: str + """ + return self._phone_number + + @phone_number.setter + def phone_number(self, phone_number): + """ + Sets the phone_number of this InfrastructureContact. + The phone number for the Database Infrastructure contact. + + + :param phone_number: The phone_number of this InfrastructureContact. + :type: str + """ + self._phone_number = phone_number + + @property + def email(self): + """ + **[Required]** Gets the email of this InfrastructureContact. + The email for the Database Infrastructure contact. + + + :return: The email of this InfrastructureContact. + :rtype: str + """ + return self._email + + @email.setter + def email(self, email): + """ + Sets the email of this InfrastructureContact. + The email for the Database Infrastructure contact. + + + :param email: The email of this InfrastructureContact. + :type: str + """ + self._email = email + + @property + def is_primary(self): + """ + **[Required]** Gets the is_primary of this InfrastructureContact. + If `true`, this Database Infrastructure contact is a primary contact. + If `false`, this Database Infrastructure is a secondary contact. + + + :return: The is_primary of this InfrastructureContact. + :rtype: bool + """ + return self._is_primary + + @is_primary.setter + def is_primary(self, is_primary): + """ + Sets the is_primary of this InfrastructureContact. + If `true`, this Database Infrastructure contact is a primary contact. + If `false`, this Database Infrastructure is a secondary contact. + + + :param is_primary: The is_primary of this InfrastructureContact. + :type: bool + """ + self._is_primary = is_primary + + @property + def is_contact_mos_validated(self): + """ + Gets the is_contact_mos_validated of this InfrastructureContact. + If `true`, this Database Infrastructure contact is a valid My Oracle Support (MOS) contact. + If `false`, this Database Infrastructure contact is not a valid MOS contact. + + + :return: The is_contact_mos_validated of this InfrastructureContact. + :rtype: bool + """ + return self._is_contact_mos_validated + + @is_contact_mos_validated.setter + def is_contact_mos_validated(self, is_contact_mos_validated): + """ + Sets the is_contact_mos_validated of this InfrastructureContact. + If `true`, this Database Infrastructure contact is a valid My Oracle Support (MOS) contact. + If `false`, this Database Infrastructure contact is not a valid MOS contact. + + + :param is_contact_mos_validated: The is_contact_mos_validated of this InfrastructureContact. + :type: bool + """ + self._is_contact_mos_validated = is_contact_mos_validated + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/infrastructure_scale_option.py b/src/oci/datacc/models/infrastructure_scale_option.py new file mode 100644 index 0000000000..64c4473df8 --- /dev/null +++ b/src/oci/datacc/models/infrastructure_scale_option.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class InfrastructureScaleOption(object): + """ + The available scale options for the infrastructure. + """ + + def __init__(self, **kwargs): + """ + Initializes a new InfrastructureScaleOption object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param possible_ssd_configurations: + The value to assign to the possible_ssd_configurations property of this InfrastructureScaleOption. + :type possible_ssd_configurations: list[oci.datacc.models.ShapeEnum] + + """ + self.swagger_types = { + 'possible_ssd_configurations': 'list[ShapeEnum]' + } + self.attribute_map = { + 'possible_ssd_configurations': 'possibleSsdConfigurations' + } + self._possible_ssd_configurations = None + + @property + def possible_ssd_configurations(self): + """ + **[Required]** Gets the possible_ssd_configurations of this InfrastructureScaleOption. + The available scale options for the infrastructure. + + + :return: The possible_ssd_configurations of this InfrastructureScaleOption. + :rtype: list[oci.datacc.models.ShapeEnum] + """ + return self._possible_ssd_configurations + + @possible_ssd_configurations.setter + def possible_ssd_configurations(self, possible_ssd_configurations): + """ + Sets the possible_ssd_configurations of this InfrastructureScaleOption. + The available scale options for the infrastructure. + + + :param possible_ssd_configurations: The possible_ssd_configurations of this InfrastructureScaleOption. + :type: list[oci.datacc.models.ShapeEnum] + """ + self._possible_ssd_configurations = possible_ssd_configurations + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/infrastructure_server.py b/src/oci/datacc/models/infrastructure_server.py new file mode 100644 index 0000000000..0c72d0e5cd --- /dev/null +++ b/src/oci/datacc/models/infrastructure_server.py @@ -0,0 +1,382 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class InfrastructureServer(object): + """ + Database Infrastructure Server details. + """ + + #: A constant which can be used with the lifecycle_state property of a InfrastructureServer. + #: This constant has a value of "CREATING" + LIFECYCLE_STATE_CREATING = "CREATING" + + #: A constant which can be used with the lifecycle_state property of a InfrastructureServer. + #: This constant has a value of "REQUIRES_VALIDATION" + LIFECYCLE_STATE_REQUIRES_VALIDATION = "REQUIRES_VALIDATION" + + #: A constant which can be used with the lifecycle_state property of a InfrastructureServer. + #: This constant has a value of "VALIDATING" + LIFECYCLE_STATE_VALIDATING = "VALIDATING" + + #: A constant which can be used with the lifecycle_state property of a InfrastructureServer. + #: This constant has a value of "VALIDATION_FAILED" + LIFECYCLE_STATE_VALIDATION_FAILED = "VALIDATION_FAILED" + + #: A constant which can be used with the lifecycle_state property of a InfrastructureServer. + #: This constant has a value of "REQUIRES_ACTIVATION" + LIFECYCLE_STATE_REQUIRES_ACTIVATION = "REQUIRES_ACTIVATION" + + #: A constant which can be used with the lifecycle_state property of a InfrastructureServer. + #: This constant has a value of "ACTIVATING" + LIFECYCLE_STATE_ACTIVATING = "ACTIVATING" + + #: A constant which can be used with the lifecycle_state property of a InfrastructureServer. + #: This constant has a value of "ACTIVE" + LIFECYCLE_STATE_ACTIVE = "ACTIVE" + + #: A constant which can be used with the lifecycle_state property of a InfrastructureServer. + #: This constant has a value of "ACTIVATION_FAILED" + LIFECYCLE_STATE_ACTIVATION_FAILED = "ACTIVATION_FAILED" + + #: A constant which can be used with the lifecycle_state property of a InfrastructureServer. + #: This constant has a value of "FAILED" + LIFECYCLE_STATE_FAILED = "FAILED" + + #: A constant which can be used with the lifecycle_state property of a InfrastructureServer. + #: This constant has a value of "UPDATING" + LIFECYCLE_STATE_UPDATING = "UPDATING" + + #: A constant which can be used with the lifecycle_state property of a InfrastructureServer. + #: This constant has a value of "DELETING" + LIFECYCLE_STATE_DELETING = "DELETING" + + #: A constant which can be used with the lifecycle_state property of a InfrastructureServer. + #: This constant has a value of "DELETED" + LIFECYCLE_STATE_DELETED = "DELETED" + + #: A constant which can be used with the lifecycle_state property of a InfrastructureServer. + #: This constant has a value of "DISCONNECTED" + LIFECYCLE_STATE_DISCONNECTED = "DISCONNECTED" + + #: A constant which can be used with the lifecycle_state property of a InfrastructureServer. + #: This constant has a value of "MAINTENANCE_IN_PROGRESS" + LIFECYCLE_STATE_MAINTENANCE_IN_PROGRESS = "MAINTENANCE_IN_PROGRESS" + + def __init__(self, **kwargs): + """ + Initializes a new InfrastructureServer object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this InfrastructureServer. + :type id: str + + :param server_name: + The value to assign to the server_name property of this InfrastructureServer. + :type server_name: str + + :param server_ip_address: + The value to assign to the server_ip_address property of this InfrastructureServer. + :type server_ip_address: str + + :param ilom_name: + The value to assign to the ilom_name property of this InfrastructureServer. + :type ilom_name: str + + :param ilom_ip_address: + The value to assign to the ilom_ip_address property of this InfrastructureServer. + :type ilom_ip_address: str + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this InfrastructureServer. + Allowed values for this property are: "CREATING", "REQUIRES_VALIDATION", "VALIDATING", "VALIDATION_FAILED", "REQUIRES_ACTIVATION", "ACTIVATING", "ACTIVE", "ACTIVATION_FAILED", "FAILED", "UPDATING", "DELETING", "DELETED", "DISCONNECTED", "MAINTENANCE_IN_PROGRESS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + :param base_vm_count: + The value to assign to the base_vm_count property of this InfrastructureServer. + :type base_vm_count: int + + :param instance_vm_count: + The value to assign to the instance_vm_count property of this InfrastructureServer. + :type instance_vm_count: int + + :param compute_capacity: + The value to assign to the compute_capacity property of this InfrastructureServer. + :type compute_capacity: oci.datacc.models.ComputeCapacityDetails + + """ + self.swagger_types = { + 'id': 'str', + 'server_name': 'str', + 'server_ip_address': 'str', + 'ilom_name': 'str', + 'ilom_ip_address': 'str', + 'lifecycle_state': 'str', + 'base_vm_count': 'int', + 'instance_vm_count': 'int', + 'compute_capacity': 'ComputeCapacityDetails' + } + self.attribute_map = { + 'id': 'id', + 'server_name': 'serverName', + 'server_ip_address': 'serverIpAddress', + 'ilom_name': 'ilomName', + 'ilom_ip_address': 'ilomIpAddress', + 'lifecycle_state': 'lifecycleState', + 'base_vm_count': 'baseVmCount', + 'instance_vm_count': 'instanceVmCount', + 'compute_capacity': 'computeCapacity' + } + self._id = None + self._server_name = None + self._server_ip_address = None + self._ilom_name = None + self._ilom_ip_address = None + self._lifecycle_state = None + self._base_vm_count = None + self._instance_vm_count = None + self._compute_capacity = None + + @property + def id(self): + """ + **[Required]** Gets the id of this InfrastructureServer. + The `OCID`__ of the Oracle Data Server of Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this InfrastructureServer. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this InfrastructureServer. + The `OCID`__ of the Oracle Data Server of Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this InfrastructureServer. + :type: str + """ + self._id = id + + @property + def server_name(self): + """ + **[Required]** Gets the server_name of this InfrastructureServer. + Database Infrastructure Server name. + + + :return: The server_name of this InfrastructureServer. + :rtype: str + """ + return self._server_name + + @server_name.setter + def server_name(self, server_name): + """ + Sets the server_name of this InfrastructureServer. + Database Infrastructure Server name. + + + :param server_name: The server_name of this InfrastructureServer. + :type: str + """ + self._server_name = server_name + + @property + def server_ip_address(self): + """ + **[Required]** Gets the server_ip_address of this InfrastructureServer. + Database Infrastructure Server IP address. + + + :return: The server_ip_address of this InfrastructureServer. + :rtype: str + """ + return self._server_ip_address + + @server_ip_address.setter + def server_ip_address(self, server_ip_address): + """ + Sets the server_ip_address of this InfrastructureServer. + Database Infrastructure Server IP address. + + + :param server_ip_address: The server_ip_address of this InfrastructureServer. + :type: str + """ + self._server_ip_address = server_ip_address + + @property + def ilom_name(self): + """ + **[Required]** Gets the ilom_name of this InfrastructureServer. + Database Infrastructure Server ILOM name. + + + :return: The ilom_name of this InfrastructureServer. + :rtype: str + """ + return self._ilom_name + + @ilom_name.setter + def ilom_name(self, ilom_name): + """ + Sets the ilom_name of this InfrastructureServer. + Database Infrastructure Server ILOM name. + + + :param ilom_name: The ilom_name of this InfrastructureServer. + :type: str + """ + self._ilom_name = ilom_name + + @property + def ilom_ip_address(self): + """ + **[Required]** Gets the ilom_ip_address of this InfrastructureServer. + Database Infrastructure Server ILOM IP address. + + + :return: The ilom_ip_address of this InfrastructureServer. + :rtype: str + """ + return self._ilom_ip_address + + @ilom_ip_address.setter + def ilom_ip_address(self, ilom_ip_address): + """ + Sets the ilom_ip_address of this InfrastructureServer. + Database Infrastructure Server ILOM IP address. + + + :param ilom_ip_address: The ilom_ip_address of this InfrastructureServer. + :type: str + """ + self._ilom_ip_address = ilom_ip_address + + @property + def lifecycle_state(self): + """ + **[Required]** Gets the lifecycle_state of this InfrastructureServer. + The current state of the Database Infrastructure server. + + Allowed values for this property are: "CREATING", "REQUIRES_VALIDATION", "VALIDATING", "VALIDATION_FAILED", "REQUIRES_ACTIVATION", "ACTIVATING", "ACTIVE", "ACTIVATION_FAILED", "FAILED", "UPDATING", "DELETING", "DELETED", "DISCONNECTED", "MAINTENANCE_IN_PROGRESS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this InfrastructureServer. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this InfrastructureServer. + The current state of the Database Infrastructure server. + + + :param lifecycle_state: The lifecycle_state of this InfrastructureServer. + :type: str + """ + allowed_values = ["CREATING", "REQUIRES_VALIDATION", "VALIDATING", "VALIDATION_FAILED", "REQUIRES_ACTIVATION", "ACTIVATING", "ACTIVE", "ACTIVATION_FAILED", "FAILED", "UPDATING", "DELETING", "DELETED", "DISCONNECTED", "MAINTENANCE_IN_PROGRESS"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + + @property + def base_vm_count(self): + """ + Gets the base_vm_count of this InfrastructureServer. + Number of database virtual machines hosted on the server. + + + :return: The base_vm_count of this InfrastructureServer. + :rtype: int + """ + return self._base_vm_count + + @base_vm_count.setter + def base_vm_count(self, base_vm_count): + """ + Sets the base_vm_count of this InfrastructureServer. + Number of database virtual machines hosted on the server. + + + :param base_vm_count: The base_vm_count of this InfrastructureServer. + :type: int + """ + self._base_vm_count = base_vm_count + + @property + def instance_vm_count(self): + """ + Gets the instance_vm_count of this InfrastructureServer. + Number of instances hosted on the server. + + + :return: The instance_vm_count of this InfrastructureServer. + :rtype: int + """ + return self._instance_vm_count + + @instance_vm_count.setter + def instance_vm_count(self, instance_vm_count): + """ + Sets the instance_vm_count of this InfrastructureServer. + Number of instances hosted on the server. + + + :param instance_vm_count: The instance_vm_count of this InfrastructureServer. + :type: int + """ + self._instance_vm_count = instance_vm_count + + @property + def compute_capacity(self): + """ + Gets the compute_capacity of this InfrastructureServer. + + :return: The compute_capacity of this InfrastructureServer. + :rtype: oci.datacc.models.ComputeCapacityDetails + """ + return self._compute_capacity + + @compute_capacity.setter + def compute_capacity(self, compute_capacity): + """ + Sets the compute_capacity of this InfrastructureServer. + + :param compute_capacity: The compute_capacity of this InfrastructureServer. + :type: oci.datacc.models.ComputeCapacityDetails + """ + self._compute_capacity = compute_capacity + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/infrastructure_summary.py b/src/oci/datacc/models/infrastructure_summary.py new file mode 100644 index 0000000000..ff32e2adb7 --- /dev/null +++ b/src/oci/datacc/models/infrastructure_summary.py @@ -0,0 +1,1565 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class InfrastructureSummary(object): + """ + Database Infrastructure resource summary. + """ + + #: A constant which can be used with the system_model property of a InfrastructureSummary. + #: This constant has a value of "X11_HA_768" + SYSTEM_MODEL_X11_HA_768 = "X11_HA_768" + + #: A constant which can be used with the system_model property of a InfrastructureSummary. + #: This constant has a value of "X10_HA_512" + SYSTEM_MODEL_X10_HA_512 = "X10_HA_512" + + #: A constant which can be used with the system_model property of a InfrastructureSummary. + #: This constant has a value of "X8_HA_384" + SYSTEM_MODEL_X8_HA_384 = "X8_HA_384" + + #: A constant which can be used with the shape property of a InfrastructureSummary. + #: This constant has a value of "SIX_SSDS" + SHAPE_SIX_SSDS = "SIX_SSDS" + + #: A constant which can be used with the shape property of a InfrastructureSummary. + #: This constant has a value of "TWELVE_SSDS" + SHAPE_TWELVE_SSDS = "TWELVE_SSDS" + + #: A constant which can be used with the shape property of a InfrastructureSummary. + #: This constant has a value of "EIGHTEEN_SSDS" + SHAPE_EIGHTEEN_SSDS = "EIGHTEEN_SSDS" + + #: A constant which can be used with the shape property of a InfrastructureSummary. + #: This constant has a value of "TWENTY_FOUR_SSDS" + SHAPE_TWENTY_FOUR_SSDS = "TWENTY_FOUR_SSDS" + + #: A constant which can be used with the client_network_bonding_mode property of a InfrastructureSummary. + #: This constant has a value of "ACTIVE_BACKUP" + CLIENT_NETWORK_BONDING_MODE_ACTIVE_BACKUP = "ACTIVE_BACKUP" + + #: A constant which can be used with the client_network_bonding_mode property of a InfrastructureSummary. + #: This constant has a value of "LACP" + CLIENT_NETWORK_BONDING_MODE_LACP = "LACP" + + #: A constant which can be used with the backup_network_bonding_mode property of a InfrastructureSummary. + #: This constant has a value of "ACTIVE_BACKUP" + BACKUP_NETWORK_BONDING_MODE_ACTIVE_BACKUP = "ACTIVE_BACKUP" + + #: A constant which can be used with the backup_network_bonding_mode property of a InfrastructureSummary. + #: This constant has a value of "LACP" + BACKUP_NETWORK_BONDING_MODE_LACP = "LACP" + + #: A constant which can be used with the cps_network_bonding_mode property of a InfrastructureSummary. + #: This constant has a value of "ACTIVE_BACKUP" + CPS_NETWORK_BONDING_MODE_ACTIVE_BACKUP = "ACTIVE_BACKUP" + + #: A constant which can be used with the cps_network_bonding_mode property of a InfrastructureSummary. + #: This constant has a value of "LACP" + CPS_NETWORK_BONDING_MODE_LACP = "LACP" + + #: A constant which can be used with the client_network_bonding_interface property of a InfrastructureSummary. + #: This constant has a value of "BTBOND1" + CLIENT_NETWORK_BONDING_INTERFACE_BTBOND1 = "BTBOND1" + + #: A constant which can be used with the client_network_bonding_interface property of a InfrastructureSummary. + #: This constant has a value of "BTBOND2" + CLIENT_NETWORK_BONDING_INTERFACE_BTBOND2 = "BTBOND2" + + #: A constant which can be used with the client_network_bonding_interface property of a InfrastructureSummary. + #: This constant has a value of "BTBOND3" + CLIENT_NETWORK_BONDING_INTERFACE_BTBOND3 = "BTBOND3" + + #: A constant which can be used with the client_network_bonding_interface property of a InfrastructureSummary. + #: This constant has a value of "BTBOND4" + CLIENT_NETWORK_BONDING_INTERFACE_BTBOND4 = "BTBOND4" + + #: A constant which can be used with the client_network_bonding_interface property of a InfrastructureSummary. + #: This constant has a value of "BTBOND5" + CLIENT_NETWORK_BONDING_INTERFACE_BTBOND5 = "BTBOND5" + + #: A constant which can be used with the client_network_bonding_interface property of a InfrastructureSummary. + #: This constant has a value of "BTBOND6" + CLIENT_NETWORK_BONDING_INTERFACE_BTBOND6 = "BTBOND6" + + #: A constant which can be used with the backup_network_bonding_interface property of a InfrastructureSummary. + #: This constant has a value of "BTBOND1" + BACKUP_NETWORK_BONDING_INTERFACE_BTBOND1 = "BTBOND1" + + #: A constant which can be used with the backup_network_bonding_interface property of a InfrastructureSummary. + #: This constant has a value of "BTBOND2" + BACKUP_NETWORK_BONDING_INTERFACE_BTBOND2 = "BTBOND2" + + #: A constant which can be used with the backup_network_bonding_interface property of a InfrastructureSummary. + #: This constant has a value of "BTBOND3" + BACKUP_NETWORK_BONDING_INTERFACE_BTBOND3 = "BTBOND3" + + #: A constant which can be used with the backup_network_bonding_interface property of a InfrastructureSummary. + #: This constant has a value of "BTBOND4" + BACKUP_NETWORK_BONDING_INTERFACE_BTBOND4 = "BTBOND4" + + #: A constant which can be used with the backup_network_bonding_interface property of a InfrastructureSummary. + #: This constant has a value of "BTBOND5" + BACKUP_NETWORK_BONDING_INTERFACE_BTBOND5 = "BTBOND5" + + #: A constant which can be used with the backup_network_bonding_interface property of a InfrastructureSummary. + #: This constant has a value of "BTBOND6" + BACKUP_NETWORK_BONDING_INTERFACE_BTBOND6 = "BTBOND6" + + #: A constant which can be used with the cps_network_bonding_interface property of a InfrastructureSummary. + #: This constant has a value of "BTBOND1" + CPS_NETWORK_BONDING_INTERFACE_BTBOND1 = "BTBOND1" + + #: A constant which can be used with the cps_network_bonding_interface property of a InfrastructureSummary. + #: This constant has a value of "BTBOND2" + CPS_NETWORK_BONDING_INTERFACE_BTBOND2 = "BTBOND2" + + #: A constant which can be used with the cps_network_bonding_interface property of a InfrastructureSummary. + #: This constant has a value of "BTBOND3" + CPS_NETWORK_BONDING_INTERFACE_BTBOND3 = "BTBOND3" + + #: A constant which can be used with the cps_network_bonding_interface property of a InfrastructureSummary. + #: This constant has a value of "BTBOND4" + CPS_NETWORK_BONDING_INTERFACE_BTBOND4 = "BTBOND4" + + #: A constant which can be used with the cps_network_bonding_interface property of a InfrastructureSummary. + #: This constant has a value of "BTBOND5" + CPS_NETWORK_BONDING_INTERFACE_BTBOND5 = "BTBOND5" + + #: A constant which can be used with the cps_network_bonding_interface property of a InfrastructureSummary. + #: This constant has a value of "BTBOND6" + CPS_NETWORK_BONDING_INTERFACE_BTBOND6 = "BTBOND6" + + #: A constant which can be used with the lifecycle_state property of a InfrastructureSummary. + #: This constant has a value of "CREATING" + LIFECYCLE_STATE_CREATING = "CREATING" + + #: A constant which can be used with the lifecycle_state property of a InfrastructureSummary. + #: This constant has a value of "REQUIRES_VALIDATION" + LIFECYCLE_STATE_REQUIRES_VALIDATION = "REQUIRES_VALIDATION" + + #: A constant which can be used with the lifecycle_state property of a InfrastructureSummary. + #: This constant has a value of "VALIDATING" + LIFECYCLE_STATE_VALIDATING = "VALIDATING" + + #: A constant which can be used with the lifecycle_state property of a InfrastructureSummary. + #: This constant has a value of "VALIDATION_FAILED" + LIFECYCLE_STATE_VALIDATION_FAILED = "VALIDATION_FAILED" + + #: A constant which can be used with the lifecycle_state property of a InfrastructureSummary. + #: This constant has a value of "REQUIRES_ACTIVATION" + LIFECYCLE_STATE_REQUIRES_ACTIVATION = "REQUIRES_ACTIVATION" + + #: A constant which can be used with the lifecycle_state property of a InfrastructureSummary. + #: This constant has a value of "ACTIVATING" + LIFECYCLE_STATE_ACTIVATING = "ACTIVATING" + + #: A constant which can be used with the lifecycle_state property of a InfrastructureSummary. + #: This constant has a value of "ACTIVE" + LIFECYCLE_STATE_ACTIVE = "ACTIVE" + + #: A constant which can be used with the lifecycle_state property of a InfrastructureSummary. + #: This constant has a value of "ACTIVATION_FAILED" + LIFECYCLE_STATE_ACTIVATION_FAILED = "ACTIVATION_FAILED" + + #: A constant which can be used with the lifecycle_state property of a InfrastructureSummary. + #: This constant has a value of "FAILED" + LIFECYCLE_STATE_FAILED = "FAILED" + + #: A constant which can be used with the lifecycle_state property of a InfrastructureSummary. + #: This constant has a value of "UPDATING" + LIFECYCLE_STATE_UPDATING = "UPDATING" + + #: A constant which can be used with the lifecycle_state property of a InfrastructureSummary. + #: This constant has a value of "DELETING" + LIFECYCLE_STATE_DELETING = "DELETING" + + #: A constant which can be used with the lifecycle_state property of a InfrastructureSummary. + #: This constant has a value of "DELETED" + LIFECYCLE_STATE_DELETED = "DELETED" + + #: A constant which can be used with the lifecycle_state property of a InfrastructureSummary. + #: This constant has a value of "DISCONNECTED" + LIFECYCLE_STATE_DISCONNECTED = "DISCONNECTED" + + #: A constant which can be used with the lifecycle_state property of a InfrastructureSummary. + #: This constant has a value of "MAINTENANCE_IN_PROGRESS" + LIFECYCLE_STATE_MAINTENANCE_IN_PROGRESS = "MAINTENANCE_IN_PROGRESS" + + #: A constant which can be used with the ssd_configuration_requested property of a InfrastructureSummary. + #: This constant has a value of "SIX_SSDS" + SSD_CONFIGURATION_REQUESTED_SIX_SSDS = "SIX_SSDS" + + #: A constant which can be used with the ssd_configuration_requested property of a InfrastructureSummary. + #: This constant has a value of "TWELVE_SSDS" + SSD_CONFIGURATION_REQUESTED_TWELVE_SSDS = "TWELVE_SSDS" + + #: A constant which can be used with the ssd_configuration_requested property of a InfrastructureSummary. + #: This constant has a value of "EIGHTEEN_SSDS" + SSD_CONFIGURATION_REQUESTED_EIGHTEEN_SSDS = "EIGHTEEN_SSDS" + + #: A constant which can be used with the ssd_configuration_requested property of a InfrastructureSummary. + #: This constant has a value of "TWENTY_FOUR_SSDS" + SSD_CONFIGURATION_REQUESTED_TWENTY_FOUR_SSDS = "TWENTY_FOUR_SSDS" + + def __init__(self, **kwargs): + """ + Initializes a new InfrastructureSummary object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this InfrastructureSummary. + :type id: str + + :param description: + The value to assign to the description property of this InfrastructureSummary. + :type description: str + + :param compartment_id: + The value to assign to the compartment_id property of this InfrastructureSummary. + :type compartment_id: str + + :param display_name: + The value to assign to the display_name property of this InfrastructureSummary. + :type display_name: str + + :param system_model: + The value to assign to the system_model property of this InfrastructureSummary. + Allowed values for this property are: "X11_HA_768", "X10_HA_512", "X8_HA_384", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type system_model: str + + :param version: + The value to assign to the version property of this InfrastructureSummary. + :type version: str + + :param shape: + The value to assign to the shape property of this InfrastructureSummary. + Allowed values for this property are: "SIX_SSDS", "TWELVE_SSDS", "EIGHTEEN_SSDS", "TWENTY_FOUR_SSDS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type shape: str + + :param cloud_control_plane_server1: + The value to assign to the cloud_control_plane_server1 property of this InfrastructureSummary. + :type cloud_control_plane_server1: str + + :param cloud_control_plane_server2: + The value to assign to the cloud_control_plane_server2 property of this InfrastructureSummary. + :type cloud_control_plane_server2: str + + :param netmask: + The value to assign to the netmask property of this InfrastructureSummary. + :type netmask: str + + :param gateway: + The value to assign to the gateway property of this InfrastructureSummary. + :type gateway: str + + :param admin_networkcidr: + The value to assign to the admin_networkcidr property of this InfrastructureSummary. + :type admin_networkcidr: str + + :param contacts: + The value to assign to the contacts property of this InfrastructureSummary. + :type contacts: list[oci.datacc.models.InfrastructureContact] + + :param dns_servers: + The value to assign to the dns_servers property of this InfrastructureSummary. + :type dns_servers: list[str] + + :param ntp_servers: + The value to assign to the ntp_servers property of this InfrastructureSummary. + :type ntp_servers: list[str] + + :param client_network_bonding_mode: + The value to assign to the client_network_bonding_mode property of this InfrastructureSummary. + Allowed values for this property are: "ACTIVE_BACKUP", "LACP", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type client_network_bonding_mode: str + + :param backup_network_bonding_mode: + The value to assign to the backup_network_bonding_mode property of this InfrastructureSummary. + Allowed values for this property are: "ACTIVE_BACKUP", "LACP", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type backup_network_bonding_mode: str + + :param cps_network_bonding_mode: + The value to assign to the cps_network_bonding_mode property of this InfrastructureSummary. + Allowed values for this property are: "ACTIVE_BACKUP", "LACP", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type cps_network_bonding_mode: str + + :param client_network_bonding_interface: + The value to assign to the client_network_bonding_interface property of this InfrastructureSummary. + Allowed values for this property are: "BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type client_network_bonding_interface: str + + :param backup_network_bonding_interface: + The value to assign to the backup_network_bonding_interface property of this InfrastructureSummary. + Allowed values for this property are: "BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type backup_network_bonding_interface: str + + :param cps_network_bonding_interface: + The value to assign to the cps_network_bonding_interface property of this InfrastructureSummary. + Allowed values for this property are: "BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type cps_network_bonding_interface: str + + :param acfs_file_system_storage_in_gbs: + The value to assign to the acfs_file_system_storage_in_gbs property of this InfrastructureSummary. + :type acfs_file_system_storage_in_gbs: float + + :param acfs_file_system_used_storage_in_gbs: + The value to assign to the acfs_file_system_used_storage_in_gbs property of this InfrastructureSummary. + :type acfs_file_system_used_storage_in_gbs: float + + :param corporate_proxy: + The value to assign to the corporate_proxy property of this InfrastructureSummary. + :type corporate_proxy: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this InfrastructureSummary. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this InfrastructureSummary. + :type defined_tags: dict(str, dict(str, object)) + + :param system_tags: + The value to assign to the system_tags property of this InfrastructureSummary. + :type system_tags: dict(str, dict(str, object)) + + :param maintenance_window: + The value to assign to the maintenance_window property of this InfrastructureSummary. + :type maintenance_window: oci.datacc.models.MaintenanceWindow + + :param time_created: + The value to assign to the time_created property of this InfrastructureSummary. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this InfrastructureSummary. + :type time_updated: datetime + + :param time_last_state_updated: + The value to assign to the time_last_state_updated property of this InfrastructureSummary. + :type time_last_state_updated: datetime + + :param time_activated: + The value to assign to the time_activated property of this InfrastructureSummary. + :type time_activated: datetime + + :param time_validated: + The value to assign to the time_validated property of this InfrastructureSummary. + :type time_validated: datetime + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this InfrastructureSummary. + Allowed values for this property are: "CREATING", "REQUIRES_VALIDATION", "VALIDATING", "VALIDATION_FAILED", "REQUIRES_ACTIVATION", "ACTIVATING", "ACTIVE", "ACTIVATION_FAILED", "FAILED", "UPDATING", "DELETING", "DELETED", "DISCONNECTED", "MAINTENANCE_IN_PROGRESS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + :param lifecycle_state_details: + The value to assign to the lifecycle_state_details property of this InfrastructureSummary. + :type lifecycle_state_details: str + + :param compute_capacity: + The value to assign to the compute_capacity property of this InfrastructureSummary. + :type compute_capacity: oci.datacc.models.ComputeCapacityDetails + + :param storage_capacity: + The value to assign to the storage_capacity property of this InfrastructureSummary. + :type storage_capacity: list[oci.datacc.models.StorageCapacityDetails] + + :param system_storage_capacity: + The value to assign to the system_storage_capacity property of this InfrastructureSummary. + :type system_storage_capacity: oci.datacc.models.SystemStorageCapacityDetails + + :param subscription_plan_number: + The value to assign to the subscription_plan_number property of this InfrastructureSummary. + :type subscription_plan_number: str + + :param ssd_configuration_requested: + The value to assign to the ssd_configuration_requested property of this InfrastructureSummary. + Allowed values for this property are: "SIX_SSDS", "TWELVE_SSDS", "EIGHTEEN_SSDS", "TWENTY_FOUR_SSDS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type ssd_configuration_requested: str + + """ + self.swagger_types = { + 'id': 'str', + 'description': 'str', + 'compartment_id': 'str', + 'display_name': 'str', + 'system_model': 'str', + 'version': 'str', + 'shape': 'str', + 'cloud_control_plane_server1': 'str', + 'cloud_control_plane_server2': 'str', + 'netmask': 'str', + 'gateway': 'str', + 'admin_networkcidr': 'str', + 'contacts': 'list[InfrastructureContact]', + 'dns_servers': 'list[str]', + 'ntp_servers': 'list[str]', + 'client_network_bonding_mode': 'str', + 'backup_network_bonding_mode': 'str', + 'cps_network_bonding_mode': 'str', + 'client_network_bonding_interface': 'str', + 'backup_network_bonding_interface': 'str', + 'cps_network_bonding_interface': 'str', + 'acfs_file_system_storage_in_gbs': 'float', + 'acfs_file_system_used_storage_in_gbs': 'float', + 'corporate_proxy': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))', + 'maintenance_window': 'MaintenanceWindow', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'time_last_state_updated': 'datetime', + 'time_activated': 'datetime', + 'time_validated': 'datetime', + 'lifecycle_state': 'str', + 'lifecycle_state_details': 'str', + 'compute_capacity': 'ComputeCapacityDetails', + 'storage_capacity': 'list[StorageCapacityDetails]', + 'system_storage_capacity': 'SystemStorageCapacityDetails', + 'subscription_plan_number': 'str', + 'ssd_configuration_requested': 'str' + } + self.attribute_map = { + 'id': 'id', + 'description': 'description', + 'compartment_id': 'compartmentId', + 'display_name': 'displayName', + 'system_model': 'systemModel', + 'version': 'version', + 'shape': 'shape', + 'cloud_control_plane_server1': 'cloudControlPlaneServer1', + 'cloud_control_plane_server2': 'cloudControlPlaneServer2', + 'netmask': 'netmask', + 'gateway': 'gateway', + 'admin_networkcidr': 'adminNetworkcidr', + 'contacts': 'contacts', + 'dns_servers': 'dnsServers', + 'ntp_servers': 'ntpServers', + 'client_network_bonding_mode': 'clientNetworkBondingMode', + 'backup_network_bonding_mode': 'backupNetworkBondingMode', + 'cps_network_bonding_mode': 'cpsNetworkBondingMode', + 'client_network_bonding_interface': 'clientNetworkBondingInterface', + 'backup_network_bonding_interface': 'backupNetworkBondingInterface', + 'cps_network_bonding_interface': 'cpsNetworkBondingInterface', + 'acfs_file_system_storage_in_gbs': 'acfsFileSystemStorageInGbs', + 'acfs_file_system_used_storage_in_gbs': 'acfsFileSystemUsedStorageInGbs', + 'corporate_proxy': 'corporateProxy', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags', + 'maintenance_window': 'maintenanceWindow', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'time_last_state_updated': 'timeLastStateUpdated', + 'time_activated': 'timeActivated', + 'time_validated': 'timeValidated', + 'lifecycle_state': 'lifecycleState', + 'lifecycle_state_details': 'lifecycleStateDetails', + 'compute_capacity': 'computeCapacity', + 'storage_capacity': 'storageCapacity', + 'system_storage_capacity': 'systemStorageCapacity', + 'subscription_plan_number': 'subscriptionPlanNumber', + 'ssd_configuration_requested': 'ssdConfigurationRequested' + } + self._id = None + self._description = None + self._compartment_id = None + self._display_name = None + self._system_model = None + self._version = None + self._shape = None + self._cloud_control_plane_server1 = None + self._cloud_control_plane_server2 = None + self._netmask = None + self._gateway = None + self._admin_networkcidr = None + self._contacts = None + self._dns_servers = None + self._ntp_servers = None + self._client_network_bonding_mode = None + self._backup_network_bonding_mode = None + self._cps_network_bonding_mode = None + self._client_network_bonding_interface = None + self._backup_network_bonding_interface = None + self._cps_network_bonding_interface = None + self._acfs_file_system_storage_in_gbs = None + self._acfs_file_system_used_storage_in_gbs = None + self._corporate_proxy = None + self._freeform_tags = None + self._defined_tags = None + self._system_tags = None + self._maintenance_window = None + self._time_created = None + self._time_updated = None + self._time_last_state_updated = None + self._time_activated = None + self._time_validated = None + self._lifecycle_state = None + self._lifecycle_state_details = None + self._compute_capacity = None + self._storage_capacity = None + self._system_storage_capacity = None + self._subscription_plan_number = None + self._ssd_configuration_requested = None + + @property + def id(self): + """ + **[Required]** Gets the id of this InfrastructureSummary. + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this InfrastructureSummary. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this InfrastructureSummary. + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this InfrastructureSummary. + :type: str + """ + self._id = id + + @property + def description(self): + """ + Gets the description of this InfrastructureSummary. + Database Infrastructure description. + + + :return: The description of this InfrastructureSummary. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this InfrastructureSummary. + Database Infrastructure description. + + + :param description: The description of this InfrastructureSummary. + :type: str + """ + self._description = description + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this InfrastructureSummary. + The `OCID`__ of the compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this InfrastructureSummary. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this InfrastructureSummary. + The `OCID`__ of the compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this InfrastructureSummary. + :type: str + """ + self._compartment_id = compartment_id + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this InfrastructureSummary. + The user-friendly name for the Database Infrastructure. The name does not need to be unique. + + + :return: The display_name of this InfrastructureSummary. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this InfrastructureSummary. + The user-friendly name for the Database Infrastructure. The name does not need to be unique. + + + :param display_name: The display_name of this InfrastructureSummary. + :type: str + """ + self._display_name = display_name + + @property + def system_model(self): + """ + **[Required]** Gets the system_model of this InfrastructureSummary. + Database Infrastructure System Model specification. The system model determines the model of the Database Infrastructure hardware to be used. + + Allowed values for this property are: "X11_HA_768", "X10_HA_512", "X8_HA_384", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The system_model of this InfrastructureSummary. + :rtype: str + """ + return self._system_model + + @system_model.setter + def system_model(self, system_model): + """ + Sets the system_model of this InfrastructureSummary. + Database Infrastructure System Model specification. The system model determines the model of the Database Infrastructure hardware to be used. + + + :param system_model: The system_model of this InfrastructureSummary. + :type: str + """ + allowed_values = ["X11_HA_768", "X10_HA_512", "X8_HA_384"] + if not value_allowed_none_or_none_sentinel(system_model, allowed_values): + system_model = 'UNKNOWN_ENUM_VALUE' + self._system_model = system_model + + @property + def version(self): + """ + Gets the version of this InfrastructureSummary. + The version of the system software on the Database Infrastructure. + + + :return: The version of this InfrastructureSummary. + :rtype: str + """ + return self._version + + @version.setter + def version(self, version): + """ + Sets the version of this InfrastructureSummary. + The version of the system software on the Database Infrastructure. + + + :param version: The version of this InfrastructureSummary. + :type: str + """ + self._version = version + + @property + def shape(self): + """ + **[Required]** Gets the shape of this InfrastructureSummary. + The shape of the Database Infrastructure. The shape determines the amount of CPU, storage, and memory resources allocated to the instance. + + Allowed values for this property are: "SIX_SSDS", "TWELVE_SSDS", "EIGHTEEN_SSDS", "TWENTY_FOUR_SSDS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The shape of this InfrastructureSummary. + :rtype: str + """ + return self._shape + + @shape.setter + def shape(self, shape): + """ + Sets the shape of this InfrastructureSummary. + The shape of the Database Infrastructure. The shape determines the amount of CPU, storage, and memory resources allocated to the instance. + + + :param shape: The shape of this InfrastructureSummary. + :type: str + """ + allowed_values = ["SIX_SSDS", "TWELVE_SSDS", "EIGHTEEN_SSDS", "TWENTY_FOUR_SSDS"] + if not value_allowed_none_or_none_sentinel(shape, allowed_values): + shape = 'UNKNOWN_ENUM_VALUE' + self._shape = shape + + @property + def cloud_control_plane_server1(self): + """ + **[Required]** Gets the cloud_control_plane_server1 of this InfrastructureSummary. + The IP address for the first control plane server. + + + :return: The cloud_control_plane_server1 of this InfrastructureSummary. + :rtype: str + """ + return self._cloud_control_plane_server1 + + @cloud_control_plane_server1.setter + def cloud_control_plane_server1(self, cloud_control_plane_server1): + """ + Sets the cloud_control_plane_server1 of this InfrastructureSummary. + The IP address for the first control plane server. + + + :param cloud_control_plane_server1: The cloud_control_plane_server1 of this InfrastructureSummary. + :type: str + """ + self._cloud_control_plane_server1 = cloud_control_plane_server1 + + @property + def cloud_control_plane_server2(self): + """ + **[Required]** Gets the cloud_control_plane_server2 of this InfrastructureSummary. + The IP address for the second control plane server. + + + :return: The cloud_control_plane_server2 of this InfrastructureSummary. + :rtype: str + """ + return self._cloud_control_plane_server2 + + @cloud_control_plane_server2.setter + def cloud_control_plane_server2(self, cloud_control_plane_server2): + """ + Sets the cloud_control_plane_server2 of this InfrastructureSummary. + The IP address for the second control plane server. + + + :param cloud_control_plane_server2: The cloud_control_plane_server2 of this InfrastructureSummary. + :type: str + """ + self._cloud_control_plane_server2 = cloud_control_plane_server2 + + @property + def netmask(self): + """ + **[Required]** Gets the netmask of this InfrastructureSummary. + The netmask for the control plane network. + + + :return: The netmask of this InfrastructureSummary. + :rtype: str + """ + return self._netmask + + @netmask.setter + def netmask(self, netmask): + """ + Sets the netmask of this InfrastructureSummary. + The netmask for the control plane network. + + + :param netmask: The netmask of this InfrastructureSummary. + :type: str + """ + self._netmask = netmask + + @property + def gateway(self): + """ + **[Required]** Gets the gateway of this InfrastructureSummary. + The gateway for the control plane network. + + + :return: The gateway of this InfrastructureSummary. + :rtype: str + """ + return self._gateway + + @gateway.setter + def gateway(self, gateway): + """ + Sets the gateway of this InfrastructureSummary. + The gateway for the control plane network. + + + :param gateway: The gateway of this InfrastructureSummary. + :type: str + """ + self._gateway = gateway + + @property + def admin_networkcidr(self): + """ + **[Required]** Gets the admin_networkcidr of this InfrastructureSummary. + The CIDR block for the system network. The system network is a private network in Database Infrastructure and is not connected to your corporate network. The system network is used for storage (ASM) traffic, high-performance interconnect traffic and administration of infrastructure components. + + + :return: The admin_networkcidr of this InfrastructureSummary. + :rtype: str + """ + return self._admin_networkcidr + + @admin_networkcidr.setter + def admin_networkcidr(self, admin_networkcidr): + """ + Sets the admin_networkcidr of this InfrastructureSummary. + The CIDR block for the system network. The system network is a private network in Database Infrastructure and is not connected to your corporate network. The system network is used for storage (ASM) traffic, high-performance interconnect traffic and administration of infrastructure components. + + + :param admin_networkcidr: The admin_networkcidr of this InfrastructureSummary. + :type: str + """ + self._admin_networkcidr = admin_networkcidr + + @property + def contacts(self): + """ + Gets the contacts of this InfrastructureSummary. + The list of contacts for the Database Infrastructure. + + + :return: The contacts of this InfrastructureSummary. + :rtype: list[oci.datacc.models.InfrastructureContact] + """ + return self._contacts + + @contacts.setter + def contacts(self, contacts): + """ + Sets the contacts of this InfrastructureSummary. + The list of contacts for the Database Infrastructure. + + + :param contacts: The contacts of this InfrastructureSummary. + :type: list[oci.datacc.models.InfrastructureContact] + """ + self._contacts = contacts + + @property + def dns_servers(self): + """ + **[Required]** Gets the dns_servers of this InfrastructureSummary. + The list of DNS server IP addresses. Maximum of 3 allowed. + + + :return: The dns_servers of this InfrastructureSummary. + :rtype: list[str] + """ + return self._dns_servers + + @dns_servers.setter + def dns_servers(self, dns_servers): + """ + Sets the dns_servers of this InfrastructureSummary. + The list of DNS server IP addresses. Maximum of 3 allowed. + + + :param dns_servers: The dns_servers of this InfrastructureSummary. + :type: list[str] + """ + self._dns_servers = dns_servers + + @property + def ntp_servers(self): + """ + **[Required]** Gets the ntp_servers of this InfrastructureSummary. + The list of NTP server IP addresses. Maximum of 3 allowed. + + + :return: The ntp_servers of this InfrastructureSummary. + :rtype: list[str] + """ + return self._ntp_servers + + @ntp_servers.setter + def ntp_servers(self, ntp_servers): + """ + Sets the ntp_servers of this InfrastructureSummary. + The list of NTP server IP addresses. Maximum of 3 allowed. + + + :param ntp_servers: The ntp_servers of this InfrastructureSummary. + :type: list[str] + """ + self._ntp_servers = ntp_servers + + @property + def client_network_bonding_mode(self): + """ + Gets the client_network_bonding_mode of this InfrastructureSummary. + The network bonding mode for Client networks for the Database Infrastructure. + + Allowed values for this property are: "ACTIVE_BACKUP", "LACP", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The client_network_bonding_mode of this InfrastructureSummary. + :rtype: str + """ + return self._client_network_bonding_mode + + @client_network_bonding_mode.setter + def client_network_bonding_mode(self, client_network_bonding_mode): + """ + Sets the client_network_bonding_mode of this InfrastructureSummary. + The network bonding mode for Client networks for the Database Infrastructure. + + + :param client_network_bonding_mode: The client_network_bonding_mode of this InfrastructureSummary. + :type: str + """ + allowed_values = ["ACTIVE_BACKUP", "LACP"] + if not value_allowed_none_or_none_sentinel(client_network_bonding_mode, allowed_values): + client_network_bonding_mode = 'UNKNOWN_ENUM_VALUE' + self._client_network_bonding_mode = client_network_bonding_mode + + @property + def backup_network_bonding_mode(self): + """ + Gets the backup_network_bonding_mode of this InfrastructureSummary. + The network bonding mode for Backup networks for the Database Infrastructure. + + Allowed values for this property are: "ACTIVE_BACKUP", "LACP", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The backup_network_bonding_mode of this InfrastructureSummary. + :rtype: str + """ + return self._backup_network_bonding_mode + + @backup_network_bonding_mode.setter + def backup_network_bonding_mode(self, backup_network_bonding_mode): + """ + Sets the backup_network_bonding_mode of this InfrastructureSummary. + The network bonding mode for Backup networks for the Database Infrastructure. + + + :param backup_network_bonding_mode: The backup_network_bonding_mode of this InfrastructureSummary. + :type: str + """ + allowed_values = ["ACTIVE_BACKUP", "LACP"] + if not value_allowed_none_or_none_sentinel(backup_network_bonding_mode, allowed_values): + backup_network_bonding_mode = 'UNKNOWN_ENUM_VALUE' + self._backup_network_bonding_mode = backup_network_bonding_mode + + @property + def cps_network_bonding_mode(self): + """ + Gets the cps_network_bonding_mode of this InfrastructureSummary. + The network bonding mode for CPS networks for the Database Infrastructure. + + Allowed values for this property are: "ACTIVE_BACKUP", "LACP", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The cps_network_bonding_mode of this InfrastructureSummary. + :rtype: str + """ + return self._cps_network_bonding_mode + + @cps_network_bonding_mode.setter + def cps_network_bonding_mode(self, cps_network_bonding_mode): + """ + Sets the cps_network_bonding_mode of this InfrastructureSummary. + The network bonding mode for CPS networks for the Database Infrastructure. + + + :param cps_network_bonding_mode: The cps_network_bonding_mode of this InfrastructureSummary. + :type: str + """ + allowed_values = ["ACTIVE_BACKUP", "LACP"] + if not value_allowed_none_or_none_sentinel(cps_network_bonding_mode, allowed_values): + cps_network_bonding_mode = 'UNKNOWN_ENUM_VALUE' + self._cps_network_bonding_mode = cps_network_bonding_mode + + @property + def client_network_bonding_interface(self): + """ + Gets the client_network_bonding_interface of this InfrastructureSummary. + The network bonding interface for client network for the Database Infrastructure. + + Allowed values for this property are: "BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The client_network_bonding_interface of this InfrastructureSummary. + :rtype: str + """ + return self._client_network_bonding_interface + + @client_network_bonding_interface.setter + def client_network_bonding_interface(self, client_network_bonding_interface): + """ + Sets the client_network_bonding_interface of this InfrastructureSummary. + The network bonding interface for client network for the Database Infrastructure. + + + :param client_network_bonding_interface: The client_network_bonding_interface of this InfrastructureSummary. + :type: str + """ + allowed_values = ["BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6"] + if not value_allowed_none_or_none_sentinel(client_network_bonding_interface, allowed_values): + client_network_bonding_interface = 'UNKNOWN_ENUM_VALUE' + self._client_network_bonding_interface = client_network_bonding_interface + + @property + def backup_network_bonding_interface(self): + """ + Gets the backup_network_bonding_interface of this InfrastructureSummary. + The network bonding interface for backup network for the Database Infrastructure. + + Allowed values for this property are: "BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The backup_network_bonding_interface of this InfrastructureSummary. + :rtype: str + """ + return self._backup_network_bonding_interface + + @backup_network_bonding_interface.setter + def backup_network_bonding_interface(self, backup_network_bonding_interface): + """ + Sets the backup_network_bonding_interface of this InfrastructureSummary. + The network bonding interface for backup network for the Database Infrastructure. + + + :param backup_network_bonding_interface: The backup_network_bonding_interface of this InfrastructureSummary. + :type: str + """ + allowed_values = ["BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6"] + if not value_allowed_none_or_none_sentinel(backup_network_bonding_interface, allowed_values): + backup_network_bonding_interface = 'UNKNOWN_ENUM_VALUE' + self._backup_network_bonding_interface = backup_network_bonding_interface + + @property + def cps_network_bonding_interface(self): + """ + Gets the cps_network_bonding_interface of this InfrastructureSummary. + The network bonding interface for CPS network for the Database Infrastructure. + + Allowed values for this property are: "BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The cps_network_bonding_interface of this InfrastructureSummary. + :rtype: str + """ + return self._cps_network_bonding_interface + + @cps_network_bonding_interface.setter + def cps_network_bonding_interface(self, cps_network_bonding_interface): + """ + Sets the cps_network_bonding_interface of this InfrastructureSummary. + The network bonding interface for CPS network for the Database Infrastructure. + + + :param cps_network_bonding_interface: The cps_network_bonding_interface of this InfrastructureSummary. + :type: str + """ + allowed_values = ["BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6"] + if not value_allowed_none_or_none_sentinel(cps_network_bonding_interface, allowed_values): + cps_network_bonding_interface = 'UNKNOWN_ENUM_VALUE' + self._cps_network_bonding_interface = cps_network_bonding_interface + + @property + def acfs_file_system_storage_in_gbs(self): + """ + Gets the acfs_file_system_storage_in_gbs of this InfrastructureSummary. + The amount of storage (in GB) in the DATA disk group that is reserved for creating local storage for VM Clusters and application VMs. + + + :return: The acfs_file_system_storage_in_gbs of this InfrastructureSummary. + :rtype: float + """ + return self._acfs_file_system_storage_in_gbs + + @acfs_file_system_storage_in_gbs.setter + def acfs_file_system_storage_in_gbs(self, acfs_file_system_storage_in_gbs): + """ + Sets the acfs_file_system_storage_in_gbs of this InfrastructureSummary. + The amount of storage (in GB) in the DATA disk group that is reserved for creating local storage for VM Clusters and application VMs. + + + :param acfs_file_system_storage_in_gbs: The acfs_file_system_storage_in_gbs of this InfrastructureSummary. + :type: float + """ + self._acfs_file_system_storage_in_gbs = acfs_file_system_storage_in_gbs + + @property + def acfs_file_system_used_storage_in_gbs(self): + """ + Gets the acfs_file_system_used_storage_in_gbs of this InfrastructureSummary. + The amount of storage (in GB) in the DATA disk group that is currently utilized for creating local storage for VM Clusters and application VMs. + This attribute is deprecated and will be removed in a subsequent release. Please read from systemStorageCapacity instead. + + + :return: The acfs_file_system_used_storage_in_gbs of this InfrastructureSummary. + :rtype: float + """ + return self._acfs_file_system_used_storage_in_gbs + + @acfs_file_system_used_storage_in_gbs.setter + def acfs_file_system_used_storage_in_gbs(self, acfs_file_system_used_storage_in_gbs): + """ + Sets the acfs_file_system_used_storage_in_gbs of this InfrastructureSummary. + The amount of storage (in GB) in the DATA disk group that is currently utilized for creating local storage for VM Clusters and application VMs. + This attribute is deprecated and will be removed in a subsequent release. Please read from systemStorageCapacity instead. + + + :param acfs_file_system_used_storage_in_gbs: The acfs_file_system_used_storage_in_gbs of this InfrastructureSummary. + :type: float + """ + self._acfs_file_system_used_storage_in_gbs = acfs_file_system_used_storage_in_gbs + + @property + def corporate_proxy(self): + """ + Gets the corporate_proxy of this InfrastructureSummary. + The corporate network proxy for access to the control plane network. Oracle recommends using an HTTPS proxy when possible + for enhanced security. + + + :return: The corporate_proxy of this InfrastructureSummary. + :rtype: str + """ + return self._corporate_proxy + + @corporate_proxy.setter + def corporate_proxy(self, corporate_proxy): + """ + Sets the corporate_proxy of this InfrastructureSummary. + The corporate network proxy for access to the control plane network. Oracle recommends using an HTTPS proxy when possible + for enhanced security. + + + :param corporate_proxy: The corporate_proxy of this InfrastructureSummary. + :type: str + """ + self._corporate_proxy = corporate_proxy + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this InfrastructureSummary. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this InfrastructureSummary. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this InfrastructureSummary. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this InfrastructureSummary. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this InfrastructureSummary. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this InfrastructureSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this InfrastructureSummary. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this InfrastructureSummary. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def system_tags(self): + """ + Gets the system_tags of this InfrastructureSummary. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :return: The system_tags of this InfrastructureSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this InfrastructureSummary. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :param system_tags: The system_tags of this InfrastructureSummary. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + @property + def maintenance_window(self): + """ + Gets the maintenance_window of this InfrastructureSummary. + + :return: The maintenance_window of this InfrastructureSummary. + :rtype: oci.datacc.models.MaintenanceWindow + """ + return self._maintenance_window + + @maintenance_window.setter + def maintenance_window(self, maintenance_window): + """ + Sets the maintenance_window of this InfrastructureSummary. + + :param maintenance_window: The maintenance_window of this InfrastructureSummary. + :type: oci.datacc.models.MaintenanceWindow + """ + self._maintenance_window = maintenance_window + + @property + def time_created(self): + """ + Gets the time_created of this InfrastructureSummary. + The time that the Database Infrastructure cluster was created. An RFC3339 formatted datetime string. + + + :return: The time_created of this InfrastructureSummary. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this InfrastructureSummary. + The time that the Database Infrastructure cluster was created. An RFC3339 formatted datetime string. + + + :param time_created: The time_created of this InfrastructureSummary. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + Gets the time_updated of this InfrastructureSummary. + The time that the Database Infrastructure was last updated. An RFC3339 formatted datetime string. + + + :return: The time_updated of this InfrastructureSummary. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this InfrastructureSummary. + The time that the Database Infrastructure was last updated. An RFC3339 formatted datetime string. + + + :param time_updated: The time_updated of this InfrastructureSummary. + :type: datetime + """ + self._time_updated = time_updated + + @property + def time_last_state_updated(self): + """ + Gets the time_last_state_updated of this InfrastructureSummary. + The time, in RFC3339 format, when the lifecycle state was last updated. + + + :return: The time_last_state_updated of this InfrastructureSummary. + :rtype: datetime + """ + return self._time_last_state_updated + + @time_last_state_updated.setter + def time_last_state_updated(self, time_last_state_updated): + """ + Sets the time_last_state_updated of this InfrastructureSummary. + The time, in RFC3339 format, when the lifecycle state was last updated. + + + :param time_last_state_updated: The time_last_state_updated of this InfrastructureSummary. + :type: datetime + """ + self._time_last_state_updated = time_last_state_updated + + @property + def time_activated(self): + """ + Gets the time_activated of this InfrastructureSummary. + The time, in RFC3339 format, when the Database Infrastructure was activated. + + + :return: The time_activated of this InfrastructureSummary. + :rtype: datetime + """ + return self._time_activated + + @time_activated.setter + def time_activated(self, time_activated): + """ + Sets the time_activated of this InfrastructureSummary. + The time, in RFC3339 format, when the Database Infrastructure was activated. + + + :param time_activated: The time_activated of this InfrastructureSummary. + :type: datetime + """ + self._time_activated = time_activated + + @property + def time_validated(self): + """ + Gets the time_validated of this InfrastructureSummary. + The time, in RFC3339 format, when the Database Infrastructure network was validated. + + + :return: The time_validated of this InfrastructureSummary. + :rtype: datetime + """ + return self._time_validated + + @time_validated.setter + def time_validated(self, time_validated): + """ + Sets the time_validated of this InfrastructureSummary. + The time, in RFC3339 format, when the Database Infrastructure network was validated. + + + :param time_validated: The time_validated of this InfrastructureSummary. + :type: datetime + """ + self._time_validated = time_validated + + @property + def lifecycle_state(self): + """ + Gets the lifecycle_state of this InfrastructureSummary. + The current state of the Database Infrastructure. + + Allowed values for this property are: "CREATING", "REQUIRES_VALIDATION", "VALIDATING", "VALIDATION_FAILED", "REQUIRES_ACTIVATION", "ACTIVATING", "ACTIVE", "ACTIVATION_FAILED", "FAILED", "UPDATING", "DELETING", "DELETED", "DISCONNECTED", "MAINTENANCE_IN_PROGRESS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this InfrastructureSummary. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this InfrastructureSummary. + The current state of the Database Infrastructure. + + + :param lifecycle_state: The lifecycle_state of this InfrastructureSummary. + :type: str + """ + allowed_values = ["CREATING", "REQUIRES_VALIDATION", "VALIDATING", "VALIDATION_FAILED", "REQUIRES_ACTIVATION", "ACTIVATING", "ACTIVE", "ACTIVATION_FAILED", "FAILED", "UPDATING", "DELETING", "DELETED", "DISCONNECTED", "MAINTENANCE_IN_PROGRESS"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + + @property + def lifecycle_state_details(self): + """ + Gets the lifecycle_state_details of this InfrastructureSummary. + Lifecycle state details of the Database Infrastructure. + + + :return: The lifecycle_state_details of this InfrastructureSummary. + :rtype: str + """ + return self._lifecycle_state_details + + @lifecycle_state_details.setter + def lifecycle_state_details(self, lifecycle_state_details): + """ + Sets the lifecycle_state_details of this InfrastructureSummary. + Lifecycle state details of the Database Infrastructure. + + + :param lifecycle_state_details: The lifecycle_state_details of this InfrastructureSummary. + :type: str + """ + self._lifecycle_state_details = lifecycle_state_details + + @property + def compute_capacity(self): + """ + Gets the compute_capacity of this InfrastructureSummary. + + :return: The compute_capacity of this InfrastructureSummary. + :rtype: oci.datacc.models.ComputeCapacityDetails + """ + return self._compute_capacity + + @compute_capacity.setter + def compute_capacity(self, compute_capacity): + """ + Sets the compute_capacity of this InfrastructureSummary. + + :param compute_capacity: The compute_capacity of this InfrastructureSummary. + :type: oci.datacc.models.ComputeCapacityDetails + """ + self._compute_capacity = compute_capacity + + @property + def storage_capacity(self): + """ + Gets the storage_capacity of this InfrastructureSummary. + Capacity details of the Storage disk group. + This attribute is deprecated and will be removed in a subsequent release. Please + use systemStorageCapacity instead. + + + :return: The storage_capacity of this InfrastructureSummary. + :rtype: list[oci.datacc.models.StorageCapacityDetails] + """ + return self._storage_capacity + + @storage_capacity.setter + def storage_capacity(self, storage_capacity): + """ + Sets the storage_capacity of this InfrastructureSummary. + Capacity details of the Storage disk group. + This attribute is deprecated and will be removed in a subsequent release. Please + use systemStorageCapacity instead. + + + :param storage_capacity: The storage_capacity of this InfrastructureSummary. + :type: list[oci.datacc.models.StorageCapacityDetails] + """ + self._storage_capacity = storage_capacity + + @property + def system_storage_capacity(self): + """ + Gets the system_storage_capacity of this InfrastructureSummary. + + :return: The system_storage_capacity of this InfrastructureSummary. + :rtype: oci.datacc.models.SystemStorageCapacityDetails + """ + return self._system_storage_capacity + + @system_storage_capacity.setter + def system_storage_capacity(self, system_storage_capacity): + """ + Sets the system_storage_capacity of this InfrastructureSummary. + + :param system_storage_capacity: The system_storage_capacity of this InfrastructureSummary. + :type: oci.datacc.models.SystemStorageCapacityDetails + """ + self._system_storage_capacity = system_storage_capacity + + @property + def subscription_plan_number(self): + """ + Gets the subscription_plan_number of this InfrastructureSummary. + The unique identifier for the subscription plan number. + + + :return: The subscription_plan_number of this InfrastructureSummary. + :rtype: str + """ + return self._subscription_plan_number + + @subscription_plan_number.setter + def subscription_plan_number(self, subscription_plan_number): + """ + Sets the subscription_plan_number of this InfrastructureSummary. + The unique identifier for the subscription plan number. + + + :param subscription_plan_number: The subscription_plan_number of this InfrastructureSummary. + :type: str + """ + self._subscription_plan_number = subscription_plan_number + + @property + def ssd_configuration_requested(self): + """ + Gets the ssd_configuration_requested of this InfrastructureSummary. + SSD configuration requested for the infrastructure. + + Allowed values for this property are: "SIX_SSDS", "TWELVE_SSDS", "EIGHTEEN_SSDS", "TWENTY_FOUR_SSDS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The ssd_configuration_requested of this InfrastructureSummary. + :rtype: str + """ + return self._ssd_configuration_requested + + @ssd_configuration_requested.setter + def ssd_configuration_requested(self, ssd_configuration_requested): + """ + Sets the ssd_configuration_requested of this InfrastructureSummary. + SSD configuration requested for the infrastructure. + + + :param ssd_configuration_requested: The ssd_configuration_requested of this InfrastructureSummary. + :type: str + """ + allowed_values = ["SIX_SSDS", "TWELVE_SSDS", "EIGHTEEN_SSDS", "TWENTY_FOUR_SSDS"] + if not value_allowed_none_or_none_sentinel(ssd_configuration_requested, allowed_values): + ssd_configuration_requested = 'UNKNOWN_ENUM_VALUE' + self._ssd_configuration_requested = ssd_configuration_requested + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/maintenance_execution.py b/src/oci/datacc/models/maintenance_execution.py new file mode 100644 index 0000000000..1c59122337 --- /dev/null +++ b/src/oci/datacc/models/maintenance_execution.py @@ -0,0 +1,928 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class MaintenanceExecution(object): + """ + Details of a maintenance executions. + """ + + #: A constant which can be used with the lifecycle_state property of a MaintenanceExecution. + #: This constant has a value of "CREATING" + LIFECYCLE_STATE_CREATING = "CREATING" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceExecution. + #: This constant has a value of "SCHEDULED" + LIFECYCLE_STATE_SCHEDULED = "SCHEDULED" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceExecution. + #: This constant has a value of "IN_PROGRESS" + LIFECYCLE_STATE_IN_PROGRESS = "IN_PROGRESS" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceExecution. + #: This constant has a value of "SUCCEEDED" + LIFECYCLE_STATE_SUCCEEDED = "SUCCEEDED" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceExecution. + #: This constant has a value of "SKIPPED" + LIFECYCLE_STATE_SKIPPED = "SKIPPED" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceExecution. + #: This constant has a value of "FAILED" + LIFECYCLE_STATE_FAILED = "FAILED" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceExecution. + #: This constant has a value of "UPDATING" + LIFECYCLE_STATE_UPDATING = "UPDATING" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceExecution. + #: This constant has a value of "DELETING" + LIFECYCLE_STATE_DELETING = "DELETING" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceExecution. + #: This constant has a value of "DELETED" + LIFECYCLE_STATE_DELETED = "DELETED" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceExecution. + #: This constant has a value of "CANCELED" + LIFECYCLE_STATE_CANCELED = "CANCELED" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceExecution. + #: This constant has a value of "PARTIAL_SUCCESS" + LIFECYCLE_STATE_PARTIAL_SUCCESS = "PARTIAL_SUCCESS" + + #: A constant which can be used with the target_resource_type property of a MaintenanceExecution. + #: This constant has a value of "DB_CC_INFRASTRUCTURE" + TARGET_RESOURCE_TYPE_DB_CC_INFRASTRUCTURE = "DB_CC_INFRASTRUCTURE" + + #: A constant which can be used with the maintenance_type property of a MaintenanceExecution. + #: This constant has a value of "PLANNED" + MAINTENANCE_TYPE_PLANNED = "PLANNED" + + #: A constant which can be used with the maintenance_type property of a MaintenanceExecution. + #: This constant has a value of "UNPLANNED" + MAINTENANCE_TYPE_UNPLANNED = "UNPLANNED" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceExecution. + #: This constant has a value of "YEARLY" + MAINTENANCE_SUBTYPE_YEARLY = "YEARLY" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceExecution. + #: This constant has a value of "HALFYEARLY" + MAINTENANCE_SUBTYPE_HALFYEARLY = "HALFYEARLY" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceExecution. + #: This constant has a value of "QUARTERLY" + MAINTENANCE_SUBTYPE_QUARTERLY = "QUARTERLY" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceExecution. + #: This constant has a value of "MONTHLY" + MAINTENANCE_SUBTYPE_MONTHLY = "MONTHLY" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceExecution. + #: This constant has a value of "DAILY" + MAINTENANCE_SUBTYPE_DAILY = "DAILY" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceExecution. + #: This constant has a value of "HARDWARE" + MAINTENANCE_SUBTYPE_HARDWARE = "HARDWARE" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceExecution. + #: This constant has a value of "CRITICAL" + MAINTENANCE_SUBTYPE_CRITICAL = "CRITICAL" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceExecution. + #: This constant has a value of "INFRA_UPDATE" + MAINTENANCE_SUBTYPE_INFRA_UPDATE = "INFRA_UPDATE" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceExecution. + #: This constant has a value of "CPS_SERVICES_UPDATE" + MAINTENANCE_SUBTYPE_CPS_SERVICES_UPDATE = "CPS_SERVICES_UPDATE" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceExecution. + #: This constant has a value of "CPS_VM_UPDATE" + MAINTENANCE_SUBTYPE_CPS_VM_UPDATE = "CPS_VM_UPDATE" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceExecution. + #: This constant has a value of "SECURITY_MONTHLY" + MAINTENANCE_SUBTYPE_SECURITY_MONTHLY = "SECURITY_MONTHLY" + + #: A constant which can be used with the patching_mode property of a MaintenanceExecution. + #: This constant has a value of "ROLLING" + PATCHING_MODE_ROLLING = "ROLLING" + + #: A constant which can be used with the patching_mode property of a MaintenanceExecution. + #: This constant has a value of "NONROLLING" + PATCHING_MODE_NONROLLING = "NONROLLING" + + def __init__(self, **kwargs): + """ + Initializes a new MaintenanceExecution object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this MaintenanceExecution. + :type id: str + + :param compartment_id: + The value to assign to the compartment_id property of this MaintenanceExecution. + :type compartment_id: str + + :param display_name: + The value to assign to the display_name property of this MaintenanceExecution. + :type display_name: str + + :param description: + The value to assign to the description property of this MaintenanceExecution. + :type description: str + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this MaintenanceExecution. + Allowed values for this property are: "CREATING", "SCHEDULED", "IN_PROGRESS", "SUCCEEDED", "SKIPPED", "FAILED", "UPDATING", "DELETING", "DELETED", "CANCELED", "PARTIAL_SUCCESS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + :param lifecycle_details: + The value to assign to the lifecycle_details property of this MaintenanceExecution. + :type lifecycle_details: str + + :param time_started: + The value to assign to the time_started property of this MaintenanceExecution. + :type time_started: datetime + + :param time_ended: + The value to assign to the time_ended property of this MaintenanceExecution. + :type time_ended: datetime + + :param target_resource_type: + The value to assign to the target_resource_type property of this MaintenanceExecution. + Allowed values for this property are: "DB_CC_INFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type target_resource_type: str + + :param infrastructure_id: + The value to assign to the infrastructure_id property of this MaintenanceExecution. + :type infrastructure_id: str + + :param maintenance_run_id: + The value to assign to the maintenance_run_id property of this MaintenanceExecution. + :type maintenance_run_id: str + + :param maintenance_type: + The value to assign to the maintenance_type property of this MaintenanceExecution. + Allowed values for this property are: "PLANNED", "UNPLANNED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type maintenance_type: str + + :param maintenance_subtype: + The value to assign to the maintenance_subtype property of this MaintenanceExecution. + Allowed values for this property are: "YEARLY", "HALFYEARLY", "QUARTERLY", "MONTHLY", "DAILY", "HARDWARE", "CRITICAL", "INFRA_UPDATE", "CPS_SERVICES_UPDATE", "CPS_VM_UPDATE", "SECURITY_MONTHLY", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type maintenance_subtype: str + + :param patching_mode: + The value to assign to the patching_mode property of this MaintenanceExecution. + Allowed values for this property are: "ROLLING", "NONROLLING", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type patching_mode: str + + :param source_version: + The value to assign to the source_version property of this MaintenanceExecution. + :type source_version: str + + :param target_version: + The value to assign to the target_version property of this MaintenanceExecution. + :type target_version: str + + :param is_custom_action_timeout_enabled: + The value to assign to the is_custom_action_timeout_enabled property of this MaintenanceExecution. + :type is_custom_action_timeout_enabled: bool + + :param custom_action_timeout_in_mins: + The value to assign to the custom_action_timeout_in_mins property of this MaintenanceExecution. + :type custom_action_timeout_in_mins: int + + :param workflow_id: + The value to assign to the workflow_id property of this MaintenanceExecution. + :type workflow_id: str + + :param system_tags: + The value to assign to the system_tags property of this MaintenanceExecution. + :type system_tags: dict(str, dict(str, object)) + + :param defined_tags: + The value to assign to the defined_tags property of this MaintenanceExecution. + :type defined_tags: dict(str, dict(str, object)) + + :param freeform_tags: + The value to assign to the freeform_tags property of this MaintenanceExecution. + :type freeform_tags: dict(str, str) + + :param total_time_taken_in_mins: + The value to assign to the total_time_taken_in_mins property of this MaintenanceExecution. + :type total_time_taken_in_mins: int + + """ + self.swagger_types = { + 'id': 'str', + 'compartment_id': 'str', + 'display_name': 'str', + 'description': 'str', + 'lifecycle_state': 'str', + 'lifecycle_details': 'str', + 'time_started': 'datetime', + 'time_ended': 'datetime', + 'target_resource_type': 'str', + 'infrastructure_id': 'str', + 'maintenance_run_id': 'str', + 'maintenance_type': 'str', + 'maintenance_subtype': 'str', + 'patching_mode': 'str', + 'source_version': 'str', + 'target_version': 'str', + 'is_custom_action_timeout_enabled': 'bool', + 'custom_action_timeout_in_mins': 'int', + 'workflow_id': 'str', + 'system_tags': 'dict(str, dict(str, object))', + 'defined_tags': 'dict(str, dict(str, object))', + 'freeform_tags': 'dict(str, str)', + 'total_time_taken_in_mins': 'int' + } + self.attribute_map = { + 'id': 'id', + 'compartment_id': 'compartmentId', + 'display_name': 'displayName', + 'description': 'description', + 'lifecycle_state': 'lifecycleState', + 'lifecycle_details': 'lifecycleDetails', + 'time_started': 'timeStarted', + 'time_ended': 'timeEnded', + 'target_resource_type': 'targetResourceType', + 'infrastructure_id': 'infrastructureId', + 'maintenance_run_id': 'maintenanceRunId', + 'maintenance_type': 'maintenanceType', + 'maintenance_subtype': 'maintenanceSubtype', + 'patching_mode': 'patchingMode', + 'source_version': 'sourceVersion', + 'target_version': 'targetVersion', + 'is_custom_action_timeout_enabled': 'isCustomActionTimeoutEnabled', + 'custom_action_timeout_in_mins': 'customActionTimeoutInMins', + 'workflow_id': 'workflowId', + 'system_tags': 'systemTags', + 'defined_tags': 'definedTags', + 'freeform_tags': 'freeformTags', + 'total_time_taken_in_mins': 'totalTimeTakenInMins' + } + self._id = None + self._compartment_id = None + self._display_name = None + self._description = None + self._lifecycle_state = None + self._lifecycle_details = None + self._time_started = None + self._time_ended = None + self._target_resource_type = None + self._infrastructure_id = None + self._maintenance_run_id = None + self._maintenance_type = None + self._maintenance_subtype = None + self._patching_mode = None + self._source_version = None + self._target_version = None + self._is_custom_action_timeout_enabled = None + self._custom_action_timeout_in_mins = None + self._workflow_id = None + self._system_tags = None + self._defined_tags = None + self._freeform_tags = None + self._total_time_taken_in_mins = None + + @property + def id(self): + """ + **[Required]** Gets the id of this MaintenanceExecution. + The `OCID`__ of the maintenance run execution. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this MaintenanceExecution. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this MaintenanceExecution. + The `OCID`__ of the maintenance run execution. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this MaintenanceExecution. + :type: str + """ + self._id = id + + @property + def compartment_id(self): + """ + Gets the compartment_id of this MaintenanceExecution. + The `OCID`__ of the compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this MaintenanceExecution. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this MaintenanceExecution. + The `OCID`__ of the compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this MaintenanceExecution. + :type: str + """ + self._compartment_id = compartment_id + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this MaintenanceExecution. + The user-friendly name for the maintenance run execution. + + + :return: The display_name of this MaintenanceExecution. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this MaintenanceExecution. + The user-friendly name for the maintenance run execution. + + + :param display_name: The display_name of this MaintenanceExecution. + :type: str + """ + self._display_name = display_name + + @property + def description(self): + """ + Gets the description of this MaintenanceExecution. + Description of the maintenance run execution. + + + :return: The description of this MaintenanceExecution. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this MaintenanceExecution. + Description of the maintenance run execution. + + + :param description: The description of this MaintenanceExecution. + :type: str + """ + self._description = description + + @property + def lifecycle_state(self): + """ + **[Required]** Gets the lifecycle_state of this MaintenanceExecution. + The state of the maintenance run execution. + + Allowed values for this property are: "CREATING", "SCHEDULED", "IN_PROGRESS", "SUCCEEDED", "SKIPPED", "FAILED", "UPDATING", "DELETING", "DELETED", "CANCELED", "PARTIAL_SUCCESS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this MaintenanceExecution. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this MaintenanceExecution. + The state of the maintenance run execution. + + + :param lifecycle_state: The lifecycle_state of this MaintenanceExecution. + :type: str + """ + allowed_values = ["CREATING", "SCHEDULED", "IN_PROGRESS", "SUCCEEDED", "SKIPPED", "FAILED", "UPDATING", "DELETING", "DELETED", "CANCELED", "PARTIAL_SUCCESS"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + + @property + def lifecycle_details(self): + """ + Gets the lifecycle_details of this MaintenanceExecution. + Additional information about the current lifecycle state. + + + :return: The lifecycle_details of this MaintenanceExecution. + :rtype: str + """ + return self._lifecycle_details + + @lifecycle_details.setter + def lifecycle_details(self, lifecycle_details): + """ + Sets the lifecycle_details of this MaintenanceExecution. + Additional information about the current lifecycle state. + + + :param lifecycle_details: The lifecycle_details of this MaintenanceExecution. + :type: str + """ + self._lifecycle_details = lifecycle_details + + @property + def time_started(self): + """ + Gets the time_started of this MaintenanceExecution. + The date and time the maintenance run execution started. + + + :return: The time_started of this MaintenanceExecution. + :rtype: datetime + """ + return self._time_started + + @time_started.setter + def time_started(self, time_started): + """ + Sets the time_started of this MaintenanceExecution. + The date and time the maintenance run execution started. + + + :param time_started: The time_started of this MaintenanceExecution. + :type: datetime + """ + self._time_started = time_started + + @property + def time_ended(self): + """ + Gets the time_ended of this MaintenanceExecution. + The date and time the maintenance run was completed. + + + :return: The time_ended of this MaintenanceExecution. + :rtype: datetime + """ + return self._time_ended + + @time_ended.setter + def time_ended(self, time_ended): + """ + Sets the time_ended of this MaintenanceExecution. + The date and time the maintenance run was completed. + + + :param time_ended: The time_ended of this MaintenanceExecution. + :type: datetime + """ + self._time_ended = time_ended + + @property + def target_resource_type(self): + """ + Gets the target_resource_type of this MaintenanceExecution. + The type of the target resource on which the maintenance run execution occurred. + + Allowed values for this property are: "DB_CC_INFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The target_resource_type of this MaintenanceExecution. + :rtype: str + """ + return self._target_resource_type + + @target_resource_type.setter + def target_resource_type(self, target_resource_type): + """ + Sets the target_resource_type of this MaintenanceExecution. + The type of the target resource on which the maintenance run execution occurred. + + + :param target_resource_type: The target_resource_type of this MaintenanceExecution. + :type: str + """ + allowed_values = ["DB_CC_INFRASTRUCTURE"] + if not value_allowed_none_or_none_sentinel(target_resource_type, allowed_values): + target_resource_type = 'UNKNOWN_ENUM_VALUE' + self._target_resource_type = target_resource_type + + @property + def infrastructure_id(self): + """ + Gets the infrastructure_id of this MaintenanceExecution. + The `OCID`__ of the Database Infrastructure on which the maintenance run execution occurred. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The infrastructure_id of this MaintenanceExecution. + :rtype: str + """ + return self._infrastructure_id + + @infrastructure_id.setter + def infrastructure_id(self, infrastructure_id): + """ + Sets the infrastructure_id of this MaintenanceExecution. + The `OCID`__ of the Database Infrastructure on which the maintenance run execution occurred. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param infrastructure_id: The infrastructure_id of this MaintenanceExecution. + :type: str + """ + self._infrastructure_id = infrastructure_id + + @property + def maintenance_run_id(self): + """ + Gets the maintenance_run_id of this MaintenanceExecution. + The `OCID`__ of the maintenance run to which this maintenance execution belongs. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The maintenance_run_id of this MaintenanceExecution. + :rtype: str + """ + return self._maintenance_run_id + + @maintenance_run_id.setter + def maintenance_run_id(self, maintenance_run_id): + """ + Sets the maintenance_run_id of this MaintenanceExecution. + The `OCID`__ of the maintenance run to which this maintenance execution belongs. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param maintenance_run_id: The maintenance_run_id of this MaintenanceExecution. + :type: str + """ + self._maintenance_run_id = maintenance_run_id + + @property + def maintenance_type(self): + """ + Gets the maintenance_type of this MaintenanceExecution. + Maintenance type. + + Allowed values for this property are: "PLANNED", "UNPLANNED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The maintenance_type of this MaintenanceExecution. + :rtype: str + """ + return self._maintenance_type + + @maintenance_type.setter + def maintenance_type(self, maintenance_type): + """ + Sets the maintenance_type of this MaintenanceExecution. + Maintenance type. + + + :param maintenance_type: The maintenance_type of this MaintenanceExecution. + :type: str + """ + allowed_values = ["PLANNED", "UNPLANNED"] + if not value_allowed_none_or_none_sentinel(maintenance_type, allowed_values): + maintenance_type = 'UNKNOWN_ENUM_VALUE' + self._maintenance_type = maintenance_type + + @property + def maintenance_subtype(self): + """ + Gets the maintenance_subtype of this MaintenanceExecution. + Maintenance run execution sub-type. + + Allowed values for this property are: "YEARLY", "HALFYEARLY", "QUARTERLY", "MONTHLY", "DAILY", "HARDWARE", "CRITICAL", "INFRA_UPDATE", "CPS_SERVICES_UPDATE", "CPS_VM_UPDATE", "SECURITY_MONTHLY", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The maintenance_subtype of this MaintenanceExecution. + :rtype: str + """ + return self._maintenance_subtype + + @maintenance_subtype.setter + def maintenance_subtype(self, maintenance_subtype): + """ + Sets the maintenance_subtype of this MaintenanceExecution. + Maintenance run execution sub-type. + + + :param maintenance_subtype: The maintenance_subtype of this MaintenanceExecution. + :type: str + """ + allowed_values = ["YEARLY", "HALFYEARLY", "QUARTERLY", "MONTHLY", "DAILY", "HARDWARE", "CRITICAL", "INFRA_UPDATE", "CPS_SERVICES_UPDATE", "CPS_VM_UPDATE", "SECURITY_MONTHLY"] + if not value_allowed_none_or_none_sentinel(maintenance_subtype, allowed_values): + maintenance_subtype = 'UNKNOWN_ENUM_VALUE' + self._maintenance_subtype = maintenance_subtype + + @property + def patching_mode(self): + """ + Gets the patching_mode of this MaintenanceExecution. + The patching mode for the maintenance run that is being executed. + + Allowed values for this property are: "ROLLING", "NONROLLING", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The patching_mode of this MaintenanceExecution. + :rtype: str + """ + return self._patching_mode + + @patching_mode.setter + def patching_mode(self, patching_mode): + """ + Sets the patching_mode of this MaintenanceExecution. + The patching mode for the maintenance run that is being executed. + + + :param patching_mode: The patching_mode of this MaintenanceExecution. + :type: str + """ + allowed_values = ["ROLLING", "NONROLLING"] + if not value_allowed_none_or_none_sentinel(patching_mode, allowed_values): + patching_mode = 'UNKNOWN_ENUM_VALUE' + self._patching_mode = patching_mode + + @property + def source_version(self): + """ + Gets the source_version of this MaintenanceExecution. + The source software version for the Oracle infrastructure. + + + :return: The source_version of this MaintenanceExecution. + :rtype: str + """ + return self._source_version + + @source_version.setter + def source_version(self, source_version): + """ + Sets the source_version of this MaintenanceExecution. + The source software version for the Oracle infrastructure. + + + :param source_version: The source_version of this MaintenanceExecution. + :type: str + """ + self._source_version = source_version + + @property + def target_version(self): + """ + Gets the target_version of this MaintenanceExecution. + The target software version for the Database Infrastructure patching operation. + + + :return: The target_version of this MaintenanceExecution. + :rtype: str + """ + return self._target_version + + @target_version.setter + def target_version(self, target_version): + """ + Sets the target_version of this MaintenanceExecution. + The target software version for the Database Infrastructure patching operation. + + + :param target_version: The target_version of this MaintenanceExecution. + :type: str + """ + self._target_version = target_version + + @property + def is_custom_action_timeout_enabled(self): + """ + Gets the is_custom_action_timeout_enabled of this MaintenanceExecution. + At the time of execution whether the custom action time out is enabled for the maintenance run that is being executed. + + + :return: The is_custom_action_timeout_enabled of this MaintenanceExecution. + :rtype: bool + """ + return self._is_custom_action_timeout_enabled + + @is_custom_action_timeout_enabled.setter + def is_custom_action_timeout_enabled(self, is_custom_action_timeout_enabled): + """ + Sets the is_custom_action_timeout_enabled of this MaintenanceExecution. + At the time of execution whether the custom action time out is enabled for the maintenance run that is being executed. + + + :param is_custom_action_timeout_enabled: The is_custom_action_timeout_enabled of this MaintenanceExecution. + :type: bool + """ + self._is_custom_action_timeout_enabled = is_custom_action_timeout_enabled + + @property + def custom_action_timeout_in_mins(self): + """ + Gets the custom_action_timeout_in_mins of this MaintenanceExecution. + Determines the amount of time the system will wait before the start of each compute server patching operation. + Supported values are 15 to 120 minutes. + + + :return: The custom_action_timeout_in_mins of this MaintenanceExecution. + :rtype: int + """ + return self._custom_action_timeout_in_mins + + @custom_action_timeout_in_mins.setter + def custom_action_timeout_in_mins(self, custom_action_timeout_in_mins): + """ + Sets the custom_action_timeout_in_mins of this MaintenanceExecution. + Determines the amount of time the system will wait before the start of each compute server patching operation. + Supported values are 15 to 120 minutes. + + + :param custom_action_timeout_in_mins: The custom_action_timeout_in_mins of this MaintenanceExecution. + :type: int + """ + self._custom_action_timeout_in_mins = custom_action_timeout_in_mins + + @property + def workflow_id(self): + """ + Gets the workflow_id of this MaintenanceExecution. + The `OCID`__ of the work request executed by this execution. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The workflow_id of this MaintenanceExecution. + :rtype: str + """ + return self._workflow_id + + @workflow_id.setter + def workflow_id(self, workflow_id): + """ + Sets the workflow_id of this MaintenanceExecution. + The `OCID`__ of the work request executed by this execution. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param workflow_id: The workflow_id of this MaintenanceExecution. + :type: str + """ + self._workflow_id = workflow_id + + @property + def system_tags(self): + """ + Gets the system_tags of this MaintenanceExecution. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :return: The system_tags of this MaintenanceExecution. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this MaintenanceExecution. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :param system_tags: The system_tags of this MaintenanceExecution. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this MaintenanceExecution. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this MaintenanceExecution. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this MaintenanceExecution. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this MaintenanceExecution. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this MaintenanceExecution. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this MaintenanceExecution. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this MaintenanceExecution. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this MaintenanceExecution. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def total_time_taken_in_mins(self): + """ + Gets the total_time_taken_in_mins of this MaintenanceExecution. + The total time taken by this execution in minutes. + + + :return: The total_time_taken_in_mins of this MaintenanceExecution. + :rtype: int + """ + return self._total_time_taken_in_mins + + @total_time_taken_in_mins.setter + def total_time_taken_in_mins(self, total_time_taken_in_mins): + """ + Sets the total_time_taken_in_mins of this MaintenanceExecution. + The total time taken by this execution in minutes. + + + :param total_time_taken_in_mins: The total_time_taken_in_mins of this MaintenanceExecution. + :type: int + """ + self._total_time_taken_in_mins = total_time_taken_in_mins + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/maintenance_execution_collection.py b/src/oci/datacc/models/maintenance_execution_collection.py new file mode 100644 index 0000000000..79a5c97630 --- /dev/null +++ b/src/oci/datacc/models/maintenance_execution_collection.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class MaintenanceExecutionCollection(object): + """ + A collection of maintenance run execution history. + """ + + def __init__(self, **kwargs): + """ + Initializes a new MaintenanceExecutionCollection object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this MaintenanceExecutionCollection. + :type items: list[oci.datacc.models.MaintenanceExecutionSummary] + + """ + self.swagger_types = { + 'items': 'list[MaintenanceExecutionSummary]' + } + self.attribute_map = { + 'items': 'items' + } + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this MaintenanceExecutionCollection. + A list of maintenance run execution history. + + + :return: The items of this MaintenanceExecutionCollection. + :rtype: list[oci.datacc.models.MaintenanceExecutionSummary] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this MaintenanceExecutionCollection. + A list of maintenance run execution history. + + + :param items: The items of this MaintenanceExecutionCollection. + :type: list[oci.datacc.models.MaintenanceExecutionSummary] + """ + self._items = items + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/maintenance_execution_summary.py b/src/oci/datacc/models/maintenance_execution_summary.py new file mode 100644 index 0000000000..01a2c3b9fd --- /dev/null +++ b/src/oci/datacc/models/maintenance_execution_summary.py @@ -0,0 +1,928 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class MaintenanceExecutionSummary(object): + """ + Summary of a maintenance executions. + """ + + #: A constant which can be used with the lifecycle_state property of a MaintenanceExecutionSummary. + #: This constant has a value of "CREATING" + LIFECYCLE_STATE_CREATING = "CREATING" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceExecutionSummary. + #: This constant has a value of "SCHEDULED" + LIFECYCLE_STATE_SCHEDULED = "SCHEDULED" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceExecutionSummary. + #: This constant has a value of "IN_PROGRESS" + LIFECYCLE_STATE_IN_PROGRESS = "IN_PROGRESS" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceExecutionSummary. + #: This constant has a value of "SUCCEEDED" + LIFECYCLE_STATE_SUCCEEDED = "SUCCEEDED" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceExecutionSummary. + #: This constant has a value of "SKIPPED" + LIFECYCLE_STATE_SKIPPED = "SKIPPED" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceExecutionSummary. + #: This constant has a value of "FAILED" + LIFECYCLE_STATE_FAILED = "FAILED" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceExecutionSummary. + #: This constant has a value of "UPDATING" + LIFECYCLE_STATE_UPDATING = "UPDATING" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceExecutionSummary. + #: This constant has a value of "DELETING" + LIFECYCLE_STATE_DELETING = "DELETING" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceExecutionSummary. + #: This constant has a value of "DELETED" + LIFECYCLE_STATE_DELETED = "DELETED" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceExecutionSummary. + #: This constant has a value of "CANCELED" + LIFECYCLE_STATE_CANCELED = "CANCELED" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceExecutionSummary. + #: This constant has a value of "PARTIAL_SUCCESS" + LIFECYCLE_STATE_PARTIAL_SUCCESS = "PARTIAL_SUCCESS" + + #: A constant which can be used with the target_resource_type property of a MaintenanceExecutionSummary. + #: This constant has a value of "DB_CC_INFRASTRUCTURE" + TARGET_RESOURCE_TYPE_DB_CC_INFRASTRUCTURE = "DB_CC_INFRASTRUCTURE" + + #: A constant which can be used with the maintenance_type property of a MaintenanceExecutionSummary. + #: This constant has a value of "PLANNED" + MAINTENANCE_TYPE_PLANNED = "PLANNED" + + #: A constant which can be used with the maintenance_type property of a MaintenanceExecutionSummary. + #: This constant has a value of "UNPLANNED" + MAINTENANCE_TYPE_UNPLANNED = "UNPLANNED" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceExecutionSummary. + #: This constant has a value of "YEARLY" + MAINTENANCE_SUBTYPE_YEARLY = "YEARLY" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceExecutionSummary. + #: This constant has a value of "HALFYEARLY" + MAINTENANCE_SUBTYPE_HALFYEARLY = "HALFYEARLY" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceExecutionSummary. + #: This constant has a value of "QUARTERLY" + MAINTENANCE_SUBTYPE_QUARTERLY = "QUARTERLY" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceExecutionSummary. + #: This constant has a value of "MONTHLY" + MAINTENANCE_SUBTYPE_MONTHLY = "MONTHLY" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceExecutionSummary. + #: This constant has a value of "DAILY" + MAINTENANCE_SUBTYPE_DAILY = "DAILY" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceExecutionSummary. + #: This constant has a value of "HARDWARE" + MAINTENANCE_SUBTYPE_HARDWARE = "HARDWARE" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceExecutionSummary. + #: This constant has a value of "CRITICAL" + MAINTENANCE_SUBTYPE_CRITICAL = "CRITICAL" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceExecutionSummary. + #: This constant has a value of "INFRA_UPDATE" + MAINTENANCE_SUBTYPE_INFRA_UPDATE = "INFRA_UPDATE" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceExecutionSummary. + #: This constant has a value of "CPS_SERVICES_UPDATE" + MAINTENANCE_SUBTYPE_CPS_SERVICES_UPDATE = "CPS_SERVICES_UPDATE" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceExecutionSummary. + #: This constant has a value of "CPS_VM_UPDATE" + MAINTENANCE_SUBTYPE_CPS_VM_UPDATE = "CPS_VM_UPDATE" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceExecutionSummary. + #: This constant has a value of "SECURITY_MONTHLY" + MAINTENANCE_SUBTYPE_SECURITY_MONTHLY = "SECURITY_MONTHLY" + + #: A constant which can be used with the patching_mode property of a MaintenanceExecutionSummary. + #: This constant has a value of "ROLLING" + PATCHING_MODE_ROLLING = "ROLLING" + + #: A constant which can be used with the patching_mode property of a MaintenanceExecutionSummary. + #: This constant has a value of "NONROLLING" + PATCHING_MODE_NONROLLING = "NONROLLING" + + def __init__(self, **kwargs): + """ + Initializes a new MaintenanceExecutionSummary object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this MaintenanceExecutionSummary. + :type id: str + + :param compartment_id: + The value to assign to the compartment_id property of this MaintenanceExecutionSummary. + :type compartment_id: str + + :param display_name: + The value to assign to the display_name property of this MaintenanceExecutionSummary. + :type display_name: str + + :param description: + The value to assign to the description property of this MaintenanceExecutionSummary. + :type description: str + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this MaintenanceExecutionSummary. + Allowed values for this property are: "CREATING", "SCHEDULED", "IN_PROGRESS", "SUCCEEDED", "SKIPPED", "FAILED", "UPDATING", "DELETING", "DELETED", "CANCELED", "PARTIAL_SUCCESS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + :param lifecycle_details: + The value to assign to the lifecycle_details property of this MaintenanceExecutionSummary. + :type lifecycle_details: str + + :param time_started: + The value to assign to the time_started property of this MaintenanceExecutionSummary. + :type time_started: datetime + + :param time_ended: + The value to assign to the time_ended property of this MaintenanceExecutionSummary. + :type time_ended: datetime + + :param target_resource_type: + The value to assign to the target_resource_type property of this MaintenanceExecutionSummary. + Allowed values for this property are: "DB_CC_INFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type target_resource_type: str + + :param infrastructure_id: + The value to assign to the infrastructure_id property of this MaintenanceExecutionSummary. + :type infrastructure_id: str + + :param maintenance_run_id: + The value to assign to the maintenance_run_id property of this MaintenanceExecutionSummary. + :type maintenance_run_id: str + + :param maintenance_type: + The value to assign to the maintenance_type property of this MaintenanceExecutionSummary. + Allowed values for this property are: "PLANNED", "UNPLANNED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type maintenance_type: str + + :param maintenance_subtype: + The value to assign to the maintenance_subtype property of this MaintenanceExecutionSummary. + Allowed values for this property are: "YEARLY", "HALFYEARLY", "QUARTERLY", "MONTHLY", "DAILY", "HARDWARE", "CRITICAL", "INFRA_UPDATE", "CPS_SERVICES_UPDATE", "CPS_VM_UPDATE", "SECURITY_MONTHLY", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type maintenance_subtype: str + + :param patching_mode: + The value to assign to the patching_mode property of this MaintenanceExecutionSummary. + Allowed values for this property are: "ROLLING", "NONROLLING", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type patching_mode: str + + :param source_version: + The value to assign to the source_version property of this MaintenanceExecutionSummary. + :type source_version: str + + :param target_version: + The value to assign to the target_version property of this MaintenanceExecutionSummary. + :type target_version: str + + :param is_custom_action_timeout_enabled: + The value to assign to the is_custom_action_timeout_enabled property of this MaintenanceExecutionSummary. + :type is_custom_action_timeout_enabled: bool + + :param custom_action_timeout_in_mins: + The value to assign to the custom_action_timeout_in_mins property of this MaintenanceExecutionSummary. + :type custom_action_timeout_in_mins: int + + :param workflow_id: + The value to assign to the workflow_id property of this MaintenanceExecutionSummary. + :type workflow_id: str + + :param system_tags: + The value to assign to the system_tags property of this MaintenanceExecutionSummary. + :type system_tags: dict(str, dict(str, object)) + + :param defined_tags: + The value to assign to the defined_tags property of this MaintenanceExecutionSummary. + :type defined_tags: dict(str, dict(str, object)) + + :param freeform_tags: + The value to assign to the freeform_tags property of this MaintenanceExecutionSummary. + :type freeform_tags: dict(str, str) + + :param total_time_taken_in_mins: + The value to assign to the total_time_taken_in_mins property of this MaintenanceExecutionSummary. + :type total_time_taken_in_mins: int + + """ + self.swagger_types = { + 'id': 'str', + 'compartment_id': 'str', + 'display_name': 'str', + 'description': 'str', + 'lifecycle_state': 'str', + 'lifecycle_details': 'str', + 'time_started': 'datetime', + 'time_ended': 'datetime', + 'target_resource_type': 'str', + 'infrastructure_id': 'str', + 'maintenance_run_id': 'str', + 'maintenance_type': 'str', + 'maintenance_subtype': 'str', + 'patching_mode': 'str', + 'source_version': 'str', + 'target_version': 'str', + 'is_custom_action_timeout_enabled': 'bool', + 'custom_action_timeout_in_mins': 'int', + 'workflow_id': 'str', + 'system_tags': 'dict(str, dict(str, object))', + 'defined_tags': 'dict(str, dict(str, object))', + 'freeform_tags': 'dict(str, str)', + 'total_time_taken_in_mins': 'int' + } + self.attribute_map = { + 'id': 'id', + 'compartment_id': 'compartmentId', + 'display_name': 'displayName', + 'description': 'description', + 'lifecycle_state': 'lifecycleState', + 'lifecycle_details': 'lifecycleDetails', + 'time_started': 'timeStarted', + 'time_ended': 'timeEnded', + 'target_resource_type': 'targetResourceType', + 'infrastructure_id': 'infrastructureId', + 'maintenance_run_id': 'maintenanceRunId', + 'maintenance_type': 'maintenanceType', + 'maintenance_subtype': 'maintenanceSubtype', + 'patching_mode': 'patchingMode', + 'source_version': 'sourceVersion', + 'target_version': 'targetVersion', + 'is_custom_action_timeout_enabled': 'isCustomActionTimeoutEnabled', + 'custom_action_timeout_in_mins': 'customActionTimeoutInMins', + 'workflow_id': 'workflowId', + 'system_tags': 'systemTags', + 'defined_tags': 'definedTags', + 'freeform_tags': 'freeformTags', + 'total_time_taken_in_mins': 'totalTimeTakenInMins' + } + self._id = None + self._compartment_id = None + self._display_name = None + self._description = None + self._lifecycle_state = None + self._lifecycle_details = None + self._time_started = None + self._time_ended = None + self._target_resource_type = None + self._infrastructure_id = None + self._maintenance_run_id = None + self._maintenance_type = None + self._maintenance_subtype = None + self._patching_mode = None + self._source_version = None + self._target_version = None + self._is_custom_action_timeout_enabled = None + self._custom_action_timeout_in_mins = None + self._workflow_id = None + self._system_tags = None + self._defined_tags = None + self._freeform_tags = None + self._total_time_taken_in_mins = None + + @property + def id(self): + """ + **[Required]** Gets the id of this MaintenanceExecutionSummary. + The `OCID`__ of the maintenance run execution. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this MaintenanceExecutionSummary. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this MaintenanceExecutionSummary. + The `OCID`__ of the maintenance run execution. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this MaintenanceExecutionSummary. + :type: str + """ + self._id = id + + @property + def compartment_id(self): + """ + Gets the compartment_id of this MaintenanceExecutionSummary. + The `OCID`__ of the compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this MaintenanceExecutionSummary. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this MaintenanceExecutionSummary. + The `OCID`__ of the compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this MaintenanceExecutionSummary. + :type: str + """ + self._compartment_id = compartment_id + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this MaintenanceExecutionSummary. + The user-friendly name for the maintenance run execution. + + + :return: The display_name of this MaintenanceExecutionSummary. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this MaintenanceExecutionSummary. + The user-friendly name for the maintenance run execution. + + + :param display_name: The display_name of this MaintenanceExecutionSummary. + :type: str + """ + self._display_name = display_name + + @property + def description(self): + """ + Gets the description of this MaintenanceExecutionSummary. + Description of the maintenance run execution. + + + :return: The description of this MaintenanceExecutionSummary. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this MaintenanceExecutionSummary. + Description of the maintenance run execution. + + + :param description: The description of this MaintenanceExecutionSummary. + :type: str + """ + self._description = description + + @property + def lifecycle_state(self): + """ + **[Required]** Gets the lifecycle_state of this MaintenanceExecutionSummary. + The state of the maintenance run execution. + + Allowed values for this property are: "CREATING", "SCHEDULED", "IN_PROGRESS", "SUCCEEDED", "SKIPPED", "FAILED", "UPDATING", "DELETING", "DELETED", "CANCELED", "PARTIAL_SUCCESS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this MaintenanceExecutionSummary. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this MaintenanceExecutionSummary. + The state of the maintenance run execution. + + + :param lifecycle_state: The lifecycle_state of this MaintenanceExecutionSummary. + :type: str + """ + allowed_values = ["CREATING", "SCHEDULED", "IN_PROGRESS", "SUCCEEDED", "SKIPPED", "FAILED", "UPDATING", "DELETING", "DELETED", "CANCELED", "PARTIAL_SUCCESS"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + + @property + def lifecycle_details(self): + """ + Gets the lifecycle_details of this MaintenanceExecutionSummary. + Additional information about the current lifecycle state. + + + :return: The lifecycle_details of this MaintenanceExecutionSummary. + :rtype: str + """ + return self._lifecycle_details + + @lifecycle_details.setter + def lifecycle_details(self, lifecycle_details): + """ + Sets the lifecycle_details of this MaintenanceExecutionSummary. + Additional information about the current lifecycle state. + + + :param lifecycle_details: The lifecycle_details of this MaintenanceExecutionSummary. + :type: str + """ + self._lifecycle_details = lifecycle_details + + @property + def time_started(self): + """ + Gets the time_started of this MaintenanceExecutionSummary. + The date and time the maintenance run execution started. + + + :return: The time_started of this MaintenanceExecutionSummary. + :rtype: datetime + """ + return self._time_started + + @time_started.setter + def time_started(self, time_started): + """ + Sets the time_started of this MaintenanceExecutionSummary. + The date and time the maintenance run execution started. + + + :param time_started: The time_started of this MaintenanceExecutionSummary. + :type: datetime + """ + self._time_started = time_started + + @property + def time_ended(self): + """ + Gets the time_ended of this MaintenanceExecutionSummary. + The date and time the maintenance run was completed. + + + :return: The time_ended of this MaintenanceExecutionSummary. + :rtype: datetime + """ + return self._time_ended + + @time_ended.setter + def time_ended(self, time_ended): + """ + Sets the time_ended of this MaintenanceExecutionSummary. + The date and time the maintenance run was completed. + + + :param time_ended: The time_ended of this MaintenanceExecutionSummary. + :type: datetime + """ + self._time_ended = time_ended + + @property + def target_resource_type(self): + """ + Gets the target_resource_type of this MaintenanceExecutionSummary. + The type of the target resource on which the maintenance run execution occurred. + + Allowed values for this property are: "DB_CC_INFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The target_resource_type of this MaintenanceExecutionSummary. + :rtype: str + """ + return self._target_resource_type + + @target_resource_type.setter + def target_resource_type(self, target_resource_type): + """ + Sets the target_resource_type of this MaintenanceExecutionSummary. + The type of the target resource on which the maintenance run execution occurred. + + + :param target_resource_type: The target_resource_type of this MaintenanceExecutionSummary. + :type: str + """ + allowed_values = ["DB_CC_INFRASTRUCTURE"] + if not value_allowed_none_or_none_sentinel(target_resource_type, allowed_values): + target_resource_type = 'UNKNOWN_ENUM_VALUE' + self._target_resource_type = target_resource_type + + @property + def infrastructure_id(self): + """ + Gets the infrastructure_id of this MaintenanceExecutionSummary. + The `OCID`__ of the Database Infrastructure on which the maintenance run execution occurred. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The infrastructure_id of this MaintenanceExecutionSummary. + :rtype: str + """ + return self._infrastructure_id + + @infrastructure_id.setter + def infrastructure_id(self, infrastructure_id): + """ + Sets the infrastructure_id of this MaintenanceExecutionSummary. + The `OCID`__ of the Database Infrastructure on which the maintenance run execution occurred. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param infrastructure_id: The infrastructure_id of this MaintenanceExecutionSummary. + :type: str + """ + self._infrastructure_id = infrastructure_id + + @property + def maintenance_run_id(self): + """ + Gets the maintenance_run_id of this MaintenanceExecutionSummary. + The `OCID`__ of the maintenance run to which this maintenance execution belongs. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The maintenance_run_id of this MaintenanceExecutionSummary. + :rtype: str + """ + return self._maintenance_run_id + + @maintenance_run_id.setter + def maintenance_run_id(self, maintenance_run_id): + """ + Sets the maintenance_run_id of this MaintenanceExecutionSummary. + The `OCID`__ of the maintenance run to which this maintenance execution belongs. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param maintenance_run_id: The maintenance_run_id of this MaintenanceExecutionSummary. + :type: str + """ + self._maintenance_run_id = maintenance_run_id + + @property + def maintenance_type(self): + """ + Gets the maintenance_type of this MaintenanceExecutionSummary. + Maintenance type. + + Allowed values for this property are: "PLANNED", "UNPLANNED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The maintenance_type of this MaintenanceExecutionSummary. + :rtype: str + """ + return self._maintenance_type + + @maintenance_type.setter + def maintenance_type(self, maintenance_type): + """ + Sets the maintenance_type of this MaintenanceExecutionSummary. + Maintenance type. + + + :param maintenance_type: The maintenance_type of this MaintenanceExecutionSummary. + :type: str + """ + allowed_values = ["PLANNED", "UNPLANNED"] + if not value_allowed_none_or_none_sentinel(maintenance_type, allowed_values): + maintenance_type = 'UNKNOWN_ENUM_VALUE' + self._maintenance_type = maintenance_type + + @property + def maintenance_subtype(self): + """ + Gets the maintenance_subtype of this MaintenanceExecutionSummary. + Maintenance run execution sub-type. + + Allowed values for this property are: "YEARLY", "HALFYEARLY", "QUARTERLY", "MONTHLY", "DAILY", "HARDWARE", "CRITICAL", "INFRA_UPDATE", "CPS_SERVICES_UPDATE", "CPS_VM_UPDATE", "SECURITY_MONTHLY", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The maintenance_subtype of this MaintenanceExecutionSummary. + :rtype: str + """ + return self._maintenance_subtype + + @maintenance_subtype.setter + def maintenance_subtype(self, maintenance_subtype): + """ + Sets the maintenance_subtype of this MaintenanceExecutionSummary. + Maintenance run execution sub-type. + + + :param maintenance_subtype: The maintenance_subtype of this MaintenanceExecutionSummary. + :type: str + """ + allowed_values = ["YEARLY", "HALFYEARLY", "QUARTERLY", "MONTHLY", "DAILY", "HARDWARE", "CRITICAL", "INFRA_UPDATE", "CPS_SERVICES_UPDATE", "CPS_VM_UPDATE", "SECURITY_MONTHLY"] + if not value_allowed_none_or_none_sentinel(maintenance_subtype, allowed_values): + maintenance_subtype = 'UNKNOWN_ENUM_VALUE' + self._maintenance_subtype = maintenance_subtype + + @property + def patching_mode(self): + """ + Gets the patching_mode of this MaintenanceExecutionSummary. + The patching mode for the maintenance run that is being executed. + + Allowed values for this property are: "ROLLING", "NONROLLING", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The patching_mode of this MaintenanceExecutionSummary. + :rtype: str + """ + return self._patching_mode + + @patching_mode.setter + def patching_mode(self, patching_mode): + """ + Sets the patching_mode of this MaintenanceExecutionSummary. + The patching mode for the maintenance run that is being executed. + + + :param patching_mode: The patching_mode of this MaintenanceExecutionSummary. + :type: str + """ + allowed_values = ["ROLLING", "NONROLLING"] + if not value_allowed_none_or_none_sentinel(patching_mode, allowed_values): + patching_mode = 'UNKNOWN_ENUM_VALUE' + self._patching_mode = patching_mode + + @property + def source_version(self): + """ + Gets the source_version of this MaintenanceExecutionSummary. + The source software version for the Oracle infrastructure. + + + :return: The source_version of this MaintenanceExecutionSummary. + :rtype: str + """ + return self._source_version + + @source_version.setter + def source_version(self, source_version): + """ + Sets the source_version of this MaintenanceExecutionSummary. + The source software version for the Oracle infrastructure. + + + :param source_version: The source_version of this MaintenanceExecutionSummary. + :type: str + """ + self._source_version = source_version + + @property + def target_version(self): + """ + Gets the target_version of this MaintenanceExecutionSummary. + The target software version for the Database Infrastructure patching operation. + + + :return: The target_version of this MaintenanceExecutionSummary. + :rtype: str + """ + return self._target_version + + @target_version.setter + def target_version(self, target_version): + """ + Sets the target_version of this MaintenanceExecutionSummary. + The target software version for the Database Infrastructure patching operation. + + + :param target_version: The target_version of this MaintenanceExecutionSummary. + :type: str + """ + self._target_version = target_version + + @property + def is_custom_action_timeout_enabled(self): + """ + Gets the is_custom_action_timeout_enabled of this MaintenanceExecutionSummary. + At the time of execution whether the custom action time out is enabled for the maintenance run that is being executed. + + + :return: The is_custom_action_timeout_enabled of this MaintenanceExecutionSummary. + :rtype: bool + """ + return self._is_custom_action_timeout_enabled + + @is_custom_action_timeout_enabled.setter + def is_custom_action_timeout_enabled(self, is_custom_action_timeout_enabled): + """ + Sets the is_custom_action_timeout_enabled of this MaintenanceExecutionSummary. + At the time of execution whether the custom action time out is enabled for the maintenance run that is being executed. + + + :param is_custom_action_timeout_enabled: The is_custom_action_timeout_enabled of this MaintenanceExecutionSummary. + :type: bool + """ + self._is_custom_action_timeout_enabled = is_custom_action_timeout_enabled + + @property + def custom_action_timeout_in_mins(self): + """ + Gets the custom_action_timeout_in_mins of this MaintenanceExecutionSummary. + Determines the amount of time the system will wait before the start of each compute server patching operation. + Supported values are 15 to 120 minutes. + + + :return: The custom_action_timeout_in_mins of this MaintenanceExecutionSummary. + :rtype: int + """ + return self._custom_action_timeout_in_mins + + @custom_action_timeout_in_mins.setter + def custom_action_timeout_in_mins(self, custom_action_timeout_in_mins): + """ + Sets the custom_action_timeout_in_mins of this MaintenanceExecutionSummary. + Determines the amount of time the system will wait before the start of each compute server patching operation. + Supported values are 15 to 120 minutes. + + + :param custom_action_timeout_in_mins: The custom_action_timeout_in_mins of this MaintenanceExecutionSummary. + :type: int + """ + self._custom_action_timeout_in_mins = custom_action_timeout_in_mins + + @property + def workflow_id(self): + """ + Gets the workflow_id of this MaintenanceExecutionSummary. + The `OCID`__ of the work request executed by this execution. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The workflow_id of this MaintenanceExecutionSummary. + :rtype: str + """ + return self._workflow_id + + @workflow_id.setter + def workflow_id(self, workflow_id): + """ + Sets the workflow_id of this MaintenanceExecutionSummary. + The `OCID`__ of the work request executed by this execution. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param workflow_id: The workflow_id of this MaintenanceExecutionSummary. + :type: str + """ + self._workflow_id = workflow_id + + @property + def system_tags(self): + """ + Gets the system_tags of this MaintenanceExecutionSummary. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :return: The system_tags of this MaintenanceExecutionSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this MaintenanceExecutionSummary. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :param system_tags: The system_tags of this MaintenanceExecutionSummary. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this MaintenanceExecutionSummary. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this MaintenanceExecutionSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this MaintenanceExecutionSummary. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this MaintenanceExecutionSummary. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this MaintenanceExecutionSummary. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this MaintenanceExecutionSummary. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this MaintenanceExecutionSummary. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this MaintenanceExecutionSummary. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def total_time_taken_in_mins(self): + """ + Gets the total_time_taken_in_mins of this MaintenanceExecutionSummary. + The total time taken by this execution in minutes. + + + :return: The total_time_taken_in_mins of this MaintenanceExecutionSummary. + :rtype: int + """ + return self._total_time_taken_in_mins + + @total_time_taken_in_mins.setter + def total_time_taken_in_mins(self, total_time_taken_in_mins): + """ + Sets the total_time_taken_in_mins of this MaintenanceExecutionSummary. + The total time taken by this execution in minutes. + + + :param total_time_taken_in_mins: The total_time_taken_in_mins of this MaintenanceExecutionSummary. + :type: int + """ + self._total_time_taken_in_mins = total_time_taken_in_mins + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/maintenance_run.py b/src/oci/datacc/models/maintenance_run.py new file mode 100644 index 0000000000..5a39991d65 --- /dev/null +++ b/src/oci/datacc/models/maintenance_run.py @@ -0,0 +1,1200 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class MaintenanceRun(object): + """ + Details of a maintenance run. + """ + + #: A constant which can be used with the lifecycle_state property of a MaintenanceRun. + #: This constant has a value of "CREATING" + LIFECYCLE_STATE_CREATING = "CREATING" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceRun. + #: This constant has a value of "SCHEDULED" + LIFECYCLE_STATE_SCHEDULED = "SCHEDULED" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceRun. + #: This constant has a value of "IN_PROGRESS" + LIFECYCLE_STATE_IN_PROGRESS = "IN_PROGRESS" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceRun. + #: This constant has a value of "SUCCEEDED" + LIFECYCLE_STATE_SUCCEEDED = "SUCCEEDED" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceRun. + #: This constant has a value of "SKIPPED" + LIFECYCLE_STATE_SKIPPED = "SKIPPED" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceRun. + #: This constant has a value of "FAILED" + LIFECYCLE_STATE_FAILED = "FAILED" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceRun. + #: This constant has a value of "UPDATING" + LIFECYCLE_STATE_UPDATING = "UPDATING" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceRun. + #: This constant has a value of "DELETING" + LIFECYCLE_STATE_DELETING = "DELETING" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceRun. + #: This constant has a value of "DELETED" + LIFECYCLE_STATE_DELETED = "DELETED" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceRun. + #: This constant has a value of "CANCELED" + LIFECYCLE_STATE_CANCELED = "CANCELED" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceRun. + #: This constant has a value of "PARTIAL_SUCCESS" + LIFECYCLE_STATE_PARTIAL_SUCCESS = "PARTIAL_SUCCESS" + + #: A constant which can be used with the target_resource_type property of a MaintenanceRun. + #: This constant has a value of "DB_CC_INFRASTRUCTURE" + TARGET_RESOURCE_TYPE_DB_CC_INFRASTRUCTURE = "DB_CC_INFRASTRUCTURE" + + #: A constant which can be used with the maintenance_type property of a MaintenanceRun. + #: This constant has a value of "PLANNED" + MAINTENANCE_TYPE_PLANNED = "PLANNED" + + #: A constant which can be used with the maintenance_type property of a MaintenanceRun. + #: This constant has a value of "UNPLANNED" + MAINTENANCE_TYPE_UNPLANNED = "UNPLANNED" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceRun. + #: This constant has a value of "YEARLY" + MAINTENANCE_SUBTYPE_YEARLY = "YEARLY" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceRun. + #: This constant has a value of "HALFYEARLY" + MAINTENANCE_SUBTYPE_HALFYEARLY = "HALFYEARLY" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceRun. + #: This constant has a value of "QUARTERLY" + MAINTENANCE_SUBTYPE_QUARTERLY = "QUARTERLY" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceRun. + #: This constant has a value of "MONTHLY" + MAINTENANCE_SUBTYPE_MONTHLY = "MONTHLY" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceRun. + #: This constant has a value of "DAILY" + MAINTENANCE_SUBTYPE_DAILY = "DAILY" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceRun. + #: This constant has a value of "HARDWARE" + MAINTENANCE_SUBTYPE_HARDWARE = "HARDWARE" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceRun. + #: This constant has a value of "CRITICAL" + MAINTENANCE_SUBTYPE_CRITICAL = "CRITICAL" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceRun. + #: This constant has a value of "INFRA_UPDATE" + MAINTENANCE_SUBTYPE_INFRA_UPDATE = "INFRA_UPDATE" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceRun. + #: This constant has a value of "CPS_SERVICES_UPDATE" + MAINTENANCE_SUBTYPE_CPS_SERVICES_UPDATE = "CPS_SERVICES_UPDATE" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceRun. + #: This constant has a value of "CPS_VM_UPDATE" + MAINTENANCE_SUBTYPE_CPS_VM_UPDATE = "CPS_VM_UPDATE" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceRun. + #: This constant has a value of "SECURITY_MONTHLY" + MAINTENANCE_SUBTYPE_SECURITY_MONTHLY = "SECURITY_MONTHLY" + + #: A constant which can be used with the patching_mode property of a MaintenanceRun. + #: This constant has a value of "ROLLING" + PATCHING_MODE_ROLLING = "ROLLING" + + #: A constant which can be used with the patching_mode property of a MaintenanceRun. + #: This constant has a value of "NONROLLING" + PATCHING_MODE_NONROLLING = "NONROLLING" + + #: A constant which can be used with the patching_status property of a MaintenanceRun. + #: This constant has a value of "CREATING" + PATCHING_STATUS_CREATING = "CREATING" + + #: A constant which can be used with the patching_status property of a MaintenanceRun. + #: This constant has a value of "PATCHING" + PATCHING_STATUS_PATCHING = "PATCHING" + + #: A constant which can be used with the patching_status property of a MaintenanceRun. + #: This constant has a value of "WAITING" + PATCHING_STATUS_WAITING = "WAITING" + + #: A constant which can be used with the patching_status property of a MaintenanceRun. + #: This constant has a value of "SCHEDULED" + PATCHING_STATUS_SCHEDULED = "SCHEDULED" + + #: A constant which can be used with the patching_status property of a MaintenanceRun. + #: This constant has a value of "COMPLETE" + PATCHING_STATUS_COMPLETE = "COMPLETE" + + #: A constant which can be used with the patching_status property of a MaintenanceRun. + #: This constant has a value of "FAILED" + PATCHING_STATUS_FAILED = "FAILED" + + def __init__(self, **kwargs): + """ + Initializes a new MaintenanceRun object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this MaintenanceRun. + :type id: str + + :param compartment_id: + The value to assign to the compartment_id property of this MaintenanceRun. + :type compartment_id: str + + :param display_name: + The value to assign to the display_name property of this MaintenanceRun. + :type display_name: str + + :param description: + The value to assign to the description property of this MaintenanceRun. + :type description: str + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this MaintenanceRun. + Allowed values for this property are: "CREATING", "SCHEDULED", "IN_PROGRESS", "SUCCEEDED", "SKIPPED", "FAILED", "UPDATING", "DELETING", "DELETED", "CANCELED", "PARTIAL_SUCCESS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + :param lifecycle_details: + The value to assign to the lifecycle_details property of this MaintenanceRun. + :type lifecycle_details: str + + :param initial_scheduled_time: + The value to assign to the initial_scheduled_time property of this MaintenanceRun. + :type initial_scheduled_time: datetime + + :param time_scheduled: + The value to assign to the time_scheduled property of this MaintenanceRun. + :type time_scheduled: datetime + + :param time_started: + The value to assign to the time_started property of this MaintenanceRun. + :type time_started: datetime + + :param time_ended: + The value to assign to the time_ended property of this MaintenanceRun. + :type time_ended: datetime + + :param target_resource_type: + The value to assign to the target_resource_type property of this MaintenanceRun. + Allowed values for this property are: "DB_CC_INFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type target_resource_type: str + + :param infrastructure_id: + The value to assign to the infrastructure_id property of this MaintenanceRun. + :type infrastructure_id: str + + :param maintenance_type: + The value to assign to the maintenance_type property of this MaintenanceRun. + Allowed values for this property are: "PLANNED", "UNPLANNED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type maintenance_type: str + + :param patch_identifier: + The value to assign to the patch_identifier property of this MaintenanceRun. + :type patch_identifier: str + + :param maintenance_subtype: + The value to assign to the maintenance_subtype property of this MaintenanceRun. + Allowed values for this property are: "YEARLY", "HALFYEARLY", "QUARTERLY", "MONTHLY", "DAILY", "HARDWARE", "CRITICAL", "INFRA_UPDATE", "CPS_SERVICES_UPDATE", "CPS_VM_UPDATE", "SECURITY_MONTHLY", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type maintenance_subtype: str + + :param patching_mode: + The value to assign to the patching_mode property of this MaintenanceRun. + Allowed values for this property are: "ROLLING", "NONROLLING", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type patching_mode: str + + :param patch_failure_count: + The value to assign to the patch_failure_count property of this MaintenanceRun. + :type patch_failure_count: int + + :param source_version: + The value to assign to the source_version property of this MaintenanceRun. + :type source_version: str + + :param target_version: + The value to assign to the target_version property of this MaintenanceRun. + :type target_version: str + + :param is_custom_action_timeout_enabled: + The value to assign to the is_custom_action_timeout_enabled property of this MaintenanceRun. + :type is_custom_action_timeout_enabled: bool + + :param custom_action_timeout_in_mins: + The value to assign to the custom_action_timeout_in_mins property of this MaintenanceRun. + :type custom_action_timeout_in_mins: int + + :param patching_status: + The value to assign to the patching_status property of this MaintenanceRun. + Allowed values for this property are: "CREATING", "PATCHING", "WAITING", "SCHEDULED", "COMPLETE", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type patching_status: str + + :param patching_start_time: + The value to assign to the patching_start_time property of this MaintenanceRun. + :type patching_start_time: datetime + + :param patching_end_time: + The value to assign to the patching_end_time property of this MaintenanceRun. + :type patching_end_time: datetime + + :param estimated_patching_time: + The value to assign to the estimated_patching_time property of this MaintenanceRun. + :type estimated_patching_time: int + + :param current_patching_component: + The value to assign to the current_patching_component property of this MaintenanceRun. + :type current_patching_component: str + + :param estimated_component_patching_start_time: + The value to assign to the estimated_component_patching_start_time property of this MaintenanceRun. + :type estimated_component_patching_start_time: datetime + + :param system_tags: + The value to assign to the system_tags property of this MaintenanceRun. + :type system_tags: dict(str, dict(str, object)) + + :param defined_tags: + The value to assign to the defined_tags property of this MaintenanceRun. + :type defined_tags: dict(str, dict(str, object)) + + :param freeform_tags: + The value to assign to the freeform_tags property of this MaintenanceRun. + :type freeform_tags: dict(str, str) + + :param total_time_taken_in_mins: + The value to assign to the total_time_taken_in_mins property of this MaintenanceRun. + :type total_time_taken_in_mins: int + + """ + self.swagger_types = { + 'id': 'str', + 'compartment_id': 'str', + 'display_name': 'str', + 'description': 'str', + 'lifecycle_state': 'str', + 'lifecycle_details': 'str', + 'initial_scheduled_time': 'datetime', + 'time_scheduled': 'datetime', + 'time_started': 'datetime', + 'time_ended': 'datetime', + 'target_resource_type': 'str', + 'infrastructure_id': 'str', + 'maintenance_type': 'str', + 'patch_identifier': 'str', + 'maintenance_subtype': 'str', + 'patching_mode': 'str', + 'patch_failure_count': 'int', + 'source_version': 'str', + 'target_version': 'str', + 'is_custom_action_timeout_enabled': 'bool', + 'custom_action_timeout_in_mins': 'int', + 'patching_status': 'str', + 'patching_start_time': 'datetime', + 'patching_end_time': 'datetime', + 'estimated_patching_time': 'int', + 'current_patching_component': 'str', + 'estimated_component_patching_start_time': 'datetime', + 'system_tags': 'dict(str, dict(str, object))', + 'defined_tags': 'dict(str, dict(str, object))', + 'freeform_tags': 'dict(str, str)', + 'total_time_taken_in_mins': 'int' + } + self.attribute_map = { + 'id': 'id', + 'compartment_id': 'compartmentId', + 'display_name': 'displayName', + 'description': 'description', + 'lifecycle_state': 'lifecycleState', + 'lifecycle_details': 'lifecycleDetails', + 'initial_scheduled_time': 'initialScheduledTime', + 'time_scheduled': 'timeScheduled', + 'time_started': 'timeStarted', + 'time_ended': 'timeEnded', + 'target_resource_type': 'targetResourceType', + 'infrastructure_id': 'infrastructureId', + 'maintenance_type': 'maintenanceType', + 'patch_identifier': 'patchIdentifier', + 'maintenance_subtype': 'maintenanceSubtype', + 'patching_mode': 'patchingMode', + 'patch_failure_count': 'patchFailureCount', + 'source_version': 'sourceVersion', + 'target_version': 'targetVersion', + 'is_custom_action_timeout_enabled': 'isCustomActionTimeoutEnabled', + 'custom_action_timeout_in_mins': 'customActionTimeoutInMins', + 'patching_status': 'patchingStatus', + 'patching_start_time': 'patchingStartTime', + 'patching_end_time': 'patchingEndTime', + 'estimated_patching_time': 'estimatedPatchingTime', + 'current_patching_component': 'currentPatchingComponent', + 'estimated_component_patching_start_time': 'estimatedComponentPatchingStartTime', + 'system_tags': 'systemTags', + 'defined_tags': 'definedTags', + 'freeform_tags': 'freeformTags', + 'total_time_taken_in_mins': 'totalTimeTakenInMins' + } + self._id = None + self._compartment_id = None + self._display_name = None + self._description = None + self._lifecycle_state = None + self._lifecycle_details = None + self._initial_scheduled_time = None + self._time_scheduled = None + self._time_started = None + self._time_ended = None + self._target_resource_type = None + self._infrastructure_id = None + self._maintenance_type = None + self._patch_identifier = None + self._maintenance_subtype = None + self._patching_mode = None + self._patch_failure_count = None + self._source_version = None + self._target_version = None + self._is_custom_action_timeout_enabled = None + self._custom_action_timeout_in_mins = None + self._patching_status = None + self._patching_start_time = None + self._patching_end_time = None + self._estimated_patching_time = None + self._current_patching_component = None + self._estimated_component_patching_start_time = None + self._system_tags = None + self._defined_tags = None + self._freeform_tags = None + self._total_time_taken_in_mins = None + + @property + def id(self): + """ + **[Required]** Gets the id of this MaintenanceRun. + The `OCID`__ of the maintenance run. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this MaintenanceRun. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this MaintenanceRun. + The `OCID`__ of the maintenance run. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this MaintenanceRun. + :type: str + """ + self._id = id + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this MaintenanceRun. + The `OCID`__ of the compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this MaintenanceRun. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this MaintenanceRun. + The `OCID`__ of the compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this MaintenanceRun. + :type: str + """ + self._compartment_id = compartment_id + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this MaintenanceRun. + The user-friendly name for the maintenance run. + + + :return: The display_name of this MaintenanceRun. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this MaintenanceRun. + The user-friendly name for the maintenance run. + + + :param display_name: The display_name of this MaintenanceRun. + :type: str + """ + self._display_name = display_name + + @property + def description(self): + """ + Gets the description of this MaintenanceRun. + Description of the maintenance run. + + + :return: The description of this MaintenanceRun. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this MaintenanceRun. + Description of the maintenance run. + + + :param description: The description of this MaintenanceRun. + :type: str + """ + self._description = description + + @property + def lifecycle_state(self): + """ + **[Required]** Gets the lifecycle_state of this MaintenanceRun. + The current state of the maintenance run. + + Allowed values for this property are: "CREATING", "SCHEDULED", "IN_PROGRESS", "SUCCEEDED", "SKIPPED", "FAILED", "UPDATING", "DELETING", "DELETED", "CANCELED", "PARTIAL_SUCCESS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this MaintenanceRun. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this MaintenanceRun. + The current state of the maintenance run. + + + :param lifecycle_state: The lifecycle_state of this MaintenanceRun. + :type: str + """ + allowed_values = ["CREATING", "SCHEDULED", "IN_PROGRESS", "SUCCEEDED", "SKIPPED", "FAILED", "UPDATING", "DELETING", "DELETED", "CANCELED", "PARTIAL_SUCCESS"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + + @property + def lifecycle_details(self): + """ + Gets the lifecycle_details of this MaintenanceRun. + Additional information about the current lifecycle state. + + + :return: The lifecycle_details of this MaintenanceRun. + :rtype: str + """ + return self._lifecycle_details + + @lifecycle_details.setter + def lifecycle_details(self, lifecycle_details): + """ + Sets the lifecycle_details of this MaintenanceRun. + Additional information about the current lifecycle state. + + + :param lifecycle_details: The lifecycle_details of this MaintenanceRun. + :type: str + """ + self._lifecycle_details = lifecycle_details + + @property + def initial_scheduled_time(self): + """ + Gets the initial_scheduled_time of this MaintenanceRun. + The date and time the maintenance run was originally scheduled. + + + :return: The initial_scheduled_time of this MaintenanceRun. + :rtype: datetime + """ + return self._initial_scheduled_time + + @initial_scheduled_time.setter + def initial_scheduled_time(self, initial_scheduled_time): + """ + Sets the initial_scheduled_time of this MaintenanceRun. + The date and time the maintenance run was originally scheduled. + + + :param initial_scheduled_time: The initial_scheduled_time of this MaintenanceRun. + :type: datetime + """ + self._initial_scheduled_time = initial_scheduled_time + + @property + def time_scheduled(self): + """ + **[Required]** Gets the time_scheduled of this MaintenanceRun. + The date and time the maintenance run is scheduled to occur. + + + :return: The time_scheduled of this MaintenanceRun. + :rtype: datetime + """ + return self._time_scheduled + + @time_scheduled.setter + def time_scheduled(self, time_scheduled): + """ + Sets the time_scheduled of this MaintenanceRun. + The date and time the maintenance run is scheduled to occur. + + + :param time_scheduled: The time_scheduled of this MaintenanceRun. + :type: datetime + """ + self._time_scheduled = time_scheduled + + @property + def time_started(self): + """ + Gets the time_started of this MaintenanceRun. + The date and time the maintenance run starts. + + + :return: The time_started of this MaintenanceRun. + :rtype: datetime + """ + return self._time_started + + @time_started.setter + def time_started(self, time_started): + """ + Sets the time_started of this MaintenanceRun. + The date and time the maintenance run starts. + + + :param time_started: The time_started of this MaintenanceRun. + :type: datetime + """ + self._time_started = time_started + + @property + def time_ended(self): + """ + Gets the time_ended of this MaintenanceRun. + The date and time the maintenance run was completed. + + + :return: The time_ended of this MaintenanceRun. + :rtype: datetime + """ + return self._time_ended + + @time_ended.setter + def time_ended(self, time_ended): + """ + Sets the time_ended of this MaintenanceRun. + The date and time the maintenance run was completed. + + + :param time_ended: The time_ended of this MaintenanceRun. + :type: datetime + """ + self._time_ended = time_ended + + @property + def target_resource_type(self): + """ + Gets the target_resource_type of this MaintenanceRun. + The type of the target resource on which the maintenance run occurs. + + Allowed values for this property are: "DB_CC_INFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The target_resource_type of this MaintenanceRun. + :rtype: str + """ + return self._target_resource_type + + @target_resource_type.setter + def target_resource_type(self, target_resource_type): + """ + Sets the target_resource_type of this MaintenanceRun. + The type of the target resource on which the maintenance run occurs. + + + :param target_resource_type: The target_resource_type of this MaintenanceRun. + :type: str + """ + allowed_values = ["DB_CC_INFRASTRUCTURE"] + if not value_allowed_none_or_none_sentinel(target_resource_type, allowed_values): + target_resource_type = 'UNKNOWN_ENUM_VALUE' + self._target_resource_type = target_resource_type + + @property + def infrastructure_id(self): + """ + Gets the infrastructure_id of this MaintenanceRun. + The `OCID`__ of the Database Infrastructure on which the maintenance run execution occurs. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The infrastructure_id of this MaintenanceRun. + :rtype: str + """ + return self._infrastructure_id + + @infrastructure_id.setter + def infrastructure_id(self, infrastructure_id): + """ + Sets the infrastructure_id of this MaintenanceRun. + The `OCID`__ of the Database Infrastructure on which the maintenance run execution occurs. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param infrastructure_id: The infrastructure_id of this MaintenanceRun. + :type: str + """ + self._infrastructure_id = infrastructure_id + + @property + def maintenance_type(self): + """ + Gets the maintenance_type of this MaintenanceRun. + Maintenance type. + + Allowed values for this property are: "PLANNED", "UNPLANNED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The maintenance_type of this MaintenanceRun. + :rtype: str + """ + return self._maintenance_type + + @maintenance_type.setter + def maintenance_type(self, maintenance_type): + """ + Sets the maintenance_type of this MaintenanceRun. + Maintenance type. + + + :param maintenance_type: The maintenance_type of this MaintenanceRun. + :type: str + """ + allowed_values = ["PLANNED", "UNPLANNED"] + if not value_allowed_none_or_none_sentinel(maintenance_type, allowed_values): + maintenance_type = 'UNKNOWN_ENUM_VALUE' + self._maintenance_type = maintenance_type + + @property + def patch_identifier(self): + """ + Gets the patch_identifier of this MaintenanceRun. + The unique identifier of the patch. The identifier string includes the patch type and the version of the Database Infrastructure. + + + :return: The patch_identifier of this MaintenanceRun. + :rtype: str + """ + return self._patch_identifier + + @patch_identifier.setter + def patch_identifier(self, patch_identifier): + """ + Sets the patch_identifier of this MaintenanceRun. + The unique identifier of the patch. The identifier string includes the patch type and the version of the Database Infrastructure. + + + :param patch_identifier: The patch_identifier of this MaintenanceRun. + :type: str + """ + self._patch_identifier = patch_identifier + + @property + def maintenance_subtype(self): + """ + Gets the maintenance_subtype of this MaintenanceRun. + Maintenance run sub-type. + + Allowed values for this property are: "YEARLY", "HALFYEARLY", "QUARTERLY", "MONTHLY", "DAILY", "HARDWARE", "CRITICAL", "INFRA_UPDATE", "CPS_SERVICES_UPDATE", "CPS_VM_UPDATE", "SECURITY_MONTHLY", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The maintenance_subtype of this MaintenanceRun. + :rtype: str + """ + return self._maintenance_subtype + + @maintenance_subtype.setter + def maintenance_subtype(self, maintenance_subtype): + """ + Sets the maintenance_subtype of this MaintenanceRun. + Maintenance run sub-type. + + + :param maintenance_subtype: The maintenance_subtype of this MaintenanceRun. + :type: str + """ + allowed_values = ["YEARLY", "HALFYEARLY", "QUARTERLY", "MONTHLY", "DAILY", "HARDWARE", "CRITICAL", "INFRA_UPDATE", "CPS_SERVICES_UPDATE", "CPS_VM_UPDATE", "SECURITY_MONTHLY"] + if not value_allowed_none_or_none_sentinel(maintenance_subtype, allowed_values): + maintenance_subtype = 'UNKNOWN_ENUM_VALUE' + self._maintenance_subtype = maintenance_subtype + + @property + def patching_mode(self): + """ + Gets the patching_mode of this MaintenanceRun. + Database Infrastructure patching mode, either \"ROLLING\" or \"NONROLLING\". Default value is ROLLING. + + Allowed values for this property are: "ROLLING", "NONROLLING", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The patching_mode of this MaintenanceRun. + :rtype: str + """ + return self._patching_mode + + @patching_mode.setter + def patching_mode(self, patching_mode): + """ + Sets the patching_mode of this MaintenanceRun. + Database Infrastructure patching mode, either \"ROLLING\" or \"NONROLLING\". Default value is ROLLING. + + + :param patching_mode: The patching_mode of this MaintenanceRun. + :type: str + """ + allowed_values = ["ROLLING", "NONROLLING"] + if not value_allowed_none_or_none_sentinel(patching_mode, allowed_values): + patching_mode = 'UNKNOWN_ENUM_VALUE' + self._patching_mode = patching_mode + + @property + def patch_failure_count(self): + """ + Gets the patch_failure_count of this MaintenanceRun. + Contain the patch failure count. + + + :return: The patch_failure_count of this MaintenanceRun. + :rtype: int + """ + return self._patch_failure_count + + @patch_failure_count.setter + def patch_failure_count(self, patch_failure_count): + """ + Sets the patch_failure_count of this MaintenanceRun. + Contain the patch failure count. + + + :param patch_failure_count: The patch_failure_count of this MaintenanceRun. + :type: int + """ + self._patch_failure_count = patch_failure_count + + @property + def source_version(self): + """ + Gets the source_version of this MaintenanceRun. + The source software version for the Oracle infrastructure. + + + :return: The source_version of this MaintenanceRun. + :rtype: str + """ + return self._source_version + + @source_version.setter + def source_version(self, source_version): + """ + Sets the source_version of this MaintenanceRun. + The source software version for the Oracle infrastructure. + + + :param source_version: The source_version of this MaintenanceRun. + :type: str + """ + self._source_version = source_version + + @property + def target_version(self): + """ + Gets the target_version of this MaintenanceRun. + The target software version for the Database Infrastructure patching operation. + + + :return: The target_version of this MaintenanceRun. + :rtype: str + """ + return self._target_version + + @target_version.setter + def target_version(self, target_version): + """ + Sets the target_version of this MaintenanceRun. + The target software version for the Database Infrastructure patching operation. + + + :param target_version: The target_version of this MaintenanceRun. + :type: str + """ + self._target_version = target_version + + @property + def is_custom_action_timeout_enabled(self): + """ + Gets the is_custom_action_timeout_enabled of this MaintenanceRun. + If true, enables the configuration of a custom action timeout (waiting period) between compute servers patching operations. + + + :return: The is_custom_action_timeout_enabled of this MaintenanceRun. + :rtype: bool + """ + return self._is_custom_action_timeout_enabled + + @is_custom_action_timeout_enabled.setter + def is_custom_action_timeout_enabled(self, is_custom_action_timeout_enabled): + """ + Sets the is_custom_action_timeout_enabled of this MaintenanceRun. + If true, enables the configuration of a custom action timeout (waiting period) between compute servers patching operations. + + + :param is_custom_action_timeout_enabled: The is_custom_action_timeout_enabled of this MaintenanceRun. + :type: bool + """ + self._is_custom_action_timeout_enabled = is_custom_action_timeout_enabled + + @property + def custom_action_timeout_in_mins(self): + """ + Gets the custom_action_timeout_in_mins of this MaintenanceRun. + Determines the amount of time the system will wait before the start of each compute server patching operation. + Supported values are 15 to 120 minutes. + + + :return: The custom_action_timeout_in_mins of this MaintenanceRun. + :rtype: int + """ + return self._custom_action_timeout_in_mins + + @custom_action_timeout_in_mins.setter + def custom_action_timeout_in_mins(self, custom_action_timeout_in_mins): + """ + Sets the custom_action_timeout_in_mins of this MaintenanceRun. + Determines the amount of time the system will wait before the start of each compute server patching operation. + Supported values are 15 to 120 minutes. + + + :param custom_action_timeout_in_mins: The custom_action_timeout_in_mins of this MaintenanceRun. + :type: int + """ + self._custom_action_timeout_in_mins = custom_action_timeout_in_mins + + @property + def patching_status(self): + """ + Gets the patching_status of this MaintenanceRun. + The status of the patching operation. + + Allowed values for this property are: "CREATING", "PATCHING", "WAITING", "SCHEDULED", "COMPLETE", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The patching_status of this MaintenanceRun. + :rtype: str + """ + return self._patching_status + + @patching_status.setter + def patching_status(self, patching_status): + """ + Sets the patching_status of this MaintenanceRun. + The status of the patching operation. + + + :param patching_status: The patching_status of this MaintenanceRun. + :type: str + """ + allowed_values = ["CREATING", "PATCHING", "WAITING", "SCHEDULED", "COMPLETE", "FAILED"] + if not value_allowed_none_or_none_sentinel(patching_status, allowed_values): + patching_status = 'UNKNOWN_ENUM_VALUE' + self._patching_status = patching_status + + @property + def patching_start_time(self): + """ + Gets the patching_start_time of this MaintenanceRun. + The time when the patching operation started. + + + :return: The patching_start_time of this MaintenanceRun. + :rtype: datetime + """ + return self._patching_start_time + + @patching_start_time.setter + def patching_start_time(self, patching_start_time): + """ + Sets the patching_start_time of this MaintenanceRun. + The time when the patching operation started. + + + :param patching_start_time: The patching_start_time of this MaintenanceRun. + :type: datetime + """ + self._patching_start_time = patching_start_time + + @property + def patching_end_time(self): + """ + Gets the patching_end_time of this MaintenanceRun. + The time when the patching operation ended. + + + :return: The patching_end_time of this MaintenanceRun. + :rtype: datetime + """ + return self._patching_end_time + + @patching_end_time.setter + def patching_end_time(self, patching_end_time): + """ + Sets the patching_end_time of this MaintenanceRun. + The time when the patching operation ended. + + + :param patching_end_time: The patching_end_time of this MaintenanceRun. + :type: datetime + """ + self._patching_end_time = patching_end_time + + @property + def estimated_patching_time(self): + """ + Gets the estimated_patching_time of this MaintenanceRun. + The estimated total time required in minutes for all patching operations (compute servers, storage). + + + :return: The estimated_patching_time of this MaintenanceRun. + :rtype: int + """ + return self._estimated_patching_time + + @estimated_patching_time.setter + def estimated_patching_time(self, estimated_patching_time): + """ + Sets the estimated_patching_time of this MaintenanceRun. + The estimated total time required in minutes for all patching operations (compute servers, storage). + + + :param estimated_patching_time: The estimated_patching_time of this MaintenanceRun. + :type: int + """ + self._estimated_patching_time = estimated_patching_time + + @property + def current_patching_component(self): + """ + Gets the current_patching_component of this MaintenanceRun. + The name of the current infrastructure component that is getting patched. + + + :return: The current_patching_component of this MaintenanceRun. + :rtype: str + """ + return self._current_patching_component + + @current_patching_component.setter + def current_patching_component(self, current_patching_component): + """ + Sets the current_patching_component of this MaintenanceRun. + The name of the current infrastructure component that is getting patched. + + + :param current_patching_component: The current_patching_component of this MaintenanceRun. + :type: str + """ + self._current_patching_component = current_patching_component + + @property + def estimated_component_patching_start_time(self): + """ + Gets the estimated_component_patching_start_time of this MaintenanceRun. + The estimated start time of the next infrastructure component patching operation. + + + :return: The estimated_component_patching_start_time of this MaintenanceRun. + :rtype: datetime + """ + return self._estimated_component_patching_start_time + + @estimated_component_patching_start_time.setter + def estimated_component_patching_start_time(self, estimated_component_patching_start_time): + """ + Sets the estimated_component_patching_start_time of this MaintenanceRun. + The estimated start time of the next infrastructure component patching operation. + + + :param estimated_component_patching_start_time: The estimated_component_patching_start_time of this MaintenanceRun. + :type: datetime + """ + self._estimated_component_patching_start_time = estimated_component_patching_start_time + + @property + def system_tags(self): + """ + Gets the system_tags of this MaintenanceRun. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :return: The system_tags of this MaintenanceRun. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this MaintenanceRun. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :param system_tags: The system_tags of this MaintenanceRun. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this MaintenanceRun. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this MaintenanceRun. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this MaintenanceRun. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this MaintenanceRun. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this MaintenanceRun. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this MaintenanceRun. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this MaintenanceRun. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this MaintenanceRun. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def total_time_taken_in_mins(self): + """ + Gets the total_time_taken_in_mins of this MaintenanceRun. + The total time taken by corresponding resource activity in minutes. + + + :return: The total_time_taken_in_mins of this MaintenanceRun. + :rtype: int + """ + return self._total_time_taken_in_mins + + @total_time_taken_in_mins.setter + def total_time_taken_in_mins(self, total_time_taken_in_mins): + """ + Sets the total_time_taken_in_mins of this MaintenanceRun. + The total time taken by corresponding resource activity in minutes. + + + :param total_time_taken_in_mins: The total_time_taken_in_mins of this MaintenanceRun. + :type: int + """ + self._total_time_taken_in_mins = total_time_taken_in_mins + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/maintenance_run_collection.py b/src/oci/datacc/models/maintenance_run_collection.py new file mode 100644 index 0000000000..8008a1def2 --- /dev/null +++ b/src/oci/datacc/models/maintenance_run_collection.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class MaintenanceRunCollection(object): + """ + A collection of maintenance runs. + """ + + def __init__(self, **kwargs): + """ + Initializes a new MaintenanceRunCollection object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this MaintenanceRunCollection. + :type items: list[oci.datacc.models.MaintenanceRunSummary] + + """ + self.swagger_types = { + 'items': 'list[MaintenanceRunSummary]' + } + self.attribute_map = { + 'items': 'items' + } + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this MaintenanceRunCollection. + A list of maintenance runs. + + + :return: The items of this MaintenanceRunCollection. + :rtype: list[oci.datacc.models.MaintenanceRunSummary] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this MaintenanceRunCollection. + A list of maintenance runs. + + + :param items: The items of this MaintenanceRunCollection. + :type: list[oci.datacc.models.MaintenanceRunSummary] + """ + self._items = items + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/maintenance_run_summary.py b/src/oci/datacc/models/maintenance_run_summary.py new file mode 100644 index 0000000000..14a65e08c2 --- /dev/null +++ b/src/oci/datacc/models/maintenance_run_summary.py @@ -0,0 +1,1200 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class MaintenanceRunSummary(object): + """ + Summary of a maintenance run. + """ + + #: A constant which can be used with the lifecycle_state property of a MaintenanceRunSummary. + #: This constant has a value of "CREATING" + LIFECYCLE_STATE_CREATING = "CREATING" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceRunSummary. + #: This constant has a value of "SCHEDULED" + LIFECYCLE_STATE_SCHEDULED = "SCHEDULED" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceRunSummary. + #: This constant has a value of "IN_PROGRESS" + LIFECYCLE_STATE_IN_PROGRESS = "IN_PROGRESS" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceRunSummary. + #: This constant has a value of "SUCCEEDED" + LIFECYCLE_STATE_SUCCEEDED = "SUCCEEDED" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceRunSummary. + #: This constant has a value of "SKIPPED" + LIFECYCLE_STATE_SKIPPED = "SKIPPED" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceRunSummary. + #: This constant has a value of "FAILED" + LIFECYCLE_STATE_FAILED = "FAILED" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceRunSummary. + #: This constant has a value of "UPDATING" + LIFECYCLE_STATE_UPDATING = "UPDATING" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceRunSummary. + #: This constant has a value of "DELETING" + LIFECYCLE_STATE_DELETING = "DELETING" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceRunSummary. + #: This constant has a value of "DELETED" + LIFECYCLE_STATE_DELETED = "DELETED" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceRunSummary. + #: This constant has a value of "CANCELED" + LIFECYCLE_STATE_CANCELED = "CANCELED" + + #: A constant which can be used with the lifecycle_state property of a MaintenanceRunSummary. + #: This constant has a value of "PARTIAL_SUCCESS" + LIFECYCLE_STATE_PARTIAL_SUCCESS = "PARTIAL_SUCCESS" + + #: A constant which can be used with the target_resource_type property of a MaintenanceRunSummary. + #: This constant has a value of "DB_CC_INFRASTRUCTURE" + TARGET_RESOURCE_TYPE_DB_CC_INFRASTRUCTURE = "DB_CC_INFRASTRUCTURE" + + #: A constant which can be used with the maintenance_type property of a MaintenanceRunSummary. + #: This constant has a value of "PLANNED" + MAINTENANCE_TYPE_PLANNED = "PLANNED" + + #: A constant which can be used with the maintenance_type property of a MaintenanceRunSummary. + #: This constant has a value of "UNPLANNED" + MAINTENANCE_TYPE_UNPLANNED = "UNPLANNED" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceRunSummary. + #: This constant has a value of "YEARLY" + MAINTENANCE_SUBTYPE_YEARLY = "YEARLY" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceRunSummary. + #: This constant has a value of "HALFYEARLY" + MAINTENANCE_SUBTYPE_HALFYEARLY = "HALFYEARLY" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceRunSummary. + #: This constant has a value of "QUARTERLY" + MAINTENANCE_SUBTYPE_QUARTERLY = "QUARTERLY" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceRunSummary. + #: This constant has a value of "MONTHLY" + MAINTENANCE_SUBTYPE_MONTHLY = "MONTHLY" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceRunSummary. + #: This constant has a value of "DAILY" + MAINTENANCE_SUBTYPE_DAILY = "DAILY" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceRunSummary. + #: This constant has a value of "HARDWARE" + MAINTENANCE_SUBTYPE_HARDWARE = "HARDWARE" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceRunSummary. + #: This constant has a value of "CRITICAL" + MAINTENANCE_SUBTYPE_CRITICAL = "CRITICAL" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceRunSummary. + #: This constant has a value of "INFRA_UPDATE" + MAINTENANCE_SUBTYPE_INFRA_UPDATE = "INFRA_UPDATE" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceRunSummary. + #: This constant has a value of "CPS_SERVICES_UPDATE" + MAINTENANCE_SUBTYPE_CPS_SERVICES_UPDATE = "CPS_SERVICES_UPDATE" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceRunSummary. + #: This constant has a value of "CPS_VM_UPDATE" + MAINTENANCE_SUBTYPE_CPS_VM_UPDATE = "CPS_VM_UPDATE" + + #: A constant which can be used with the maintenance_subtype property of a MaintenanceRunSummary. + #: This constant has a value of "SECURITY_MONTHLY" + MAINTENANCE_SUBTYPE_SECURITY_MONTHLY = "SECURITY_MONTHLY" + + #: A constant which can be used with the patching_mode property of a MaintenanceRunSummary. + #: This constant has a value of "ROLLING" + PATCHING_MODE_ROLLING = "ROLLING" + + #: A constant which can be used with the patching_mode property of a MaintenanceRunSummary. + #: This constant has a value of "NONROLLING" + PATCHING_MODE_NONROLLING = "NONROLLING" + + #: A constant which can be used with the patching_status property of a MaintenanceRunSummary. + #: This constant has a value of "CREATING" + PATCHING_STATUS_CREATING = "CREATING" + + #: A constant which can be used with the patching_status property of a MaintenanceRunSummary. + #: This constant has a value of "PATCHING" + PATCHING_STATUS_PATCHING = "PATCHING" + + #: A constant which can be used with the patching_status property of a MaintenanceRunSummary. + #: This constant has a value of "WAITING" + PATCHING_STATUS_WAITING = "WAITING" + + #: A constant which can be used with the patching_status property of a MaintenanceRunSummary. + #: This constant has a value of "SCHEDULED" + PATCHING_STATUS_SCHEDULED = "SCHEDULED" + + #: A constant which can be used with the patching_status property of a MaintenanceRunSummary. + #: This constant has a value of "COMPLETE" + PATCHING_STATUS_COMPLETE = "COMPLETE" + + #: A constant which can be used with the patching_status property of a MaintenanceRunSummary. + #: This constant has a value of "FAILED" + PATCHING_STATUS_FAILED = "FAILED" + + def __init__(self, **kwargs): + """ + Initializes a new MaintenanceRunSummary object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this MaintenanceRunSummary. + :type id: str + + :param compartment_id: + The value to assign to the compartment_id property of this MaintenanceRunSummary. + :type compartment_id: str + + :param display_name: + The value to assign to the display_name property of this MaintenanceRunSummary. + :type display_name: str + + :param description: + The value to assign to the description property of this MaintenanceRunSummary. + :type description: str + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this MaintenanceRunSummary. + Allowed values for this property are: "CREATING", "SCHEDULED", "IN_PROGRESS", "SUCCEEDED", "SKIPPED", "FAILED", "UPDATING", "DELETING", "DELETED", "CANCELED", "PARTIAL_SUCCESS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + :param lifecycle_details: + The value to assign to the lifecycle_details property of this MaintenanceRunSummary. + :type lifecycle_details: str + + :param initial_scheduled_time: + The value to assign to the initial_scheduled_time property of this MaintenanceRunSummary. + :type initial_scheduled_time: datetime + + :param time_scheduled: + The value to assign to the time_scheduled property of this MaintenanceRunSummary. + :type time_scheduled: datetime + + :param time_started: + The value to assign to the time_started property of this MaintenanceRunSummary. + :type time_started: datetime + + :param time_ended: + The value to assign to the time_ended property of this MaintenanceRunSummary. + :type time_ended: datetime + + :param target_resource_type: + The value to assign to the target_resource_type property of this MaintenanceRunSummary. + Allowed values for this property are: "DB_CC_INFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type target_resource_type: str + + :param infrastructure_id: + The value to assign to the infrastructure_id property of this MaintenanceRunSummary. + :type infrastructure_id: str + + :param maintenance_type: + The value to assign to the maintenance_type property of this MaintenanceRunSummary. + Allowed values for this property are: "PLANNED", "UNPLANNED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type maintenance_type: str + + :param patch_identifier: + The value to assign to the patch_identifier property of this MaintenanceRunSummary. + :type patch_identifier: str + + :param maintenance_subtype: + The value to assign to the maintenance_subtype property of this MaintenanceRunSummary. + Allowed values for this property are: "YEARLY", "HALFYEARLY", "QUARTERLY", "MONTHLY", "DAILY", "HARDWARE", "CRITICAL", "INFRA_UPDATE", "CPS_SERVICES_UPDATE", "CPS_VM_UPDATE", "SECURITY_MONTHLY", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type maintenance_subtype: str + + :param patching_mode: + The value to assign to the patching_mode property of this MaintenanceRunSummary. + Allowed values for this property are: "ROLLING", "NONROLLING", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type patching_mode: str + + :param patch_failure_count: + The value to assign to the patch_failure_count property of this MaintenanceRunSummary. + :type patch_failure_count: int + + :param source_version: + The value to assign to the source_version property of this MaintenanceRunSummary. + :type source_version: str + + :param target_version: + The value to assign to the target_version property of this MaintenanceRunSummary. + :type target_version: str + + :param is_custom_action_timeout_enabled: + The value to assign to the is_custom_action_timeout_enabled property of this MaintenanceRunSummary. + :type is_custom_action_timeout_enabled: bool + + :param custom_action_timeout_in_mins: + The value to assign to the custom_action_timeout_in_mins property of this MaintenanceRunSummary. + :type custom_action_timeout_in_mins: int + + :param patching_status: + The value to assign to the patching_status property of this MaintenanceRunSummary. + Allowed values for this property are: "CREATING", "PATCHING", "WAITING", "SCHEDULED", "COMPLETE", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type patching_status: str + + :param patching_start_time: + The value to assign to the patching_start_time property of this MaintenanceRunSummary. + :type patching_start_time: datetime + + :param patching_end_time: + The value to assign to the patching_end_time property of this MaintenanceRunSummary. + :type patching_end_time: datetime + + :param estimated_patching_time: + The value to assign to the estimated_patching_time property of this MaintenanceRunSummary. + :type estimated_patching_time: int + + :param current_patching_component: + The value to assign to the current_patching_component property of this MaintenanceRunSummary. + :type current_patching_component: str + + :param estimated_component_patching_start_time: + The value to assign to the estimated_component_patching_start_time property of this MaintenanceRunSummary. + :type estimated_component_patching_start_time: datetime + + :param system_tags: + The value to assign to the system_tags property of this MaintenanceRunSummary. + :type system_tags: dict(str, dict(str, object)) + + :param defined_tags: + The value to assign to the defined_tags property of this MaintenanceRunSummary. + :type defined_tags: dict(str, dict(str, object)) + + :param freeform_tags: + The value to assign to the freeform_tags property of this MaintenanceRunSummary. + :type freeform_tags: dict(str, str) + + :param total_time_taken_in_mins: + The value to assign to the total_time_taken_in_mins property of this MaintenanceRunSummary. + :type total_time_taken_in_mins: int + + """ + self.swagger_types = { + 'id': 'str', + 'compartment_id': 'str', + 'display_name': 'str', + 'description': 'str', + 'lifecycle_state': 'str', + 'lifecycle_details': 'str', + 'initial_scheduled_time': 'datetime', + 'time_scheduled': 'datetime', + 'time_started': 'datetime', + 'time_ended': 'datetime', + 'target_resource_type': 'str', + 'infrastructure_id': 'str', + 'maintenance_type': 'str', + 'patch_identifier': 'str', + 'maintenance_subtype': 'str', + 'patching_mode': 'str', + 'patch_failure_count': 'int', + 'source_version': 'str', + 'target_version': 'str', + 'is_custom_action_timeout_enabled': 'bool', + 'custom_action_timeout_in_mins': 'int', + 'patching_status': 'str', + 'patching_start_time': 'datetime', + 'patching_end_time': 'datetime', + 'estimated_patching_time': 'int', + 'current_patching_component': 'str', + 'estimated_component_patching_start_time': 'datetime', + 'system_tags': 'dict(str, dict(str, object))', + 'defined_tags': 'dict(str, dict(str, object))', + 'freeform_tags': 'dict(str, str)', + 'total_time_taken_in_mins': 'int' + } + self.attribute_map = { + 'id': 'id', + 'compartment_id': 'compartmentId', + 'display_name': 'displayName', + 'description': 'description', + 'lifecycle_state': 'lifecycleState', + 'lifecycle_details': 'lifecycleDetails', + 'initial_scheduled_time': 'initialScheduledTime', + 'time_scheduled': 'timeScheduled', + 'time_started': 'timeStarted', + 'time_ended': 'timeEnded', + 'target_resource_type': 'targetResourceType', + 'infrastructure_id': 'infrastructureId', + 'maintenance_type': 'maintenanceType', + 'patch_identifier': 'patchIdentifier', + 'maintenance_subtype': 'maintenanceSubtype', + 'patching_mode': 'patchingMode', + 'patch_failure_count': 'patchFailureCount', + 'source_version': 'sourceVersion', + 'target_version': 'targetVersion', + 'is_custom_action_timeout_enabled': 'isCustomActionTimeoutEnabled', + 'custom_action_timeout_in_mins': 'customActionTimeoutInMins', + 'patching_status': 'patchingStatus', + 'patching_start_time': 'patchingStartTime', + 'patching_end_time': 'patchingEndTime', + 'estimated_patching_time': 'estimatedPatchingTime', + 'current_patching_component': 'currentPatchingComponent', + 'estimated_component_patching_start_time': 'estimatedComponentPatchingStartTime', + 'system_tags': 'systemTags', + 'defined_tags': 'definedTags', + 'freeform_tags': 'freeformTags', + 'total_time_taken_in_mins': 'totalTimeTakenInMins' + } + self._id = None + self._compartment_id = None + self._display_name = None + self._description = None + self._lifecycle_state = None + self._lifecycle_details = None + self._initial_scheduled_time = None + self._time_scheduled = None + self._time_started = None + self._time_ended = None + self._target_resource_type = None + self._infrastructure_id = None + self._maintenance_type = None + self._patch_identifier = None + self._maintenance_subtype = None + self._patching_mode = None + self._patch_failure_count = None + self._source_version = None + self._target_version = None + self._is_custom_action_timeout_enabled = None + self._custom_action_timeout_in_mins = None + self._patching_status = None + self._patching_start_time = None + self._patching_end_time = None + self._estimated_patching_time = None + self._current_patching_component = None + self._estimated_component_patching_start_time = None + self._system_tags = None + self._defined_tags = None + self._freeform_tags = None + self._total_time_taken_in_mins = None + + @property + def id(self): + """ + **[Required]** Gets the id of this MaintenanceRunSummary. + The `OCID`__ of the maintenance run. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this MaintenanceRunSummary. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this MaintenanceRunSummary. + The `OCID`__ of the maintenance run. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this MaintenanceRunSummary. + :type: str + """ + self._id = id + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this MaintenanceRunSummary. + The `OCID`__ of the compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this MaintenanceRunSummary. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this MaintenanceRunSummary. + The `OCID`__ of the compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this MaintenanceRunSummary. + :type: str + """ + self._compartment_id = compartment_id + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this MaintenanceRunSummary. + The user-friendly name for the maintenance run. + + + :return: The display_name of this MaintenanceRunSummary. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this MaintenanceRunSummary. + The user-friendly name for the maintenance run. + + + :param display_name: The display_name of this MaintenanceRunSummary. + :type: str + """ + self._display_name = display_name + + @property + def description(self): + """ + Gets the description of this MaintenanceRunSummary. + Description of the maintenance run. + + + :return: The description of this MaintenanceRunSummary. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this MaintenanceRunSummary. + Description of the maintenance run. + + + :param description: The description of this MaintenanceRunSummary. + :type: str + """ + self._description = description + + @property + def lifecycle_state(self): + """ + **[Required]** Gets the lifecycle_state of this MaintenanceRunSummary. + The current state of the maintenance run. + + Allowed values for this property are: "CREATING", "SCHEDULED", "IN_PROGRESS", "SUCCEEDED", "SKIPPED", "FAILED", "UPDATING", "DELETING", "DELETED", "CANCELED", "PARTIAL_SUCCESS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this MaintenanceRunSummary. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this MaintenanceRunSummary. + The current state of the maintenance run. + + + :param lifecycle_state: The lifecycle_state of this MaintenanceRunSummary. + :type: str + """ + allowed_values = ["CREATING", "SCHEDULED", "IN_PROGRESS", "SUCCEEDED", "SKIPPED", "FAILED", "UPDATING", "DELETING", "DELETED", "CANCELED", "PARTIAL_SUCCESS"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + + @property + def lifecycle_details(self): + """ + Gets the lifecycle_details of this MaintenanceRunSummary. + Additional information about the current lifecycle state. + + + :return: The lifecycle_details of this MaintenanceRunSummary. + :rtype: str + """ + return self._lifecycle_details + + @lifecycle_details.setter + def lifecycle_details(self, lifecycle_details): + """ + Sets the lifecycle_details of this MaintenanceRunSummary. + Additional information about the current lifecycle state. + + + :param lifecycle_details: The lifecycle_details of this MaintenanceRunSummary. + :type: str + """ + self._lifecycle_details = lifecycle_details + + @property + def initial_scheduled_time(self): + """ + Gets the initial_scheduled_time of this MaintenanceRunSummary. + The date and time the maintenance run was originally scheduled. + + + :return: The initial_scheduled_time of this MaintenanceRunSummary. + :rtype: datetime + """ + return self._initial_scheduled_time + + @initial_scheduled_time.setter + def initial_scheduled_time(self, initial_scheduled_time): + """ + Sets the initial_scheduled_time of this MaintenanceRunSummary. + The date and time the maintenance run was originally scheduled. + + + :param initial_scheduled_time: The initial_scheduled_time of this MaintenanceRunSummary. + :type: datetime + """ + self._initial_scheduled_time = initial_scheduled_time + + @property + def time_scheduled(self): + """ + **[Required]** Gets the time_scheduled of this MaintenanceRunSummary. + The date and time the maintenance run is scheduled to occur. + + + :return: The time_scheduled of this MaintenanceRunSummary. + :rtype: datetime + """ + return self._time_scheduled + + @time_scheduled.setter + def time_scheduled(self, time_scheduled): + """ + Sets the time_scheduled of this MaintenanceRunSummary. + The date and time the maintenance run is scheduled to occur. + + + :param time_scheduled: The time_scheduled of this MaintenanceRunSummary. + :type: datetime + """ + self._time_scheduled = time_scheduled + + @property + def time_started(self): + """ + Gets the time_started of this MaintenanceRunSummary. + The date and time the maintenance run starts. + + + :return: The time_started of this MaintenanceRunSummary. + :rtype: datetime + """ + return self._time_started + + @time_started.setter + def time_started(self, time_started): + """ + Sets the time_started of this MaintenanceRunSummary. + The date and time the maintenance run starts. + + + :param time_started: The time_started of this MaintenanceRunSummary. + :type: datetime + """ + self._time_started = time_started + + @property + def time_ended(self): + """ + Gets the time_ended of this MaintenanceRunSummary. + The date and time the maintenance run was completed. + + + :return: The time_ended of this MaintenanceRunSummary. + :rtype: datetime + """ + return self._time_ended + + @time_ended.setter + def time_ended(self, time_ended): + """ + Sets the time_ended of this MaintenanceRunSummary. + The date and time the maintenance run was completed. + + + :param time_ended: The time_ended of this MaintenanceRunSummary. + :type: datetime + """ + self._time_ended = time_ended + + @property + def target_resource_type(self): + """ + Gets the target_resource_type of this MaintenanceRunSummary. + The type of the target resource on which the maintenance run occurs. + + Allowed values for this property are: "DB_CC_INFRASTRUCTURE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The target_resource_type of this MaintenanceRunSummary. + :rtype: str + """ + return self._target_resource_type + + @target_resource_type.setter + def target_resource_type(self, target_resource_type): + """ + Sets the target_resource_type of this MaintenanceRunSummary. + The type of the target resource on which the maintenance run occurs. + + + :param target_resource_type: The target_resource_type of this MaintenanceRunSummary. + :type: str + """ + allowed_values = ["DB_CC_INFRASTRUCTURE"] + if not value_allowed_none_or_none_sentinel(target_resource_type, allowed_values): + target_resource_type = 'UNKNOWN_ENUM_VALUE' + self._target_resource_type = target_resource_type + + @property + def infrastructure_id(self): + """ + Gets the infrastructure_id of this MaintenanceRunSummary. + The `OCID`__ of the Database Infrastructure on which the maintenance run execution occurs. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The infrastructure_id of this MaintenanceRunSummary. + :rtype: str + """ + return self._infrastructure_id + + @infrastructure_id.setter + def infrastructure_id(self, infrastructure_id): + """ + Sets the infrastructure_id of this MaintenanceRunSummary. + The `OCID`__ of the Database Infrastructure on which the maintenance run execution occurs. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param infrastructure_id: The infrastructure_id of this MaintenanceRunSummary. + :type: str + """ + self._infrastructure_id = infrastructure_id + + @property + def maintenance_type(self): + """ + Gets the maintenance_type of this MaintenanceRunSummary. + Maintenance type. + + Allowed values for this property are: "PLANNED", "UNPLANNED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The maintenance_type of this MaintenanceRunSummary. + :rtype: str + """ + return self._maintenance_type + + @maintenance_type.setter + def maintenance_type(self, maintenance_type): + """ + Sets the maintenance_type of this MaintenanceRunSummary. + Maintenance type. + + + :param maintenance_type: The maintenance_type of this MaintenanceRunSummary. + :type: str + """ + allowed_values = ["PLANNED", "UNPLANNED"] + if not value_allowed_none_or_none_sentinel(maintenance_type, allowed_values): + maintenance_type = 'UNKNOWN_ENUM_VALUE' + self._maintenance_type = maintenance_type + + @property + def patch_identifier(self): + """ + Gets the patch_identifier of this MaintenanceRunSummary. + The unique identifier of the patch. The identifier string includes the patch type and the version of the Database Infrastructure. + + + :return: The patch_identifier of this MaintenanceRunSummary. + :rtype: str + """ + return self._patch_identifier + + @patch_identifier.setter + def patch_identifier(self, patch_identifier): + """ + Sets the patch_identifier of this MaintenanceRunSummary. + The unique identifier of the patch. The identifier string includes the patch type and the version of the Database Infrastructure. + + + :param patch_identifier: The patch_identifier of this MaintenanceRunSummary. + :type: str + """ + self._patch_identifier = patch_identifier + + @property + def maintenance_subtype(self): + """ + Gets the maintenance_subtype of this MaintenanceRunSummary. + Maintenance run sub-type. + + Allowed values for this property are: "YEARLY", "HALFYEARLY", "QUARTERLY", "MONTHLY", "DAILY", "HARDWARE", "CRITICAL", "INFRA_UPDATE", "CPS_SERVICES_UPDATE", "CPS_VM_UPDATE", "SECURITY_MONTHLY", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The maintenance_subtype of this MaintenanceRunSummary. + :rtype: str + """ + return self._maintenance_subtype + + @maintenance_subtype.setter + def maintenance_subtype(self, maintenance_subtype): + """ + Sets the maintenance_subtype of this MaintenanceRunSummary. + Maintenance run sub-type. + + + :param maintenance_subtype: The maintenance_subtype of this MaintenanceRunSummary. + :type: str + """ + allowed_values = ["YEARLY", "HALFYEARLY", "QUARTERLY", "MONTHLY", "DAILY", "HARDWARE", "CRITICAL", "INFRA_UPDATE", "CPS_SERVICES_UPDATE", "CPS_VM_UPDATE", "SECURITY_MONTHLY"] + if not value_allowed_none_or_none_sentinel(maintenance_subtype, allowed_values): + maintenance_subtype = 'UNKNOWN_ENUM_VALUE' + self._maintenance_subtype = maintenance_subtype + + @property + def patching_mode(self): + """ + Gets the patching_mode of this MaintenanceRunSummary. + Database Infrastructure patching mode, either \"ROLLING\" or \"NONROLLING\". Default value is ROLLING. + + Allowed values for this property are: "ROLLING", "NONROLLING", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The patching_mode of this MaintenanceRunSummary. + :rtype: str + """ + return self._patching_mode + + @patching_mode.setter + def patching_mode(self, patching_mode): + """ + Sets the patching_mode of this MaintenanceRunSummary. + Database Infrastructure patching mode, either \"ROLLING\" or \"NONROLLING\". Default value is ROLLING. + + + :param patching_mode: The patching_mode of this MaintenanceRunSummary. + :type: str + """ + allowed_values = ["ROLLING", "NONROLLING"] + if not value_allowed_none_or_none_sentinel(patching_mode, allowed_values): + patching_mode = 'UNKNOWN_ENUM_VALUE' + self._patching_mode = patching_mode + + @property + def patch_failure_count(self): + """ + Gets the patch_failure_count of this MaintenanceRunSummary. + Contain the patch failure count. + + + :return: The patch_failure_count of this MaintenanceRunSummary. + :rtype: int + """ + return self._patch_failure_count + + @patch_failure_count.setter + def patch_failure_count(self, patch_failure_count): + """ + Sets the patch_failure_count of this MaintenanceRunSummary. + Contain the patch failure count. + + + :param patch_failure_count: The patch_failure_count of this MaintenanceRunSummary. + :type: int + """ + self._patch_failure_count = patch_failure_count + + @property + def source_version(self): + """ + Gets the source_version of this MaintenanceRunSummary. + The source software version for the Database Infrastructure. + + + :return: The source_version of this MaintenanceRunSummary. + :rtype: str + """ + return self._source_version + + @source_version.setter + def source_version(self, source_version): + """ + Sets the source_version of this MaintenanceRunSummary. + The source software version for the Database Infrastructure. + + + :param source_version: The source_version of this MaintenanceRunSummary. + :type: str + """ + self._source_version = source_version + + @property + def target_version(self): + """ + Gets the target_version of this MaintenanceRunSummary. + The target software version for the Database Infrastructure patching operation. + + + :return: The target_version of this MaintenanceRunSummary. + :rtype: str + """ + return self._target_version + + @target_version.setter + def target_version(self, target_version): + """ + Sets the target_version of this MaintenanceRunSummary. + The target software version for the Database Infrastructure patching operation. + + + :param target_version: The target_version of this MaintenanceRunSummary. + :type: str + """ + self._target_version = target_version + + @property + def is_custom_action_timeout_enabled(self): + """ + Gets the is_custom_action_timeout_enabled of this MaintenanceRunSummary. + If true, enables the configuration of a custom action timeout (waiting period) between compute servers patching operations. + + + :return: The is_custom_action_timeout_enabled of this MaintenanceRunSummary. + :rtype: bool + """ + return self._is_custom_action_timeout_enabled + + @is_custom_action_timeout_enabled.setter + def is_custom_action_timeout_enabled(self, is_custom_action_timeout_enabled): + """ + Sets the is_custom_action_timeout_enabled of this MaintenanceRunSummary. + If true, enables the configuration of a custom action timeout (waiting period) between compute servers patching operations. + + + :param is_custom_action_timeout_enabled: The is_custom_action_timeout_enabled of this MaintenanceRunSummary. + :type: bool + """ + self._is_custom_action_timeout_enabled = is_custom_action_timeout_enabled + + @property + def custom_action_timeout_in_mins(self): + """ + Gets the custom_action_timeout_in_mins of this MaintenanceRunSummary. + Determines the amount of time the system will wait before the start of each compute server patching operation. + Supported values are 15 to 120 minutes. + + + :return: The custom_action_timeout_in_mins of this MaintenanceRunSummary. + :rtype: int + """ + return self._custom_action_timeout_in_mins + + @custom_action_timeout_in_mins.setter + def custom_action_timeout_in_mins(self, custom_action_timeout_in_mins): + """ + Sets the custom_action_timeout_in_mins of this MaintenanceRunSummary. + Determines the amount of time the system will wait before the start of each compute server patching operation. + Supported values are 15 to 120 minutes. + + + :param custom_action_timeout_in_mins: The custom_action_timeout_in_mins of this MaintenanceRunSummary. + :type: int + """ + self._custom_action_timeout_in_mins = custom_action_timeout_in_mins + + @property + def patching_status(self): + """ + Gets the patching_status of this MaintenanceRunSummary. + The status of the patching operation. + + Allowed values for this property are: "CREATING", "PATCHING", "WAITING", "SCHEDULED", "COMPLETE", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The patching_status of this MaintenanceRunSummary. + :rtype: str + """ + return self._patching_status + + @patching_status.setter + def patching_status(self, patching_status): + """ + Sets the patching_status of this MaintenanceRunSummary. + The status of the patching operation. + + + :param patching_status: The patching_status of this MaintenanceRunSummary. + :type: str + """ + allowed_values = ["CREATING", "PATCHING", "WAITING", "SCHEDULED", "COMPLETE", "FAILED"] + if not value_allowed_none_or_none_sentinel(patching_status, allowed_values): + patching_status = 'UNKNOWN_ENUM_VALUE' + self._patching_status = patching_status + + @property + def patching_start_time(self): + """ + Gets the patching_start_time of this MaintenanceRunSummary. + The time when the patching operation started. + + + :return: The patching_start_time of this MaintenanceRunSummary. + :rtype: datetime + """ + return self._patching_start_time + + @patching_start_time.setter + def patching_start_time(self, patching_start_time): + """ + Sets the patching_start_time of this MaintenanceRunSummary. + The time when the patching operation started. + + + :param patching_start_time: The patching_start_time of this MaintenanceRunSummary. + :type: datetime + """ + self._patching_start_time = patching_start_time + + @property + def patching_end_time(self): + """ + Gets the patching_end_time of this MaintenanceRunSummary. + The time when the patching operation ended. + + + :return: The patching_end_time of this MaintenanceRunSummary. + :rtype: datetime + """ + return self._patching_end_time + + @patching_end_time.setter + def patching_end_time(self, patching_end_time): + """ + Sets the patching_end_time of this MaintenanceRunSummary. + The time when the patching operation ended. + + + :param patching_end_time: The patching_end_time of this MaintenanceRunSummary. + :type: datetime + """ + self._patching_end_time = patching_end_time + + @property + def estimated_patching_time(self): + """ + Gets the estimated_patching_time of this MaintenanceRunSummary. + The estimated total time required in minutes for all patching operations (compute servers, storage). + + + :return: The estimated_patching_time of this MaintenanceRunSummary. + :rtype: int + """ + return self._estimated_patching_time + + @estimated_patching_time.setter + def estimated_patching_time(self, estimated_patching_time): + """ + Sets the estimated_patching_time of this MaintenanceRunSummary. + The estimated total time required in minutes for all patching operations (compute servers, storage). + + + :param estimated_patching_time: The estimated_patching_time of this MaintenanceRunSummary. + :type: int + """ + self._estimated_patching_time = estimated_patching_time + + @property + def current_patching_component(self): + """ + Gets the current_patching_component of this MaintenanceRunSummary. + The name of the current infrastructure component that is getting patched. + + + :return: The current_patching_component of this MaintenanceRunSummary. + :rtype: str + """ + return self._current_patching_component + + @current_patching_component.setter + def current_patching_component(self, current_patching_component): + """ + Sets the current_patching_component of this MaintenanceRunSummary. + The name of the current infrastructure component that is getting patched. + + + :param current_patching_component: The current_patching_component of this MaintenanceRunSummary. + :type: str + """ + self._current_patching_component = current_patching_component + + @property + def estimated_component_patching_start_time(self): + """ + Gets the estimated_component_patching_start_time of this MaintenanceRunSummary. + The estimated start time of the next infrastructure component patching operation. + + + :return: The estimated_component_patching_start_time of this MaintenanceRunSummary. + :rtype: datetime + """ + return self._estimated_component_patching_start_time + + @estimated_component_patching_start_time.setter + def estimated_component_patching_start_time(self, estimated_component_patching_start_time): + """ + Sets the estimated_component_patching_start_time of this MaintenanceRunSummary. + The estimated start time of the next infrastructure component patching operation. + + + :param estimated_component_patching_start_time: The estimated_component_patching_start_time of this MaintenanceRunSummary. + :type: datetime + """ + self._estimated_component_patching_start_time = estimated_component_patching_start_time + + @property + def system_tags(self): + """ + Gets the system_tags of this MaintenanceRunSummary. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :return: The system_tags of this MaintenanceRunSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this MaintenanceRunSummary. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :param system_tags: The system_tags of this MaintenanceRunSummary. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this MaintenanceRunSummary. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this MaintenanceRunSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this MaintenanceRunSummary. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this MaintenanceRunSummary. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this MaintenanceRunSummary. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this MaintenanceRunSummary. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this MaintenanceRunSummary. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this MaintenanceRunSummary. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def total_time_taken_in_mins(self): + """ + Gets the total_time_taken_in_mins of this MaintenanceRunSummary. + The total time taken by corresponding resource activity in minutes. + + + :return: The total_time_taken_in_mins of this MaintenanceRunSummary. + :rtype: int + """ + return self._total_time_taken_in_mins + + @total_time_taken_in_mins.setter + def total_time_taken_in_mins(self, total_time_taken_in_mins): + """ + Sets the total_time_taken_in_mins of this MaintenanceRunSummary. + The total time taken by corresponding resource activity in minutes. + + + :param total_time_taken_in_mins: The total_time_taken_in_mins of this MaintenanceRunSummary. + :type: int + """ + self._total_time_taken_in_mins = total_time_taken_in_mins + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/maintenance_window.py b/src/oci/datacc/models/maintenance_window.py new file mode 100644 index 0000000000..d59b3980cd --- /dev/null +++ b/src/oci/datacc/models/maintenance_window.py @@ -0,0 +1,499 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class MaintenanceWindow(object): + """ + The scheduling details for the quarterly maintenance window. Patching and system updates take place during the maintenance window. + """ + + #: A constant which can be used with the preference property of a MaintenanceWindow. + #: This constant has a value of "NO_PREFERENCE" + PREFERENCE_NO_PREFERENCE = "NO_PREFERENCE" + + #: A constant which can be used with the preference property of a MaintenanceWindow. + #: This constant has a value of "CUSTOM_PREFERENCE" + PREFERENCE_CUSTOM_PREFERENCE = "CUSTOM_PREFERENCE" + + #: A constant which can be used with the patching_mode property of a MaintenanceWindow. + #: This constant has a value of "ROLLING" + PATCHING_MODE_ROLLING = "ROLLING" + + #: A constant which can be used with the patching_mode property of a MaintenanceWindow. + #: This constant has a value of "NONROLLING" + PATCHING_MODE_NONROLLING = "NONROLLING" + + #: A constant which can be used with the months property of a MaintenanceWindow. + #: This constant has a value of "JANUARY" + MONTHS_JANUARY = "JANUARY" + + #: A constant which can be used with the months property of a MaintenanceWindow. + #: This constant has a value of "FEBRUARY" + MONTHS_FEBRUARY = "FEBRUARY" + + #: A constant which can be used with the months property of a MaintenanceWindow. + #: This constant has a value of "MARCH" + MONTHS_MARCH = "MARCH" + + #: A constant which can be used with the months property of a MaintenanceWindow. + #: This constant has a value of "APRIL" + MONTHS_APRIL = "APRIL" + + #: A constant which can be used with the months property of a MaintenanceWindow. + #: This constant has a value of "MAY" + MONTHS_MAY = "MAY" + + #: A constant which can be used with the months property of a MaintenanceWindow. + #: This constant has a value of "JUNE" + MONTHS_JUNE = "JUNE" + + #: A constant which can be used with the months property of a MaintenanceWindow. + #: This constant has a value of "JULY" + MONTHS_JULY = "JULY" + + #: A constant which can be used with the months property of a MaintenanceWindow. + #: This constant has a value of "AUGUST" + MONTHS_AUGUST = "AUGUST" + + #: A constant which can be used with the months property of a MaintenanceWindow. + #: This constant has a value of "SEPTEMBER" + MONTHS_SEPTEMBER = "SEPTEMBER" + + #: A constant which can be used with the months property of a MaintenanceWindow. + #: This constant has a value of "OCTOBER" + MONTHS_OCTOBER = "OCTOBER" + + #: A constant which can be used with the months property of a MaintenanceWindow. + #: This constant has a value of "NOVEMBER" + MONTHS_NOVEMBER = "NOVEMBER" + + #: A constant which can be used with the months property of a MaintenanceWindow. + #: This constant has a value of "DECEMBER" + MONTHS_DECEMBER = "DECEMBER" + + #: A constant which can be used with the days_of_week property of a MaintenanceWindow. + #: This constant has a value of "MONDAY" + DAYS_OF_WEEK_MONDAY = "MONDAY" + + #: A constant which can be used with the days_of_week property of a MaintenanceWindow. + #: This constant has a value of "TUESDAY" + DAYS_OF_WEEK_TUESDAY = "TUESDAY" + + #: A constant which can be used with the days_of_week property of a MaintenanceWindow. + #: This constant has a value of "WEDNESDAY" + DAYS_OF_WEEK_WEDNESDAY = "WEDNESDAY" + + #: A constant which can be used with the days_of_week property of a MaintenanceWindow. + #: This constant has a value of "THURSDAY" + DAYS_OF_WEEK_THURSDAY = "THURSDAY" + + #: A constant which can be used with the days_of_week property of a MaintenanceWindow. + #: This constant has a value of "FRIDAY" + DAYS_OF_WEEK_FRIDAY = "FRIDAY" + + #: A constant which can be used with the days_of_week property of a MaintenanceWindow. + #: This constant has a value of "SATURDAY" + DAYS_OF_WEEK_SATURDAY = "SATURDAY" + + #: A constant which can be used with the days_of_week property of a MaintenanceWindow. + #: This constant has a value of "SUNDAY" + DAYS_OF_WEEK_SUNDAY = "SUNDAY" + + def __init__(self, **kwargs): + """ + Initializes a new MaintenanceWindow object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param preference: + The value to assign to the preference property of this MaintenanceWindow. + Allowed values for this property are: "NO_PREFERENCE", "CUSTOM_PREFERENCE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type preference: str + + :param patching_mode: + The value to assign to the patching_mode property of this MaintenanceWindow. + Allowed values for this property are: "ROLLING", "NONROLLING", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type patching_mode: str + + :param is_custom_action_timeout_enabled: + The value to assign to the is_custom_action_timeout_enabled property of this MaintenanceWindow. + :type is_custom_action_timeout_enabled: bool + + :param custom_action_timeout_in_mins: + The value to assign to the custom_action_timeout_in_mins property of this MaintenanceWindow. + :type custom_action_timeout_in_mins: int + + :param is_monthly_patching_enabled: + The value to assign to the is_monthly_patching_enabled property of this MaintenanceWindow. + :type is_monthly_patching_enabled: bool + + :param months: + The value to assign to the months property of this MaintenanceWindow. + Allowed values for items in this list are: "JANUARY", "FEBRUARY", "MARCH", "APRIL", "MAY", "JUNE", "JULY", "AUGUST", "SEPTEMBER", "OCTOBER", "NOVEMBER", "DECEMBER", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type months: list[str] + + :param weeks_of_month: + The value to assign to the weeks_of_month property of this MaintenanceWindow. + :type weeks_of_month: list[int] + + :param days_of_week: + The value to assign to the days_of_week property of this MaintenanceWindow. + Allowed values for items in this list are: "MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY", "SUNDAY", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type days_of_week: list[str] + + :param hours_of_day: + The value to assign to the hours_of_day property of this MaintenanceWindow. + :type hours_of_day: list[int] + + :param lead_time_in_weeks: + The value to assign to the lead_time_in_weeks property of this MaintenanceWindow. + :type lead_time_in_weeks: int + + """ + self.swagger_types = { + 'preference': 'str', + 'patching_mode': 'str', + 'is_custom_action_timeout_enabled': 'bool', + 'custom_action_timeout_in_mins': 'int', + 'is_monthly_patching_enabled': 'bool', + 'months': 'list[str]', + 'weeks_of_month': 'list[int]', + 'days_of_week': 'list[str]', + 'hours_of_day': 'list[int]', + 'lead_time_in_weeks': 'int' + } + self.attribute_map = { + 'preference': 'preference', + 'patching_mode': 'patchingMode', + 'is_custom_action_timeout_enabled': 'isCustomActionTimeoutEnabled', + 'custom_action_timeout_in_mins': 'customActionTimeoutInMins', + 'is_monthly_patching_enabled': 'isMonthlyPatchingEnabled', + 'months': 'months', + 'weeks_of_month': 'weeksOfMonth', + 'days_of_week': 'daysOfWeek', + 'hours_of_day': 'hoursOfDay', + 'lead_time_in_weeks': 'leadTimeInWeeks' + } + self._preference = None + self._patching_mode = None + self._is_custom_action_timeout_enabled = None + self._custom_action_timeout_in_mins = None + self._is_monthly_patching_enabled = None + self._months = None + self._weeks_of_month = None + self._days_of_week = None + self._hours_of_day = None + self._lead_time_in_weeks = None + + @property + def preference(self): + """ + Gets the preference of this MaintenanceWindow. + The maintenance window scheduling preference. + + Allowed values for this property are: "NO_PREFERENCE", "CUSTOM_PREFERENCE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The preference of this MaintenanceWindow. + :rtype: str + """ + return self._preference + + @preference.setter + def preference(self, preference): + """ + Sets the preference of this MaintenanceWindow. + The maintenance window scheduling preference. + + + :param preference: The preference of this MaintenanceWindow. + :type: str + """ + allowed_values = ["NO_PREFERENCE", "CUSTOM_PREFERENCE"] + if not value_allowed_none_or_none_sentinel(preference, allowed_values): + preference = 'UNKNOWN_ENUM_VALUE' + self._preference = preference + + @property + def patching_mode(self): + """ + Gets the patching_mode of this MaintenanceWindow. + Cloud Database Infrastructure node patching method. + *IMPORTANT*: Non-rolling infrastructure patching involves system down time. + See `Oracle-Managed Database Infrastructure Maintenance Updates`__ + for more information. + + __ https://docs.oracle.com/iaas/Content/Database/Concepts/examaintenance.htm#Oracle + + Allowed values for this property are: "ROLLING", "NONROLLING", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The patching_mode of this MaintenanceWindow. + :rtype: str + """ + return self._patching_mode + + @patching_mode.setter + def patching_mode(self, patching_mode): + """ + Sets the patching_mode of this MaintenanceWindow. + Cloud Database Infrastructure node patching method. + *IMPORTANT*: Non-rolling infrastructure patching involves system down time. + See `Oracle-Managed Database Infrastructure Maintenance Updates`__ + for more information. + + __ https://docs.oracle.com/iaas/Content/Database/Concepts/examaintenance.htm#Oracle + + + :param patching_mode: The patching_mode of this MaintenanceWindow. + :type: str + """ + allowed_values = ["ROLLING", "NONROLLING"] + if not value_allowed_none_or_none_sentinel(patching_mode, allowed_values): + patching_mode = 'UNKNOWN_ENUM_VALUE' + self._patching_mode = patching_mode + + @property + def is_custom_action_timeout_enabled(self): + """ + Gets the is_custom_action_timeout_enabled of this MaintenanceWindow. + If true, enables the configuration of a custom action timeout (waiting period) between Database Infrastructure server patching operations. + + + :return: The is_custom_action_timeout_enabled of this MaintenanceWindow. + :rtype: bool + """ + return self._is_custom_action_timeout_enabled + + @is_custom_action_timeout_enabled.setter + def is_custom_action_timeout_enabled(self, is_custom_action_timeout_enabled): + """ + Sets the is_custom_action_timeout_enabled of this MaintenanceWindow. + If true, enables the configuration of a custom action timeout (waiting period) between Database Infrastructure server patching operations. + + + :param is_custom_action_timeout_enabled: The is_custom_action_timeout_enabled of this MaintenanceWindow. + :type: bool + """ + self._is_custom_action_timeout_enabled = is_custom_action_timeout_enabled + + @property + def custom_action_timeout_in_mins(self): + """ + Gets the custom_action_timeout_in_mins of this MaintenanceWindow. + Determines the amount of time the system will wait before the start of each Database Infrastructure server patching operation. + Custom action timeout is in minutes and valid value is between 15 to 120 (inclusive). + + + :return: The custom_action_timeout_in_mins of this MaintenanceWindow. + :rtype: int + """ + return self._custom_action_timeout_in_mins + + @custom_action_timeout_in_mins.setter + def custom_action_timeout_in_mins(self, custom_action_timeout_in_mins): + """ + Sets the custom_action_timeout_in_mins of this MaintenanceWindow. + Determines the amount of time the system will wait before the start of each Database Infrastructure server patching operation. + Custom action timeout is in minutes and valid value is between 15 to 120 (inclusive). + + + :param custom_action_timeout_in_mins: The custom_action_timeout_in_mins of this MaintenanceWindow. + :type: int + """ + self._custom_action_timeout_in_mins = custom_action_timeout_in_mins + + @property + def is_monthly_patching_enabled(self): + """ + Gets the is_monthly_patching_enabled of this MaintenanceWindow. + If true, enables the monthly patching option. + + + :return: The is_monthly_patching_enabled of this MaintenanceWindow. + :rtype: bool + """ + return self._is_monthly_patching_enabled + + @is_monthly_patching_enabled.setter + def is_monthly_patching_enabled(self, is_monthly_patching_enabled): + """ + Sets the is_monthly_patching_enabled of this MaintenanceWindow. + If true, enables the monthly patching option. + + + :param is_monthly_patching_enabled: The is_monthly_patching_enabled of this MaintenanceWindow. + :type: bool + """ + self._is_monthly_patching_enabled = is_monthly_patching_enabled + + @property + def months(self): + """ + Gets the months of this MaintenanceWindow. + Months during the year when maintenance should be performed. + + Allowed values for items in this list are: "JANUARY", "FEBRUARY", "MARCH", "APRIL", "MAY", "JUNE", "JULY", "AUGUST", "SEPTEMBER", "OCTOBER", "NOVEMBER", "DECEMBER", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The months of this MaintenanceWindow. + :rtype: list[str] + """ + return self._months + + @months.setter + def months(self, months): + """ + Sets the months of this MaintenanceWindow. + Months during the year when maintenance should be performed. + + + :param months: The months of this MaintenanceWindow. + :type: list[str] + """ + allowed_values = ["JANUARY", "FEBRUARY", "MARCH", "APRIL", "MAY", "JUNE", "JULY", "AUGUST", "SEPTEMBER", "OCTOBER", "NOVEMBER", "DECEMBER"] + if months: + months[:] = ['UNKNOWN_ENUM_VALUE' if not value_allowed_none_or_none_sentinel(x, allowed_values) else x for x in months] + self._months = months + + @property + def weeks_of_month(self): + """ + Gets the weeks_of_month of this MaintenanceWindow. + Weeks during the month when maintenance should be performed. Weeks start on the 1st, 8th, 15th, and + 22nd days of the month, and have a duration of 7 days. Weeks start and end based on calendar dates, + not days of the week.For example, to allow maintenance during the 2nd week of the month + (from the 8th day to the 14th day of the month), use the value 2. Maintenance cannot be scheduled for + the fifth week of months that contain more than 28 days. Note that this parameter works in conjunction + with the daysOfWeek and hoursOfDay parameters to allow you to specify specific days of the week and + hours that maintenance will be performed. + + + :return: The weeks_of_month of this MaintenanceWindow. + :rtype: list[int] + """ + return self._weeks_of_month + + @weeks_of_month.setter + def weeks_of_month(self, weeks_of_month): + """ + Sets the weeks_of_month of this MaintenanceWindow. + Weeks during the month when maintenance should be performed. Weeks start on the 1st, 8th, 15th, and + 22nd days of the month, and have a duration of 7 days. Weeks start and end based on calendar dates, + not days of the week.For example, to allow maintenance during the 2nd week of the month + (from the 8th day to the 14th day of the month), use the value 2. Maintenance cannot be scheduled for + the fifth week of months that contain more than 28 days. Note that this parameter works in conjunction + with the daysOfWeek and hoursOfDay parameters to allow you to specify specific days of the week and + hours that maintenance will be performed. + + + :param weeks_of_month: The weeks_of_month of this MaintenanceWindow. + :type: list[int] + """ + self._weeks_of_month = weeks_of_month + + @property + def days_of_week(self): + """ + Gets the days_of_week of this MaintenanceWindow. + Days during the week when maintenance should be performed. + + Allowed values for items in this list are: "MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY", "SUNDAY", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The days_of_week of this MaintenanceWindow. + :rtype: list[str] + """ + return self._days_of_week + + @days_of_week.setter + def days_of_week(self, days_of_week): + """ + Sets the days_of_week of this MaintenanceWindow. + Days during the week when maintenance should be performed. + + + :param days_of_week: The days_of_week of this MaintenanceWindow. + :type: list[str] + """ + allowed_values = ["MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY", "SUNDAY"] + if days_of_week: + days_of_week[:] = ['UNKNOWN_ENUM_VALUE' if not value_allowed_none_or_none_sentinel(x, allowed_values) else x for x in days_of_week] + self._days_of_week = days_of_week + + @property + def hours_of_day(self): + """ + Gets the hours_of_day of this MaintenanceWindow. + The window of hours during the day when maintenance should be performed. The window is a 4 hour slot. Valid values are - 0 - represents time slot 0:00 - 3:59 UTC - 4 - represents time slot 4:00 - 7:59 UTC - 8 - represents time slot 8:00 - 11:59 UTC - 12 - represents time slot 12:00 - 15:59 UTC - 16 - represents time slot 16:00 - 19:59 UTC - 20 - represents time slot 20:00 - 23:59 UTC + + + :return: The hours_of_day of this MaintenanceWindow. + :rtype: list[int] + """ + return self._hours_of_day + + @hours_of_day.setter + def hours_of_day(self, hours_of_day): + """ + Sets the hours_of_day of this MaintenanceWindow. + The window of hours during the day when maintenance should be performed. The window is a 4 hour slot. Valid values are - 0 - represents time slot 0:00 - 3:59 UTC - 4 - represents time slot 4:00 - 7:59 UTC - 8 - represents time slot 8:00 - 11:59 UTC - 12 - represents time slot 12:00 - 15:59 UTC - 16 - represents time slot 16:00 - 19:59 UTC - 20 - represents time slot 20:00 - 23:59 UTC + + + :param hours_of_day: The hours_of_day of this MaintenanceWindow. + :type: list[int] + """ + self._hours_of_day = hours_of_day + + @property + def lead_time_in_weeks(self): + """ + Gets the lead_time_in_weeks of this MaintenanceWindow. + Lead time window allows user to set a lead time to prepare for a down time. + The lead time is in weeks and valid value is between 1 to 4. + + + :return: The lead_time_in_weeks of this MaintenanceWindow. + :rtype: int + """ + return self._lead_time_in_weeks + + @lead_time_in_weeks.setter + def lead_time_in_weeks(self, lead_time_in_weeks): + """ + Sets the lead_time_in_weeks of this MaintenanceWindow. + Lead time window allows user to set a lead time to prepare for a down time. + The lead time is in weeks and valid value is between 1 to 4. + + + :param lead_time_in_weeks: The lead_time_in_weeks of this MaintenanceWindow. + :type: int + """ + self._lead_time_in_weeks = lead_time_in_weeks + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/node_details.py b/src/oci/datacc/models/node_details.py new file mode 100644 index 0000000000..df9cf273f1 --- /dev/null +++ b/src/oci/datacc/models/node_details.py @@ -0,0 +1,163 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class NodeDetails(object): + """ + Node details associated with a VM cluster network. + """ + + def __init__(self, **kwargs): + """ + Initializes a new NodeDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param hostname: + The value to assign to the hostname property of this NodeDetails. + :type hostname: str + + :param ip: + The value to assign to the ip property of this NodeDetails. + :type ip: str + + :param vip_hostname: + The value to assign to the vip_hostname property of this NodeDetails. + :type vip_hostname: str + + :param vip: + The value to assign to the vip property of this NodeDetails. + :type vip: str + + """ + self.swagger_types = { + 'hostname': 'str', + 'ip': 'str', + 'vip_hostname': 'str', + 'vip': 'str' + } + self.attribute_map = { + 'hostname': 'hostname', + 'ip': 'ip', + 'vip_hostname': 'vipHostname', + 'vip': 'vip' + } + self._hostname = None + self._ip = None + self._vip_hostname = None + self._vip = None + + @property + def hostname(self): + """ + **[Required]** Gets the hostname of this NodeDetails. + The node host name. + + + :return: The hostname of this NodeDetails. + :rtype: str + """ + return self._hostname + + @hostname.setter + def hostname(self, hostname): + """ + Sets the hostname of this NodeDetails. + The node host name. + + + :param hostname: The hostname of this NodeDetails. + :type: str + """ + self._hostname = hostname + + @property + def ip(self): + """ + **[Required]** Gets the ip of this NodeDetails. + The node IP address. + + + :return: The ip of this NodeDetails. + :rtype: str + """ + return self._ip + + @ip.setter + def ip(self, ip): + """ + Sets the ip of this NodeDetails. + The node IP address. + + + :param ip: The ip of this NodeDetails. + :type: str + """ + self._ip = ip + + @property + def vip_hostname(self): + """ + Gets the vip_hostname of this NodeDetails. + The node virtual IP (VIP) host name. + + + :return: The vip_hostname of this NodeDetails. + :rtype: str + """ + return self._vip_hostname + + @vip_hostname.setter + def vip_hostname(self, vip_hostname): + """ + Sets the vip_hostname of this NodeDetails. + The node virtual IP (VIP) host name. + + + :param vip_hostname: The vip_hostname of this NodeDetails. + :type: str + """ + self._vip_hostname = vip_hostname + + @property + def vip(self): + """ + Gets the vip of this NodeDetails. + The node virtual IP (VIP) address. + + + :return: The vip of this NodeDetails. + :rtype: str + """ + return self._vip + + @vip.setter + def vip(self, vip): + """ + Sets the vip of this NodeDetails. + The node virtual IP (VIP) address. + + + :param vip: The vip of this NodeDetails. + :type: str + """ + self._vip = vip + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/reschedule_maintenance_run_details.py b/src/oci/datacc/models/reschedule_maintenance_run_details.py new file mode 100644 index 0000000000..94a47e12ac --- /dev/null +++ b/src/oci/datacc/models/reschedule_maintenance_run_details.py @@ -0,0 +1,101 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class RescheduleMaintenanceRunDetails(object): + """ + Request parameters for rescheduling a maintenance run. + """ + + def __init__(self, **kwargs): + """ + Initializes a new RescheduleMaintenanceRunDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param time_scheduled: + The value to assign to the time_scheduled property of this RescheduleMaintenanceRunDetails. + :type time_scheduled: datetime + + :param reason: + The value to assign to the reason property of this RescheduleMaintenanceRunDetails. + :type reason: str + + """ + self.swagger_types = { + 'time_scheduled': 'datetime', + 'reason': 'str' + } + self.attribute_map = { + 'time_scheduled': 'timeScheduled', + 'reason': 'reason' + } + self._time_scheduled = None + self._reason = None + + @property + def time_scheduled(self): + """ + **[Required]** Gets the time_scheduled of this RescheduleMaintenanceRunDetails. + The new date and time for the scheduled maintenance run. + + + :return: The time_scheduled of this RescheduleMaintenanceRunDetails. + :rtype: datetime + """ + return self._time_scheduled + + @time_scheduled.setter + def time_scheduled(self, time_scheduled): + """ + Sets the time_scheduled of this RescheduleMaintenanceRunDetails. + The new date and time for the scheduled maintenance run. + + + :param time_scheduled: The time_scheduled of this RescheduleMaintenanceRunDetails. + :type: datetime + """ + self._time_scheduled = time_scheduled + + @property + def reason(self): + """ + Gets the reason of this RescheduleMaintenanceRunDetails. + The reason for rescheduling the maintenance run. + + + :return: The reason of this RescheduleMaintenanceRunDetails. + :rtype: str + """ + return self._reason + + @reason.setter + def reason(self, reason): + """ + Sets the reason of this RescheduleMaintenanceRunDetails. + The reason for rescheduling the maintenance run. + + + :param reason: The reason of this RescheduleMaintenanceRunDetails. + :type: str + """ + self._reason = reason + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/scale_infrastructure_storage_details.py b/src/oci/datacc/models/scale_infrastructure_storage_details.py new file mode 100644 index 0000000000..866d415457 --- /dev/null +++ b/src/oci/datacc/models/scale_infrastructure_storage_details.py @@ -0,0 +1,94 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ScaleInfrastructureStorageDetails(object): + """ + The scale option to be selected for the infrastructure. + """ + + #: A constant which can be used with the ssd_configuration_requested property of a ScaleInfrastructureStorageDetails. + #: This constant has a value of "SIX_SSDS" + SSD_CONFIGURATION_REQUESTED_SIX_SSDS = "SIX_SSDS" + + #: A constant which can be used with the ssd_configuration_requested property of a ScaleInfrastructureStorageDetails. + #: This constant has a value of "TWELVE_SSDS" + SSD_CONFIGURATION_REQUESTED_TWELVE_SSDS = "TWELVE_SSDS" + + #: A constant which can be used with the ssd_configuration_requested property of a ScaleInfrastructureStorageDetails. + #: This constant has a value of "EIGHTEEN_SSDS" + SSD_CONFIGURATION_REQUESTED_EIGHTEEN_SSDS = "EIGHTEEN_SSDS" + + #: A constant which can be used with the ssd_configuration_requested property of a ScaleInfrastructureStorageDetails. + #: This constant has a value of "TWENTY_FOUR_SSDS" + SSD_CONFIGURATION_REQUESTED_TWENTY_FOUR_SSDS = "TWENTY_FOUR_SSDS" + + def __init__(self, **kwargs): + """ + Initializes a new ScaleInfrastructureStorageDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param ssd_configuration_requested: + The value to assign to the ssd_configuration_requested property of this ScaleInfrastructureStorageDetails. + Allowed values for this property are: "SIX_SSDS", "TWELVE_SSDS", "EIGHTEEN_SSDS", "TWENTY_FOUR_SSDS" + :type ssd_configuration_requested: str + + """ + self.swagger_types = { + 'ssd_configuration_requested': 'str' + } + self.attribute_map = { + 'ssd_configuration_requested': 'ssdConfigurationRequested' + } + self._ssd_configuration_requested = None + + @property + def ssd_configuration_requested(self): + """ + Gets the ssd_configuration_requested of this ScaleInfrastructureStorageDetails. + The scale option to be selected for the infrastructure. + + Allowed values for this property are: "SIX_SSDS", "TWELVE_SSDS", "EIGHTEEN_SSDS", "TWENTY_FOUR_SSDS" + + + :return: The ssd_configuration_requested of this ScaleInfrastructureStorageDetails. + :rtype: str + """ + return self._ssd_configuration_requested + + @ssd_configuration_requested.setter + def ssd_configuration_requested(self, ssd_configuration_requested): + """ + Sets the ssd_configuration_requested of this ScaleInfrastructureStorageDetails. + The scale option to be selected for the infrastructure. + + + :param ssd_configuration_requested: The ssd_configuration_requested of this ScaleInfrastructureStorageDetails. + :type: str + """ + allowed_values = ["SIX_SSDS", "TWELVE_SSDS", "EIGHTEEN_SSDS", "TWENTY_FOUR_SSDS"] + if not value_allowed_none_or_none_sentinel(ssd_configuration_requested, allowed_values): + raise ValueError( + f"Invalid value for `ssd_configuration_requested`, must be None or one of {allowed_values}" + ) + self._ssd_configuration_requested = ssd_configuration_requested + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/scale_vm_instance_details.py b/src/oci/datacc/models/scale_vm_instance_details.py new file mode 100644 index 0000000000..97b1b87aba --- /dev/null +++ b/src/oci/datacc/models/scale_vm_instance_details.py @@ -0,0 +1,101 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ScaleVmInstanceDetails(object): + """ + Scale the VM instance. + """ + + def __init__(self, **kwargs): + """ + Initializes a new ScaleVmInstanceDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param memory_size_in_gbs: + The value to assign to the memory_size_in_gbs property of this ScaleVmInstanceDetails. + :type memory_size_in_gbs: float + + :param cpus_enabled: + The value to assign to the cpus_enabled property of this ScaleVmInstanceDetails. + :type cpus_enabled: int + + """ + self.swagger_types = { + 'memory_size_in_gbs': 'float', + 'cpus_enabled': 'int' + } + self.attribute_map = { + 'memory_size_in_gbs': 'memorySizeInGBs', + 'cpus_enabled': 'cpusEnabled' + } + self._memory_size_in_gbs = None + self._cpus_enabled = None + + @property + def memory_size_in_gbs(self): + """ + Gets the memory_size_in_gbs of this ScaleVmInstanceDetails. + The memory to be allocated in GBs. + + + :return: The memory_size_in_gbs of this ScaleVmInstanceDetails. + :rtype: float + """ + return self._memory_size_in_gbs + + @memory_size_in_gbs.setter + def memory_size_in_gbs(self, memory_size_in_gbs): + """ + Sets the memory_size_in_gbs of this ScaleVmInstanceDetails. + The memory to be allocated in GBs. + + + :param memory_size_in_gbs: The memory_size_in_gbs of this ScaleVmInstanceDetails. + :type: float + """ + self._memory_size_in_gbs = memory_size_in_gbs + + @property + def cpus_enabled(self): + """ + Gets the cpus_enabled of this ScaleVmInstanceDetails. + The number of CPU cores to be enabled for VM instance. + + + :return: The cpus_enabled of this ScaleVmInstanceDetails. + :rtype: int + """ + return self._cpus_enabled + + @cpus_enabled.setter + def cpus_enabled(self, cpus_enabled): + """ + Sets the cpus_enabled of this ScaleVmInstanceDetails. + The number of CPU cores to be enabled for VM instance. + + + :param cpus_enabled: The cpus_enabled of this ScaleVmInstanceDetails. + :type: int + """ + self._cpus_enabled = cpus_enabled + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/scan_details.py b/src/oci/datacc/models/scan_details.py new file mode 100644 index 0000000000..29b61252dd --- /dev/null +++ b/src/oci/datacc/models/scan_details.py @@ -0,0 +1,101 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ScanDetails(object): + """ + The Single Client Access Name (SCAN) details. + """ + + def __init__(self, **kwargs): + """ + Initializes a new ScanDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param hostname: + The value to assign to the hostname property of this ScanDetails. + :type hostname: str + + :param ips: + The value to assign to the ips property of this ScanDetails. + :type ips: list[str] + + """ + self.swagger_types = { + 'hostname': 'str', + 'ips': 'list[str]' + } + self.attribute_map = { + 'hostname': 'hostname', + 'ips': 'ips' + } + self._hostname = None + self._ips = None + + @property + def hostname(self): + """ + **[Required]** Gets the hostname of this ScanDetails. + The SCAN hostname. + + + :return: The hostname of this ScanDetails. + :rtype: str + """ + return self._hostname + + @hostname.setter + def hostname(self, hostname): + """ + Sets the hostname of this ScanDetails. + The SCAN hostname. + + + :param hostname: The hostname of this ScanDetails. + :type: str + """ + self._hostname = hostname + + @property + def ips(self): + """ + **[Required]** Gets the ips of this ScanDetails. + The list of SCAN IP addresses. Three addresses should be provided. + + + :return: The ips of this ScanDetails. + :rtype: list[str] + """ + return self._ips + + @ips.setter + def ips(self, ips): + """ + Sets the ips of this ScanDetails. + The list of SCAN IP addresses. Three addresses should be provided. + + + :param ips: The ips of this ScanDetails. + :type: list[str] + """ + self._ips = ips + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/storage_capacity_details.py b/src/oci/datacc/models/storage_capacity_details.py new file mode 100644 index 0000000000..9e7ae304ba --- /dev/null +++ b/src/oci/datacc/models/storage_capacity_details.py @@ -0,0 +1,245 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class StorageCapacityDetails(object): + """ + Capacity details of the Storage disk group. + """ + + #: A constant which can be used with the storage_disk_redundancy property of a StorageCapacityDetails. + #: This constant has a value of "HIGH" + STORAGE_DISK_REDUNDANCY_HIGH = "HIGH" + + #: A constant which can be used with the storage_disk_redundancy property of a StorageCapacityDetails. + #: This constant has a value of "MIRROR" + STORAGE_DISK_REDUNDANCY_MIRROR = "MIRROR" + + #: A constant which can be used with the storage_disk_redundancy property of a StorageCapacityDetails. + #: This constant has a value of "FLEX" + STORAGE_DISK_REDUNDANCY_FLEX = "FLEX" + + def __init__(self, **kwargs): + """ + Initializes a new StorageCapacityDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param storage_disk_redundancy: + The value to assign to the storage_disk_redundancy property of this StorageCapacityDetails. + Allowed values for this property are: "HIGH", "MIRROR", "FLEX", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type storage_disk_redundancy: str + + :param disk_group: + The value to assign to the disk_group property of this StorageCapacityDetails. + :type disk_group: str + + :param phy_total_space_in_gbs: + The value to assign to the phy_total_space_in_gbs property of this StorageCapacityDetails. + :type phy_total_space_in_gbs: int + + :param phy_reserved_space_in_gbs: + The value to assign to the phy_reserved_space_in_gbs property of this StorageCapacityDetails. + :type phy_reserved_space_in_gbs: int + + :param phy_free_space_in_gbs: + The value to assign to the phy_free_space_in_gbs property of this StorageCapacityDetails. + :type phy_free_space_in_gbs: int + + :param logical_free_space_in_gbs: + The value to assign to the logical_free_space_in_gbs property of this StorageCapacityDetails. + :type logical_free_space_in_gbs: int + + """ + self.swagger_types = { + 'storage_disk_redundancy': 'str', + 'disk_group': 'str', + 'phy_total_space_in_gbs': 'int', + 'phy_reserved_space_in_gbs': 'int', + 'phy_free_space_in_gbs': 'int', + 'logical_free_space_in_gbs': 'int' + } + self.attribute_map = { + 'storage_disk_redundancy': 'storageDiskRedundancy', + 'disk_group': 'diskGroup', + 'phy_total_space_in_gbs': 'phyTotalSpaceInGBs', + 'phy_reserved_space_in_gbs': 'phyReservedSpaceInGBs', + 'phy_free_space_in_gbs': 'phyFreeSpaceInGBs', + 'logical_free_space_in_gbs': 'logicalFreeSpaceInGBs' + } + self._storage_disk_redundancy = None + self._disk_group = None + self._phy_total_space_in_gbs = None + self._phy_reserved_space_in_gbs = None + self._phy_free_space_in_gbs = None + self._logical_free_space_in_gbs = None + + @property + def storage_disk_redundancy(self): + """ + Gets the storage_disk_redundancy of this StorageCapacityDetails. + The Disk redundancy for Database Infrastructure storage. + + Allowed values for this property are: "HIGH", "MIRROR", "FLEX", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The storage_disk_redundancy of this StorageCapacityDetails. + :rtype: str + """ + return self._storage_disk_redundancy + + @storage_disk_redundancy.setter + def storage_disk_redundancy(self, storage_disk_redundancy): + """ + Sets the storage_disk_redundancy of this StorageCapacityDetails. + The Disk redundancy for Database Infrastructure storage. + + + :param storage_disk_redundancy: The storage_disk_redundancy of this StorageCapacityDetails. + :type: str + """ + allowed_values = ["HIGH", "MIRROR", "FLEX"] + if not value_allowed_none_or_none_sentinel(storage_disk_redundancy, allowed_values): + storage_disk_redundancy = 'UNKNOWN_ENUM_VALUE' + self._storage_disk_redundancy = storage_disk_redundancy + + @property + def disk_group(self): + """ + Gets the disk_group of this StorageCapacityDetails. + Disk group name. + + + :return: The disk_group of this StorageCapacityDetails. + :rtype: str + """ + return self._disk_group + + @disk_group.setter + def disk_group(self, disk_group): + """ + Sets the disk_group of this StorageCapacityDetails. + Disk group name. + + + :param disk_group: The disk_group of this StorageCapacityDetails. + :type: str + """ + self._disk_group = disk_group + + @property + def phy_total_space_in_gbs(self): + """ + Gets the phy_total_space_in_gbs of this StorageCapacityDetails. + The total amount of physical disk space available in a disk group, in gigabytes (GB). + + + :return: The phy_total_space_in_gbs of this StorageCapacityDetails. + :rtype: int + """ + return self._phy_total_space_in_gbs + + @phy_total_space_in_gbs.setter + def phy_total_space_in_gbs(self, phy_total_space_in_gbs): + """ + Sets the phy_total_space_in_gbs of this StorageCapacityDetails. + The total amount of physical disk space available in a disk group, in gigabytes (GB). + + + :param phy_total_space_in_gbs: The phy_total_space_in_gbs of this StorageCapacityDetails. + :type: int + """ + self._phy_total_space_in_gbs = phy_total_space_in_gbs + + @property + def phy_reserved_space_in_gbs(self): + """ + Gets the phy_reserved_space_in_gbs of this StorageCapacityDetails. + The total amount of physical disk space that is reserved for system use in a disk group, in gigabytes (GB). + + + :return: The phy_reserved_space_in_gbs of this StorageCapacityDetails. + :rtype: int + """ + return self._phy_reserved_space_in_gbs + + @phy_reserved_space_in_gbs.setter + def phy_reserved_space_in_gbs(self, phy_reserved_space_in_gbs): + """ + Sets the phy_reserved_space_in_gbs of this StorageCapacityDetails. + The total amount of physical disk space that is reserved for system use in a disk group, in gigabytes (GB). + + + :param phy_reserved_space_in_gbs: The phy_reserved_space_in_gbs of this StorageCapacityDetails. + :type: int + """ + self._phy_reserved_space_in_gbs = phy_reserved_space_in_gbs + + @property + def phy_free_space_in_gbs(self): + """ + Gets the phy_free_space_in_gbs of this StorageCapacityDetails. + The total amount of physical disk space that is currently available for use in a disk group, in gigabytes (GB). + + + :return: The phy_free_space_in_gbs of this StorageCapacityDetails. + :rtype: int + """ + return self._phy_free_space_in_gbs + + @phy_free_space_in_gbs.setter + def phy_free_space_in_gbs(self, phy_free_space_in_gbs): + """ + Sets the phy_free_space_in_gbs of this StorageCapacityDetails. + The total amount of physical disk space that is currently available for use in a disk group, in gigabytes (GB). + + + :param phy_free_space_in_gbs: The phy_free_space_in_gbs of this StorageCapacityDetails. + :type: int + """ + self._phy_free_space_in_gbs = phy_free_space_in_gbs + + @property + def logical_free_space_in_gbs(self): + """ + Gets the logical_free_space_in_gbs of this StorageCapacityDetails. + The total amount of logical disk space that is currently available for use in a disk group, in gigabytes (GB). + + + :return: The logical_free_space_in_gbs of this StorageCapacityDetails. + :rtype: int + """ + return self._logical_free_space_in_gbs + + @logical_free_space_in_gbs.setter + def logical_free_space_in_gbs(self, logical_free_space_in_gbs): + """ + Sets the logical_free_space_in_gbs of this StorageCapacityDetails. + The total amount of logical disk space that is currently available for use in a disk group, in gigabytes (GB). + + + :param logical_free_space_in_gbs: The logical_free_space_in_gbs of this StorageCapacityDetails. + :type: int + """ + self._logical_free_space_in_gbs = logical_free_space_in_gbs + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/system_storage_capacity_details.py b/src/oci/datacc/models/system_storage_capacity_details.py new file mode 100644 index 0000000000..3fadfb486f --- /dev/null +++ b/src/oci/datacc/models/system_storage_capacity_details.py @@ -0,0 +1,97 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class SystemStorageCapacityDetails(object): + """ + Capacity details of different storage types. + """ + + def __init__(self, **kwargs): + """ + Initializes a new SystemStorageCapacityDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param disk_groups: + The value to assign to the disk_groups property of this SystemStorageCapacityDetails. + :type disk_groups: list[oci.datacc.models.DiskGroupCapacityDetails] + + :param acfs: + The value to assign to the acfs property of this SystemStorageCapacityDetails. + :type acfs: oci.datacc.models.AcfsCapacityDetails + + """ + self.swagger_types = { + 'disk_groups': 'list[DiskGroupCapacityDetails]', + 'acfs': 'AcfsCapacityDetails' + } + self.attribute_map = { + 'disk_groups': 'diskGroups', + 'acfs': 'acfs' + } + self._disk_groups = None + self._acfs = None + + @property + def disk_groups(self): + """ + Gets the disk_groups of this SystemStorageCapacityDetails. + List of storage disk group capacity details. + + + :return: The disk_groups of this SystemStorageCapacityDetails. + :rtype: list[oci.datacc.models.DiskGroupCapacityDetails] + """ + return self._disk_groups + + @disk_groups.setter + def disk_groups(self, disk_groups): + """ + Sets the disk_groups of this SystemStorageCapacityDetails. + List of storage disk group capacity details. + + + :param disk_groups: The disk_groups of this SystemStorageCapacityDetails. + :type: list[oci.datacc.models.DiskGroupCapacityDetails] + """ + self._disk_groups = disk_groups + + @property + def acfs(self): + """ + Gets the acfs of this SystemStorageCapacityDetails. + + :return: The acfs of this SystemStorageCapacityDetails. + :rtype: oci.datacc.models.AcfsCapacityDetails + """ + return self._acfs + + @acfs.setter + def acfs(self, acfs): + """ + Sets the acfs of this SystemStorageCapacityDetails. + + :param acfs: The acfs of this SystemStorageCapacityDetails. + :type: oci.datacc.models.AcfsCapacityDetails + """ + self._acfs = acfs + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/update_infrastructure_details.py b/src/oci/datacc/models/update_infrastructure_details.py new file mode 100644 index 0000000000..e82dafc701 --- /dev/null +++ b/src/oci/datacc/models/update_infrastructure_details.py @@ -0,0 +1,1004 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class UpdateInfrastructureDetails(object): + """ + Request to update Database Infrastructure resource. + """ + + #: A constant which can be used with the system_model property of a UpdateInfrastructureDetails. + #: This constant has a value of "X11_HA_768" + SYSTEM_MODEL_X11_HA_768 = "X11_HA_768" + + #: A constant which can be used with the system_model property of a UpdateInfrastructureDetails. + #: This constant has a value of "X10_HA_512" + SYSTEM_MODEL_X10_HA_512 = "X10_HA_512" + + #: A constant which can be used with the system_model property of a UpdateInfrastructureDetails. + #: This constant has a value of "X8_HA_384" + SYSTEM_MODEL_X8_HA_384 = "X8_HA_384" + + #: A constant which can be used with the shape property of a UpdateInfrastructureDetails. + #: This constant has a value of "SIX_SSDS" + SHAPE_SIX_SSDS = "SIX_SSDS" + + #: A constant which can be used with the shape property of a UpdateInfrastructureDetails. + #: This constant has a value of "TWELVE_SSDS" + SHAPE_TWELVE_SSDS = "TWELVE_SSDS" + + #: A constant which can be used with the shape property of a UpdateInfrastructureDetails. + #: This constant has a value of "EIGHTEEN_SSDS" + SHAPE_EIGHTEEN_SSDS = "EIGHTEEN_SSDS" + + #: A constant which can be used with the shape property of a UpdateInfrastructureDetails. + #: This constant has a value of "TWENTY_FOUR_SSDS" + SHAPE_TWENTY_FOUR_SSDS = "TWENTY_FOUR_SSDS" + + #: A constant which can be used with the client_network_bonding_mode property of a UpdateInfrastructureDetails. + #: This constant has a value of "ACTIVE_BACKUP" + CLIENT_NETWORK_BONDING_MODE_ACTIVE_BACKUP = "ACTIVE_BACKUP" + + #: A constant which can be used with the client_network_bonding_mode property of a UpdateInfrastructureDetails. + #: This constant has a value of "LACP" + CLIENT_NETWORK_BONDING_MODE_LACP = "LACP" + + #: A constant which can be used with the backup_network_bonding_mode property of a UpdateInfrastructureDetails. + #: This constant has a value of "ACTIVE_BACKUP" + BACKUP_NETWORK_BONDING_MODE_ACTIVE_BACKUP = "ACTIVE_BACKUP" + + #: A constant which can be used with the backup_network_bonding_mode property of a UpdateInfrastructureDetails. + #: This constant has a value of "LACP" + BACKUP_NETWORK_BONDING_MODE_LACP = "LACP" + + #: A constant which can be used with the cps_network_bonding_mode property of a UpdateInfrastructureDetails. + #: This constant has a value of "ACTIVE_BACKUP" + CPS_NETWORK_BONDING_MODE_ACTIVE_BACKUP = "ACTIVE_BACKUP" + + #: A constant which can be used with the cps_network_bonding_mode property of a UpdateInfrastructureDetails. + #: This constant has a value of "LACP" + CPS_NETWORK_BONDING_MODE_LACP = "LACP" + + #: A constant which can be used with the client_network_bonding_interface property of a UpdateInfrastructureDetails. + #: This constant has a value of "BTBOND1" + CLIENT_NETWORK_BONDING_INTERFACE_BTBOND1 = "BTBOND1" + + #: A constant which can be used with the client_network_bonding_interface property of a UpdateInfrastructureDetails. + #: This constant has a value of "BTBOND2" + CLIENT_NETWORK_BONDING_INTERFACE_BTBOND2 = "BTBOND2" + + #: A constant which can be used with the client_network_bonding_interface property of a UpdateInfrastructureDetails. + #: This constant has a value of "BTBOND3" + CLIENT_NETWORK_BONDING_INTERFACE_BTBOND3 = "BTBOND3" + + #: A constant which can be used with the client_network_bonding_interface property of a UpdateInfrastructureDetails. + #: This constant has a value of "BTBOND4" + CLIENT_NETWORK_BONDING_INTERFACE_BTBOND4 = "BTBOND4" + + #: A constant which can be used with the client_network_bonding_interface property of a UpdateInfrastructureDetails. + #: This constant has a value of "BTBOND5" + CLIENT_NETWORK_BONDING_INTERFACE_BTBOND5 = "BTBOND5" + + #: A constant which can be used with the client_network_bonding_interface property of a UpdateInfrastructureDetails. + #: This constant has a value of "BTBOND6" + CLIENT_NETWORK_BONDING_INTERFACE_BTBOND6 = "BTBOND6" + + #: A constant which can be used with the backup_network_bonding_interface property of a UpdateInfrastructureDetails. + #: This constant has a value of "BTBOND1" + BACKUP_NETWORK_BONDING_INTERFACE_BTBOND1 = "BTBOND1" + + #: A constant which can be used with the backup_network_bonding_interface property of a UpdateInfrastructureDetails. + #: This constant has a value of "BTBOND2" + BACKUP_NETWORK_BONDING_INTERFACE_BTBOND2 = "BTBOND2" + + #: A constant which can be used with the backup_network_bonding_interface property of a UpdateInfrastructureDetails. + #: This constant has a value of "BTBOND3" + BACKUP_NETWORK_BONDING_INTERFACE_BTBOND3 = "BTBOND3" + + #: A constant which can be used with the backup_network_bonding_interface property of a UpdateInfrastructureDetails. + #: This constant has a value of "BTBOND4" + BACKUP_NETWORK_BONDING_INTERFACE_BTBOND4 = "BTBOND4" + + #: A constant which can be used with the backup_network_bonding_interface property of a UpdateInfrastructureDetails. + #: This constant has a value of "BTBOND5" + BACKUP_NETWORK_BONDING_INTERFACE_BTBOND5 = "BTBOND5" + + #: A constant which can be used with the backup_network_bonding_interface property of a UpdateInfrastructureDetails. + #: This constant has a value of "BTBOND6" + BACKUP_NETWORK_BONDING_INTERFACE_BTBOND6 = "BTBOND6" + + #: A constant which can be used with the cps_network_bonding_interface property of a UpdateInfrastructureDetails. + #: This constant has a value of "BTBOND1" + CPS_NETWORK_BONDING_INTERFACE_BTBOND1 = "BTBOND1" + + #: A constant which can be used with the cps_network_bonding_interface property of a UpdateInfrastructureDetails. + #: This constant has a value of "BTBOND2" + CPS_NETWORK_BONDING_INTERFACE_BTBOND2 = "BTBOND2" + + #: A constant which can be used with the cps_network_bonding_interface property of a UpdateInfrastructureDetails. + #: This constant has a value of "BTBOND3" + CPS_NETWORK_BONDING_INTERFACE_BTBOND3 = "BTBOND3" + + #: A constant which can be used with the cps_network_bonding_interface property of a UpdateInfrastructureDetails. + #: This constant has a value of "BTBOND4" + CPS_NETWORK_BONDING_INTERFACE_BTBOND4 = "BTBOND4" + + #: A constant which can be used with the cps_network_bonding_interface property of a UpdateInfrastructureDetails. + #: This constant has a value of "BTBOND5" + CPS_NETWORK_BONDING_INTERFACE_BTBOND5 = "BTBOND5" + + #: A constant which can be used with the cps_network_bonding_interface property of a UpdateInfrastructureDetails. + #: This constant has a value of "BTBOND6" + CPS_NETWORK_BONDING_INTERFACE_BTBOND6 = "BTBOND6" + + def __init__(self, **kwargs): + """ + Initializes a new UpdateInfrastructureDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param display_name: + The value to assign to the display_name property of this UpdateInfrastructureDetails. + :type display_name: str + + :param description: + The value to assign to the description property of this UpdateInfrastructureDetails. + :type description: str + + :param system_model: + The value to assign to the system_model property of this UpdateInfrastructureDetails. + Allowed values for this property are: "X11_HA_768", "X10_HA_512", "X8_HA_384" + :type system_model: str + + :param shape: + The value to assign to the shape property of this UpdateInfrastructureDetails. + Allowed values for this property are: "SIX_SSDS", "TWELVE_SSDS", "EIGHTEEN_SSDS", "TWENTY_FOUR_SSDS" + :type shape: str + + :param cloud_control_plane_server1: + The value to assign to the cloud_control_plane_server1 property of this UpdateInfrastructureDetails. + :type cloud_control_plane_server1: str + + :param cloud_control_plane_server2: + The value to assign to the cloud_control_plane_server2 property of this UpdateInfrastructureDetails. + :type cloud_control_plane_server2: str + + :param netmask: + The value to assign to the netmask property of this UpdateInfrastructureDetails. + :type netmask: str + + :param gateway: + The value to assign to the gateway property of this UpdateInfrastructureDetails. + :type gateway: str + + :param admin_networkcidr: + The value to assign to the admin_networkcidr property of this UpdateInfrastructureDetails. + :type admin_networkcidr: str + + :param data_disk_percentage: + The value to assign to the data_disk_percentage property of this UpdateInfrastructureDetails. + :type data_disk_percentage: int + + :param contacts: + The value to assign to the contacts property of this UpdateInfrastructureDetails. + :type contacts: list[oci.datacc.models.InfrastructureContact] + + :param dns_servers: + The value to assign to the dns_servers property of this UpdateInfrastructureDetails. + :type dns_servers: list[str] + + :param ntp_servers: + The value to assign to the ntp_servers property of this UpdateInfrastructureDetails. + :type ntp_servers: list[str] + + :param client_network_bonding_mode: + The value to assign to the client_network_bonding_mode property of this UpdateInfrastructureDetails. + Allowed values for this property are: "ACTIVE_BACKUP", "LACP" + :type client_network_bonding_mode: str + + :param backup_network_bonding_mode: + The value to assign to the backup_network_bonding_mode property of this UpdateInfrastructureDetails. + Allowed values for this property are: "ACTIVE_BACKUP", "LACP" + :type backup_network_bonding_mode: str + + :param cps_network_bonding_mode: + The value to assign to the cps_network_bonding_mode property of this UpdateInfrastructureDetails. + Allowed values for this property are: "ACTIVE_BACKUP", "LACP" + :type cps_network_bonding_mode: str + + :param client_network_bonding_interface: + The value to assign to the client_network_bonding_interface property of this UpdateInfrastructureDetails. + Allowed values for this property are: "BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6" + :type client_network_bonding_interface: str + + :param backup_network_bonding_interface: + The value to assign to the backup_network_bonding_interface property of this UpdateInfrastructureDetails. + Allowed values for this property are: "BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6" + :type backup_network_bonding_interface: str + + :param cps_network_bonding_interface: + The value to assign to the cps_network_bonding_interface property of this UpdateInfrastructureDetails. + Allowed values for this property are: "BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6" + :type cps_network_bonding_interface: str + + :param acfs_file_system_storage_in_gbs: + The value to assign to the acfs_file_system_storage_in_gbs property of this UpdateInfrastructureDetails. + :type acfs_file_system_storage_in_gbs: float + + :param corporate_proxy: + The value to assign to the corporate_proxy property of this UpdateInfrastructureDetails. + :type corporate_proxy: str + + :param vlan_id: + The value to assign to the vlan_id property of this UpdateInfrastructureDetails. + :type vlan_id: str + + :param maintenance_window: + The value to assign to the maintenance_window property of this UpdateInfrastructureDetails. + :type maintenance_window: oci.datacc.models.MaintenanceWindow + + :param defined_tags: + The value to assign to the defined_tags property of this UpdateInfrastructureDetails. + :type defined_tags: dict(str, dict(str, object)) + + :param freeform_tags: + The value to assign to the freeform_tags property of this UpdateInfrastructureDetails. + :type freeform_tags: dict(str, str) + + """ + self.swagger_types = { + 'display_name': 'str', + 'description': 'str', + 'system_model': 'str', + 'shape': 'str', + 'cloud_control_plane_server1': 'str', + 'cloud_control_plane_server2': 'str', + 'netmask': 'str', + 'gateway': 'str', + 'admin_networkcidr': 'str', + 'data_disk_percentage': 'int', + 'contacts': 'list[InfrastructureContact]', + 'dns_servers': 'list[str]', + 'ntp_servers': 'list[str]', + 'client_network_bonding_mode': 'str', + 'backup_network_bonding_mode': 'str', + 'cps_network_bonding_mode': 'str', + 'client_network_bonding_interface': 'str', + 'backup_network_bonding_interface': 'str', + 'cps_network_bonding_interface': 'str', + 'acfs_file_system_storage_in_gbs': 'float', + 'corporate_proxy': 'str', + 'vlan_id': 'str', + 'maintenance_window': 'MaintenanceWindow', + 'defined_tags': 'dict(str, dict(str, object))', + 'freeform_tags': 'dict(str, str)' + } + self.attribute_map = { + 'display_name': 'displayName', + 'description': 'description', + 'system_model': 'systemModel', + 'shape': 'shape', + 'cloud_control_plane_server1': 'cloudControlPlaneServer1', + 'cloud_control_plane_server2': 'cloudControlPlaneServer2', + 'netmask': 'netmask', + 'gateway': 'gateway', + 'admin_networkcidr': 'adminNetworkcidr', + 'data_disk_percentage': 'dataDiskPercentage', + 'contacts': 'contacts', + 'dns_servers': 'dnsServers', + 'ntp_servers': 'ntpServers', + 'client_network_bonding_mode': 'clientNetworkBondingMode', + 'backup_network_bonding_mode': 'backupNetworkBondingMode', + 'cps_network_bonding_mode': 'cpsNetworkBondingMode', + 'client_network_bonding_interface': 'clientNetworkBondingInterface', + 'backup_network_bonding_interface': 'backupNetworkBondingInterface', + 'cps_network_bonding_interface': 'cpsNetworkBondingInterface', + 'acfs_file_system_storage_in_gbs': 'acfsFileSystemStorageInGbs', + 'corporate_proxy': 'corporateProxy', + 'vlan_id': 'vlanId', + 'maintenance_window': 'maintenanceWindow', + 'defined_tags': 'definedTags', + 'freeform_tags': 'freeformTags' + } + self._display_name = None + self._description = None + self._system_model = None + self._shape = None + self._cloud_control_plane_server1 = None + self._cloud_control_plane_server2 = None + self._netmask = None + self._gateway = None + self._admin_networkcidr = None + self._data_disk_percentage = None + self._contacts = None + self._dns_servers = None + self._ntp_servers = None + self._client_network_bonding_mode = None + self._backup_network_bonding_mode = None + self._cps_network_bonding_mode = None + self._client_network_bonding_interface = None + self._backup_network_bonding_interface = None + self._cps_network_bonding_interface = None + self._acfs_file_system_storage_in_gbs = None + self._corporate_proxy = None + self._vlan_id = None + self._maintenance_window = None + self._defined_tags = None + self._freeform_tags = None + + @property + def display_name(self): + """ + Gets the display_name of this UpdateInfrastructureDetails. + The user-friendly name for the Database Infrastructure. The name does not need to be unique. + + + :return: The display_name of this UpdateInfrastructureDetails. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this UpdateInfrastructureDetails. + The user-friendly name for the Database Infrastructure. The name does not need to be unique. + + + :param display_name: The display_name of this UpdateInfrastructureDetails. + :type: str + """ + self._display_name = display_name + + @property + def description(self): + """ + Gets the description of this UpdateInfrastructureDetails. + Database Infrastructure description. + + + :return: The description of this UpdateInfrastructureDetails. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this UpdateInfrastructureDetails. + Database Infrastructure description. + + + :param description: The description of this UpdateInfrastructureDetails. + :type: str + """ + self._description = description + + @property + def system_model(self): + """ + Gets the system_model of this UpdateInfrastructureDetails. + Database Infrastructure System Model specification. The system model determines the model of the Database Infrastructure hardware to be used. + + Allowed values for this property are: "X11_HA_768", "X10_HA_512", "X8_HA_384" + + + :return: The system_model of this UpdateInfrastructureDetails. + :rtype: str + """ + return self._system_model + + @system_model.setter + def system_model(self, system_model): + """ + Sets the system_model of this UpdateInfrastructureDetails. + Database Infrastructure System Model specification. The system model determines the model of the Database Infrastructure hardware to be used. + + + :param system_model: The system_model of this UpdateInfrastructureDetails. + :type: str + """ + allowed_values = ["X11_HA_768", "X10_HA_512", "X8_HA_384"] + if not value_allowed_none_or_none_sentinel(system_model, allowed_values): + raise ValueError( + f"Invalid value for `system_model`, must be None or one of {allowed_values}" + ) + self._system_model = system_model + + @property + def shape(self): + """ + Gets the shape of this UpdateInfrastructureDetails. + The shape of the Database Infrastructure. The shape determines the amount of CPU, storage, and memory resources allocated to the instance. + + Allowed values for this property are: "SIX_SSDS", "TWELVE_SSDS", "EIGHTEEN_SSDS", "TWENTY_FOUR_SSDS" + + + :return: The shape of this UpdateInfrastructureDetails. + :rtype: str + """ + return self._shape + + @shape.setter + def shape(self, shape): + """ + Sets the shape of this UpdateInfrastructureDetails. + The shape of the Database Infrastructure. The shape determines the amount of CPU, storage, and memory resources allocated to the instance. + + + :param shape: The shape of this UpdateInfrastructureDetails. + :type: str + """ + allowed_values = ["SIX_SSDS", "TWELVE_SSDS", "EIGHTEEN_SSDS", "TWENTY_FOUR_SSDS"] + if not value_allowed_none_or_none_sentinel(shape, allowed_values): + raise ValueError( + f"Invalid value for `shape`, must be None or one of {allowed_values}" + ) + self._shape = shape + + @property + def cloud_control_plane_server1(self): + """ + Gets the cloud_control_plane_server1 of this UpdateInfrastructureDetails. + The IP address for the first control plane server. + + + :return: The cloud_control_plane_server1 of this UpdateInfrastructureDetails. + :rtype: str + """ + return self._cloud_control_plane_server1 + + @cloud_control_plane_server1.setter + def cloud_control_plane_server1(self, cloud_control_plane_server1): + """ + Sets the cloud_control_plane_server1 of this UpdateInfrastructureDetails. + The IP address for the first control plane server. + + + :param cloud_control_plane_server1: The cloud_control_plane_server1 of this UpdateInfrastructureDetails. + :type: str + """ + self._cloud_control_plane_server1 = cloud_control_plane_server1 + + @property + def cloud_control_plane_server2(self): + """ + Gets the cloud_control_plane_server2 of this UpdateInfrastructureDetails. + The IP address for the second control plane server. + + + :return: The cloud_control_plane_server2 of this UpdateInfrastructureDetails. + :rtype: str + """ + return self._cloud_control_plane_server2 + + @cloud_control_plane_server2.setter + def cloud_control_plane_server2(self, cloud_control_plane_server2): + """ + Sets the cloud_control_plane_server2 of this UpdateInfrastructureDetails. + The IP address for the second control plane server. + + + :param cloud_control_plane_server2: The cloud_control_plane_server2 of this UpdateInfrastructureDetails. + :type: str + """ + self._cloud_control_plane_server2 = cloud_control_plane_server2 + + @property + def netmask(self): + """ + Gets the netmask of this UpdateInfrastructureDetails. + The netmask for the control plane network. + + + :return: The netmask of this UpdateInfrastructureDetails. + :rtype: str + """ + return self._netmask + + @netmask.setter + def netmask(self, netmask): + """ + Sets the netmask of this UpdateInfrastructureDetails. + The netmask for the control plane network. + + + :param netmask: The netmask of this UpdateInfrastructureDetails. + :type: str + """ + self._netmask = netmask + + @property + def gateway(self): + """ + Gets the gateway of this UpdateInfrastructureDetails. + The gateway for the control plane network. + + + :return: The gateway of this UpdateInfrastructureDetails. + :rtype: str + """ + return self._gateway + + @gateway.setter + def gateway(self, gateway): + """ + Sets the gateway of this UpdateInfrastructureDetails. + The gateway for the control plane network. + + + :param gateway: The gateway of this UpdateInfrastructureDetails. + :type: str + """ + self._gateway = gateway + + @property + def admin_networkcidr(self): + """ + Gets the admin_networkcidr of this UpdateInfrastructureDetails. + The CIDR block for the system network. The system network is a private network in Database Infrastructure and is not connected to your corporate network. The system network is used for storage (ASM) traffic, high-performance interconnect traffic and administration of infrastructure components. + + + :return: The admin_networkcidr of this UpdateInfrastructureDetails. + :rtype: str + """ + return self._admin_networkcidr + + @admin_networkcidr.setter + def admin_networkcidr(self, admin_networkcidr): + """ + Sets the admin_networkcidr of this UpdateInfrastructureDetails. + The CIDR block for the system network. The system network is a private network in Database Infrastructure and is not connected to your corporate network. The system network is used for storage (ASM) traffic, high-performance interconnect traffic and administration of infrastructure components. + + + :param admin_networkcidr: The admin_networkcidr of this UpdateInfrastructureDetails. + :type: str + """ + self._admin_networkcidr = admin_networkcidr + + @property + def data_disk_percentage(self): + """ + Gets the data_disk_percentage of this UpdateInfrastructureDetails. + Percentage of disk space assigned for DATA disk group. Remaining disk space will get assiged to RECO disk group + + + :return: The data_disk_percentage of this UpdateInfrastructureDetails. + :rtype: int + """ + return self._data_disk_percentage + + @data_disk_percentage.setter + def data_disk_percentage(self, data_disk_percentage): + """ + Sets the data_disk_percentage of this UpdateInfrastructureDetails. + Percentage of disk space assigned for DATA disk group. Remaining disk space will get assiged to RECO disk group + + + :param data_disk_percentage: The data_disk_percentage of this UpdateInfrastructureDetails. + :type: int + """ + self._data_disk_percentage = data_disk_percentage + + @property + def contacts(self): + """ + Gets the contacts of this UpdateInfrastructureDetails. + The list of contacts for the Database Infrastructure. + + + :return: The contacts of this UpdateInfrastructureDetails. + :rtype: list[oci.datacc.models.InfrastructureContact] + """ + return self._contacts + + @contacts.setter + def contacts(self, contacts): + """ + Sets the contacts of this UpdateInfrastructureDetails. + The list of contacts for the Database Infrastructure. + + + :param contacts: The contacts of this UpdateInfrastructureDetails. + :type: list[oci.datacc.models.InfrastructureContact] + """ + self._contacts = contacts + + @property + def dns_servers(self): + """ + Gets the dns_servers of this UpdateInfrastructureDetails. + The list of DNS server IP addresses. Maximum of 3 allowed. + + + :return: The dns_servers of this UpdateInfrastructureDetails. + :rtype: list[str] + """ + return self._dns_servers + + @dns_servers.setter + def dns_servers(self, dns_servers): + """ + Sets the dns_servers of this UpdateInfrastructureDetails. + The list of DNS server IP addresses. Maximum of 3 allowed. + + + :param dns_servers: The dns_servers of this UpdateInfrastructureDetails. + :type: list[str] + """ + self._dns_servers = dns_servers + + @property + def ntp_servers(self): + """ + Gets the ntp_servers of this UpdateInfrastructureDetails. + The list of NTP server IP addresses. Maximum of 3 allowed. + + + :return: The ntp_servers of this UpdateInfrastructureDetails. + :rtype: list[str] + """ + return self._ntp_servers + + @ntp_servers.setter + def ntp_servers(self, ntp_servers): + """ + Sets the ntp_servers of this UpdateInfrastructureDetails. + The list of NTP server IP addresses. Maximum of 3 allowed. + + + :param ntp_servers: The ntp_servers of this UpdateInfrastructureDetails. + :type: list[str] + """ + self._ntp_servers = ntp_servers + + @property + def client_network_bonding_mode(self): + """ + Gets the client_network_bonding_mode of this UpdateInfrastructureDetails. + The network bonding mode for Client networks for the Database Infrastructure. + + Allowed values for this property are: "ACTIVE_BACKUP", "LACP" + + + :return: The client_network_bonding_mode of this UpdateInfrastructureDetails. + :rtype: str + """ + return self._client_network_bonding_mode + + @client_network_bonding_mode.setter + def client_network_bonding_mode(self, client_network_bonding_mode): + """ + Sets the client_network_bonding_mode of this UpdateInfrastructureDetails. + The network bonding mode for Client networks for the Database Infrastructure. + + + :param client_network_bonding_mode: The client_network_bonding_mode of this UpdateInfrastructureDetails. + :type: str + """ + allowed_values = ["ACTIVE_BACKUP", "LACP"] + if not value_allowed_none_or_none_sentinel(client_network_bonding_mode, allowed_values): + raise ValueError( + f"Invalid value for `client_network_bonding_mode`, must be None or one of {allowed_values}" + ) + self._client_network_bonding_mode = client_network_bonding_mode + + @property + def backup_network_bonding_mode(self): + """ + Gets the backup_network_bonding_mode of this UpdateInfrastructureDetails. + The network bonding mode for Backup networks for the Database Infrastructure. + + Allowed values for this property are: "ACTIVE_BACKUP", "LACP" + + + :return: The backup_network_bonding_mode of this UpdateInfrastructureDetails. + :rtype: str + """ + return self._backup_network_bonding_mode + + @backup_network_bonding_mode.setter + def backup_network_bonding_mode(self, backup_network_bonding_mode): + """ + Sets the backup_network_bonding_mode of this UpdateInfrastructureDetails. + The network bonding mode for Backup networks for the Database Infrastructure. + + + :param backup_network_bonding_mode: The backup_network_bonding_mode of this UpdateInfrastructureDetails. + :type: str + """ + allowed_values = ["ACTIVE_BACKUP", "LACP"] + if not value_allowed_none_or_none_sentinel(backup_network_bonding_mode, allowed_values): + raise ValueError( + f"Invalid value for `backup_network_bonding_mode`, must be None or one of {allowed_values}" + ) + self._backup_network_bonding_mode = backup_network_bonding_mode + + @property + def cps_network_bonding_mode(self): + """ + Gets the cps_network_bonding_mode of this UpdateInfrastructureDetails. + The network bonding mode for CPS networks for the Database Infrastructure. + + Allowed values for this property are: "ACTIVE_BACKUP", "LACP" + + + :return: The cps_network_bonding_mode of this UpdateInfrastructureDetails. + :rtype: str + """ + return self._cps_network_bonding_mode + + @cps_network_bonding_mode.setter + def cps_network_bonding_mode(self, cps_network_bonding_mode): + """ + Sets the cps_network_bonding_mode of this UpdateInfrastructureDetails. + The network bonding mode for CPS networks for the Database Infrastructure. + + + :param cps_network_bonding_mode: The cps_network_bonding_mode of this UpdateInfrastructureDetails. + :type: str + """ + allowed_values = ["ACTIVE_BACKUP", "LACP"] + if not value_allowed_none_or_none_sentinel(cps_network_bonding_mode, allowed_values): + raise ValueError( + f"Invalid value for `cps_network_bonding_mode`, must be None or one of {allowed_values}" + ) + self._cps_network_bonding_mode = cps_network_bonding_mode + + @property + def client_network_bonding_interface(self): + """ + Gets the client_network_bonding_interface of this UpdateInfrastructureDetails. + The network bonding interface for client network for the Database Infrastructure. + + Allowed values for this property are: "BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6" + + + :return: The client_network_bonding_interface of this UpdateInfrastructureDetails. + :rtype: str + """ + return self._client_network_bonding_interface + + @client_network_bonding_interface.setter + def client_network_bonding_interface(self, client_network_bonding_interface): + """ + Sets the client_network_bonding_interface of this UpdateInfrastructureDetails. + The network bonding interface for client network for the Database Infrastructure. + + + :param client_network_bonding_interface: The client_network_bonding_interface of this UpdateInfrastructureDetails. + :type: str + """ + allowed_values = ["BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6"] + if not value_allowed_none_or_none_sentinel(client_network_bonding_interface, allowed_values): + raise ValueError( + f"Invalid value for `client_network_bonding_interface`, must be None or one of {allowed_values}" + ) + self._client_network_bonding_interface = client_network_bonding_interface + + @property + def backup_network_bonding_interface(self): + """ + Gets the backup_network_bonding_interface of this UpdateInfrastructureDetails. + The network bonding interface for backup network for the Database Infrastructure. + + Allowed values for this property are: "BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6" + + + :return: The backup_network_bonding_interface of this UpdateInfrastructureDetails. + :rtype: str + """ + return self._backup_network_bonding_interface + + @backup_network_bonding_interface.setter + def backup_network_bonding_interface(self, backup_network_bonding_interface): + """ + Sets the backup_network_bonding_interface of this UpdateInfrastructureDetails. + The network bonding interface for backup network for the Database Infrastructure. + + + :param backup_network_bonding_interface: The backup_network_bonding_interface of this UpdateInfrastructureDetails. + :type: str + """ + allowed_values = ["BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6"] + if not value_allowed_none_or_none_sentinel(backup_network_bonding_interface, allowed_values): + raise ValueError( + f"Invalid value for `backup_network_bonding_interface`, must be None or one of {allowed_values}" + ) + self._backup_network_bonding_interface = backup_network_bonding_interface + + @property + def cps_network_bonding_interface(self): + """ + Gets the cps_network_bonding_interface of this UpdateInfrastructureDetails. + The network bonding interface for CPS network for the Database Infrastructure. + + Allowed values for this property are: "BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6" + + + :return: The cps_network_bonding_interface of this UpdateInfrastructureDetails. + :rtype: str + """ + return self._cps_network_bonding_interface + + @cps_network_bonding_interface.setter + def cps_network_bonding_interface(self, cps_network_bonding_interface): + """ + Sets the cps_network_bonding_interface of this UpdateInfrastructureDetails. + The network bonding interface for CPS network for the Database Infrastructure. + + + :param cps_network_bonding_interface: The cps_network_bonding_interface of this UpdateInfrastructureDetails. + :type: str + """ + allowed_values = ["BTBOND1", "BTBOND2", "BTBOND3", "BTBOND4", "BTBOND5", "BTBOND6"] + if not value_allowed_none_or_none_sentinel(cps_network_bonding_interface, allowed_values): + raise ValueError( + f"Invalid value for `cps_network_bonding_interface`, must be None or one of {allowed_values}" + ) + self._cps_network_bonding_interface = cps_network_bonding_interface + + @property + def acfs_file_system_storage_in_gbs(self): + """ + Gets the acfs_file_system_storage_in_gbs of this UpdateInfrastructureDetails. + The amount of storage (in GB) in the DATA disk group that is reserved for creating local storage for VM Clusters and application VMs. + + + :return: The acfs_file_system_storage_in_gbs of this UpdateInfrastructureDetails. + :rtype: float + """ + return self._acfs_file_system_storage_in_gbs + + @acfs_file_system_storage_in_gbs.setter + def acfs_file_system_storage_in_gbs(self, acfs_file_system_storage_in_gbs): + """ + Sets the acfs_file_system_storage_in_gbs of this UpdateInfrastructureDetails. + The amount of storage (in GB) in the DATA disk group that is reserved for creating local storage for VM Clusters and application VMs. + + + :param acfs_file_system_storage_in_gbs: The acfs_file_system_storage_in_gbs of this UpdateInfrastructureDetails. + :type: float + """ + self._acfs_file_system_storage_in_gbs = acfs_file_system_storage_in_gbs + + @property + def corporate_proxy(self): + """ + Gets the corporate_proxy of this UpdateInfrastructureDetails. + The corporate network proxy for access to the control plane network. Oracle recommends using an HTTPS proxy when possible + for enhanced security. + + + :return: The corporate_proxy of this UpdateInfrastructureDetails. + :rtype: str + """ + return self._corporate_proxy + + @corporate_proxy.setter + def corporate_proxy(self, corporate_proxy): + """ + Sets the corporate_proxy of this UpdateInfrastructureDetails. + The corporate network proxy for access to the control plane network. Oracle recommends using an HTTPS proxy when possible + for enhanced security. + + + :param corporate_proxy: The corporate_proxy of this UpdateInfrastructureDetails. + :type: str + """ + self._corporate_proxy = corporate_proxy + + @property + def vlan_id(self): + """ + Gets the vlan_id of this UpdateInfrastructureDetails. + The CPS network VLAN ID. + + + :return: The vlan_id of this UpdateInfrastructureDetails. + :rtype: str + """ + return self._vlan_id + + @vlan_id.setter + def vlan_id(self, vlan_id): + """ + Sets the vlan_id of this UpdateInfrastructureDetails. + The CPS network VLAN ID. + + + :param vlan_id: The vlan_id of this UpdateInfrastructureDetails. + :type: str + """ + self._vlan_id = vlan_id + + @property + def maintenance_window(self): + """ + Gets the maintenance_window of this UpdateInfrastructureDetails. + + :return: The maintenance_window of this UpdateInfrastructureDetails. + :rtype: oci.datacc.models.MaintenanceWindow + """ + return self._maintenance_window + + @maintenance_window.setter + def maintenance_window(self, maintenance_window): + """ + Sets the maintenance_window of this UpdateInfrastructureDetails. + + :param maintenance_window: The maintenance_window of this UpdateInfrastructureDetails. + :type: oci.datacc.models.MaintenanceWindow + """ + self._maintenance_window = maintenance_window + + @property + def defined_tags(self): + """ + Gets the defined_tags of this UpdateInfrastructureDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this UpdateInfrastructureDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this UpdateInfrastructureDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this UpdateInfrastructureDetails. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this UpdateInfrastructureDetails. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this UpdateInfrastructureDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this UpdateInfrastructureDetails. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this UpdateInfrastructureDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/update_maintenance_run_details.py b/src/oci/datacc/models/update_maintenance_run_details.py new file mode 100644 index 0000000000..4722a03e0f --- /dev/null +++ b/src/oci/datacc/models/update_maintenance_run_details.py @@ -0,0 +1,216 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class UpdateMaintenanceRunDetails(object): + """ + Request to update maintenance run resource. + """ + + #: A constant which can be used with the patching_mode property of a UpdateMaintenanceRunDetails. + #: This constant has a value of "ROLLING" + PATCHING_MODE_ROLLING = "ROLLING" + + #: A constant which can be used with the patching_mode property of a UpdateMaintenanceRunDetails. + #: This constant has a value of "NONROLLING" + PATCHING_MODE_NONROLLING = "NONROLLING" + + def __init__(self, **kwargs): + """ + Initializes a new UpdateMaintenanceRunDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param patching_mode: + The value to assign to the patching_mode property of this UpdateMaintenanceRunDetails. + Allowed values for this property are: "ROLLING", "NONROLLING" + :type patching_mode: str + + :param is_custom_action_timeout_enabled: + The value to assign to the is_custom_action_timeout_enabled property of this UpdateMaintenanceRunDetails. + :type is_custom_action_timeout_enabled: bool + + :param custom_action_timeout_in_mins: + The value to assign to the custom_action_timeout_in_mins property of this UpdateMaintenanceRunDetails. + :type custom_action_timeout_in_mins: int + + :param defined_tags: + The value to assign to the defined_tags property of this UpdateMaintenanceRunDetails. + :type defined_tags: dict(str, dict(str, object)) + + :param freeform_tags: + The value to assign to the freeform_tags property of this UpdateMaintenanceRunDetails. + :type freeform_tags: dict(str, str) + + """ + self.swagger_types = { + 'patching_mode': 'str', + 'is_custom_action_timeout_enabled': 'bool', + 'custom_action_timeout_in_mins': 'int', + 'defined_tags': 'dict(str, dict(str, object))', + 'freeform_tags': 'dict(str, str)' + } + self.attribute_map = { + 'patching_mode': 'patchingMode', + 'is_custom_action_timeout_enabled': 'isCustomActionTimeoutEnabled', + 'custom_action_timeout_in_mins': 'customActionTimeoutInMins', + 'defined_tags': 'definedTags', + 'freeform_tags': 'freeformTags' + } + self._patching_mode = None + self._is_custom_action_timeout_enabled = None + self._custom_action_timeout_in_mins = None + self._defined_tags = None + self._freeform_tags = None + + @property + def patching_mode(self): + """ + **[Required]** Gets the patching_mode of this UpdateMaintenanceRunDetails. + Database Infrastructure patching mode, either \"ROLLING\" or \"NONROLLING\". Default value is ROLLING. + + Allowed values for this property are: "ROLLING", "NONROLLING" + + + :return: The patching_mode of this UpdateMaintenanceRunDetails. + :rtype: str + """ + return self._patching_mode + + @patching_mode.setter + def patching_mode(self, patching_mode): + """ + Sets the patching_mode of this UpdateMaintenanceRunDetails. + Database Infrastructure patching mode, either \"ROLLING\" or \"NONROLLING\". Default value is ROLLING. + + + :param patching_mode: The patching_mode of this UpdateMaintenanceRunDetails. + :type: str + """ + allowed_values = ["ROLLING", "NONROLLING"] + if not value_allowed_none_or_none_sentinel(patching_mode, allowed_values): + raise ValueError( + f"Invalid value for `patching_mode`, must be None or one of {allowed_values}" + ) + self._patching_mode = patching_mode + + @property + def is_custom_action_timeout_enabled(self): + """ + Gets the is_custom_action_timeout_enabled of this UpdateMaintenanceRunDetails. + If true, enables configuration of customActionTimeoutInMins for this maintenance run update request. + + + :return: The is_custom_action_timeout_enabled of this UpdateMaintenanceRunDetails. + :rtype: bool + """ + return self._is_custom_action_timeout_enabled + + @is_custom_action_timeout_enabled.setter + def is_custom_action_timeout_enabled(self, is_custom_action_timeout_enabled): + """ + Sets the is_custom_action_timeout_enabled of this UpdateMaintenanceRunDetails. + If true, enables configuration of customActionTimeoutInMins for this maintenance run update request. + + + :param is_custom_action_timeout_enabled: The is_custom_action_timeout_enabled of this UpdateMaintenanceRunDetails. + :type: bool + """ + self._is_custom_action_timeout_enabled = is_custom_action_timeout_enabled + + @property + def custom_action_timeout_in_mins(self): + """ + **[Required]** Gets the custom_action_timeout_in_mins of this UpdateMaintenanceRunDetails. + Determines the amount of time the system will wait before the start of each compute server patching operation. + Supported values are 15 to 120 minutes. + + + :return: The custom_action_timeout_in_mins of this UpdateMaintenanceRunDetails. + :rtype: int + """ + return self._custom_action_timeout_in_mins + + @custom_action_timeout_in_mins.setter + def custom_action_timeout_in_mins(self, custom_action_timeout_in_mins): + """ + Sets the custom_action_timeout_in_mins of this UpdateMaintenanceRunDetails. + Determines the amount of time the system will wait before the start of each compute server patching operation. + Supported values are 15 to 120 minutes. + + + :param custom_action_timeout_in_mins: The custom_action_timeout_in_mins of this UpdateMaintenanceRunDetails. + :type: int + """ + self._custom_action_timeout_in_mins = custom_action_timeout_in_mins + + @property + def defined_tags(self): + """ + Gets the defined_tags of this UpdateMaintenanceRunDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this UpdateMaintenanceRunDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this UpdateMaintenanceRunDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this UpdateMaintenanceRunDetails. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this UpdateMaintenanceRunDetails. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this UpdateMaintenanceRunDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this UpdateMaintenanceRunDetails. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this UpdateMaintenanceRunDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/update_vm_cluster_network_details.py b/src/oci/datacc/models/update_vm_cluster_network_details.py new file mode 100644 index 0000000000..9270a428a3 --- /dev/null +++ b/src/oci/datacc/models/update_vm_cluster_network_details.py @@ -0,0 +1,322 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class UpdateVmClusterNetworkDetails(object): + """ + Details for an VM cluster network. + """ + + def __init__(self, **kwargs): + """ + Initializes a new UpdateVmClusterNetworkDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param display_name: + The value to assign to the display_name property of this UpdateVmClusterNetworkDetails. + :type display_name: str + + :param scans: + The value to assign to the scans property of this UpdateVmClusterNetworkDetails. + :type scans: list[oci.datacc.models.ScanDetails] + + :param listener_port: + The value to assign to the listener_port property of this UpdateVmClusterNetworkDetails. + :type listener_port: int + + :param listener_port_ssl: + The value to assign to the listener_port_ssl property of this UpdateVmClusterNetworkDetails. + :type listener_port_ssl: int + + :param dns_servers: + The value to assign to the dns_servers property of this UpdateVmClusterNetworkDetails. + :type dns_servers: list[str] + + :param ntp_servers: + The value to assign to the ntp_servers property of this UpdateVmClusterNetworkDetails. + :type ntp_servers: list[str] + + :param vm_networks: + The value to assign to the vm_networks property of this UpdateVmClusterNetworkDetails. + :type vm_networks: list[oci.datacc.models.VmNetworkDetails] + + :param freeform_tags: + The value to assign to the freeform_tags property of this UpdateVmClusterNetworkDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this UpdateVmClusterNetworkDetails. + :type defined_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'display_name': 'str', + 'scans': 'list[ScanDetails]', + 'listener_port': 'int', + 'listener_port_ssl': 'int', + 'dns_servers': 'list[str]', + 'ntp_servers': 'list[str]', + 'vm_networks': 'list[VmNetworkDetails]', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'display_name': 'displayName', + 'scans': 'scans', + 'listener_port': 'listenerPort', + 'listener_port_ssl': 'listenerPortSsl', + 'dns_servers': 'dnsServers', + 'ntp_servers': 'ntpServers', + 'vm_networks': 'vmNetworks', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' + } + self._display_name = None + self._scans = None + self._listener_port = None + self._listener_port_ssl = None + self._dns_servers = None + self._ntp_servers = None + self._vm_networks = None + self._freeform_tags = None + self._defined_tags = None + + @property + def display_name(self): + """ + Gets the display_name of this UpdateVmClusterNetworkDetails. + The user-friendly name for the VM cluster network. The name does not need to be unique. + + + :return: The display_name of this UpdateVmClusterNetworkDetails. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this UpdateVmClusterNetworkDetails. + The user-friendly name for the VM cluster network. The name does not need to be unique. + + + :param display_name: The display_name of this UpdateVmClusterNetworkDetails. + :type: str + """ + self._display_name = display_name + + @property + def scans(self): + """ + Gets the scans of this UpdateVmClusterNetworkDetails. + The SCAN details. + + + :return: The scans of this UpdateVmClusterNetworkDetails. + :rtype: list[oci.datacc.models.ScanDetails] + """ + return self._scans + + @scans.setter + def scans(self, scans): + """ + Sets the scans of this UpdateVmClusterNetworkDetails. + The SCAN details. + + + :param scans: The scans of this UpdateVmClusterNetworkDetails. + :type: list[oci.datacc.models.ScanDetails] + """ + self._scans = scans + + @property + def listener_port(self): + """ + Gets the listener_port of this UpdateVmClusterNetworkDetails. + The listener TCP/IP port. + + + :return: The listener_port of this UpdateVmClusterNetworkDetails. + :rtype: int + """ + return self._listener_port + + @listener_port.setter + def listener_port(self, listener_port): + """ + Sets the listener_port of this UpdateVmClusterNetworkDetails. + The listener TCP/IP port. + + + :param listener_port: The listener_port of this UpdateVmClusterNetworkDetails. + :type: int + """ + self._listener_port = listener_port + + @property + def listener_port_ssl(self): + """ + Gets the listener_port_ssl of this UpdateVmClusterNetworkDetails. + The listener TCP/IP SSL port. Default is 2484. + + + :return: The listener_port_ssl of this UpdateVmClusterNetworkDetails. + :rtype: int + """ + return self._listener_port_ssl + + @listener_port_ssl.setter + def listener_port_ssl(self, listener_port_ssl): + """ + Sets the listener_port_ssl of this UpdateVmClusterNetworkDetails. + The listener TCP/IP SSL port. Default is 2484. + + + :param listener_port_ssl: The listener_port_ssl of this UpdateVmClusterNetworkDetails. + :type: int + """ + self._listener_port_ssl = listener_port_ssl + + @property + def dns_servers(self): + """ + Gets the dns_servers of this UpdateVmClusterNetworkDetails. + The list of DNS server IP addresses. Maximum of 3 allowed. + + + :return: The dns_servers of this UpdateVmClusterNetworkDetails. + :rtype: list[str] + """ + return self._dns_servers + + @dns_servers.setter + def dns_servers(self, dns_servers): + """ + Sets the dns_servers of this UpdateVmClusterNetworkDetails. + The list of DNS server IP addresses. Maximum of 3 allowed. + + + :param dns_servers: The dns_servers of this UpdateVmClusterNetworkDetails. + :type: list[str] + """ + self._dns_servers = dns_servers + + @property + def ntp_servers(self): + """ + Gets the ntp_servers of this UpdateVmClusterNetworkDetails. + The list of NTP server IP addresses. Maximum of 3 allowed. + + + :return: The ntp_servers of this UpdateVmClusterNetworkDetails. + :rtype: list[str] + """ + return self._ntp_servers + + @ntp_servers.setter + def ntp_servers(self, ntp_servers): + """ + Sets the ntp_servers of this UpdateVmClusterNetworkDetails. + The list of NTP server IP addresses. Maximum of 3 allowed. + + + :param ntp_servers: The ntp_servers of this UpdateVmClusterNetworkDetails. + :type: list[str] + """ + self._ntp_servers = ntp_servers + + @property + def vm_networks(self): + """ + Gets the vm_networks of this UpdateVmClusterNetworkDetails. + Details of the client and backup networks. + + + :return: The vm_networks of this UpdateVmClusterNetworkDetails. + :rtype: list[oci.datacc.models.VmNetworkDetails] + """ + return self._vm_networks + + @vm_networks.setter + def vm_networks(self, vm_networks): + """ + Sets the vm_networks of this UpdateVmClusterNetworkDetails. + Details of the client and backup networks. + + + :param vm_networks: The vm_networks of this UpdateVmClusterNetworkDetails. + :type: list[oci.datacc.models.VmNetworkDetails] + """ + self._vm_networks = vm_networks + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this UpdateVmClusterNetworkDetails. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this UpdateVmClusterNetworkDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this UpdateVmClusterNetworkDetails. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this UpdateVmClusterNetworkDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this UpdateVmClusterNetworkDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this UpdateVmClusterNetworkDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this UpdateVmClusterNetworkDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this UpdateVmClusterNetworkDetails. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/update_vm_instance_details.py b/src/oci/datacc/models/update_vm_instance_details.py new file mode 100644 index 0000000000..d19900df84 --- /dev/null +++ b/src/oci/datacc/models/update_vm_instance_details.py @@ -0,0 +1,198 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class UpdateVmInstanceDetails(object): + """ + Updated VM instance details. + """ + + def __init__(self, **kwargs): + """ + Initializes a new UpdateVmInstanceDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param description: + The value to assign to the description property of this UpdateVmInstanceDetails. + :type description: str + + :param display_name: + The value to assign to the display_name property of this UpdateVmInstanceDetails. + :type display_name: str + + :param data_storage_size_in_gbs: + The value to assign to the data_storage_size_in_gbs property of this UpdateVmInstanceDetails. + :type data_storage_size_in_gbs: float + + :param defined_tags: + The value to assign to the defined_tags property of this UpdateVmInstanceDetails. + :type defined_tags: dict(str, dict(str, object)) + + :param freeform_tags: + The value to assign to the freeform_tags property of this UpdateVmInstanceDetails. + :type freeform_tags: dict(str, str) + + """ + self.swagger_types = { + 'description': 'str', + 'display_name': 'str', + 'data_storage_size_in_gbs': 'float', + 'defined_tags': 'dict(str, dict(str, object))', + 'freeform_tags': 'dict(str, str)' + } + self.attribute_map = { + 'description': 'description', + 'display_name': 'displayName', + 'data_storage_size_in_gbs': 'dataStorageSizeInGBs', + 'defined_tags': 'definedTags', + 'freeform_tags': 'freeformTags' + } + self._description = None + self._display_name = None + self._data_storage_size_in_gbs = None + self._defined_tags = None + self._freeform_tags = None + + @property + def description(self): + """ + Gets the description of this UpdateVmInstanceDetails. + VM instance description. + + + :return: The description of this UpdateVmInstanceDetails. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this UpdateVmInstanceDetails. + VM instance description. + + + :param description: The description of this UpdateVmInstanceDetails. + :type: str + """ + self._description = description + + @property + def display_name(self): + """ + Gets the display_name of this UpdateVmInstanceDetails. + VM instance display name. This name does not have to be unique, and is changeable. + + + :return: The display_name of this UpdateVmInstanceDetails. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this UpdateVmInstanceDetails. + VM instance display name. This name does not have to be unique, and is changeable. + + + :param display_name: The display_name of this UpdateVmInstanceDetails. + :type: str + """ + self._display_name = display_name + + @property + def data_storage_size_in_gbs(self): + """ + Gets the data_storage_size_in_gbs of this UpdateVmInstanceDetails. + Data storage to be allocated in GBs. + + + :return: The data_storage_size_in_gbs of this UpdateVmInstanceDetails. + :rtype: float + """ + return self._data_storage_size_in_gbs + + @data_storage_size_in_gbs.setter + def data_storage_size_in_gbs(self, data_storage_size_in_gbs): + """ + Sets the data_storage_size_in_gbs of this UpdateVmInstanceDetails. + Data storage to be allocated in GBs. + + + :param data_storage_size_in_gbs: The data_storage_size_in_gbs of this UpdateVmInstanceDetails. + :type: float + """ + self._data_storage_size_in_gbs = data_storage_size_in_gbs + + @property + def defined_tags(self): + """ + Gets the defined_tags of this UpdateVmInstanceDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this UpdateVmInstanceDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this UpdateVmInstanceDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this UpdateVmInstanceDetails. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this UpdateVmInstanceDetails. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this UpdateVmInstanceDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this UpdateVmInstanceDetails. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this UpdateVmInstanceDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/validate_infrastructure_details.py b/src/oci/datacc/models/validate_infrastructure_details.py new file mode 100644 index 0000000000..9b8eb4a35a --- /dev/null +++ b/src/oci/datacc/models/validate_infrastructure_details.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ValidateInfrastructureDetails(object): + """ + The validation details for the Database Infrastructure. + """ + + def __init__(self, **kwargs): + """ + Initializes a new ValidateInfrastructureDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param validation_zip_file: + The value to assign to the validation_zip_file property of this ValidateInfrastructureDetails. + :type validation_zip_file: str + + """ + self.swagger_types = { + 'validation_zip_file': 'str' + } + self.attribute_map = { + 'validation_zip_file': 'validationZipFile' + } + self._validation_zip_file = None + + @property + def validation_zip_file(self): + """ + **[Required]** Gets the validation_zip_file of this ValidateInfrastructureDetails. + The validation zip file. + + + :return: The validation_zip_file of this ValidateInfrastructureDetails. + :rtype: str + """ + return self._validation_zip_file + + @validation_zip_file.setter + def validation_zip_file(self, validation_zip_file): + """ + Sets the validation_zip_file of this ValidateInfrastructureDetails. + The validation zip file. + + + :param validation_zip_file: The validation_zip_file of this ValidateInfrastructureDetails. + :type: str + """ + self._validation_zip_file = validation_zip_file + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/vm_cluster_network.py b/src/oci/datacc/models/vm_cluster_network.py new file mode 100644 index 0000000000..42308259a0 --- /dev/null +++ b/src/oci/datacc/models/vm_cluster_network.py @@ -0,0 +1,807 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class VmClusterNetwork(object): + """ + Details of the VM cluster network on Database Infrastructure. + """ + + #: A constant which can be used with the lifecycle_state property of a VmClusterNetwork. + #: This constant has a value of "CREATING" + LIFECYCLE_STATE_CREATING = "CREATING" + + #: A constant which can be used with the lifecycle_state property of a VmClusterNetwork. + #: This constant has a value of "REQUIRES_VALIDATION" + LIFECYCLE_STATE_REQUIRES_VALIDATION = "REQUIRES_VALIDATION" + + #: A constant which can be used with the lifecycle_state property of a VmClusterNetwork. + #: This constant has a value of "VALIDATING" + LIFECYCLE_STATE_VALIDATING = "VALIDATING" + + #: A constant which can be used with the lifecycle_state property of a VmClusterNetwork. + #: This constant has a value of "VALIDATED" + LIFECYCLE_STATE_VALIDATED = "VALIDATED" + + #: A constant which can be used with the lifecycle_state property of a VmClusterNetwork. + #: This constant has a value of "VALIDATION_FAILED" + LIFECYCLE_STATE_VALIDATION_FAILED = "VALIDATION_FAILED" + + #: A constant which can be used with the lifecycle_state property of a VmClusterNetwork. + #: This constant has a value of "UPDATING" + LIFECYCLE_STATE_UPDATING = "UPDATING" + + #: A constant which can be used with the lifecycle_state property of a VmClusterNetwork. + #: This constant has a value of "ALLOCATED" + LIFECYCLE_STATE_ALLOCATED = "ALLOCATED" + + #: A constant which can be used with the lifecycle_state property of a VmClusterNetwork. + #: This constant has a value of "DELETING" + LIFECYCLE_STATE_DELETING = "DELETING" + + #: A constant which can be used with the lifecycle_state property of a VmClusterNetwork. + #: This constant has a value of "DELETED" + LIFECYCLE_STATE_DELETED = "DELETED" + + #: A constant which can be used with the consumer_type property of a VmClusterNetwork. + #: This constant has a value of "INSTANCE" + CONSUMER_TYPE_INSTANCE = "INSTANCE" + + #: A constant which can be used with the consumer_type property of a VmClusterNetwork. + #: This constant has a value of "CLUSTER" + CONSUMER_TYPE_CLUSTER = "CLUSTER" + + def __init__(self, **kwargs): + """ + Initializes a new VmClusterNetwork object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this VmClusterNetwork. + :type id: str + + :param compartment_id: + The value to assign to the compartment_id property of this VmClusterNetwork. + :type compartment_id: str + + :param node_count: + The value to assign to the node_count property of this VmClusterNetwork. + :type node_count: int + + :param infrastructure_id: + The value to assign to the infrastructure_id property of this VmClusterNetwork. + :type infrastructure_id: str + + :param base_vm_cluster_id: + The value to assign to the base_vm_cluster_id property of this VmClusterNetwork. + :type base_vm_cluster_id: str + + :param display_name: + The value to assign to the display_name property of this VmClusterNetwork. + :type display_name: str + + :param is_scan_enabled: + The value to assign to the is_scan_enabled property of this VmClusterNetwork. + :type is_scan_enabled: bool + + :param scans: + The value to assign to the scans property of this VmClusterNetwork. + :type scans: list[oci.datacc.models.ScanDetails] + + :param listener_port: + The value to assign to the listener_port property of this VmClusterNetwork. + :type listener_port: int + + :param listener_port_ssl: + The value to assign to the listener_port_ssl property of this VmClusterNetwork. + :type listener_port_ssl: int + + :param dns_servers: + The value to assign to the dns_servers property of this VmClusterNetwork. + :type dns_servers: list[str] + + :param ntp_servers: + The value to assign to the ntp_servers property of this VmClusterNetwork. + :type ntp_servers: list[str] + + :param vm_networks: + The value to assign to the vm_networks property of this VmClusterNetwork. + :type vm_networks: list[oci.datacc.models.VmNetworkDetails] + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this VmClusterNetwork. + Allowed values for this property are: "CREATING", "REQUIRES_VALIDATION", "VALIDATING", "VALIDATED", "VALIDATION_FAILED", "UPDATING", "ALLOCATED", "DELETING", "DELETED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + :param time_created: + The value to assign to the time_created property of this VmClusterNetwork. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this VmClusterNetwork. + :type time_updated: datetime + + :param lifecycle_details: + The value to assign to the lifecycle_details property of this VmClusterNetwork. + :type lifecycle_details: str + + :param associated_resource_id: + The value to assign to the associated_resource_id property of this VmClusterNetwork. + :type associated_resource_id: str + + :param consumer_type: + The value to assign to the consumer_type property of this VmClusterNetwork. + Allowed values for this property are: "INSTANCE", "CLUSTER", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type consumer_type: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this VmClusterNetwork. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this VmClusterNetwork. + :type defined_tags: dict(str, dict(str, object)) + + :param system_tags: + The value to assign to the system_tags property of this VmClusterNetwork. + :type system_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'id': 'str', + 'compartment_id': 'str', + 'node_count': 'int', + 'infrastructure_id': 'str', + 'base_vm_cluster_id': 'str', + 'display_name': 'str', + 'is_scan_enabled': 'bool', + 'scans': 'list[ScanDetails]', + 'listener_port': 'int', + 'listener_port_ssl': 'int', + 'dns_servers': 'list[str]', + 'ntp_servers': 'list[str]', + 'vm_networks': 'list[VmNetworkDetails]', + 'lifecycle_state': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'lifecycle_details': 'str', + 'associated_resource_id': 'str', + 'consumer_type': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'id': 'id', + 'compartment_id': 'compartmentId', + 'node_count': 'nodeCount', + 'infrastructure_id': 'infrastructureId', + 'base_vm_cluster_id': 'baseVmClusterId', + 'display_name': 'displayName', + 'is_scan_enabled': 'isScanEnabled', + 'scans': 'scans', + 'listener_port': 'listenerPort', + 'listener_port_ssl': 'listenerPortSsl', + 'dns_servers': 'dnsServers', + 'ntp_servers': 'ntpServers', + 'vm_networks': 'vmNetworks', + 'lifecycle_state': 'lifecycleState', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'lifecycle_details': 'lifecycleDetails', + 'associated_resource_id': 'associatedResourceId', + 'consumer_type': 'consumerType', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags' + } + self._id = None + self._compartment_id = None + self._node_count = None + self._infrastructure_id = None + self._base_vm_cluster_id = None + self._display_name = None + self._is_scan_enabled = None + self._scans = None + self._listener_port = None + self._listener_port_ssl = None + self._dns_servers = None + self._ntp_servers = None + self._vm_networks = None + self._lifecycle_state = None + self._time_created = None + self._time_updated = None + self._lifecycle_details = None + self._associated_resource_id = None + self._consumer_type = None + self._freeform_tags = None + self._defined_tags = None + self._system_tags = None + + @property + def id(self): + """ + **[Required]** Gets the id of this VmClusterNetwork. + The `OCID`__ of the VM cluster network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this VmClusterNetwork. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this VmClusterNetwork. + The `OCID`__ of the VM cluster network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this VmClusterNetwork. + :type: str + """ + self._id = id + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this VmClusterNetwork. + The `OCID`__ of the compartment containing the VM cluster network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this VmClusterNetwork. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this VmClusterNetwork. + The `OCID`__ of the compartment containing the VM cluster network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this VmClusterNetwork. + :type: str + """ + self._compartment_id = compartment_id + + @property + def node_count(self): + """ + Gets the node_count of this VmClusterNetwork. + Count of virtual machines in this VM cluster. + + + :return: The node_count of this VmClusterNetwork. + :rtype: int + """ + return self._node_count + + @node_count.setter + def node_count(self, node_count): + """ + Sets the node_count of this VmClusterNetwork. + Count of virtual machines in this VM cluster. + + + :param node_count: The node_count of this VmClusterNetwork. + :type: int + """ + self._node_count = node_count + + @property + def infrastructure_id(self): + """ + **[Required]** Gets the infrastructure_id of this VmClusterNetwork. + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The infrastructure_id of this VmClusterNetwork. + :rtype: str + """ + return self._infrastructure_id + + @infrastructure_id.setter + def infrastructure_id(self, infrastructure_id): + """ + Sets the infrastructure_id of this VmClusterNetwork. + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param infrastructure_id: The infrastructure_id of this VmClusterNetwork. + :type: str + """ + self._infrastructure_id = infrastructure_id + + @property + def base_vm_cluster_id(self): + """ + Gets the base_vm_cluster_id of this VmClusterNetwork. + The `OCID`__ of the associated VM cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The base_vm_cluster_id of this VmClusterNetwork. + :rtype: str + """ + return self._base_vm_cluster_id + + @base_vm_cluster_id.setter + def base_vm_cluster_id(self, base_vm_cluster_id): + """ + Sets the base_vm_cluster_id of this VmClusterNetwork. + The `OCID`__ of the associated VM cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param base_vm_cluster_id: The base_vm_cluster_id of this VmClusterNetwork. + :type: str + """ + self._base_vm_cluster_id = base_vm_cluster_id + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this VmClusterNetwork. + The user-friendly name for the VM cluster network. The name does not need to be unique. + + + :return: The display_name of this VmClusterNetwork. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this VmClusterNetwork. + The user-friendly name for the VM cluster network. The name does not need to be unique. + + + :param display_name: The display_name of this VmClusterNetwork. + :type: str + """ + self._display_name = display_name + + @property + def is_scan_enabled(self): + """ + Gets the is_scan_enabled of this VmClusterNetwork. + Indicates whether Single Client Access Name (SCAN) is enabled on the VM cluster. + + + :return: The is_scan_enabled of this VmClusterNetwork. + :rtype: bool + """ + return self._is_scan_enabled + + @is_scan_enabled.setter + def is_scan_enabled(self, is_scan_enabled): + """ + Sets the is_scan_enabled of this VmClusterNetwork. + Indicates whether Single Client Access Name (SCAN) is enabled on the VM cluster. + + + :param is_scan_enabled: The is_scan_enabled of this VmClusterNetwork. + :type: bool + """ + self._is_scan_enabled = is_scan_enabled + + @property + def scans(self): + """ + **[Required]** Gets the scans of this VmClusterNetwork. + The SCAN details. + + + :return: The scans of this VmClusterNetwork. + :rtype: list[oci.datacc.models.ScanDetails] + """ + return self._scans + + @scans.setter + def scans(self, scans): + """ + Sets the scans of this VmClusterNetwork. + The SCAN details. + + + :param scans: The scans of this VmClusterNetwork. + :type: list[oci.datacc.models.ScanDetails] + """ + self._scans = scans + + @property + def listener_port(self): + """ + Gets the listener_port of this VmClusterNetwork. + The listener TCP/IP port. + + + :return: The listener_port of this VmClusterNetwork. + :rtype: int + """ + return self._listener_port + + @listener_port.setter + def listener_port(self, listener_port): + """ + Sets the listener_port of this VmClusterNetwork. + The listener TCP/IP port. + + + :param listener_port: The listener_port of this VmClusterNetwork. + :type: int + """ + self._listener_port = listener_port + + @property + def listener_port_ssl(self): + """ + Gets the listener_port_ssl of this VmClusterNetwork. + The listener TCP/IP SSL port. + + + :return: The listener_port_ssl of this VmClusterNetwork. + :rtype: int + """ + return self._listener_port_ssl + + @listener_port_ssl.setter + def listener_port_ssl(self, listener_port_ssl): + """ + Sets the listener_port_ssl of this VmClusterNetwork. + The listener TCP/IP SSL port. + + + :param listener_port_ssl: The listener_port_ssl of this VmClusterNetwork. + :type: int + """ + self._listener_port_ssl = listener_port_ssl + + @property + def dns_servers(self): + """ + Gets the dns_servers of this VmClusterNetwork. + The list of DNS server IP addresses. Maximum of 3 allowed. + + + :return: The dns_servers of this VmClusterNetwork. + :rtype: list[str] + """ + return self._dns_servers + + @dns_servers.setter + def dns_servers(self, dns_servers): + """ + Sets the dns_servers of this VmClusterNetwork. + The list of DNS server IP addresses. Maximum of 3 allowed. + + + :param dns_servers: The dns_servers of this VmClusterNetwork. + :type: list[str] + """ + self._dns_servers = dns_servers + + @property + def ntp_servers(self): + """ + Gets the ntp_servers of this VmClusterNetwork. + The list of NTP server IP addresses. Maximum of 3 allowed. + + + :return: The ntp_servers of this VmClusterNetwork. + :rtype: list[str] + """ + return self._ntp_servers + + @ntp_servers.setter + def ntp_servers(self, ntp_servers): + """ + Sets the ntp_servers of this VmClusterNetwork. + The list of NTP server IP addresses. Maximum of 3 allowed. + + + :param ntp_servers: The ntp_servers of this VmClusterNetwork. + :type: list[str] + """ + self._ntp_servers = ntp_servers + + @property + def vm_networks(self): + """ + **[Required]** Gets the vm_networks of this VmClusterNetwork. + Details of the client and backup networks. + + + :return: The vm_networks of this VmClusterNetwork. + :rtype: list[oci.datacc.models.VmNetworkDetails] + """ + return self._vm_networks + + @vm_networks.setter + def vm_networks(self, vm_networks): + """ + Sets the vm_networks of this VmClusterNetwork. + Details of the client and backup networks. + + + :param vm_networks: The vm_networks of this VmClusterNetwork. + :type: list[oci.datacc.models.VmNetworkDetails] + """ + self._vm_networks = vm_networks + + @property + def lifecycle_state(self): + """ + Gets the lifecycle_state of this VmClusterNetwork. + The current state of the virtual machine cluster network. + + Allowed values for this property are: "CREATING", "REQUIRES_VALIDATION", "VALIDATING", "VALIDATED", "VALIDATION_FAILED", "UPDATING", "ALLOCATED", "DELETING", "DELETED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this VmClusterNetwork. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this VmClusterNetwork. + The current state of the virtual machine cluster network. + + + :param lifecycle_state: The lifecycle_state of this VmClusterNetwork. + :type: str + """ + allowed_values = ["CREATING", "REQUIRES_VALIDATION", "VALIDATING", "VALIDATED", "VALIDATION_FAILED", "UPDATING", "ALLOCATED", "DELETING", "DELETED"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + + @property + def time_created(self): + """ + Gets the time_created of this VmClusterNetwork. + The time that the VM cluster network was created. An RFC3339 formatted datetime string. + + + :return: The time_created of this VmClusterNetwork. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this VmClusterNetwork. + The time that the VM cluster network was created. An RFC3339 formatted datetime string. + + + :param time_created: The time_created of this VmClusterNetwork. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + Gets the time_updated of this VmClusterNetwork. + The time that the VM cluster network was last updated. An RFC3339 formatted datetime string. + + + :return: The time_updated of this VmClusterNetwork. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this VmClusterNetwork. + The time that the VM cluster network was last updated. An RFC3339 formatted datetime string. + + + :param time_updated: The time_updated of this VmClusterNetwork. + :type: datetime + """ + self._time_updated = time_updated + + @property + def lifecycle_details(self): + """ + Gets the lifecycle_details of this VmClusterNetwork. + Lifecycle state details of the VM cluster network. + + + :return: The lifecycle_details of this VmClusterNetwork. + :rtype: str + """ + return self._lifecycle_details + + @lifecycle_details.setter + def lifecycle_details(self, lifecycle_details): + """ + Sets the lifecycle_details of this VmClusterNetwork. + Lifecycle state details of the VM cluster network. + + + :param lifecycle_details: The lifecycle_details of this VmClusterNetwork. + :type: str + """ + self._lifecycle_details = lifecycle_details + + @property + def associated_resource_id(self): + """ + Gets the associated_resource_id of this VmClusterNetwork. + The `OCID`__ of the associated resource. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The associated_resource_id of this VmClusterNetwork. + :rtype: str + """ + return self._associated_resource_id + + @associated_resource_id.setter + def associated_resource_id(self, associated_resource_id): + """ + Sets the associated_resource_id of this VmClusterNetwork. + The `OCID`__ of the associated resource. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param associated_resource_id: The associated_resource_id of this VmClusterNetwork. + :type: str + """ + self._associated_resource_id = associated_resource_id + + @property + def consumer_type(self): + """ + Gets the consumer_type of this VmClusterNetwork. + Consumer type for the VM cluster network. + + Allowed values for this property are: "INSTANCE", "CLUSTER", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The consumer_type of this VmClusterNetwork. + :rtype: str + """ + return self._consumer_type + + @consumer_type.setter + def consumer_type(self, consumer_type): + """ + Sets the consumer_type of this VmClusterNetwork. + Consumer type for the VM cluster network. + + + :param consumer_type: The consumer_type of this VmClusterNetwork. + :type: str + """ + allowed_values = ["INSTANCE", "CLUSTER"] + if not value_allowed_none_or_none_sentinel(consumer_type, allowed_values): + consumer_type = 'UNKNOWN_ENUM_VALUE' + self._consumer_type = consumer_type + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this VmClusterNetwork. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this VmClusterNetwork. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this VmClusterNetwork. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this VmClusterNetwork. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this VmClusterNetwork. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this VmClusterNetwork. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this VmClusterNetwork. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this VmClusterNetwork. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def system_tags(self): + """ + Gets the system_tags of this VmClusterNetwork. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :return: The system_tags of this VmClusterNetwork. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this VmClusterNetwork. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :param system_tags: The system_tags of this VmClusterNetwork. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/vm_cluster_network_collection.py b/src/oci/datacc/models/vm_cluster_network_collection.py new file mode 100644 index 0000000000..ed29ef0ceb --- /dev/null +++ b/src/oci/datacc/models/vm_cluster_network_collection.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class VmClusterNetworkCollection(object): + """ + A collection of VM cluster network Database Infrastructure resources. + """ + + def __init__(self, **kwargs): + """ + Initializes a new VmClusterNetworkCollection object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this VmClusterNetworkCollection. + :type items: list[oci.datacc.models.VmClusterNetworkSummary] + + """ + self.swagger_types = { + 'items': 'list[VmClusterNetworkSummary]' + } + self.attribute_map = { + 'items': 'items' + } + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this VmClusterNetworkCollection. + A list of VM cluster network resources. + + + :return: The items of this VmClusterNetworkCollection. + :rtype: list[oci.datacc.models.VmClusterNetworkSummary] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this VmClusterNetworkCollection. + A list of VM cluster network resources. + + + :param items: The items of this VmClusterNetworkCollection. + :type: list[oci.datacc.models.VmClusterNetworkSummary] + """ + self._items = items + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/vm_cluster_network_summary.py b/src/oci/datacc/models/vm_cluster_network_summary.py new file mode 100644 index 0000000000..1493c0144a --- /dev/null +++ b/src/oci/datacc/models/vm_cluster_network_summary.py @@ -0,0 +1,807 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class VmClusterNetworkSummary(object): + """ + Summary of the VM cluster network on Database Infrastructure. + """ + + #: A constant which can be used with the lifecycle_state property of a VmClusterNetworkSummary. + #: This constant has a value of "CREATING" + LIFECYCLE_STATE_CREATING = "CREATING" + + #: A constant which can be used with the lifecycle_state property of a VmClusterNetworkSummary. + #: This constant has a value of "REQUIRES_VALIDATION" + LIFECYCLE_STATE_REQUIRES_VALIDATION = "REQUIRES_VALIDATION" + + #: A constant which can be used with the lifecycle_state property of a VmClusterNetworkSummary. + #: This constant has a value of "VALIDATING" + LIFECYCLE_STATE_VALIDATING = "VALIDATING" + + #: A constant which can be used with the lifecycle_state property of a VmClusterNetworkSummary. + #: This constant has a value of "VALIDATED" + LIFECYCLE_STATE_VALIDATED = "VALIDATED" + + #: A constant which can be used with the lifecycle_state property of a VmClusterNetworkSummary. + #: This constant has a value of "VALIDATION_FAILED" + LIFECYCLE_STATE_VALIDATION_FAILED = "VALIDATION_FAILED" + + #: A constant which can be used with the lifecycle_state property of a VmClusterNetworkSummary. + #: This constant has a value of "UPDATING" + LIFECYCLE_STATE_UPDATING = "UPDATING" + + #: A constant which can be used with the lifecycle_state property of a VmClusterNetworkSummary. + #: This constant has a value of "ALLOCATED" + LIFECYCLE_STATE_ALLOCATED = "ALLOCATED" + + #: A constant which can be used with the lifecycle_state property of a VmClusterNetworkSummary. + #: This constant has a value of "DELETING" + LIFECYCLE_STATE_DELETING = "DELETING" + + #: A constant which can be used with the lifecycle_state property of a VmClusterNetworkSummary. + #: This constant has a value of "DELETED" + LIFECYCLE_STATE_DELETED = "DELETED" + + #: A constant which can be used with the consumer_type property of a VmClusterNetworkSummary. + #: This constant has a value of "INSTANCE" + CONSUMER_TYPE_INSTANCE = "INSTANCE" + + #: A constant which can be used with the consumer_type property of a VmClusterNetworkSummary. + #: This constant has a value of "CLUSTER" + CONSUMER_TYPE_CLUSTER = "CLUSTER" + + def __init__(self, **kwargs): + """ + Initializes a new VmClusterNetworkSummary object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this VmClusterNetworkSummary. + :type id: str + + :param compartment_id: + The value to assign to the compartment_id property of this VmClusterNetworkSummary. + :type compartment_id: str + + :param node_count: + The value to assign to the node_count property of this VmClusterNetworkSummary. + :type node_count: int + + :param infrastructure_id: + The value to assign to the infrastructure_id property of this VmClusterNetworkSummary. + :type infrastructure_id: str + + :param base_vm_cluster_id: + The value to assign to the base_vm_cluster_id property of this VmClusterNetworkSummary. + :type base_vm_cluster_id: str + + :param display_name: + The value to assign to the display_name property of this VmClusterNetworkSummary. + :type display_name: str + + :param is_scan_enabled: + The value to assign to the is_scan_enabled property of this VmClusterNetworkSummary. + :type is_scan_enabled: bool + + :param scans: + The value to assign to the scans property of this VmClusterNetworkSummary. + :type scans: list[oci.datacc.models.ScanDetails] + + :param listener_port: + The value to assign to the listener_port property of this VmClusterNetworkSummary. + :type listener_port: int + + :param listener_port_ssl: + The value to assign to the listener_port_ssl property of this VmClusterNetworkSummary. + :type listener_port_ssl: int + + :param dns_servers: + The value to assign to the dns_servers property of this VmClusterNetworkSummary. + :type dns_servers: list[str] + + :param ntp_servers: + The value to assign to the ntp_servers property of this VmClusterNetworkSummary. + :type ntp_servers: list[str] + + :param vm_networks: + The value to assign to the vm_networks property of this VmClusterNetworkSummary. + :type vm_networks: list[oci.datacc.models.VmNetworkDetails] + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this VmClusterNetworkSummary. + Allowed values for this property are: "CREATING", "REQUIRES_VALIDATION", "VALIDATING", "VALIDATED", "VALIDATION_FAILED", "UPDATING", "ALLOCATED", "DELETING", "DELETED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + :param time_created: + The value to assign to the time_created property of this VmClusterNetworkSummary. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this VmClusterNetworkSummary. + :type time_updated: datetime + + :param lifecycle_details: + The value to assign to the lifecycle_details property of this VmClusterNetworkSummary. + :type lifecycle_details: str + + :param associated_resource_id: + The value to assign to the associated_resource_id property of this VmClusterNetworkSummary. + :type associated_resource_id: str + + :param consumer_type: + The value to assign to the consumer_type property of this VmClusterNetworkSummary. + Allowed values for this property are: "INSTANCE", "CLUSTER", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type consumer_type: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this VmClusterNetworkSummary. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this VmClusterNetworkSummary. + :type defined_tags: dict(str, dict(str, object)) + + :param system_tags: + The value to assign to the system_tags property of this VmClusterNetworkSummary. + :type system_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'id': 'str', + 'compartment_id': 'str', + 'node_count': 'int', + 'infrastructure_id': 'str', + 'base_vm_cluster_id': 'str', + 'display_name': 'str', + 'is_scan_enabled': 'bool', + 'scans': 'list[ScanDetails]', + 'listener_port': 'int', + 'listener_port_ssl': 'int', + 'dns_servers': 'list[str]', + 'ntp_servers': 'list[str]', + 'vm_networks': 'list[VmNetworkDetails]', + 'lifecycle_state': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'lifecycle_details': 'str', + 'associated_resource_id': 'str', + 'consumer_type': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'id': 'id', + 'compartment_id': 'compartmentId', + 'node_count': 'nodeCount', + 'infrastructure_id': 'infrastructureId', + 'base_vm_cluster_id': 'baseVmClusterId', + 'display_name': 'displayName', + 'is_scan_enabled': 'isScanEnabled', + 'scans': 'scans', + 'listener_port': 'listenerPort', + 'listener_port_ssl': 'listenerPortSsl', + 'dns_servers': 'dnsServers', + 'ntp_servers': 'ntpServers', + 'vm_networks': 'vmNetworks', + 'lifecycle_state': 'lifecycleState', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'lifecycle_details': 'lifecycleDetails', + 'associated_resource_id': 'associatedResourceId', + 'consumer_type': 'consumerType', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags' + } + self._id = None + self._compartment_id = None + self._node_count = None + self._infrastructure_id = None + self._base_vm_cluster_id = None + self._display_name = None + self._is_scan_enabled = None + self._scans = None + self._listener_port = None + self._listener_port_ssl = None + self._dns_servers = None + self._ntp_servers = None + self._vm_networks = None + self._lifecycle_state = None + self._time_created = None + self._time_updated = None + self._lifecycle_details = None + self._associated_resource_id = None + self._consumer_type = None + self._freeform_tags = None + self._defined_tags = None + self._system_tags = None + + @property + def id(self): + """ + **[Required]** Gets the id of this VmClusterNetworkSummary. + The `OCID`__ of the VM cluster network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this VmClusterNetworkSummary. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this VmClusterNetworkSummary. + The `OCID`__ of the VM cluster network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this VmClusterNetworkSummary. + :type: str + """ + self._id = id + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this VmClusterNetworkSummary. + The `OCID`__ of the compartment containing the VM cluster network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this VmClusterNetworkSummary. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this VmClusterNetworkSummary. + The `OCID`__ of the compartment containing the VM cluster network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this VmClusterNetworkSummary. + :type: str + """ + self._compartment_id = compartment_id + + @property + def node_count(self): + """ + Gets the node_count of this VmClusterNetworkSummary. + Count of virtual machines in this VM cluster. + + + :return: The node_count of this VmClusterNetworkSummary. + :rtype: int + """ + return self._node_count + + @node_count.setter + def node_count(self, node_count): + """ + Sets the node_count of this VmClusterNetworkSummary. + Count of virtual machines in this VM cluster. + + + :param node_count: The node_count of this VmClusterNetworkSummary. + :type: int + """ + self._node_count = node_count + + @property + def infrastructure_id(self): + """ + **[Required]** Gets the infrastructure_id of this VmClusterNetworkSummary. + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The infrastructure_id of this VmClusterNetworkSummary. + :rtype: str + """ + return self._infrastructure_id + + @infrastructure_id.setter + def infrastructure_id(self, infrastructure_id): + """ + Sets the infrastructure_id of this VmClusterNetworkSummary. + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param infrastructure_id: The infrastructure_id of this VmClusterNetworkSummary. + :type: str + """ + self._infrastructure_id = infrastructure_id + + @property + def base_vm_cluster_id(self): + """ + Gets the base_vm_cluster_id of this VmClusterNetworkSummary. + The `OCID`__ of the associated VM cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The base_vm_cluster_id of this VmClusterNetworkSummary. + :rtype: str + """ + return self._base_vm_cluster_id + + @base_vm_cluster_id.setter + def base_vm_cluster_id(self, base_vm_cluster_id): + """ + Sets the base_vm_cluster_id of this VmClusterNetworkSummary. + The `OCID`__ of the associated VM cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param base_vm_cluster_id: The base_vm_cluster_id of this VmClusterNetworkSummary. + :type: str + """ + self._base_vm_cluster_id = base_vm_cluster_id + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this VmClusterNetworkSummary. + The user-friendly name for the VM cluster network. The name does not need to be unique. + + + :return: The display_name of this VmClusterNetworkSummary. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this VmClusterNetworkSummary. + The user-friendly name for the VM cluster network. The name does not need to be unique. + + + :param display_name: The display_name of this VmClusterNetworkSummary. + :type: str + """ + self._display_name = display_name + + @property + def is_scan_enabled(self): + """ + Gets the is_scan_enabled of this VmClusterNetworkSummary. + Indicates whether Single Client Access Name (SCAN) is enabled on the VM cluster. + + + :return: The is_scan_enabled of this VmClusterNetworkSummary. + :rtype: bool + """ + return self._is_scan_enabled + + @is_scan_enabled.setter + def is_scan_enabled(self, is_scan_enabled): + """ + Sets the is_scan_enabled of this VmClusterNetworkSummary. + Indicates whether Single Client Access Name (SCAN) is enabled on the VM cluster. + + + :param is_scan_enabled: The is_scan_enabled of this VmClusterNetworkSummary. + :type: bool + """ + self._is_scan_enabled = is_scan_enabled + + @property + def scans(self): + """ + **[Required]** Gets the scans of this VmClusterNetworkSummary. + The SCAN details. + + + :return: The scans of this VmClusterNetworkSummary. + :rtype: list[oci.datacc.models.ScanDetails] + """ + return self._scans + + @scans.setter + def scans(self, scans): + """ + Sets the scans of this VmClusterNetworkSummary. + The SCAN details. + + + :param scans: The scans of this VmClusterNetworkSummary. + :type: list[oci.datacc.models.ScanDetails] + """ + self._scans = scans + + @property + def listener_port(self): + """ + Gets the listener_port of this VmClusterNetworkSummary. + The listener TCP/IP port. + + + :return: The listener_port of this VmClusterNetworkSummary. + :rtype: int + """ + return self._listener_port + + @listener_port.setter + def listener_port(self, listener_port): + """ + Sets the listener_port of this VmClusterNetworkSummary. + The listener TCP/IP port. + + + :param listener_port: The listener_port of this VmClusterNetworkSummary. + :type: int + """ + self._listener_port = listener_port + + @property + def listener_port_ssl(self): + """ + Gets the listener_port_ssl of this VmClusterNetworkSummary. + The listener TCP/IP SSL port. + + + :return: The listener_port_ssl of this VmClusterNetworkSummary. + :rtype: int + """ + return self._listener_port_ssl + + @listener_port_ssl.setter + def listener_port_ssl(self, listener_port_ssl): + """ + Sets the listener_port_ssl of this VmClusterNetworkSummary. + The listener TCP/IP SSL port. + + + :param listener_port_ssl: The listener_port_ssl of this VmClusterNetworkSummary. + :type: int + """ + self._listener_port_ssl = listener_port_ssl + + @property + def dns_servers(self): + """ + Gets the dns_servers of this VmClusterNetworkSummary. + The list of DNS server IP addresses. Maximum of 3 allowed. + + + :return: The dns_servers of this VmClusterNetworkSummary. + :rtype: list[str] + """ + return self._dns_servers + + @dns_servers.setter + def dns_servers(self, dns_servers): + """ + Sets the dns_servers of this VmClusterNetworkSummary. + The list of DNS server IP addresses. Maximum of 3 allowed. + + + :param dns_servers: The dns_servers of this VmClusterNetworkSummary. + :type: list[str] + """ + self._dns_servers = dns_servers + + @property + def ntp_servers(self): + """ + Gets the ntp_servers of this VmClusterNetworkSummary. + The list of NTP server IP addresses. Maximum of 3 allowed. + + + :return: The ntp_servers of this VmClusterNetworkSummary. + :rtype: list[str] + """ + return self._ntp_servers + + @ntp_servers.setter + def ntp_servers(self, ntp_servers): + """ + Sets the ntp_servers of this VmClusterNetworkSummary. + The list of NTP server IP addresses. Maximum of 3 allowed. + + + :param ntp_servers: The ntp_servers of this VmClusterNetworkSummary. + :type: list[str] + """ + self._ntp_servers = ntp_servers + + @property + def vm_networks(self): + """ + **[Required]** Gets the vm_networks of this VmClusterNetworkSummary. + Details of the client and backup networks. + + + :return: The vm_networks of this VmClusterNetworkSummary. + :rtype: list[oci.datacc.models.VmNetworkDetails] + """ + return self._vm_networks + + @vm_networks.setter + def vm_networks(self, vm_networks): + """ + Sets the vm_networks of this VmClusterNetworkSummary. + Details of the client and backup networks. + + + :param vm_networks: The vm_networks of this VmClusterNetworkSummary. + :type: list[oci.datacc.models.VmNetworkDetails] + """ + self._vm_networks = vm_networks + + @property + def lifecycle_state(self): + """ + Gets the lifecycle_state of this VmClusterNetworkSummary. + The current state of the virtual machine cluster network. + + Allowed values for this property are: "CREATING", "REQUIRES_VALIDATION", "VALIDATING", "VALIDATED", "VALIDATION_FAILED", "UPDATING", "ALLOCATED", "DELETING", "DELETED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this VmClusterNetworkSummary. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this VmClusterNetworkSummary. + The current state of the virtual machine cluster network. + + + :param lifecycle_state: The lifecycle_state of this VmClusterNetworkSummary. + :type: str + """ + allowed_values = ["CREATING", "REQUIRES_VALIDATION", "VALIDATING", "VALIDATED", "VALIDATION_FAILED", "UPDATING", "ALLOCATED", "DELETING", "DELETED"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + + @property + def time_created(self): + """ + Gets the time_created of this VmClusterNetworkSummary. + The time that the VM cluster network was created. An RFC3339 formatted datetime string. + + + :return: The time_created of this VmClusterNetworkSummary. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this VmClusterNetworkSummary. + The time that the VM cluster network was created. An RFC3339 formatted datetime string. + + + :param time_created: The time_created of this VmClusterNetworkSummary. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + Gets the time_updated of this VmClusterNetworkSummary. + The time that the VM cluster network was last updated. An RFC3339 formatted datetime string. + + + :return: The time_updated of this VmClusterNetworkSummary. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this VmClusterNetworkSummary. + The time that the VM cluster network was last updated. An RFC3339 formatted datetime string. + + + :param time_updated: The time_updated of this VmClusterNetworkSummary. + :type: datetime + """ + self._time_updated = time_updated + + @property + def lifecycle_details(self): + """ + Gets the lifecycle_details of this VmClusterNetworkSummary. + Lifecycle state details of the VM cluster network. + + + :return: The lifecycle_details of this VmClusterNetworkSummary. + :rtype: str + """ + return self._lifecycle_details + + @lifecycle_details.setter + def lifecycle_details(self, lifecycle_details): + """ + Sets the lifecycle_details of this VmClusterNetworkSummary. + Lifecycle state details of the VM cluster network. + + + :param lifecycle_details: The lifecycle_details of this VmClusterNetworkSummary. + :type: str + """ + self._lifecycle_details = lifecycle_details + + @property + def associated_resource_id(self): + """ + Gets the associated_resource_id of this VmClusterNetworkSummary. + The `OCID`__ of the associated resource. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The associated_resource_id of this VmClusterNetworkSummary. + :rtype: str + """ + return self._associated_resource_id + + @associated_resource_id.setter + def associated_resource_id(self, associated_resource_id): + """ + Sets the associated_resource_id of this VmClusterNetworkSummary. + The `OCID`__ of the associated resource. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param associated_resource_id: The associated_resource_id of this VmClusterNetworkSummary. + :type: str + """ + self._associated_resource_id = associated_resource_id + + @property + def consumer_type(self): + """ + Gets the consumer_type of this VmClusterNetworkSummary. + Consumer type for the VM cluster network. + + Allowed values for this property are: "INSTANCE", "CLUSTER", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The consumer_type of this VmClusterNetworkSummary. + :rtype: str + """ + return self._consumer_type + + @consumer_type.setter + def consumer_type(self, consumer_type): + """ + Sets the consumer_type of this VmClusterNetworkSummary. + Consumer type for the VM cluster network. + + + :param consumer_type: The consumer_type of this VmClusterNetworkSummary. + :type: str + """ + allowed_values = ["INSTANCE", "CLUSTER"] + if not value_allowed_none_or_none_sentinel(consumer_type, allowed_values): + consumer_type = 'UNKNOWN_ENUM_VALUE' + self._consumer_type = consumer_type + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this VmClusterNetworkSummary. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this VmClusterNetworkSummary. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this VmClusterNetworkSummary. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this VmClusterNetworkSummary. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this VmClusterNetworkSummary. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this VmClusterNetworkSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this VmClusterNetworkSummary. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this VmClusterNetworkSummary. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def system_tags(self): + """ + Gets the system_tags of this VmClusterNetworkSummary. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :return: The system_tags of this VmClusterNetworkSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this VmClusterNetworkSummary. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :param system_tags: The system_tags of this VmClusterNetworkSummary. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/vm_instance.py b/src/oci/datacc/models/vm_instance.py new file mode 100644 index 0000000000..42feb0c642 --- /dev/null +++ b/src/oci/datacc/models/vm_instance.py @@ -0,0 +1,1078 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class VmInstance(object): + """ + VM instance details. + """ + + #: A constant which can be used with the lifecycle_state property of a VmInstance. + #: This constant has a value of "CREATING" + LIFECYCLE_STATE_CREATING = "CREATING" + + #: A constant which can be used with the lifecycle_state property of a VmInstance. + #: This constant has a value of "ACTIVE" + LIFECYCLE_STATE_ACTIVE = "ACTIVE" + + #: A constant which can be used with the lifecycle_state property of a VmInstance. + #: This constant has a value of "INACTIVE" + LIFECYCLE_STATE_INACTIVE = "INACTIVE" + + #: A constant which can be used with the lifecycle_state property of a VmInstance. + #: This constant has a value of "UPDATING" + LIFECYCLE_STATE_UPDATING = "UPDATING" + + #: A constant which can be used with the lifecycle_state property of a VmInstance. + #: This constant has a value of "DELETING" + LIFECYCLE_STATE_DELETING = "DELETING" + + #: A constant which can be used with the lifecycle_state property of a VmInstance. + #: This constant has a value of "DELETED" + LIFECYCLE_STATE_DELETED = "DELETED" + + def __init__(self, **kwargs): + """ + Initializes a new VmInstance object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this VmInstance. + :type id: str + + :param compartment_id: + The value to assign to the compartment_id property of this VmInstance. + :type compartment_id: str + + :param display_name: + The value to assign to the display_name property of this VmInstance. + :type display_name: str + + :param description: + The value to assign to the description property of this VmInstance. + :type description: str + + :param infrastructure_id: + The value to assign to the infrastructure_id property of this VmInstance. + :type infrastructure_id: str + + :param cpus_enabled: + The value to assign to the cpus_enabled property of this VmInstance. + :type cpus_enabled: int + + :param memory_size_in_gbs: + The value to assign to the memory_size_in_gbs property of this VmInstance. + :type memory_size_in_gbs: float + + :param boot_storage_size_in_gbs: + The value to assign to the boot_storage_size_in_gbs property of this VmInstance. + :type boot_storage_size_in_gbs: float + + :param data_storage_size_in_gbs: + The value to assign to the data_storage_size_in_gbs property of this VmInstance. + :type data_storage_size_in_gbs: float + + :param defined_tags: + The value to assign to the defined_tags property of this VmInstance. + :type defined_tags: dict(str, dict(str, object)) + + :param freeform_tags: + The value to assign to the freeform_tags property of this VmInstance. + :type freeform_tags: dict(str, str) + + :param system_tags: + The value to assign to the system_tags property of this VmInstance. + :type system_tags: dict(str, dict(str, object)) + + :param image_id: + The value to assign to the image_id property of this VmInstance. + :type image_id: str + + :param server_id: + The value to assign to the server_id property of this VmInstance. + :type server_id: str + + :param ssh_public_keys: + The value to assign to the ssh_public_keys property of this VmInstance. + :type ssh_public_keys: list[str] + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this VmInstance. + Allowed values for this property are: "CREATING", "ACTIVE", "INACTIVE", "UPDATING", "DELETING", "DELETED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + :param lifecycle_details: + The value to assign to the lifecycle_details property of this VmInstance. + :type lifecycle_details: str + + :param time_created: + The value to assign to the time_created property of this VmInstance. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this VmInstance. + :type time_updated: datetime + + :param domain_name: + The value to assign to the domain_name property of this VmInstance. + :type domain_name: str + + :param time_zone: + The value to assign to the time_zone property of this VmInstance. + :type time_zone: str + + :param dns_servers: + The value to assign to the dns_servers property of this VmInstance. + :type dns_servers: list[str] + + :param ntp_servers: + The value to assign to the ntp_servers property of this VmInstance. + :type ntp_servers: list[str] + + :param hostname: + The value to assign to the hostname property of this VmInstance. + :type hostname: str + + :param ip_address: + The value to assign to the ip_address property of this VmInstance. + :type ip_address: str + + :param netmask: + The value to assign to the netmask property of this VmInstance. + :type netmask: str + + :param gateway: + The value to assign to the gateway property of this VmInstance. + :type gateway: str + + :param vlan_id: + The value to assign to the vlan_id property of this VmInstance. + :type vlan_id: str + + :param userdata: + The value to assign to the userdata property of this VmInstance. + :type userdata: str + + :param metadata: + The value to assign to the metadata property of this VmInstance. + :type metadata: dict(str, str) + + :param vm_network_id: + The value to assign to the vm_network_id property of this VmInstance. + :type vm_network_id: str + + """ + self.swagger_types = { + 'id': 'str', + 'compartment_id': 'str', + 'display_name': 'str', + 'description': 'str', + 'infrastructure_id': 'str', + 'cpus_enabled': 'int', + 'memory_size_in_gbs': 'float', + 'boot_storage_size_in_gbs': 'float', + 'data_storage_size_in_gbs': 'float', + 'defined_tags': 'dict(str, dict(str, object))', + 'freeform_tags': 'dict(str, str)', + 'system_tags': 'dict(str, dict(str, object))', + 'image_id': 'str', + 'server_id': 'str', + 'ssh_public_keys': 'list[str]', + 'lifecycle_state': 'str', + 'lifecycle_details': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'domain_name': 'str', + 'time_zone': 'str', + 'dns_servers': 'list[str]', + 'ntp_servers': 'list[str]', + 'hostname': 'str', + 'ip_address': 'str', + 'netmask': 'str', + 'gateway': 'str', + 'vlan_id': 'str', + 'userdata': 'str', + 'metadata': 'dict(str, str)', + 'vm_network_id': 'str' + } + self.attribute_map = { + 'id': 'id', + 'compartment_id': 'compartmentId', + 'display_name': 'displayName', + 'description': 'description', + 'infrastructure_id': 'infrastructureId', + 'cpus_enabled': 'cpusEnabled', + 'memory_size_in_gbs': 'memorySizeInGBs', + 'boot_storage_size_in_gbs': 'bootStorageSizeInGBs', + 'data_storage_size_in_gbs': 'dataStorageSizeInGBs', + 'defined_tags': 'definedTags', + 'freeform_tags': 'freeformTags', + 'system_tags': 'systemTags', + 'image_id': 'imageId', + 'server_id': 'serverId', + 'ssh_public_keys': 'sshPublicKeys', + 'lifecycle_state': 'lifecycleState', + 'lifecycle_details': 'lifecycleDetails', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'domain_name': 'domainName', + 'time_zone': 'timeZone', + 'dns_servers': 'dnsServers', + 'ntp_servers': 'ntpServers', + 'hostname': 'hostname', + 'ip_address': 'ipAddress', + 'netmask': 'netmask', + 'gateway': 'gateway', + 'vlan_id': 'vlanId', + 'userdata': 'userdata', + 'metadata': 'metadata', + 'vm_network_id': 'vmNetworkId' + } + self._id = None + self._compartment_id = None + self._display_name = None + self._description = None + self._infrastructure_id = None + self._cpus_enabled = None + self._memory_size_in_gbs = None + self._boot_storage_size_in_gbs = None + self._data_storage_size_in_gbs = None + self._defined_tags = None + self._freeform_tags = None + self._system_tags = None + self._image_id = None + self._server_id = None + self._ssh_public_keys = None + self._lifecycle_state = None + self._lifecycle_details = None + self._time_created = None + self._time_updated = None + self._domain_name = None + self._time_zone = None + self._dns_servers = None + self._ntp_servers = None + self._hostname = None + self._ip_address = None + self._netmask = None + self._gateway = None + self._vlan_id = None + self._userdata = None + self._metadata = None + self._vm_network_id = None + + @property + def id(self): + """ + **[Required]** Gets the id of this VmInstance. + The `OCID`__ of the VM instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this VmInstance. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this VmInstance. + The `OCID`__ of the VM instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this VmInstance. + :type: str + """ + self._id = id + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this VmInstance. + The `OCID`__ of the compartment containing the VM + instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this VmInstance. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this VmInstance. + The `OCID`__ of the compartment containing the VM + instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this VmInstance. + :type: str + """ + self._compartment_id = compartment_id + + @property + def display_name(self): + """ + Gets the display_name of this VmInstance. + VM instance display name. This name does not have to be unique, and is changeable. + + + :return: The display_name of this VmInstance. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this VmInstance. + VM instance display name. This name does not have to be unique, and is changeable. + + + :param display_name: The display_name of this VmInstance. + :type: str + """ + self._display_name = display_name + + @property + def description(self): + """ + Gets the description of this VmInstance. + VM instance description. + + + :return: The description of this VmInstance. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this VmInstance. + VM instance description. + + + :param description: The description of this VmInstance. + :type: str + """ + self._description = description + + @property + def infrastructure_id(self): + """ + **[Required]** Gets the infrastructure_id of this VmInstance. + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The infrastructure_id of this VmInstance. + :rtype: str + """ + return self._infrastructure_id + + @infrastructure_id.setter + def infrastructure_id(self, infrastructure_id): + """ + Sets the infrastructure_id of this VmInstance. + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param infrastructure_id: The infrastructure_id of this VmInstance. + :type: str + """ + self._infrastructure_id = infrastructure_id + + @property + def cpus_enabled(self): + """ + **[Required]** Gets the cpus_enabled of this VmInstance. + The number of CPU cores enabled for each VM instance. + + + :return: The cpus_enabled of this VmInstance. + :rtype: int + """ + return self._cpus_enabled + + @cpus_enabled.setter + def cpus_enabled(self, cpus_enabled): + """ + Sets the cpus_enabled of this VmInstance. + The number of CPU cores enabled for each VM instance. + + + :param cpus_enabled: The cpus_enabled of this VmInstance. + :type: int + """ + self._cpus_enabled = cpus_enabled + + @property + def memory_size_in_gbs(self): + """ + Gets the memory_size_in_gbs of this VmInstance. + The memory to be allocated in GBs. + + + :return: The memory_size_in_gbs of this VmInstance. + :rtype: float + """ + return self._memory_size_in_gbs + + @memory_size_in_gbs.setter + def memory_size_in_gbs(self, memory_size_in_gbs): + """ + Sets the memory_size_in_gbs of this VmInstance. + The memory to be allocated in GBs. + + + :param memory_size_in_gbs: The memory_size_in_gbs of this VmInstance. + :type: float + """ + self._memory_size_in_gbs = memory_size_in_gbs + + @property + def boot_storage_size_in_gbs(self): + """ + Gets the boot_storage_size_in_gbs of this VmInstance. + Boot storage memory to be allocated in GBs. + + + :return: The boot_storage_size_in_gbs of this VmInstance. + :rtype: float + """ + return self._boot_storage_size_in_gbs + + @boot_storage_size_in_gbs.setter + def boot_storage_size_in_gbs(self, boot_storage_size_in_gbs): + """ + Sets the boot_storage_size_in_gbs of this VmInstance. + Boot storage memory to be allocated in GBs. + + + :param boot_storage_size_in_gbs: The boot_storage_size_in_gbs of this VmInstance. + :type: float + """ + self._boot_storage_size_in_gbs = boot_storage_size_in_gbs + + @property + def data_storage_size_in_gbs(self): + """ + Gets the data_storage_size_in_gbs of this VmInstance. + Data storage to be allocated in GBs. + + + :return: The data_storage_size_in_gbs of this VmInstance. + :rtype: float + """ + return self._data_storage_size_in_gbs + + @data_storage_size_in_gbs.setter + def data_storage_size_in_gbs(self, data_storage_size_in_gbs): + """ + Sets the data_storage_size_in_gbs of this VmInstance. + Data storage to be allocated in GBs. + + + :param data_storage_size_in_gbs: The data_storage_size_in_gbs of this VmInstance. + :type: float + """ + self._data_storage_size_in_gbs = data_storage_size_in_gbs + + @property + def defined_tags(self): + """ + Gets the defined_tags of this VmInstance. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this VmInstance. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this VmInstance. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this VmInstance. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this VmInstance. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this VmInstance. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this VmInstance. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this VmInstance. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def system_tags(self): + """ + Gets the system_tags of this VmInstance. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :return: The system_tags of this VmInstance. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this VmInstance. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :param system_tags: The system_tags of this VmInstance. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + @property + def image_id(self): + """ + Gets the image_id of this VmInstance. + The `OCID`__ of the VM custom instance uploaded. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The image_id of this VmInstance. + :rtype: str + """ + return self._image_id + + @image_id.setter + def image_id(self, image_id): + """ + Sets the image_id of this VmInstance. + The `OCID`__ of the VM custom instance uploaded. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param image_id: The image_id of this VmInstance. + :type: str + """ + self._image_id = image_id + + @property + def server_id(self): + """ + Gets the server_id of this VmInstance. + The `OCID`__ of the compute node on which VM instance should be launched. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The server_id of this VmInstance. + :rtype: str + """ + return self._server_id + + @server_id.setter + def server_id(self, server_id): + """ + Sets the server_id of this VmInstance. + The `OCID`__ of the compute node on which VM instance should be launched. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param server_id: The server_id of this VmInstance. + :type: str + """ + self._server_id = server_id + + @property + def ssh_public_keys(self): + """ + **[Required]** Gets the ssh_public_keys of this VmInstance. + List of public key used for SSH access to the VM instance. + + + :return: The ssh_public_keys of this VmInstance. + :rtype: list[str] + """ + return self._ssh_public_keys + + @ssh_public_keys.setter + def ssh_public_keys(self, ssh_public_keys): + """ + Sets the ssh_public_keys of this VmInstance. + List of public key used for SSH access to the VM instance. + + + :param ssh_public_keys: The ssh_public_keys of this VmInstance. + :type: list[str] + """ + self._ssh_public_keys = ssh_public_keys + + @property + def lifecycle_state(self): + """ + **[Required]** Gets the lifecycle_state of this VmInstance. + The current state of the VM instance. + + Allowed values for this property are: "CREATING", "ACTIVE", "INACTIVE", "UPDATING", "DELETING", "DELETED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this VmInstance. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this VmInstance. + The current state of the VM instance. + + + :param lifecycle_state: The lifecycle_state of this VmInstance. + :type: str + """ + allowed_values = ["CREATING", "ACTIVE", "INACTIVE", "UPDATING", "DELETING", "DELETED"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + + @property + def lifecycle_details(self): + """ + Gets the lifecycle_details of this VmInstance. + Lifecycle state details of the VM instance. + + + :return: The lifecycle_details of this VmInstance. + :rtype: str + """ + return self._lifecycle_details + + @lifecycle_details.setter + def lifecycle_details(self, lifecycle_details): + """ + Sets the lifecycle_details of this VmInstance. + Lifecycle state details of the VM instance. + + + :param lifecycle_details: The lifecycle_details of this VmInstance. + :type: str + """ + self._lifecycle_details = lifecycle_details + + @property + def time_created(self): + """ + **[Required]** Gets the time_created of this VmInstance. + The time that the VM instance was created. An RFC3339 formatted datetime string. + + + :return: The time_created of this VmInstance. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this VmInstance. + The time that the VM instance was created. An RFC3339 formatted datetime string. + + + :param time_created: The time_created of this VmInstance. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + **[Required]** Gets the time_updated of this VmInstance. + The time that the VM instance was last updated. An RFC3339 formatted datetime string. + + + :return: The time_updated of this VmInstance. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this VmInstance. + The time that the VM instance was last updated. An RFC3339 formatted datetime string. + + + :param time_updated: The time_updated of this VmInstance. + :type: datetime + """ + self._time_updated = time_updated + + @property + def domain_name(self): + """ + Gets the domain_name of this VmInstance. + The domain name of the VM instance. + + + :return: The domain_name of this VmInstance. + :rtype: str + """ + return self._domain_name + + @domain_name.setter + def domain_name(self, domain_name): + """ + Sets the domain_name of this VmInstance. + The domain name of the VM instance. + + + :param domain_name: The domain_name of this VmInstance. + :type: str + """ + self._domain_name = domain_name + + @property + def time_zone(self): + """ + **[Required]** Gets the time_zone of this VmInstance. + The time zone to use for the VM instance. + + + :return: The time_zone of this VmInstance. + :rtype: str + """ + return self._time_zone + + @time_zone.setter + def time_zone(self, time_zone): + """ + Sets the time_zone of this VmInstance. + The time zone to use for the VM instance. + + + :param time_zone: The time_zone of this VmInstance. + :type: str + """ + self._time_zone = time_zone + + @property + def dns_servers(self): + """ + Gets the dns_servers of this VmInstance. + The list of DNS server IP addresses. Maximum of 3 allowed. + + + :return: The dns_servers of this VmInstance. + :rtype: list[str] + """ + return self._dns_servers + + @dns_servers.setter + def dns_servers(self, dns_servers): + """ + Sets the dns_servers of this VmInstance. + The list of DNS server IP addresses. Maximum of 3 allowed. + + + :param dns_servers: The dns_servers of this VmInstance. + :type: list[str] + """ + self._dns_servers = dns_servers + + @property + def ntp_servers(self): + """ + Gets the ntp_servers of this VmInstance. + The list of NTP server addresses. Maximum of 3 allowed. + + + :return: The ntp_servers of this VmInstance. + :rtype: list[str] + """ + return self._ntp_servers + + @ntp_servers.setter + def ntp_servers(self, ntp_servers): + """ + Sets the ntp_servers of this VmInstance. + The list of NTP server addresses. Maximum of 3 allowed. + + + :param ntp_servers: The ntp_servers of this VmInstance. + :type: list[str] + """ + self._ntp_servers = ntp_servers + + @property + def hostname(self): + """ + Gets the hostname of this VmInstance. + The host name of the instance. + + + :return: The hostname of this VmInstance. + :rtype: str + """ + return self._hostname + + @hostname.setter + def hostname(self, hostname): + """ + Sets the hostname of this VmInstance. + The host name of the instance. + + + :param hostname: The hostname of this VmInstance. + :type: str + """ + self._hostname = hostname + + @property + def ip_address(self): + """ + Gets the ip_address of this VmInstance. + The IP address of the instance. + + + :return: The ip_address of this VmInstance. + :rtype: str + """ + return self._ip_address + + @ip_address.setter + def ip_address(self, ip_address): + """ + Sets the ip_address of this VmInstance. + The IP address of the instance. + + + :param ip_address: The ip_address of this VmInstance. + :type: str + """ + self._ip_address = ip_address + + @property + def netmask(self): + """ + Gets the netmask of this VmInstance. + The netmask of the VM instance network. + + + :return: The netmask of this VmInstance. + :rtype: str + """ + return self._netmask + + @netmask.setter + def netmask(self, netmask): + """ + Sets the netmask of this VmInstance. + The netmask of the VM instance network. + + + :param netmask: The netmask of this VmInstance. + :type: str + """ + self._netmask = netmask + + @property + def gateway(self): + """ + Gets the gateway of this VmInstance. + The gateway IP address of the VM instance network. + + + :return: The gateway of this VmInstance. + :rtype: str + """ + return self._gateway + + @gateway.setter + def gateway(self, gateway): + """ + Sets the gateway of this VmInstance. + The gateway IP address of the VM instance network. + + + :param gateway: The gateway of this VmInstance. + :type: str + """ + self._gateway = gateway + + @property + def vlan_id(self): + """ + Gets the vlan_id of this VmInstance. + The network VLAN ID. + + + :return: The vlan_id of this VmInstance. + :rtype: str + """ + return self._vlan_id + + @vlan_id.setter + def vlan_id(self, vlan_id): + """ + Sets the vlan_id of this VmInstance. + The network VLAN ID. + + + :param vlan_id: The vlan_id of this VmInstance. + :type: str + """ + self._vlan_id = vlan_id + + @property + def userdata(self): + """ + Gets the userdata of this VmInstance. + Base64-encoded data to be used by Cloud-Init to run custom scripts or provide custom Cloud-Init configuration. + For information about how to take advantage of user data, see the `Cloud-Init Documentation`__. + + __ http://cloudinit.readthedocs.org/en/latest/topics/format.html + + + :return: The userdata of this VmInstance. + :rtype: str + """ + return self._userdata + + @userdata.setter + def userdata(self, userdata): + """ + Sets the userdata of this VmInstance. + Base64-encoded data to be used by Cloud-Init to run custom scripts or provide custom Cloud-Init configuration. + For information about how to take advantage of user data, see the `Cloud-Init Documentation`__. + + __ http://cloudinit.readthedocs.org/en/latest/topics/format.html + + + :param userdata: The userdata of this VmInstance. + :type: str + """ + self._userdata = userdata + + @property + def metadata(self): + """ + Gets the metadata of this VmInstance. + Custom metadata key/value pairs which can be used to: + - Provide information to `Cloud-Init`__ to be used for various system initialization tasks. + - Provide additional information which is exposed inside the instance context and can be queried or referenced by user-data scripts for dynamic configuration. + + __ https://cloudinit.readthedocs.org/en/latest/ + + + :return: The metadata of this VmInstance. + :rtype: dict(str, str) + """ + return self._metadata + + @metadata.setter + def metadata(self, metadata): + """ + Sets the metadata of this VmInstance. + Custom metadata key/value pairs which can be used to: + - Provide information to `Cloud-Init`__ to be used for various system initialization tasks. + - Provide additional information which is exposed inside the instance context and can be queried or referenced by user-data scripts for dynamic configuration. + + __ https://cloudinit.readthedocs.org/en/latest/ + + + :param metadata: The metadata of this VmInstance. + :type: dict(str, str) + """ + self._metadata = metadata + + @property + def vm_network_id(self): + """ + Gets the vm_network_id of this VmInstance. + The `OCID`__ of the VM Network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The vm_network_id of this VmInstance. + :rtype: str + """ + return self._vm_network_id + + @vm_network_id.setter + def vm_network_id(self, vm_network_id): + """ + Sets the vm_network_id of this VmInstance. + The `OCID`__ of the VM Network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param vm_network_id: The vm_network_id of this VmInstance. + :type: str + """ + self._vm_network_id = vm_network_id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/vm_instance_collection.py b/src/oci/datacc/models/vm_instance_collection.py new file mode 100644 index 0000000000..1e98ef684a --- /dev/null +++ b/src/oci/datacc/models/vm_instance_collection.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class VmInstanceCollection(object): + """ + A collection of VM instance on Database Infrastructure summary resources. + """ + + def __init__(self, **kwargs): + """ + Initializes a new VmInstanceCollection object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this VmInstanceCollection. + :type items: list[oci.datacc.models.VmInstanceSummary] + + """ + self.swagger_types = { + 'items': 'list[VmInstanceSummary]' + } + self.attribute_map = { + 'items': 'items' + } + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this VmInstanceCollection. + A list of VM instance summary resources. + + + :return: The items of this VmInstanceCollection. + :rtype: list[oci.datacc.models.VmInstanceSummary] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this VmInstanceCollection. + A list of VM instance summary resources. + + + :param items: The items of this VmInstanceCollection. + :type: list[oci.datacc.models.VmInstanceSummary] + """ + self._items = items + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/vm_instance_summary.py b/src/oci/datacc/models/vm_instance_summary.py new file mode 100644 index 0000000000..1a5f21a55d --- /dev/null +++ b/src/oci/datacc/models/vm_instance_summary.py @@ -0,0 +1,692 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class VmInstanceSummary(object): + """ + VM instance on Database Infrastructure summary. + """ + + #: A constant which can be used with the lifecycle_state property of a VmInstanceSummary. + #: This constant has a value of "CREATING" + LIFECYCLE_STATE_CREATING = "CREATING" + + #: A constant which can be used with the lifecycle_state property of a VmInstanceSummary. + #: This constant has a value of "ACTIVE" + LIFECYCLE_STATE_ACTIVE = "ACTIVE" + + #: A constant which can be used with the lifecycle_state property of a VmInstanceSummary. + #: This constant has a value of "INACTIVE" + LIFECYCLE_STATE_INACTIVE = "INACTIVE" + + #: A constant which can be used with the lifecycle_state property of a VmInstanceSummary. + #: This constant has a value of "UPDATING" + LIFECYCLE_STATE_UPDATING = "UPDATING" + + #: A constant which can be used with the lifecycle_state property of a VmInstanceSummary. + #: This constant has a value of "DELETING" + LIFECYCLE_STATE_DELETING = "DELETING" + + #: A constant which can be used with the lifecycle_state property of a VmInstanceSummary. + #: This constant has a value of "DELETED" + LIFECYCLE_STATE_DELETED = "DELETED" + + def __init__(self, **kwargs): + """ + Initializes a new VmInstanceSummary object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this VmInstanceSummary. + :type id: str + + :param compartment_id: + The value to assign to the compartment_id property of this VmInstanceSummary. + :type compartment_id: str + + :param display_name: + The value to assign to the display_name property of this VmInstanceSummary. + :type display_name: str + + :param description: + The value to assign to the description property of this VmInstanceSummary. + :type description: str + + :param infrastructure_id: + The value to assign to the infrastructure_id property of this VmInstanceSummary. + :type infrastructure_id: str + + :param cpus_enabled: + The value to assign to the cpus_enabled property of this VmInstanceSummary. + :type cpus_enabled: int + + :param memory_size_in_gbs: + The value to assign to the memory_size_in_gbs property of this VmInstanceSummary. + :type memory_size_in_gbs: float + + :param defined_tags: + The value to assign to the defined_tags property of this VmInstanceSummary. + :type defined_tags: dict(str, dict(str, object)) + + :param freeform_tags: + The value to assign to the freeform_tags property of this VmInstanceSummary. + :type freeform_tags: dict(str, str) + + :param system_tags: + The value to assign to the system_tags property of this VmInstanceSummary. + :type system_tags: dict(str, dict(str, object)) + + :param image_id: + The value to assign to the image_id property of this VmInstanceSummary. + :type image_id: str + + :param server_id: + The value to assign to the server_id property of this VmInstanceSummary. + :type server_id: str + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this VmInstanceSummary. + Allowed values for this property are: "CREATING", "ACTIVE", "INACTIVE", "UPDATING", "DELETING", "DELETED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + :param lifecycle_details: + The value to assign to the lifecycle_details property of this VmInstanceSummary. + :type lifecycle_details: str + + :param time_created: + The value to assign to the time_created property of this VmInstanceSummary. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this VmInstanceSummary. + :type time_updated: datetime + + :param domain_name: + The value to assign to the domain_name property of this VmInstanceSummary. + :type domain_name: str + + :param time_zone: + The value to assign to the time_zone property of this VmInstanceSummary. + :type time_zone: str + + :param vm_network_id: + The value to assign to the vm_network_id property of this VmInstanceSummary. + :type vm_network_id: str + + """ + self.swagger_types = { + 'id': 'str', + 'compartment_id': 'str', + 'display_name': 'str', + 'description': 'str', + 'infrastructure_id': 'str', + 'cpus_enabled': 'int', + 'memory_size_in_gbs': 'float', + 'defined_tags': 'dict(str, dict(str, object))', + 'freeform_tags': 'dict(str, str)', + 'system_tags': 'dict(str, dict(str, object))', + 'image_id': 'str', + 'server_id': 'str', + 'lifecycle_state': 'str', + 'lifecycle_details': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'domain_name': 'str', + 'time_zone': 'str', + 'vm_network_id': 'str' + } + self.attribute_map = { + 'id': 'id', + 'compartment_id': 'compartmentId', + 'display_name': 'displayName', + 'description': 'description', + 'infrastructure_id': 'infrastructureId', + 'cpus_enabled': 'cpusEnabled', + 'memory_size_in_gbs': 'memorySizeInGBs', + 'defined_tags': 'definedTags', + 'freeform_tags': 'freeformTags', + 'system_tags': 'systemTags', + 'image_id': 'imageId', + 'server_id': 'serverId', + 'lifecycle_state': 'lifecycleState', + 'lifecycle_details': 'lifecycleDetails', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'domain_name': 'domainName', + 'time_zone': 'timeZone', + 'vm_network_id': 'vmNetworkId' + } + self._id = None + self._compartment_id = None + self._display_name = None + self._description = None + self._infrastructure_id = None + self._cpus_enabled = None + self._memory_size_in_gbs = None + self._defined_tags = None + self._freeform_tags = None + self._system_tags = None + self._image_id = None + self._server_id = None + self._lifecycle_state = None + self._lifecycle_details = None + self._time_created = None + self._time_updated = None + self._domain_name = None + self._time_zone = None + self._vm_network_id = None + + @property + def id(self): + """ + **[Required]** Gets the id of this VmInstanceSummary. + The `OCID`__ of the VM instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this VmInstanceSummary. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this VmInstanceSummary. + The `OCID`__ of the VM instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this VmInstanceSummary. + :type: str + """ + self._id = id + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this VmInstanceSummary. + The `OCID`__ of the compartment containing the VM + instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this VmInstanceSummary. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this VmInstanceSummary. + The `OCID`__ of the compartment containing the VM + instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this VmInstanceSummary. + :type: str + """ + self._compartment_id = compartment_id + + @property + def display_name(self): + """ + Gets the display_name of this VmInstanceSummary. + VM instance display name. This name does not have to be unique, and is changeable. + + + :return: The display_name of this VmInstanceSummary. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this VmInstanceSummary. + VM instance display name. This name does not have to be unique, and is changeable. + + + :param display_name: The display_name of this VmInstanceSummary. + :type: str + """ + self._display_name = display_name + + @property + def description(self): + """ + Gets the description of this VmInstanceSummary. + VM instance description. + + + :return: The description of this VmInstanceSummary. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this VmInstanceSummary. + VM instance description. + + + :param description: The description of this VmInstanceSummary. + :type: str + """ + self._description = description + + @property + def infrastructure_id(self): + """ + Gets the infrastructure_id of this VmInstanceSummary. + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The infrastructure_id of this VmInstanceSummary. + :rtype: str + """ + return self._infrastructure_id + + @infrastructure_id.setter + def infrastructure_id(self, infrastructure_id): + """ + Sets the infrastructure_id of this VmInstanceSummary. + The `OCID`__ of the Database Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param infrastructure_id: The infrastructure_id of this VmInstanceSummary. + :type: str + """ + self._infrastructure_id = infrastructure_id + + @property + def cpus_enabled(self): + """ + **[Required]** Gets the cpus_enabled of this VmInstanceSummary. + The number of CPU cores enabled for each VM instance. + + + :return: The cpus_enabled of this VmInstanceSummary. + :rtype: int + """ + return self._cpus_enabled + + @cpus_enabled.setter + def cpus_enabled(self, cpus_enabled): + """ + Sets the cpus_enabled of this VmInstanceSummary. + The number of CPU cores enabled for each VM instance. + + + :param cpus_enabled: The cpus_enabled of this VmInstanceSummary. + :type: int + """ + self._cpus_enabled = cpus_enabled + + @property + def memory_size_in_gbs(self): + """ + Gets the memory_size_in_gbs of this VmInstanceSummary. + The memory to be allocated in GBs. + + + :return: The memory_size_in_gbs of this VmInstanceSummary. + :rtype: float + """ + return self._memory_size_in_gbs + + @memory_size_in_gbs.setter + def memory_size_in_gbs(self, memory_size_in_gbs): + """ + Sets the memory_size_in_gbs of this VmInstanceSummary. + The memory to be allocated in GBs. + + + :param memory_size_in_gbs: The memory_size_in_gbs of this VmInstanceSummary. + :type: float + """ + self._memory_size_in_gbs = memory_size_in_gbs + + @property + def defined_tags(self): + """ + Gets the defined_tags of this VmInstanceSummary. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this VmInstanceSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this VmInstanceSummary. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this VmInstanceSummary. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this VmInstanceSummary. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this VmInstanceSummary. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this VmInstanceSummary. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this VmInstanceSummary. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def system_tags(self): + """ + Gets the system_tags of this VmInstanceSummary. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :return: The system_tags of this VmInstanceSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this VmInstanceSummary. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :param system_tags: The system_tags of this VmInstanceSummary. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + @property + def image_id(self): + """ + Gets the image_id of this VmInstanceSummary. + The `OCID`__ of the VM custom instance uploaded. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The image_id of this VmInstanceSummary. + :rtype: str + """ + return self._image_id + + @image_id.setter + def image_id(self, image_id): + """ + Sets the image_id of this VmInstanceSummary. + The `OCID`__ of the VM custom instance uploaded. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param image_id: The image_id of this VmInstanceSummary. + :type: str + """ + self._image_id = image_id + + @property + def server_id(self): + """ + Gets the server_id of this VmInstanceSummary. + The `OCID`__ of the compute node on which VM instance should be launched. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The server_id of this VmInstanceSummary. + :rtype: str + """ + return self._server_id + + @server_id.setter + def server_id(self, server_id): + """ + Sets the server_id of this VmInstanceSummary. + The `OCID`__ of the compute node on which VM instance should be launched. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param server_id: The server_id of this VmInstanceSummary. + :type: str + """ + self._server_id = server_id + + @property + def lifecycle_state(self): + """ + **[Required]** Gets the lifecycle_state of this VmInstanceSummary. + The current state of the VM instance. + + Allowed values for this property are: "CREATING", "ACTIVE", "INACTIVE", "UPDATING", "DELETING", "DELETED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this VmInstanceSummary. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this VmInstanceSummary. + The current state of the VM instance. + + + :param lifecycle_state: The lifecycle_state of this VmInstanceSummary. + :type: str + """ + allowed_values = ["CREATING", "ACTIVE", "INACTIVE", "UPDATING", "DELETING", "DELETED"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + + @property + def lifecycle_details(self): + """ + Gets the lifecycle_details of this VmInstanceSummary. + Lifecycle state details of the VM instance. + + + :return: The lifecycle_details of this VmInstanceSummary. + :rtype: str + """ + return self._lifecycle_details + + @lifecycle_details.setter + def lifecycle_details(self, lifecycle_details): + """ + Sets the lifecycle_details of this VmInstanceSummary. + Lifecycle state details of the VM instance. + + + :param lifecycle_details: The lifecycle_details of this VmInstanceSummary. + :type: str + """ + self._lifecycle_details = lifecycle_details + + @property + def time_created(self): + """ + **[Required]** Gets the time_created of this VmInstanceSummary. + The time that the VM instance was created. An RFC3339 formatted datetime string. + + + :return: The time_created of this VmInstanceSummary. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this VmInstanceSummary. + The time that the VM instance was created. An RFC3339 formatted datetime string. + + + :param time_created: The time_created of this VmInstanceSummary. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + **[Required]** Gets the time_updated of this VmInstanceSummary. + The time that the VM instance was last updated. An RFC3339 formatted datetime string. + + + :return: The time_updated of this VmInstanceSummary. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this VmInstanceSummary. + The time that the VM instance was last updated. An RFC3339 formatted datetime string. + + + :param time_updated: The time_updated of this VmInstanceSummary. + :type: datetime + """ + self._time_updated = time_updated + + @property + def domain_name(self): + """ + Gets the domain_name of this VmInstanceSummary. + The domain name of the VM instance. + + + :return: The domain_name of this VmInstanceSummary. + :rtype: str + """ + return self._domain_name + + @domain_name.setter + def domain_name(self, domain_name): + """ + Sets the domain_name of this VmInstanceSummary. + The domain name of the VM instance. + + + :param domain_name: The domain_name of this VmInstanceSummary. + :type: str + """ + self._domain_name = domain_name + + @property + def time_zone(self): + """ + **[Required]** Gets the time_zone of this VmInstanceSummary. + The time zone to use for the VM instance. + + + :return: The time_zone of this VmInstanceSummary. + :rtype: str + """ + return self._time_zone + + @time_zone.setter + def time_zone(self, time_zone): + """ + Sets the time_zone of this VmInstanceSummary. + The time zone to use for the VM instance. + + + :param time_zone: The time_zone of this VmInstanceSummary. + :type: str + """ + self._time_zone = time_zone + + @property + def vm_network_id(self): + """ + Gets the vm_network_id of this VmInstanceSummary. + The `OCID`__ of the VM Network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The vm_network_id of this VmInstanceSummary. + :rtype: str + """ + return self._vm_network_id + + @vm_network_id.setter + def vm_network_id(self, vm_network_id): + """ + Sets the vm_network_id of this VmInstanceSummary. + The `OCID`__ of the VM Network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param vm_network_id: The vm_network_id of this VmInstanceSummary. + :type: str + """ + self._vm_network_id = vm_network_id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/vm_network_details.py b/src/oci/datacc/models/vm_network_details.py new file mode 100644 index 0000000000..c6d89ebbdc --- /dev/null +++ b/src/oci/datacc/models/vm_network_details.py @@ -0,0 +1,272 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class VmNetworkDetails(object): + """ + Details of the client or backup networks in an VM cluster. + """ + + #: A constant which can be used with the network_type property of a VmNetworkDetails. + #: This constant has a value of "CLIENT" + NETWORK_TYPE_CLIENT = "CLIENT" + + #: A constant which can be used with the network_type property of a VmNetworkDetails. + #: This constant has a value of "BACKUP" + NETWORK_TYPE_BACKUP = "BACKUP" + + def __init__(self, **kwargs): + """ + Initializes a new VmNetworkDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param vlan_id: + The value to assign to the vlan_id property of this VmNetworkDetails. + :type vlan_id: str + + :param network_type: + The value to assign to the network_type property of this VmNetworkDetails. + Allowed values for this property are: "CLIENT", "BACKUP", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type network_type: str + + :param netmask: + The value to assign to the netmask property of this VmNetworkDetails. + :type netmask: str + + :param gateway: + The value to assign to the gateway property of this VmNetworkDetails. + :type gateway: str + + :param domain_name: + The value to assign to the domain_name property of this VmNetworkDetails. + :type domain_name: str + + :param prefix: + The value to assign to the prefix property of this VmNetworkDetails. + :type prefix: str + + :param nodes: + The value to assign to the nodes property of this VmNetworkDetails. + :type nodes: list[oci.datacc.models.NodeDetails] + + """ + self.swagger_types = { + 'vlan_id': 'str', + 'network_type': 'str', + 'netmask': 'str', + 'gateway': 'str', + 'domain_name': 'str', + 'prefix': 'str', + 'nodes': 'list[NodeDetails]' + } + self.attribute_map = { + 'vlan_id': 'vlanId', + 'network_type': 'networkType', + 'netmask': 'netmask', + 'gateway': 'gateway', + 'domain_name': 'domainName', + 'prefix': 'prefix', + 'nodes': 'nodes' + } + self._vlan_id = None + self._network_type = None + self._netmask = None + self._gateway = None + self._domain_name = None + self._prefix = None + self._nodes = None + + @property + def vlan_id(self): + """ + Gets the vlan_id of this VmNetworkDetails. + The network VLAN ID. + + + :return: The vlan_id of this VmNetworkDetails. + :rtype: str + """ + return self._vlan_id + + @vlan_id.setter + def vlan_id(self, vlan_id): + """ + Sets the vlan_id of this VmNetworkDetails. + The network VLAN ID. + + + :param vlan_id: The vlan_id of this VmNetworkDetails. + :type: str + """ + self._vlan_id = vlan_id + + @property + def network_type(self): + """ + **[Required]** Gets the network_type of this VmNetworkDetails. + The network type. + + Allowed values for this property are: "CLIENT", "BACKUP", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The network_type of this VmNetworkDetails. + :rtype: str + """ + return self._network_type + + @network_type.setter + def network_type(self, network_type): + """ + Sets the network_type of this VmNetworkDetails. + The network type. + + + :param network_type: The network_type of this VmNetworkDetails. + :type: str + """ + allowed_values = ["CLIENT", "BACKUP"] + if not value_allowed_none_or_none_sentinel(network_type, allowed_values): + network_type = 'UNKNOWN_ENUM_VALUE' + self._network_type = network_type + + @property + def netmask(self): + """ + **[Required]** Gets the netmask of this VmNetworkDetails. + The network netmask. + + + :return: The netmask of this VmNetworkDetails. + :rtype: str + """ + return self._netmask + + @netmask.setter + def netmask(self, netmask): + """ + Sets the netmask of this VmNetworkDetails. + The network netmask. + + + :param netmask: The netmask of this VmNetworkDetails. + :type: str + """ + self._netmask = netmask + + @property + def gateway(self): + """ + **[Required]** Gets the gateway of this VmNetworkDetails. + The network gateway. + + + :return: The gateway of this VmNetworkDetails. + :rtype: str + """ + return self._gateway + + @gateway.setter + def gateway(self, gateway): + """ + Sets the gateway of this VmNetworkDetails. + The network gateway. + + + :param gateway: The gateway of this VmNetworkDetails. + :type: str + """ + self._gateway = gateway + + @property + def domain_name(self): + """ + **[Required]** Gets the domain_name of this VmNetworkDetails. + The network domain name. + + + :return: The domain_name of this VmNetworkDetails. + :rtype: str + """ + return self._domain_name + + @domain_name.setter + def domain_name(self, domain_name): + """ + Sets the domain_name of this VmNetworkDetails. + The network domain name. + + + :param domain_name: The domain_name of this VmNetworkDetails. + :type: str + """ + self._domain_name = domain_name + + @property + def prefix(self): + """ + Gets the prefix of this VmNetworkDetails. + The network domain name prefix. + + + :return: The prefix of this VmNetworkDetails. + :rtype: str + """ + return self._prefix + + @prefix.setter + def prefix(self, prefix): + """ + Sets the prefix of this VmNetworkDetails. + The network domain name prefix. + + + :param prefix: The prefix of this VmNetworkDetails. + :type: str + """ + self._prefix = prefix + + @property + def nodes(self): + """ + **[Required]** Gets the nodes of this VmNetworkDetails. + The list of node details. + + + :return: The nodes of this VmNetworkDetails. + :rtype: list[oci.datacc.models.NodeDetails] + """ + return self._nodes + + @nodes.setter + def nodes(self, nodes): + """ + Sets the nodes of this VmNetworkDetails. + The list of node details. + + + :param nodes: The nodes of this VmNetworkDetails. + :type: list[oci.datacc.models.NodeDetails] + """ + self._nodes = nodes + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/work_request.py b/src/oci/datacc/models/work_request.py new file mode 100644 index 0000000000..1a59cbd1ad --- /dev/null +++ b/src/oci/datacc/models/work_request.py @@ -0,0 +1,668 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class WorkRequest(object): + """ + Work request details. + """ + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "CREATE_INSTANCE" + OPERATION_TYPE_CREATE_INSTANCE = "CREATE_INSTANCE" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "DELETE_INSTANCE" + OPERATION_TYPE_DELETE_INSTANCE = "DELETE_INSTANCE" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "UPDATE_INSTANCE" + OPERATION_TYPE_UPDATE_INSTANCE = "UPDATE_INSTANCE" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "CHANGE_INSTANCE_COMPARTMENT" + OPERATION_TYPE_CHANGE_INSTANCE_COMPARTMENT = "CHANGE_INSTANCE_COMPARTMENT" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "CREATE_BASE_VM_CLUSTER_NETWORK" + OPERATION_TYPE_CREATE_BASE_VM_CLUSTER_NETWORK = "CREATE_BASE_VM_CLUSTER_NETWORK" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "DELETE_BASE_VM_CLUSTER_NETWORK" + OPERATION_TYPE_DELETE_BASE_VM_CLUSTER_NETWORK = "DELETE_BASE_VM_CLUSTER_NETWORK" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "VALIDATE_BASE_VM_CLUSTER_NETWORK" + OPERATION_TYPE_VALIDATE_BASE_VM_CLUSTER_NETWORK = "VALIDATE_BASE_VM_CLUSTER_NETWORK" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "UPDATE_BASE_VM_CLUSTER_NETWORK" + OPERATION_TYPE_UPDATE_BASE_VM_CLUSTER_NETWORK = "UPDATE_BASE_VM_CLUSTER_NETWORK" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "CHANGE_BASE_VM_CLUSTER_NETWORK_COMPARTMENT" + OPERATION_TYPE_CHANGE_BASE_VM_CLUSTER_NETWORK_COMPARTMENT = "CHANGE_BASE_VM_CLUSTER_NETWORK_COMPARTMENT" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "START_BASE_VM" + OPERATION_TYPE_START_BASE_VM = "START_BASE_VM" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "STOP_BASE_VM" + OPERATION_TYPE_STOP_BASE_VM = "STOP_BASE_VM" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "START_INSTANCE" + OPERATION_TYPE_START_INSTANCE = "START_INSTANCE" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "STOP_INSTANCE" + OPERATION_TYPE_STOP_INSTANCE = "STOP_INSTANCE" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "SCALE_INSTANCE" + OPERATION_TYPE_SCALE_INSTANCE = "SCALE_INSTANCE" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "RESTART_INSTANCE" + OPERATION_TYPE_RESTART_INSTANCE = "RESTART_INSTANCE" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "RESTART_BASE_VM" + OPERATION_TYPE_RESTART_BASE_VM = "RESTART_BASE_VM" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "MIGRATE_INSTANCE" + OPERATION_TYPE_MIGRATE_INSTANCE = "MIGRATE_INSTANCE" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "SCALE_BASE_VM" + OPERATION_TYPE_SCALE_BASE_VM = "SCALE_BASE_VM" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "UPDATE_SOFTWARE_IMAGE" + OPERATION_TYPE_UPDATE_SOFTWARE_IMAGE = "UPDATE_SOFTWARE_IMAGE" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "CHANGE_SOFTWARE_IMAGE_COMPARTMENT" + OPERATION_TYPE_CHANGE_SOFTWARE_IMAGE_COMPARTMENT = "CHANGE_SOFTWARE_IMAGE_COMPARTMENT" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "VALIDATE_PROXY" + OPERATION_TYPE_VALIDATE_PROXY = "VALIDATE_PROXY" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "CREATE_BASE_INFRA_CAPACITY" + OPERATION_TYPE_CREATE_BASE_INFRA_CAPACITY = "CREATE_BASE_INFRA_CAPACITY" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "UPDATE_BASE_INFRA_CAPACITY" + OPERATION_TYPE_UPDATE_BASE_INFRA_CAPACITY = "UPDATE_BASE_INFRA_CAPACITY" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "DELETE_BASE_INFRA_CAPACITY" + OPERATION_TYPE_DELETE_BASE_INFRA_CAPACITY = "DELETE_BASE_INFRA_CAPACITY" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "ACTIVATE_BASE_INFRASTRUCTURE" + OPERATION_TYPE_ACTIVATE_BASE_INFRASTRUCTURE = "ACTIVATE_BASE_INFRASTRUCTURE" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "CREATE_BASE_INFRASTRUCTURE" + OPERATION_TYPE_CREATE_BASE_INFRASTRUCTURE = "CREATE_BASE_INFRASTRUCTURE" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "DELETE_BASE_INFRASTRUCTURE" + OPERATION_TYPE_DELETE_BASE_INFRASTRUCTURE = "DELETE_BASE_INFRASTRUCTURE" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "UPDATE_BASE_INFRASTRUCTURE" + OPERATION_TYPE_UPDATE_BASE_INFRASTRUCTURE = "UPDATE_BASE_INFRASTRUCTURE" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "UPDATE_BASE_INFRASTRUCTURE_SOFTWARE" + OPERATION_TYPE_UPDATE_BASE_INFRASTRUCTURE_SOFTWARE = "UPDATE_BASE_INFRASTRUCTURE_SOFTWARE" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "VALIDATE_BASE_INFRASTRUCTURE" + OPERATION_TYPE_VALIDATE_BASE_INFRASTRUCTURE = "VALIDATE_BASE_INFRASTRUCTURE" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "CHANGE_BASE_INFRASTRUCTURE_COMPARTMENT" + OPERATION_TYPE_CHANGE_BASE_INFRASTRUCTURE_COMPARTMENT = "CHANGE_BASE_INFRASTRUCTURE_COMPARTMENT" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "ANALYZE_INFRASTRUCTURE" + OPERATION_TYPE_ANALYZE_INFRASTRUCTURE = "ANALYZE_INFRASTRUCTURE" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "ANALYZE_BASE_INFRA_NETWORK" + OPERATION_TYPE_ANALYZE_BASE_INFRA_NETWORK = "ANALYZE_BASE_INFRA_NETWORK" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "INFRASTRUCTURE_SRE_VALIDATION" + OPERATION_TYPE_INFRASTRUCTURE_SRE_VALIDATION = "INFRASTRUCTURE_SRE_VALIDATION" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "CREATE_MAINTENANCE_RUN" + OPERATION_TYPE_CREATE_MAINTENANCE_RUN = "CREATE_MAINTENANCE_RUN" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "UPDATE_MAINTENANCE_RUN" + OPERATION_TYPE_UPDATE_MAINTENANCE_RUN = "UPDATE_MAINTENANCE_RUN" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "RESCHEDULE_MAINTENANCE_RUN" + OPERATION_TYPE_RESCHEDULE_MAINTENANCE_RUN = "RESCHEDULE_MAINTENANCE_RUN" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "INFRASTRUCTURE_SCALE_STORAGE" + OPERATION_TYPE_INFRASTRUCTURE_SCALE_STORAGE = "INFRASTRUCTURE_SCALE_STORAGE" + + #: A constant which can be used with the status property of a WorkRequest. + #: This constant has a value of "ACCEPTED" + STATUS_ACCEPTED = "ACCEPTED" + + #: A constant which can be used with the status property of a WorkRequest. + #: This constant has a value of "IN_PROGRESS" + STATUS_IN_PROGRESS = "IN_PROGRESS" + + #: A constant which can be used with the status property of a WorkRequest. + #: This constant has a value of "FAILED" + STATUS_FAILED = "FAILED" + + #: A constant which can be used with the status property of a WorkRequest. + #: This constant has a value of "SUCCEEDED" + STATUS_SUCCEEDED = "SUCCEEDED" + + #: A constant which can be used with the status property of a WorkRequest. + #: This constant has a value of "CANCELING" + STATUS_CANCELING = "CANCELING" + + #: A constant which can be used with the status property of a WorkRequest. + #: This constant has a value of "CANCELED" + STATUS_CANCELED = "CANCELED" + + #: A constant which can be used with the status property of a WorkRequest. + #: This constant has a value of "WAITING" + STATUS_WAITING = "WAITING" + + def __init__(self, **kwargs): + """ + Initializes a new WorkRequest object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param operation_type: + The value to assign to the operation_type property of this WorkRequest. + Allowed values for this property are: "CREATE_INSTANCE", "DELETE_INSTANCE", "UPDATE_INSTANCE", "CHANGE_INSTANCE_COMPARTMENT", "CREATE_BASE_VM_CLUSTER_NETWORK", "DELETE_BASE_VM_CLUSTER_NETWORK", "VALIDATE_BASE_VM_CLUSTER_NETWORK", "UPDATE_BASE_VM_CLUSTER_NETWORK", "CHANGE_BASE_VM_CLUSTER_NETWORK_COMPARTMENT", "START_BASE_VM", "STOP_BASE_VM", "START_INSTANCE", "STOP_INSTANCE", "SCALE_INSTANCE", "RESTART_INSTANCE", "RESTART_BASE_VM", "MIGRATE_INSTANCE", "SCALE_BASE_VM", "UPDATE_SOFTWARE_IMAGE", "CHANGE_SOFTWARE_IMAGE_COMPARTMENT", "VALIDATE_PROXY", "CREATE_BASE_INFRA_CAPACITY", "UPDATE_BASE_INFRA_CAPACITY", "DELETE_BASE_INFRA_CAPACITY", "ACTIVATE_BASE_INFRASTRUCTURE", "CREATE_BASE_INFRASTRUCTURE", "DELETE_BASE_INFRASTRUCTURE", "UPDATE_BASE_INFRASTRUCTURE", "UPDATE_BASE_INFRASTRUCTURE_SOFTWARE", "VALIDATE_BASE_INFRASTRUCTURE", "CHANGE_BASE_INFRASTRUCTURE_COMPARTMENT", "ANALYZE_INFRASTRUCTURE", "ANALYZE_BASE_INFRA_NETWORK", "INFRASTRUCTURE_SRE_VALIDATION", "CREATE_MAINTENANCE_RUN", "UPDATE_MAINTENANCE_RUN", "RESCHEDULE_MAINTENANCE_RUN", "INFRASTRUCTURE_SCALE_STORAGE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type operation_type: str + + :param status: + The value to assign to the status property of this WorkRequest. + Allowed values for this property are: "ACCEPTED", "IN_PROGRESS", "FAILED", "SUCCEEDED", "CANCELING", "CANCELED", "WAITING", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type status: str + + :param id: + The value to assign to the id property of this WorkRequest. + :type id: str + + :param compartment_id: + The value to assign to the compartment_id property of this WorkRequest. + :type compartment_id: str + + :param resources: + The value to assign to the resources property of this WorkRequest. + :type resources: list[oci.datacc.models.WorkRequestResource] + + :param opc_request_id: + The value to assign to the opc_request_id property of this WorkRequest. + :type opc_request_id: str + + :param percent_complete: + The value to assign to the percent_complete property of this WorkRequest. + :type percent_complete: float + + :param time_accepted: + The value to assign to the time_accepted property of this WorkRequest. + :type time_accepted: datetime + + :param time_started: + The value to assign to the time_started property of this WorkRequest. + :type time_started: datetime + + :param time_finished: + The value to assign to the time_finished property of this WorkRequest. + :type time_finished: datetime + + :param freeform_tags: + The value to assign to the freeform_tags property of this WorkRequest. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this WorkRequest. + :type defined_tags: dict(str, dict(str, object)) + + :param system_tags: + The value to assign to the system_tags property of this WorkRequest. + :type system_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'operation_type': 'str', + 'status': 'str', + 'id': 'str', + 'compartment_id': 'str', + 'resources': 'list[WorkRequestResource]', + 'opc_request_id': 'str', + 'percent_complete': 'float', + 'time_accepted': 'datetime', + 'time_started': 'datetime', + 'time_finished': 'datetime', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'operation_type': 'operationType', + 'status': 'status', + 'id': 'id', + 'compartment_id': 'compartmentId', + 'resources': 'resources', + 'opc_request_id': 'opcRequestId', + 'percent_complete': 'percentComplete', + 'time_accepted': 'timeAccepted', + 'time_started': 'timeStarted', + 'time_finished': 'timeFinished', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags' + } + self._operation_type = None + self._status = None + self._id = None + self._compartment_id = None + self._resources = None + self._opc_request_id = None + self._percent_complete = None + self._time_accepted = None + self._time_started = None + self._time_finished = None + self._freeform_tags = None + self._defined_tags = None + self._system_tags = None + + @property + def operation_type(self): + """ + **[Required]** Gets the operation_type of this WorkRequest. + Type of the work request. + + Allowed values for this property are: "CREATE_INSTANCE", "DELETE_INSTANCE", "UPDATE_INSTANCE", "CHANGE_INSTANCE_COMPARTMENT", "CREATE_BASE_VM_CLUSTER_NETWORK", "DELETE_BASE_VM_CLUSTER_NETWORK", "VALIDATE_BASE_VM_CLUSTER_NETWORK", "UPDATE_BASE_VM_CLUSTER_NETWORK", "CHANGE_BASE_VM_CLUSTER_NETWORK_COMPARTMENT", "START_BASE_VM", "STOP_BASE_VM", "START_INSTANCE", "STOP_INSTANCE", "SCALE_INSTANCE", "RESTART_INSTANCE", "RESTART_BASE_VM", "MIGRATE_INSTANCE", "SCALE_BASE_VM", "UPDATE_SOFTWARE_IMAGE", "CHANGE_SOFTWARE_IMAGE_COMPARTMENT", "VALIDATE_PROXY", "CREATE_BASE_INFRA_CAPACITY", "UPDATE_BASE_INFRA_CAPACITY", "DELETE_BASE_INFRA_CAPACITY", "ACTIVATE_BASE_INFRASTRUCTURE", "CREATE_BASE_INFRASTRUCTURE", "DELETE_BASE_INFRASTRUCTURE", "UPDATE_BASE_INFRASTRUCTURE", "UPDATE_BASE_INFRASTRUCTURE_SOFTWARE", "VALIDATE_BASE_INFRASTRUCTURE", "CHANGE_BASE_INFRASTRUCTURE_COMPARTMENT", "ANALYZE_INFRASTRUCTURE", "ANALYZE_BASE_INFRA_NETWORK", "INFRASTRUCTURE_SRE_VALIDATION", "CREATE_MAINTENANCE_RUN", "UPDATE_MAINTENANCE_RUN", "RESCHEDULE_MAINTENANCE_RUN", "INFRASTRUCTURE_SCALE_STORAGE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The operation_type of this WorkRequest. + :rtype: str + """ + return self._operation_type + + @operation_type.setter + def operation_type(self, operation_type): + """ + Sets the operation_type of this WorkRequest. + Type of the work request. + + + :param operation_type: The operation_type of this WorkRequest. + :type: str + """ + allowed_values = ["CREATE_INSTANCE", "DELETE_INSTANCE", "UPDATE_INSTANCE", "CHANGE_INSTANCE_COMPARTMENT", "CREATE_BASE_VM_CLUSTER_NETWORK", "DELETE_BASE_VM_CLUSTER_NETWORK", "VALIDATE_BASE_VM_CLUSTER_NETWORK", "UPDATE_BASE_VM_CLUSTER_NETWORK", "CHANGE_BASE_VM_CLUSTER_NETWORK_COMPARTMENT", "START_BASE_VM", "STOP_BASE_VM", "START_INSTANCE", "STOP_INSTANCE", "SCALE_INSTANCE", "RESTART_INSTANCE", "RESTART_BASE_VM", "MIGRATE_INSTANCE", "SCALE_BASE_VM", "UPDATE_SOFTWARE_IMAGE", "CHANGE_SOFTWARE_IMAGE_COMPARTMENT", "VALIDATE_PROXY", "CREATE_BASE_INFRA_CAPACITY", "UPDATE_BASE_INFRA_CAPACITY", "DELETE_BASE_INFRA_CAPACITY", "ACTIVATE_BASE_INFRASTRUCTURE", "CREATE_BASE_INFRASTRUCTURE", "DELETE_BASE_INFRASTRUCTURE", "UPDATE_BASE_INFRASTRUCTURE", "UPDATE_BASE_INFRASTRUCTURE_SOFTWARE", "VALIDATE_BASE_INFRASTRUCTURE", "CHANGE_BASE_INFRASTRUCTURE_COMPARTMENT", "ANALYZE_INFRASTRUCTURE", "ANALYZE_BASE_INFRA_NETWORK", "INFRASTRUCTURE_SRE_VALIDATION", "CREATE_MAINTENANCE_RUN", "UPDATE_MAINTENANCE_RUN", "RESCHEDULE_MAINTENANCE_RUN", "INFRASTRUCTURE_SCALE_STORAGE"] + if not value_allowed_none_or_none_sentinel(operation_type, allowed_values): + operation_type = 'UNKNOWN_ENUM_VALUE' + self._operation_type = operation_type + + @property + def status(self): + """ + **[Required]** Gets the status of this WorkRequest. + Status of current work request. + + Allowed values for this property are: "ACCEPTED", "IN_PROGRESS", "FAILED", "SUCCEEDED", "CANCELING", "CANCELED", "WAITING", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The status of this WorkRequest. + :rtype: str + """ + return self._status + + @status.setter + def status(self, status): + """ + Sets the status of this WorkRequest. + Status of current work request. + + + :param status: The status of this WorkRequest. + :type: str + """ + allowed_values = ["ACCEPTED", "IN_PROGRESS", "FAILED", "SUCCEEDED", "CANCELING", "CANCELED", "WAITING"] + if not value_allowed_none_or_none_sentinel(status, allowed_values): + status = 'UNKNOWN_ENUM_VALUE' + self._status = status + + @property + def id(self): + """ + **[Required]** Gets the id of this WorkRequest. + The `OCID`__ of the work request. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this WorkRequest. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this WorkRequest. + The `OCID`__ of the work request. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this WorkRequest. + :type: str + """ + self._id = id + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this WorkRequest. + `OCID`__ of the compartment that contains the work request. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this WorkRequest. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this WorkRequest. + `OCID`__ of the compartment that contains the work request. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this WorkRequest. + :type: str + """ + self._compartment_id = compartment_id + + @property + def resources(self): + """ + **[Required]** Gets the resources of this WorkRequest. + The resources affected by the work request. + + + :return: The resources of this WorkRequest. + :rtype: list[oci.datacc.models.WorkRequestResource] + """ + return self._resources + + @resources.setter + def resources(self, resources): + """ + Sets the resources of this WorkRequest. + The resources affected by the work request. + + + :param resources: The resources of this WorkRequest. + :type: list[oci.datacc.models.WorkRequestResource] + """ + self._resources = resources + + @property + def opc_request_id(self): + """ + Gets the opc_request_id of this WorkRequest. + opc-request-id of the request that triggered the work request. + + + :return: The opc_request_id of this WorkRequest. + :rtype: str + """ + return self._opc_request_id + + @opc_request_id.setter + def opc_request_id(self, opc_request_id): + """ + Sets the opc_request_id of this WorkRequest. + opc-request-id of the request that triggered the work request. + + + :param opc_request_id: The opc_request_id of this WorkRequest. + :type: str + """ + self._opc_request_id = opc_request_id + + @property + def percent_complete(self): + """ + **[Required]** Gets the percent_complete of this WorkRequest. + Percentage of the request completed. + + + :return: The percent_complete of this WorkRequest. + :rtype: float + """ + return self._percent_complete + + @percent_complete.setter + def percent_complete(self, percent_complete): + """ + Sets the percent_complete of this WorkRequest. + Percentage of the request completed. + + + :param percent_complete: The percent_complete of this WorkRequest. + :type: float + """ + self._percent_complete = percent_complete + + @property + def time_accepted(self): + """ + **[Required]** Gets the time_accepted of this WorkRequest. + The date and time that the request was created, as described in + `RFC 3339`__, section 14.29. + + __ https://tools.ietf.org/rfc/rfc3339 + + + :return: The time_accepted of this WorkRequest. + :rtype: datetime + """ + return self._time_accepted + + @time_accepted.setter + def time_accepted(self, time_accepted): + """ + Sets the time_accepted of this WorkRequest. + The date and time that the request was created, as described in + `RFC 3339`__, section 14.29. + + __ https://tools.ietf.org/rfc/rfc3339 + + + :param time_accepted: The time_accepted of this WorkRequest. + :type: datetime + """ + self._time_accepted = time_accepted + + @property + def time_started(self): + """ + Gets the time_started of this WorkRequest. + The date and time that the request started, as described in `RFC 3339`__, + section 14.29. + + __ https://tools.ietf.org/rfc/rfc3339 + + + :return: The time_started of this WorkRequest. + :rtype: datetime + """ + return self._time_started + + @time_started.setter + def time_started(self, time_started): + """ + Sets the time_started of this WorkRequest. + The date and time that the request started, as described in `RFC 3339`__, + section 14.29. + + __ https://tools.ietf.org/rfc/rfc3339 + + + :param time_started: The time_started of this WorkRequest. + :type: datetime + """ + self._time_started = time_started + + @property + def time_finished(self): + """ + Gets the time_finished of this WorkRequest. + The date and time that the request completed, as described in `RFC 3339`__. + + __ https://tools.ietf.org/rfc/rfc3339 + + + :return: The time_finished of this WorkRequest. + :rtype: datetime + """ + return self._time_finished + + @time_finished.setter + def time_finished(self, time_finished): + """ + Sets the time_finished of this WorkRequest. + The date and time that the request completed, as described in `RFC 3339`__. + + __ https://tools.ietf.org/rfc/rfc3339 + + + :param time_finished: The time_finished of this WorkRequest. + :type: datetime + """ + self._time_finished = time_finished + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this WorkRequest. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this WorkRequest. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this WorkRequest. + Simple key-value pair that is applied without any predefined name, type or scope. This tag option exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this WorkRequest. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this WorkRequest. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this WorkRequest. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this WorkRequest. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this WorkRequest. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def system_tags(self): + """ + Gets the system_tags of this WorkRequest. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :return: The system_tags of this WorkRequest. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this WorkRequest. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :param system_tags: The system_tags of this WorkRequest. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/work_request_collection.py b/src/oci/datacc/models/work_request_collection.py new file mode 100644 index 0000000000..9fea45bf8a --- /dev/null +++ b/src/oci/datacc/models/work_request_collection.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class WorkRequestCollection(object): + """ + A collection of Work request resources. + """ + + def __init__(self, **kwargs): + """ + Initializes a new WorkRequestCollection object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this WorkRequestCollection. + :type items: list[oci.datacc.models.WorkRequest] + + """ + self.swagger_types = { + 'items': 'list[WorkRequest]' + } + self.attribute_map = { + 'items': 'items' + } + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this WorkRequestCollection. + A list of Work request resources. + + + :return: The items of this WorkRequestCollection. + :rtype: list[oci.datacc.models.WorkRequest] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this WorkRequestCollection. + A list of Work request resources. + + + :param items: The items of this WorkRequestCollection. + :type: list[oci.datacc.models.WorkRequest] + """ + self._items = items + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/work_request_error.py b/src/oci/datacc/models/work_request_error.py new file mode 100644 index 0000000000..effd0bd3b6 --- /dev/null +++ b/src/oci/datacc/models/work_request_error.py @@ -0,0 +1,134 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class WorkRequestError(object): + """ + An error encountered while executing a work request. + """ + + def __init__(self, **kwargs): + """ + Initializes a new WorkRequestError object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param code: + The value to assign to the code property of this WorkRequestError. + :type code: str + + :param message: + The value to assign to the message property of this WorkRequestError. + :type message: str + + :param timestamp: + The value to assign to the timestamp property of this WorkRequestError. + :type timestamp: datetime + + """ + self.swagger_types = { + 'code': 'str', + 'message': 'str', + 'timestamp': 'datetime' + } + self.attribute_map = { + 'code': 'code', + 'message': 'message', + 'timestamp': 'timestamp' + } + self._code = None + self._message = None + self._timestamp = None + + @property + def code(self): + """ + **[Required]** Gets the code of this WorkRequestError. + A machine-usable code for the error that occured. Error codes are listed on + (https://docs.oracle.com/iaas/Content/API/References/apierrors.htm) + + + :return: The code of this WorkRequestError. + :rtype: str + """ + return self._code + + @code.setter + def code(self, code): + """ + Sets the code of this WorkRequestError. + A machine-usable code for the error that occured. Error codes are listed on + (https://docs.oracle.com/iaas/Content/API/References/apierrors.htm) + + + :param code: The code of this WorkRequestError. + :type: str + """ + self._code = code + + @property + def message(self): + """ + **[Required]** Gets the message of this WorkRequestError. + A human-readable description of the issue encountered. + + + :return: The message of this WorkRequestError. + :rtype: str + """ + return self._message + + @message.setter + def message(self, message): + """ + Sets the message of this WorkRequestError. + A human-readable description of the issue encountered. + + + :param message: The message of this WorkRequestError. + :type: str + """ + self._message = message + + @property + def timestamp(self): + """ + **[Required]** Gets the timestamp of this WorkRequestError. + The time that the error occured. An RFC3339 standard formatted datetime string. + + + :return: The timestamp of this WorkRequestError. + :rtype: datetime + """ + return self._timestamp + + @timestamp.setter + def timestamp(self, timestamp): + """ + Sets the timestamp of this WorkRequestError. + The time that the error occured. An RFC3339 standard formatted datetime string. + + + :param timestamp: The timestamp of this WorkRequestError. + :type: datetime + """ + self._timestamp = timestamp + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/work_request_error_collection.py b/src/oci/datacc/models/work_request_error_collection.py new file mode 100644 index 0000000000..a2165ea39e --- /dev/null +++ b/src/oci/datacc/models/work_request_error_collection.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class WorkRequestErrorCollection(object): + """ + A collection of work request error resources. + """ + + def __init__(self, **kwargs): + """ + Initializes a new WorkRequestErrorCollection object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this WorkRequestErrorCollection. + :type items: list[oci.datacc.models.WorkRequestError] + + """ + self.swagger_types = { + 'items': 'list[WorkRequestError]' + } + self.attribute_map = { + 'items': 'items' + } + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this WorkRequestErrorCollection. + A list of work request error resources. + + + :return: The items of this WorkRequestErrorCollection. + :rtype: list[oci.datacc.models.WorkRequestError] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this WorkRequestErrorCollection. + A list of work request error resources. + + + :param items: The items of this WorkRequestErrorCollection. + :type: list[oci.datacc.models.WorkRequestError] + """ + self._items = items + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/work_request_log_entry.py b/src/oci/datacc/models/work_request_log_entry.py new file mode 100644 index 0000000000..1a8102e78c --- /dev/null +++ b/src/oci/datacc/models/work_request_log_entry.py @@ -0,0 +1,101 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class WorkRequestLogEntry(object): + """ + A log message from the execution of a work request. + """ + + def __init__(self, **kwargs): + """ + Initializes a new WorkRequestLogEntry object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param message: + The value to assign to the message property of this WorkRequestLogEntry. + :type message: str + + :param timestamp: + The value to assign to the timestamp property of this WorkRequestLogEntry. + :type timestamp: datetime + + """ + self.swagger_types = { + 'message': 'str', + 'timestamp': 'datetime' + } + self.attribute_map = { + 'message': 'message', + 'timestamp': 'timestamp' + } + self._message = None + self._timestamp = None + + @property + def message(self): + """ + **[Required]** Gets the message of this WorkRequestLogEntry. + Human-readable log message. + + + :return: The message of this WorkRequestLogEntry. + :rtype: str + """ + return self._message + + @message.setter + def message(self, message): + """ + Sets the message of this WorkRequestLogEntry. + Human-readable log message. + + + :param message: The message of this WorkRequestLogEntry. + :type: str + """ + self._message = message + + @property + def timestamp(self): + """ + **[Required]** Gets the timestamp of this WorkRequestLogEntry. + The time that the log message was written. An RFC3339 formatted datetime string. + + + :return: The timestamp of this WorkRequestLogEntry. + :rtype: datetime + """ + return self._timestamp + + @timestamp.setter + def timestamp(self, timestamp): + """ + Sets the timestamp of this WorkRequestLogEntry. + The time that the log message was written. An RFC3339 formatted datetime string. + + + :param timestamp: The timestamp of this WorkRequestLogEntry. + :type: datetime + """ + self._timestamp = timestamp + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/work_request_log_entry_collection.py b/src/oci/datacc/models/work_request_log_entry_collection.py new file mode 100644 index 0000000000..8616261015 --- /dev/null +++ b/src/oci/datacc/models/work_request_log_entry_collection.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class WorkRequestLogEntryCollection(object): + """ + A collection of work request log entry resources. + """ + + def __init__(self, **kwargs): + """ + Initializes a new WorkRequestLogEntryCollection object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this WorkRequestLogEntryCollection. + :type items: list[oci.datacc.models.WorkRequestLogEntry] + + """ + self.swagger_types = { + 'items': 'list[WorkRequestLogEntry]' + } + self.attribute_map = { + 'items': 'items' + } + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this WorkRequestLogEntryCollection. + A list of work request log entry resources. + + + :return: The items of this WorkRequestLogEntryCollection. + :rtype: list[oci.datacc.models.WorkRequestLogEntry] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this WorkRequestLogEntryCollection. + A list of work request log entry resources. + + + :param items: The items of this WorkRequestLogEntryCollection. + :type: list[oci.datacc.models.WorkRequestLogEntry] + """ + self._items = items + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/datacc/models/work_request_resource.py b/src/oci/datacc/models/work_request_resource.py new file mode 100644 index 0000000000..c81b64761c --- /dev/null +++ b/src/oci/datacc/models/work_request_resource.py @@ -0,0 +1,217 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20251101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class WorkRequestResource(object): + """ + A resource created or operated on by a work request. + """ + + #: A constant which can be used with the action_type property of a WorkRequestResource. + #: This constant has a value of "CREATED" + ACTION_TYPE_CREATED = "CREATED" + + #: A constant which can be used with the action_type property of a WorkRequestResource. + #: This constant has a value of "UPDATED" + ACTION_TYPE_UPDATED = "UPDATED" + + #: A constant which can be used with the action_type property of a WorkRequestResource. + #: This constant has a value of "DELETED" + ACTION_TYPE_DELETED = "DELETED" + + #: A constant which can be used with the action_type property of a WorkRequestResource. + #: This constant has a value of "IN_PROGRESS" + ACTION_TYPE_IN_PROGRESS = "IN_PROGRESS" + + #: A constant which can be used with the action_type property of a WorkRequestResource. + #: This constant has a value of "FAILED" + ACTION_TYPE_FAILED = "FAILED" + + #: A constant which can be used with the action_type property of a WorkRequestResource. + #: This constant has a value of "RELATED" + ACTION_TYPE_RELATED = "RELATED" + + #: A constant which can be used with the action_type property of a WorkRequestResource. + #: This constant has a value of "CANCELED_CREATE" + ACTION_TYPE_CANCELED_CREATE = "CANCELED_CREATE" + + #: A constant which can be used with the action_type property of a WorkRequestResource. + #: This constant has a value of "CANCELED_UPDATE" + ACTION_TYPE_CANCELED_UPDATE = "CANCELED_UPDATE" + + #: A constant which can be used with the action_type property of a WorkRequestResource. + #: This constant has a value of "CANCELED_DELETE" + ACTION_TYPE_CANCELED_DELETE = "CANCELED_DELETE" + + def __init__(self, **kwargs): + """ + Initializes a new WorkRequestResource object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param entity_type: + The value to assign to the entity_type property of this WorkRequestResource. + :type entity_type: str + + :param action_type: + The value to assign to the action_type property of this WorkRequestResource. + Allowed values for this property are: "CREATED", "UPDATED", "DELETED", "IN_PROGRESS", "FAILED", "RELATED", "CANCELED_CREATE", "CANCELED_UPDATE", "CANCELED_DELETE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type action_type: str + + :param identifier: + The value to assign to the identifier property of this WorkRequestResource. + :type identifier: str + + :param entity_uri: + The value to assign to the entity_uri property of this WorkRequestResource. + :type entity_uri: str + + """ + self.swagger_types = { + 'entity_type': 'str', + 'action_type': 'str', + 'identifier': 'str', + 'entity_uri': 'str' + } + self.attribute_map = { + 'entity_type': 'entityType', + 'action_type': 'actionType', + 'identifier': 'identifier', + 'entity_uri': 'entityUri' + } + self._entity_type = None + self._action_type = None + self._identifier = None + self._entity_uri = None + + @property + def entity_type(self): + """ + **[Required]** Gets the entity_type of this WorkRequestResource. + The type of resource being acted on by the work request. + + + :return: The entity_type of this WorkRequestResource. + :rtype: str + """ + return self._entity_type + + @entity_type.setter + def entity_type(self, entity_type): + """ + Sets the entity_type of this WorkRequestResource. + The type of resource being acted on by the work request. + + + :param entity_type: The entity_type of this WorkRequestResource. + :type: str + """ + self._entity_type = entity_type + + @property + def action_type(self): + """ + **[Required]** Gets the action_type of this WorkRequestResource. + The way in which this resource is affected by the work tracked in the work request. + A resource being created, updated, or deleted remains in the IN_PROGRESS state until + work is complete for that resource. When work is complete, the state transitions to CREATED, UPDATED, + or DELETED. + + Allowed values for this property are: "CREATED", "UPDATED", "DELETED", "IN_PROGRESS", "FAILED", "RELATED", "CANCELED_CREATE", "CANCELED_UPDATE", "CANCELED_DELETE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The action_type of this WorkRequestResource. + :rtype: str + """ + return self._action_type + + @action_type.setter + def action_type(self, action_type): + """ + Sets the action_type of this WorkRequestResource. + The way in which this resource is affected by the work tracked in the work request. + A resource being created, updated, or deleted remains in the IN_PROGRESS state until + work is complete for that resource. When work is complete, the state transitions to CREATED, UPDATED, + or DELETED. + + + :param action_type: The action_type of this WorkRequestResource. + :type: str + """ + allowed_values = ["CREATED", "UPDATED", "DELETED", "IN_PROGRESS", "FAILED", "RELATED", "CANCELED_CREATE", "CANCELED_UPDATE", "CANCELED_DELETE"] + if not value_allowed_none_or_none_sentinel(action_type, allowed_values): + action_type = 'UNKNOWN_ENUM_VALUE' + self._action_type = action_type + + @property + def identifier(self): + """ + **[Required]** Gets the identifier of this WorkRequestResource. + The `OCID`__ of the resource being acted on by the work request. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The identifier of this WorkRequestResource. + :rtype: str + """ + return self._identifier + + @identifier.setter + def identifier(self, identifier): + """ + Sets the identifier of this WorkRequestResource. + The `OCID`__ of the resource being acted on by the work request. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param identifier: The identifier of this WorkRequestResource. + :type: str + """ + self._identifier = identifier + + @property + def entity_uri(self): + """ + Gets the entity_uri of this WorkRequestResource. + The URI path for GET REST attachment to the resource metadata. + + + :return: The entity_uri of this WorkRequestResource. + :rtype: str + """ + return self._entity_uri + + @entity_uri.setter + def entity_uri(self, entity_uri): + """ + Sets the entity_uri of this WorkRequestResource. + The URI path for GET REST attachment to the resource metadata. + + + :param entity_uri: The entity_uri of this WorkRequestResource. + :type: str + """ + self._entity_uri = entity_uri + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/generative_ai/generative_ai_client.py b/src/oci/generative_ai/generative_ai_client.py index 8652bfc2d8..83da091163 100644 --- a/src/oci/generative_ai/generative_ai_client.py +++ b/src/oci/generative_ai/generative_ai_client.py @@ -1172,6 +1172,139 @@ def change_hosted_application_compartment(self, hosted_application_id, change_ho api_reference_link=api_reference_link, required_arguments=required_arguments) + def change_hosted_application_iam_compartment(self, hosted_application_iam_id, change_hosted_application_compartment_details, **kwargs): + """ + Moves a hosted application into a different compartment within the same tenancy. For information about moving resources between compartments, see `Moving Resources to a Different Compartment`__. + + __ https://docs.oracle.com/iaas/Content/Identity/Tasks/managingcompartments.htm#moveRes + + + :param str hosted_application_iam_id: (required) + The `OCID`__ of the hosted application. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param oci.generative_ai.models.ChangeHostedApplicationCompartmentDetails change_hosted_application_compartment_details: (required) + The information to be updated. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the + `if-match` parameter to the value of the etag from a previous GET or POST response for + that resource. The resource will be updated or deleted only if the etag you provide + matches the resource's current etag value. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of running that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and removed from the system, then a retry of the original creation request + might be rejected. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use change_hosted_application_iam_compartment API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['hostedApplicationIamId'] + resource_path = "/hostedApplicationsIam/{hostedApplicationIamId}/actions/changeCompartment" + method = "POST" + operation_name = "change_hosted_application_iam_compartment" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/HostedApplicationIam/ChangeHostedApplicationIamCompartment" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id", + "opc_retry_token" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"change_hosted_application_iam_compartment got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "hostedApplicationIamId": hosted_application_iam_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=change_hosted_application_compartment_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=change_hosted_application_compartment_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + def change_hosted_application_storage_compartment(self, hosted_application_storage_id, change_hosted_application_storage_compartment_details, **kwargs): """ Moves a hosted application storage into a different compartment within the same tenancy. For information about moving resources between compartments, see `Moving Resources to a Different Compartment`__. @@ -2351,6 +2484,114 @@ def create_hosted_application(self, create_hosted_application_details, **kwargs) api_reference_link=api_reference_link, required_arguments=required_arguments) + def create_hosted_application_iam(self, create_hosted_application_iam_details, **kwargs): + """ + Creates a hosted application. + + + :param oci.generative_ai.models.CreateHostedApplicationIamDetails create_hosted_application_iam_details: (required) + Details for the new hosted application. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of running that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and removed from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.generative_ai.models.HostedApplicationIam` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use create_hosted_application_iam API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = [] + resource_path = "/hostedApplicationsIam" + method = "POST" + operation_name = "create_hosted_application_iam" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/HostedApplicationIam/CreateHostedApplicationIam" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_retry_token", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"create_hosted_application_iam got unknown kwargs: {extra_kwargs!r}") + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + header_params=header_params, + body=create_hosted_application_iam_details, + response_type="HostedApplicationIam", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + header_params=header_params, + body=create_hosted_application_iam_details, + response_type="HostedApplicationIam", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + def create_hosted_application_storage(self, create_hosted_application_storage_details, **kwargs): """ Creates a hosted application storage. @@ -3810,14 +4051,14 @@ def delete_hosted_application(self, hosted_application_id, **kwargs): api_reference_link=api_reference_link, required_arguments=required_arguments) - def delete_hosted_application_storage(self, hosted_application_storage_id, **kwargs): + def delete_hosted_application_iam(self, hosted_application_iam_id, **kwargs): """ Deletes a hosted application. You can only delete hosted application without attached resources. Before you delete a hosting hosted application, you must delete the endpoints associated to that application. Before you delete a fine-tuning hosted application, you must delete the custom model on that application. The delete action permanently deletes the cluster. This action can't be undone. - :param str hosted_application_storage_id: (required) - The `OCID`__ of the hosted application storage. + :param str hosted_application_iam_id: (required) + The `OCID`__ of the hosted application. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm @@ -3853,14 +4094,14 @@ def delete_hosted_application_storage(self, hosted_application_storage_id, **kwa :rtype: :class:`~oci.response.Response` :example: - Click `here `__ to see an example of how to use delete_hosted_application_storage API. + Click `here `__ to see an example of how to use delete_hosted_application_iam API. """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. - required_arguments = ['hostedApplicationStorageId'] - resource_path = "/hostedApplicationStorages/{hostedApplicationStorageId}" + required_arguments = ['hostedApplicationIamId'] + resource_path = "/hostedApplicationsIam/{hostedApplicationIamId}" method = "DELETE" - operation_name = "delete_hosted_application_storage" - api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/HostedApplicationStorage/DeleteHostedApplicationStorage" + operation_name = "delete_hosted_application_iam" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/HostedApplicationIam/DeleteHostedApplicationIam" # Don't accept unknown kwargs expected_kwargs = [ @@ -3873,10 +4114,10 @@ def delete_hosted_application_storage(self, hosted_application_storage_id, **kwa extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] if extra_kwargs: raise ValueError( - f"delete_hosted_application_storage got unknown kwargs: {extra_kwargs!r}") + f"delete_hosted_application_iam got unknown kwargs: {extra_kwargs!r}") path_params = { - "hostedApplicationStorageId": hosted_application_storage_id + "hostedApplicationIamId": hosted_application_iam_id } path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} @@ -3927,14 +4168,14 @@ def delete_hosted_application_storage(self, hosted_application_storage_id, **kwa api_reference_link=api_reference_link, required_arguments=required_arguments) - def delete_hosted_deployment(self, hosted_deployment_id, **kwargs): + def delete_hosted_application_storage(self, hosted_application_storage_id, **kwargs): """ - Deletes a hosted deployment. - You can only delete hosted deployment without attached resources. Before you delete a hosting hosted deployment, you must delete the endpoints associated to that deployment. Before you delete a fine-tuning hosted deployment, you must delete the custom model on that deployment. The delete action permanently deletes the cluster. This action can't be undone. + Deletes a hosted application. + You can only delete hosted application without attached resources. Before you delete a hosting hosted application, you must delete the endpoints associated to that application. Before you delete a fine-tuning hosted application, you must delete the custom model on that application. The delete action permanently deletes the cluster. This action can't be undone. - :param str hosted_deployment_id: (required) - The `OCID`__ of the hosted deployment. + :param str hosted_application_storage_id: (required) + The `OCID`__ of the hosted application storage. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm @@ -3970,14 +4211,14 @@ def delete_hosted_deployment(self, hosted_deployment_id, **kwargs): :rtype: :class:`~oci.response.Response` :example: - Click `here `__ to see an example of how to use delete_hosted_deployment API. + Click `here `__ to see an example of how to use delete_hosted_application_storage API. """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. - required_arguments = ['hostedDeploymentId'] - resource_path = "/hostedDeployments/{hostedDeploymentId}" + required_arguments = ['hostedApplicationStorageId'] + resource_path = "/hostedApplicationStorages/{hostedApplicationStorageId}" method = "DELETE" - operation_name = "delete_hosted_deployment" - api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/HostedDeployment/DeleteHostedDeployment" + operation_name = "delete_hosted_application_storage" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/HostedApplicationStorage/DeleteHostedApplicationStorage" # Don't accept unknown kwargs expected_kwargs = [ @@ -3990,10 +4231,10 @@ def delete_hosted_deployment(self, hosted_deployment_id, **kwargs): extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] if extra_kwargs: raise ValueError( - f"delete_hosted_deployment got unknown kwargs: {extra_kwargs!r}") + f"delete_hosted_application_storage got unknown kwargs: {extra_kwargs!r}") path_params = { - "hostedDeploymentId": hosted_deployment_id + "hostedApplicationStorageId": hosted_application_storage_id } path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} @@ -4044,7 +4285,124 @@ def delete_hosted_deployment(self, hosted_deployment_id, **kwargs): api_reference_link=api_reference_link, required_arguments=required_arguments) - def delete_hosted_deployment_artifact(self, hosted_deployment_id, artifact_id, **kwargs): + def delete_hosted_deployment(self, hosted_deployment_id, **kwargs): + """ + Deletes a hosted deployment. + You can only delete hosted deployment without attached resources. Before you delete a hosting hosted deployment, you must delete the endpoints associated to that deployment. Before you delete a fine-tuning hosted deployment, you must delete the custom model on that deployment. The delete action permanently deletes the cluster. This action can't be undone. + + + :param str hosted_deployment_id: (required) + The `OCID`__ of the hosted deployment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the + `if-match` parameter to the value of the etag from a previous GET or POST response for + that resource. The resource will be updated or deleted only if the etag you provide + matches the resource's current etag value. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use delete_hosted_deployment API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['hostedDeploymentId'] + resource_path = "/hostedDeployments/{hostedDeploymentId}" + method = "DELETE" + operation_name = "delete_hosted_deployment" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/HostedDeployment/DeleteHostedDeployment" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"delete_hosted_deployment got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "hostedDeploymentId": hosted_deployment_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def delete_hosted_deployment_artifact(self, hosted_deployment_id, artifact_id, **kwargs): """ delete artifact. @@ -5282,6 +5640,116 @@ def get_hosted_application(self, hosted_application_id, **kwargs): api_reference_link=api_reference_link, required_arguments=required_arguments) + def get_hosted_application_iam(self, hosted_application_iam_id, **kwargs): + """ + Gets information about a hosted application. + + + :param str hosted_application_iam_id: (required) + The `OCID`__ of the hosted application. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.generative_ai.models.HostedApplicationIam` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_hosted_application_iam API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['hostedApplicationIamId'] + resource_path = "/hostedApplicationsIam/{hostedApplicationIamId}" + method = "GET" + operation_name = "get_hosted_application_iam" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/HostedApplicationIam/GetHostedApplicationIam" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"get_hosted_application_iam got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "hostedApplicationIamId": hosted_application_iam_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="HostedApplicationIam", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="HostedApplicationIam", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + def get_hosted_application_storage(self, hosted_application_storage_id, **kwargs): """ Gets information about a hosted application storage. @@ -6859,7 +7327,194 @@ def list_generative_ai_private_endpoints(self, compartment_id, **kwargs): :param str sort_order: (optional) The sort order to use, either 'ASC' or 'DESC'. - Allowed values are: "ASC", "DESC" + Allowed values are: "ASC", "DESC" + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.generative_ai.models.GenerativeAiPrivateEndpointCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_generative_ai_private_endpoints API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['compartmentId'] + resource_path = "/generativeAiPrivateEndpoints" + method = "GET" + operation_name = "list_generative_ai_private_endpoints" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/GenerativeAiPrivateEndpointCollection/ListGenerativeAiPrivateEndpoints" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "id", + "lifecycle_state", + "sort_by", + "resource_type", + "display_name", + "limit", + "page", + "sort_order", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_generative_ai_private_endpoints got unknown kwargs: {extra_kwargs!r}") + + if 'lifecycle_state' in kwargs: + lifecycle_state_allowed_values = ["CREATING", "ACTIVE", "UPDATING", "DELETING", "DELETED", "FAILED"] + if kwargs['lifecycle_state'] not in lifecycle_state_allowed_values: + raise ValueError( + f"Invalid value for `lifecycle_state`, must be one of { lifecycle_state_allowed_values }" + ) + + if 'sort_by' in kwargs: + sort_by_allowed_values = ["timeCreated"] + if kwargs['sort_by'] not in sort_by_allowed_values: + raise ValueError( + f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" + ) + + if 'resource_type' in kwargs: + resource_type_allowed_values = ["APPLICATION", "ENDPOINT"] + if kwargs['resource_type'] not in resource_type_allowed_values: + raise ValueError( + f"Invalid value for `resource_type`, must be one of { resource_type_allowed_values }" + ) + + if 'sort_order' in kwargs: + sort_order_allowed_values = ["ASC", "DESC"] + if kwargs['sort_order'] not in sort_order_allowed_values: + raise ValueError( + f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + ) + + query_params = { + "id": kwargs.get("id", missing), + "compartmentId": compartment_id, + "lifecycleState": kwargs.get("lifecycle_state", missing), + "sortBy": kwargs.get("sort_by", missing), + "resourceType": kwargs.get("resource_type", missing), + "displayName": kwargs.get("display_name", missing), + "limit": kwargs.get("limit", missing), + "page": kwargs.get("page", missing), + "sortOrder": kwargs.get("sort_order", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="GenerativeAiPrivateEndpointCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="GenerativeAiPrivateEndpointCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_generative_ai_projects(self, compartment_id, **kwargs): + """ + Lists the generativeAiProjects of a specific compartment. + + + :param str compartment_id: (required) + The `OCID`__ of the compartment in which to list resources. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str lifecycle_state: (optional) + A filter to return only resources whose lifecycle state matches the given value. + + Allowed values are: "ACTIVE", "CREATING", "UPDATING", "DELETING", "DELETED", "FAILED" + + :param str display_name: (optional) + A filter to return only resources that match the given display name exactly. + + :param str id: (optional) + The `OCID`__ of the generativeAiProject. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param int limit: (optional) + For list pagination. The maximum number of results per page, or items to return in a + paginated \"List\" call. For important details about how pagination works, see + `List Pagination`__. + + __ https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param str page: (optional) + For list pagination. The value of the opc-next-page response header from the previous + \"List\" call. For important details about how pagination works, see + `List Pagination`__. + + __ https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param str sort_order: (optional) + The sort order to use, either 'ASC' or 'DESC'. + + Allowed values are: "ASC", "DESC" + + :param str sort_by: (optional) + The field to sort by. You can provide only one sort order. Default order for `timeCreated` + is descending. Default order for `displayName` is ascending. + + Allowed values are: "displayName", "timeCreated" :param str opc_request_id: (optional) Unique Oracle-assigned identifier for the request. If you need to contact @@ -6883,60 +7538,45 @@ def list_generative_ai_private_endpoints(self, compartment_id, **kwargs): enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. By default, strict url encoding for path params is disabled - :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.generative_ai.models.GenerativeAiPrivateEndpointCollection` + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.generative_ai.models.GenerativeAiProjectCollection` :rtype: :class:`~oci.response.Response` :example: - Click `here `__ to see an example of how to use list_generative_ai_private_endpoints API. + Click `here `__ to see an example of how to use list_generative_ai_projects API. """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. required_arguments = ['compartmentId'] - resource_path = "/generativeAiPrivateEndpoints" + resource_path = "/generativeAiProjects" method = "GET" - operation_name = "list_generative_ai_private_endpoints" - api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/GenerativeAiPrivateEndpointCollection/ListGenerativeAiPrivateEndpoints" + operation_name = "list_generative_ai_projects" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/GenerativeAiProjectCollection/ListGenerativeAiProjects" # Don't accept unknown kwargs expected_kwargs = [ "allow_control_chars", "enable_strict_url_encoding", "retry_strategy", - "id", "lifecycle_state", - "sort_by", - "resource_type", "display_name", + "id", "limit", "page", "sort_order", + "sort_by", "opc_request_id" ] extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] if extra_kwargs: raise ValueError( - f"list_generative_ai_private_endpoints got unknown kwargs: {extra_kwargs!r}") + f"list_generative_ai_projects got unknown kwargs: {extra_kwargs!r}") if 'lifecycle_state' in kwargs: - lifecycle_state_allowed_values = ["CREATING", "ACTIVE", "UPDATING", "DELETING", "DELETED", "FAILED"] + lifecycle_state_allowed_values = ["ACTIVE", "CREATING", "UPDATING", "DELETING", "DELETED", "FAILED"] if kwargs['lifecycle_state'] not in lifecycle_state_allowed_values: raise ValueError( f"Invalid value for `lifecycle_state`, must be one of { lifecycle_state_allowed_values }" ) - if 'sort_by' in kwargs: - sort_by_allowed_values = ["timeCreated"] - if kwargs['sort_by'] not in sort_by_allowed_values: - raise ValueError( - f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" - ) - - if 'resource_type' in kwargs: - resource_type_allowed_values = ["APPLICATION", "ENDPOINT"] - if kwargs['resource_type'] not in resource_type_allowed_values: - raise ValueError( - f"Invalid value for `resource_type`, must be one of { resource_type_allowed_values }" - ) - if 'sort_order' in kwargs: sort_order_allowed_values = ["ASC", "DESC"] if kwargs['sort_order'] not in sort_order_allowed_values: @@ -6944,16 +7584,22 @@ def list_generative_ai_private_endpoints(self, compartment_id, **kwargs): f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" ) + if 'sort_by' in kwargs: + sort_by_allowed_values = ["displayName", "timeCreated"] + if kwargs['sort_by'] not in sort_by_allowed_values: + raise ValueError( + f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" + ) + query_params = { - "id": kwargs.get("id", missing), "compartmentId": compartment_id, "lifecycleState": kwargs.get("lifecycle_state", missing), - "sortBy": kwargs.get("sort_by", missing), - "resourceType": kwargs.get("resource_type", missing), "displayName": kwargs.get("display_name", missing), + "id": kwargs.get("id", missing), "limit": kwargs.get("limit", missing), "page": kwargs.get("page", missing), - "sortOrder": kwargs.get("sort_order", missing) + "sortOrder": kwargs.get("sort_order", missing), + "sortBy": kwargs.get("sort_by", missing) } query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} @@ -6981,7 +7627,7 @@ def list_generative_ai_private_endpoints(self, compartment_id, **kwargs): method=method, query_params=query_params, header_params=header_params, - response_type="GenerativeAiPrivateEndpointCollection", + response_type="GenerativeAiProjectCollection", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, @@ -6993,16 +7639,16 @@ def list_generative_ai_private_endpoints(self, compartment_id, **kwargs): method=method, query_params=query_params, header_params=header_params, - response_type="GenerativeAiPrivateEndpointCollection", + response_type="GenerativeAiProjectCollection", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, api_reference_link=api_reference_link, required_arguments=required_arguments) - def list_generative_ai_projects(self, compartment_id, **kwargs): + def list_hosted_application_storages(self, compartment_id, **kwargs): """ - Lists the generativeAiProjects of a specific compartment. + Lists the hosted application storage in a specific compartment. :param str compartment_id: (required) @@ -7011,15 +7657,20 @@ def list_generative_ai_projects(self, compartment_id, **kwargs): __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm :param str lifecycle_state: (optional) - A filter to return only resources whose lifecycle state matches the given value. + A filter to return only the hosted applications that their lifecycle state matches the given lifecycle state. - Allowed values are: "ACTIVE", "CREATING", "UPDATING", "DELETING", "DELETED", "FAILED" + Allowed values are: "CREATING", "ACTIVE", "UPDATING", "DELETING", "DELETED", "FAILED" + + :param str hosted_application_storage_type: (optional) + The type of the hosted application storage. + + Allowed values are: "CACHE", "POSTGRESQL", "ADB" :param str display_name: (optional) A filter to return only resources that match the given display name exactly. :param str id: (optional) - The `OCID`__ of the generativeAiProject. + The `OCID`__ of the hosted application storage. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm @@ -7046,7 +7697,7 @@ def list_generative_ai_projects(self, compartment_id, **kwargs): The field to sort by. You can provide only one sort order. Default order for `timeCreated` is descending. Default order for `displayName` is ascending. - Allowed values are: "displayName", "timeCreated" + Allowed values are: "timeCreated", "displayName", "lifecycleState" :param str opc_request_id: (optional) Unique Oracle-assigned identifier for the request. If you need to contact @@ -7070,18 +7721,18 @@ def list_generative_ai_projects(self, compartment_id, **kwargs): enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. By default, strict url encoding for path params is disabled - :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.generative_ai.models.GenerativeAiProjectCollection` + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.generative_ai.models.HostedApplicationStorageCollection` :rtype: :class:`~oci.response.Response` :example: - Click `here `__ to see an example of how to use list_generative_ai_projects API. + Click `here `__ to see an example of how to use list_hosted_application_storages API. """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. required_arguments = ['compartmentId'] - resource_path = "/generativeAiProjects" + resource_path = "/hostedApplicationStorages" method = "GET" - operation_name = "list_generative_ai_projects" - api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/GenerativeAiProjectCollection/ListGenerativeAiProjects" + operation_name = "list_hosted_application_storages" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/HostedApplicationStorageCollection/ListHostedApplicationStorages" # Don't accept unknown kwargs expected_kwargs = [ @@ -7089,6 +7740,7 @@ def list_generative_ai_projects(self, compartment_id, **kwargs): "enable_strict_url_encoding", "retry_strategy", "lifecycle_state", + "hosted_application_storage_type", "display_name", "id", "limit", @@ -7100,15 +7752,22 @@ def list_generative_ai_projects(self, compartment_id, **kwargs): extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] if extra_kwargs: raise ValueError( - f"list_generative_ai_projects got unknown kwargs: {extra_kwargs!r}") + f"list_hosted_application_storages got unknown kwargs: {extra_kwargs!r}") if 'lifecycle_state' in kwargs: - lifecycle_state_allowed_values = ["ACTIVE", "CREATING", "UPDATING", "DELETING", "DELETED", "FAILED"] + lifecycle_state_allowed_values = ["CREATING", "ACTIVE", "UPDATING", "DELETING", "DELETED", "FAILED"] if kwargs['lifecycle_state'] not in lifecycle_state_allowed_values: raise ValueError( f"Invalid value for `lifecycle_state`, must be one of { lifecycle_state_allowed_values }" ) + if 'hosted_application_storage_type' in kwargs: + hosted_application_storage_type_allowed_values = ["CACHE", "POSTGRESQL", "ADB"] + if kwargs['hosted_application_storage_type'] not in hosted_application_storage_type_allowed_values: + raise ValueError( + f"Invalid value for `hosted_application_storage_type`, must be one of { hosted_application_storage_type_allowed_values }" + ) + if 'sort_order' in kwargs: sort_order_allowed_values = ["ASC", "DESC"] if kwargs['sort_order'] not in sort_order_allowed_values: @@ -7117,7 +7776,7 @@ def list_generative_ai_projects(self, compartment_id, **kwargs): ) if 'sort_by' in kwargs: - sort_by_allowed_values = ["displayName", "timeCreated"] + sort_by_allowed_values = ["timeCreated", "displayName", "lifecycleState"] if kwargs['sort_by'] not in sort_by_allowed_values: raise ValueError( f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" @@ -7126,6 +7785,7 @@ def list_generative_ai_projects(self, compartment_id, **kwargs): query_params = { "compartmentId": compartment_id, "lifecycleState": kwargs.get("lifecycle_state", missing), + "hostedApplicationStorageType": kwargs.get("hosted_application_storage_type", missing), "displayName": kwargs.get("display_name", missing), "id": kwargs.get("id", missing), "limit": kwargs.get("limit", missing), @@ -7159,7 +7819,7 @@ def list_generative_ai_projects(self, compartment_id, **kwargs): method=method, query_params=query_params, header_params=header_params, - response_type="GenerativeAiProjectCollection", + response_type="HostedApplicationStorageCollection", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, @@ -7171,16 +7831,16 @@ def list_generative_ai_projects(self, compartment_id, **kwargs): method=method, query_params=query_params, header_params=header_params, - response_type="GenerativeAiProjectCollection", + response_type="HostedApplicationStorageCollection", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, api_reference_link=api_reference_link, required_arguments=required_arguments) - def list_hosted_application_storages(self, compartment_id, **kwargs): + def list_hosted_applications(self, compartment_id, **kwargs): """ - Lists the hosted application storage in a specific compartment. + Lists the hosted applications in a specific compartment. :param str compartment_id: (required) @@ -7193,16 +7853,11 @@ def list_hosted_application_storages(self, compartment_id, **kwargs): Allowed values are: "CREATING", "ACTIVE", "UPDATING", "DELETING", "DELETED", "FAILED" - :param str hosted_application_storage_type: (optional) - The type of the hosted application storage. - - Allowed values are: "CACHE", "POSTGRESQL", "ADB" - :param str display_name: (optional) A filter to return only resources that match the given display name exactly. :param str id: (optional) - The `OCID`__ of the hosted application storage. + The `OCID`__ of the hosted application. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm @@ -7253,18 +7908,18 @@ def list_hosted_application_storages(self, compartment_id, **kwargs): enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. By default, strict url encoding for path params is disabled - :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.generative_ai.models.HostedApplicationStorageCollection` + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.generative_ai.models.HostedApplicationCollection` :rtype: :class:`~oci.response.Response` :example: - Click `here `__ to see an example of how to use list_hosted_application_storages API. + Click `here `__ to see an example of how to use list_hosted_applications API. """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. required_arguments = ['compartmentId'] - resource_path = "/hostedApplicationStorages" + resource_path = "/hostedApplications" method = "GET" - operation_name = "list_hosted_application_storages" - api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/HostedApplicationStorageCollection/ListHostedApplicationStorages" + operation_name = "list_hosted_applications" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/HostedApplicationCollection/ListHostedApplications" # Don't accept unknown kwargs expected_kwargs = [ @@ -7272,7 +7927,6 @@ def list_hosted_application_storages(self, compartment_id, **kwargs): "enable_strict_url_encoding", "retry_strategy", "lifecycle_state", - "hosted_application_storage_type", "display_name", "id", "limit", @@ -7284,7 +7938,7 @@ def list_hosted_application_storages(self, compartment_id, **kwargs): extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] if extra_kwargs: raise ValueError( - f"list_hosted_application_storages got unknown kwargs: {extra_kwargs!r}") + f"list_hosted_applications got unknown kwargs: {extra_kwargs!r}") if 'lifecycle_state' in kwargs: lifecycle_state_allowed_values = ["CREATING", "ACTIVE", "UPDATING", "DELETING", "DELETED", "FAILED"] @@ -7293,13 +7947,6 @@ def list_hosted_application_storages(self, compartment_id, **kwargs): f"Invalid value for `lifecycle_state`, must be one of { lifecycle_state_allowed_values }" ) - if 'hosted_application_storage_type' in kwargs: - hosted_application_storage_type_allowed_values = ["CACHE", "POSTGRESQL", "ADB"] - if kwargs['hosted_application_storage_type'] not in hosted_application_storage_type_allowed_values: - raise ValueError( - f"Invalid value for `hosted_application_storage_type`, must be one of { hosted_application_storage_type_allowed_values }" - ) - if 'sort_order' in kwargs: sort_order_allowed_values = ["ASC", "DESC"] if kwargs['sort_order'] not in sort_order_allowed_values: @@ -7317,7 +7964,6 @@ def list_hosted_application_storages(self, compartment_id, **kwargs): query_params = { "compartmentId": compartment_id, "lifecycleState": kwargs.get("lifecycle_state", missing), - "hostedApplicationStorageType": kwargs.get("hosted_application_storage_type", missing), "displayName": kwargs.get("display_name", missing), "id": kwargs.get("id", missing), "limit": kwargs.get("limit", missing), @@ -7351,7 +7997,7 @@ def list_hosted_application_storages(self, compartment_id, **kwargs): method=method, query_params=query_params, header_params=header_params, - response_type="HostedApplicationStorageCollection", + response_type="HostedApplicationCollection", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, @@ -7363,14 +8009,14 @@ def list_hosted_application_storages(self, compartment_id, **kwargs): method=method, query_params=query_params, header_params=header_params, - response_type="HostedApplicationStorageCollection", + response_type="HostedApplicationCollection", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, api_reference_link=api_reference_link, required_arguments=required_arguments) - def list_hosted_applications(self, compartment_id, **kwargs): + def list_hosted_applications_iam(self, compartment_id, **kwargs): """ Lists the hosted applications in a specific compartment. @@ -7444,14 +8090,14 @@ def list_hosted_applications(self, compartment_id, **kwargs): :rtype: :class:`~oci.response.Response` :example: - Click `here `__ to see an example of how to use list_hosted_applications API. + Click `here `__ to see an example of how to use list_hosted_applications_iam API. """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. required_arguments = ['compartmentId'] - resource_path = "/hostedApplications" + resource_path = "/hostedApplicationsIam" method = "GET" - operation_name = "list_hosted_applications" - api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/HostedApplicationCollection/ListHostedApplications" + operation_name = "list_hosted_applications_iam" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/HostedApplicationCollection/ListHostedApplicationsIam" # Don't accept unknown kwargs expected_kwargs = [ @@ -7470,7 +8116,7 @@ def list_hosted_applications(self, compartment_id, **kwargs): extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] if extra_kwargs: raise ValueError( - f"list_hosted_applications got unknown kwargs: {extra_kwargs!r}") + f"list_hosted_applications_iam got unknown kwargs: {extra_kwargs!r}") if 'lifecycle_state' in kwargs: lifecycle_state_allowed_values = ["CREATING", "ACTIVE", "UPDATING", "DELETING", "DELETED", "FAILED"] @@ -7550,7 +8196,7 @@ def list_hosted_applications(self, compartment_id, **kwargs): def list_hosted_deployments(self, compartment_id, **kwargs): """ - Lists the hosted applications in a specific compartment. + Lists the hosted applications in a specific compartment. Provide either applicationId or applicationIamId to filter by parent. :param str compartment_id: (required) @@ -7559,14 +8205,14 @@ def list_hosted_deployments(self, compartment_id, **kwargs): __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm :param str application_id: (optional) - The `OCID`__ of the hosted application. + The `OCID`__ of the HostedApplication parent. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm :param str lifecycle_state: (optional) A filter to return only the hosted deployments that their lifecycle state matches the given lifecycle state. - Allowed values are: "CREATING", "ACTIVE", "INACTIVE", "UPDATING", "DELETING", "DELETED", "FAILED" + Allowed values are: "CREATING", "NEEDS_ATTENTION", "ACTIVE", "INACTIVE", "UPDATING", "DELETING", "DELETED", "FAILED" :param str display_name: (optional) A filter to return only resources that match the given display name exactly. @@ -7657,7 +8303,7 @@ def list_hosted_deployments(self, compartment_id, **kwargs): f"list_hosted_deployments got unknown kwargs: {extra_kwargs!r}") if 'lifecycle_state' in kwargs: - lifecycle_state_allowed_values = ["CREATING", "ACTIVE", "INACTIVE", "UPDATING", "DELETING", "DELETED", "FAILED"] + lifecycle_state_allowed_values = ["CREATING", "NEEDS_ATTENTION", "ACTIVE", "INACTIVE", "UPDATING", "DELETING", "DELETED", "FAILED"] if kwargs['lifecycle_state'] not in lifecycle_state_allowed_values: raise ValueError( f"Invalid value for `lifecycle_state`, must be one of { lifecycle_state_allowed_values }" @@ -10531,6 +11177,127 @@ def update_hosted_application(self, hosted_application_id, update_hosted_applica api_reference_link=api_reference_link, required_arguments=required_arguments) + def update_hosted_application_iam(self, hosted_application_iam_id, update_hosted_application_iam_details, **kwargs): + """ + Updates a hosted application. + + + :param str hosted_application_iam_id: (required) + The `OCID`__ of the hosted application. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param oci.generative_ai.models.UpdateHostedApplicationIamDetails update_hosted_application_iam_details: (required) + The information to be updated. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the + `if-match` parameter to the value of the etag from a previous GET or POST response for + that resource. The resource will be updated or deleted only if the etag you provide + matches the resource's current etag value. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use update_hosted_application_iam API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['hostedApplicationIamId'] + resource_path = "/hostedApplicationsIam/{hostedApplicationIamId}" + method = "PUT" + operation_name = "update_hosted_application_iam" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/generative-ai/20231130/HostedApplicationIam/UpdateHostedApplicationIam" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"update_hosted_application_iam got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "hostedApplicationIamId": hosted_application_iam_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=update_hosted_application_iam_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=update_hosted_application_iam_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + def update_hosted_deployment(self, hosted_deployment_id, update_hosted_deployment_details, **kwargs): """ Updates a hosted deployment. diff --git a/src/oci/generative_ai/generative_ai_client_composite_operations.py b/src/oci/generative_ai/generative_ai_client_composite_operations.py index a01a0ada52..782855dfcf 100644 --- a/src/oci/generative_ai/generative_ai_client_composite_operations.py +++ b/src/oci/generative_ai/generative_ai_client_composite_operations.py @@ -441,6 +441,45 @@ def create_hosted_application_and_wait_for_state(self, create_hosted_application except Exception as e: raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def create_hosted_application_iam_and_wait_for_state(self, create_hosted_application_iam_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.generative_ai.GenerativeAiClient.create_hosted_application_iam` and waits for the :py:class:`~oci.generative_ai.models.WorkRequest` + to enter the given state(s). + + :param oci.generative_ai.models.CreateHostedApplicationIamDetails create_hosted_application_iam_details: (required) + Details for the new hosted application. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.generative_ai.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.generative_ai.GenerativeAiClient.create_hosted_application_iam` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.create_hosted_application_iam(create_hosted_application_iam_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def create_hosted_application_storage_and_wait_for_state(self, create_hosted_application_storage_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): """ Calls :py:func:`~oci.generative_ai.GenerativeAiClient.create_hosted_application_storage` and waits for the :py:class:`~oci.generative_ai.models.WorkRequest` @@ -1018,6 +1057,55 @@ def delete_hosted_application_and_wait_for_state(self, hosted_application_id, wa except Exception as e: raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def delete_hosted_application_iam_and_wait_for_state(self, hosted_application_iam_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.generative_ai.GenerativeAiClient.delete_hosted_application_iam` and waits for the :py:class:`~oci.generative_ai.models.WorkRequest` + to enter the given state(s). + + :param str hosted_application_iam_id: (required) + The `OCID`__ of the hosted application. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.generative_ai.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.generative_ai.GenerativeAiClient.delete_hosted_application_iam` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = None + try: + operation_result = self.client.delete_hosted_application_iam(hosted_application_iam_id, **operation_kwargs) + except oci.exceptions.ServiceError as e: + if e.status == 404: + return WAIT_RESOURCE_NOT_FOUND + else: + raise e + + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def delete_hosted_application_storage_and_wait_for_state(self, hosted_application_storage_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): """ Calls :py:func:`~oci.generative_ai.GenerativeAiClient.delete_hosted_application_storage` and waits for the :py:class:`~oci.generative_ai.models.WorkRequest` @@ -1719,6 +1807,50 @@ def update_hosted_application_and_wait_for_state(self, hosted_application_id, up except Exception as e: raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def update_hosted_application_iam_and_wait_for_state(self, hosted_application_iam_id, update_hosted_application_iam_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.generative_ai.GenerativeAiClient.update_hosted_application_iam` and waits for the :py:class:`~oci.generative_ai.models.WorkRequest` + to enter the given state(s). + + :param str hosted_application_iam_id: (required) + The `OCID`__ of the hosted application. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param oci.generative_ai.models.UpdateHostedApplicationIamDetails update_hosted_application_iam_details: (required) + The information to be updated. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.generative_ai.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.generative_ai.GenerativeAiClient.update_hosted_application_iam` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.update_hosted_application_iam(hosted_application_iam_id, update_hosted_application_iam_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def update_hosted_deployment_and_wait_for_state(self, hosted_deployment_id, update_hosted_deployment_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): """ Calls :py:func:`~oci.generative_ai.GenerativeAiClient.update_hosted_deployment` and waits for the :py:class:`~oci.generative_ai.models.WorkRequest` diff --git a/src/oci/generative_ai/models/__init__.py b/src/oci/generative_ai/models/__init__.py index c80f0888b3..f6abd71f9e 100644 --- a/src/oci/generative_ai/models/__init__.py +++ b/src/oci/generative_ai/models/__init__.py @@ -35,7 +35,9 @@ from .create_endpoint_details import CreateEndpointDetails from .create_generative_ai_private_endpoint_details import CreateGenerativeAiPrivateEndpointDetails from .create_generative_ai_project_details import CreateGenerativeAiProjectDetails +from .create_hosted_application_base_details import CreateHostedApplicationBaseDetails from .create_hosted_application_details import CreateHostedApplicationDetails +from .create_hosted_application_iam_details import CreateHostedApplicationIamDetails from .create_hosted_application_storage_details import CreateHostedApplicationStorageDetails from .create_hosted_deployment_details import CreateHostedDeploymentDetails from .create_imported_model_details import CreateImportedModelDetails @@ -73,7 +75,9 @@ from .generative_ai_project_collection import GenerativeAiProjectCollection from .generative_ai_project_summary import GenerativeAiProjectSummary from .hosted_application import HostedApplication +from .hosted_application_base import HostedApplicationBase from .hosted_application_collection import HostedApplicationCollection +from .hosted_application_iam import HostedApplicationIam from .hosted_application_storage import HostedApplicationStorage from .hosted_application_storage_collection import HostedApplicationStorageCollection from .hosted_application_storage_summary import HostedApplicationStorageSummary @@ -134,7 +138,9 @@ from .update_endpoint_details import UpdateEndpointDetails from .update_generative_ai_private_endpoint_details import UpdateGenerativeAiPrivateEndpointDetails from .update_generative_ai_project_details import UpdateGenerativeAiProjectDetails +from .update_hosted_application_base_details import UpdateHostedApplicationBaseDetails from .update_hosted_application_details import UpdateHostedApplicationDetails +from .update_hosted_application_iam_details import UpdateHostedApplicationIamDetails from .update_hosted_deployment_details import UpdateHostedDeploymentDetails from .update_imported_model_details import UpdateImportedModelDetails from .update_model_details import UpdateModelDetails @@ -190,7 +196,9 @@ "CreateEndpointDetails": CreateEndpointDetails, "CreateGenerativeAiPrivateEndpointDetails": CreateGenerativeAiPrivateEndpointDetails, "CreateGenerativeAiProjectDetails": CreateGenerativeAiProjectDetails, + "CreateHostedApplicationBaseDetails": CreateHostedApplicationBaseDetails, "CreateHostedApplicationDetails": CreateHostedApplicationDetails, + "CreateHostedApplicationIamDetails": CreateHostedApplicationIamDetails, "CreateHostedApplicationStorageDetails": CreateHostedApplicationStorageDetails, "CreateHostedDeploymentDetails": CreateHostedDeploymentDetails, "CreateImportedModelDetails": CreateImportedModelDetails, @@ -228,7 +236,9 @@ "GenerativeAiProjectCollection": GenerativeAiProjectCollection, "GenerativeAiProjectSummary": GenerativeAiProjectSummary, "HostedApplication": HostedApplication, + "HostedApplicationBase": HostedApplicationBase, "HostedApplicationCollection": HostedApplicationCollection, + "HostedApplicationIam": HostedApplicationIam, "HostedApplicationStorage": HostedApplicationStorage, "HostedApplicationStorageCollection": HostedApplicationStorageCollection, "HostedApplicationStorageSummary": HostedApplicationStorageSummary, @@ -289,7 +299,9 @@ "UpdateEndpointDetails": UpdateEndpointDetails, "UpdateGenerativeAiPrivateEndpointDetails": UpdateGenerativeAiPrivateEndpointDetails, "UpdateGenerativeAiProjectDetails": UpdateGenerativeAiProjectDetails, + "UpdateHostedApplicationBaseDetails": UpdateHostedApplicationBaseDetails, "UpdateHostedApplicationDetails": UpdateHostedApplicationDetails, + "UpdateHostedApplicationIamDetails": UpdateHostedApplicationIamDetails, "UpdateHostedDeploymentDetails": UpdateHostedDeploymentDetails, "UpdateImportedModelDetails": UpdateImportedModelDetails, "UpdateModelDetails": UpdateModelDetails, diff --git a/src/oci/generative_ai/models/artifact.py b/src/oci/generative_ai/models/artifact.py index 19422e5cf4..5903e201b4 100644 --- a/src/oci/generative_ai/models/artifact.py +++ b/src/oci/generative_ai/models/artifact.py @@ -27,6 +27,10 @@ class Artifact(object): #: This constant has a value of "UPDATING" STATUS_UPDATING = "UPDATING" + #: A constant which can be used with the status property of a Artifact. + #: This constant has a value of "FAILED" + STATUS_FAILED = "FAILED" + #: A constant which can be used with the artifact_type property of a Artifact. #: This constant has a value of "SIMPLE_DOCKER_ARTIFACT" ARTIFACT_TYPE_SIMPLE_DOCKER_ARTIFACT = "SIMPLE_DOCKER_ARTIFACT" @@ -52,9 +56,13 @@ def __init__(self, **kwargs): The value to assign to the hosted_deployment_id property of this Artifact. :type hosted_deployment_id: str + :param is_vulnerability_scan_required: + The value to assign to the is_vulnerability_scan_required property of this Artifact. + :type is_vulnerability_scan_required: bool + :param status: The value to assign to the status property of this Artifact. - Allowed values for this property are: "ACTIVE", "INACTIVE", "UPDATING", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "ACTIVE", "INACTIVE", "UPDATING", "FAILED", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type status: str @@ -69,6 +77,7 @@ def __init__(self, **kwargs): 'id': 'str', 'time_created': 'datetime', 'hosted_deployment_id': 'str', + 'is_vulnerability_scan_required': 'bool', 'status': 'str', 'artifact_type': 'str' } @@ -76,12 +85,14 @@ def __init__(self, **kwargs): 'id': 'id', 'time_created': 'timeCreated', 'hosted_deployment_id': 'hostedDeploymentId', + 'is_vulnerability_scan_required': 'isVulnerabilityScanRequired', 'status': 'status', 'artifact_type': 'artifactType' } self._id = None self._time_created = None self._hosted_deployment_id = None + self._is_vulnerability_scan_required = None self._status = None self._artifact_type = None @@ -174,13 +185,37 @@ def hosted_deployment_id(self, hosted_deployment_id): """ self._hosted_deployment_id = hosted_deployment_id + @property + def is_vulnerability_scan_required(self): + """ + Gets the is_vulnerability_scan_required of this Artifact. + Optional flag that requires an OCI Vulnerability Scanning Service compliance report for this artifact before it can become active. When not provided, the value defaults to false and the artifact is not blocked on a scan result. + + + :return: The is_vulnerability_scan_required of this Artifact. + :rtype: bool + """ + return self._is_vulnerability_scan_required + + @is_vulnerability_scan_required.setter + def is_vulnerability_scan_required(self, is_vulnerability_scan_required): + """ + Sets the is_vulnerability_scan_required of this Artifact. + Optional flag that requires an OCI Vulnerability Scanning Service compliance report for this artifact before it can become active. When not provided, the value defaults to false and the artifact is not blocked on a scan result. + + + :param is_vulnerability_scan_required: The is_vulnerability_scan_required of this Artifact. + :type: bool + """ + self._is_vulnerability_scan_required = is_vulnerability_scan_required + @property def status(self): """ Gets the status of this Artifact. The current status of the artifact. - Allowed values for this property are: "ACTIVE", "INACTIVE", "UPDATING", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "ACTIVE", "INACTIVE", "UPDATING", "FAILED", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -199,7 +234,7 @@ def status(self, status): :param status: The status of this Artifact. :type: str """ - allowed_values = ["ACTIVE", "INACTIVE", "UPDATING"] + allowed_values = ["ACTIVE", "INACTIVE", "UPDATING", "FAILED"] if not value_allowed_none_or_none_sentinel(status, allowed_values): status = 'UNKNOWN_ENUM_VALUE' self._status = status diff --git a/src/oci/generative_ai/models/create_artifact_details.py b/src/oci/generative_ai/models/create_artifact_details.py index 0c20e7ee69..106c4e90a1 100644 --- a/src/oci/generative_ai/models/create_artifact_details.py +++ b/src/oci/generative_ai/models/create_artifact_details.py @@ -33,14 +33,21 @@ def __init__(self, **kwargs): Allowed values for this property are: "SIMPLE_DOCKER_ARTIFACT" :type artifact_type: str + :param is_vulnerability_scan_required: + The value to assign to the is_vulnerability_scan_required property of this CreateArtifactDetails. + :type is_vulnerability_scan_required: bool + """ self.swagger_types = { - 'artifact_type': 'str' + 'artifact_type': 'str', + 'is_vulnerability_scan_required': 'bool' } self.attribute_map = { - 'artifact_type': 'artifactType' + 'artifact_type': 'artifactType', + 'is_vulnerability_scan_required': 'isVulnerabilityScanRequired' } self._artifact_type = None + self._is_vulnerability_scan_required = None @staticmethod def get_subtype(object_dictionary): @@ -86,6 +93,30 @@ def artifact_type(self, artifact_type): ) self._artifact_type = artifact_type + @property + def is_vulnerability_scan_required(self): + """ + Gets the is_vulnerability_scan_required of this CreateArtifactDetails. + Optional flag that requires an OCI Vulnerability Scanning Service compliance report for this artifact before it can become active. When omitted, the value defaults to false. + + + :return: The is_vulnerability_scan_required of this CreateArtifactDetails. + :rtype: bool + """ + return self._is_vulnerability_scan_required + + @is_vulnerability_scan_required.setter + def is_vulnerability_scan_required(self, is_vulnerability_scan_required): + """ + Sets the is_vulnerability_scan_required of this CreateArtifactDetails. + Optional flag that requires an OCI Vulnerability Scanning Service compliance report for this artifact before it can become active. When omitted, the value defaults to false. + + + :param is_vulnerability_scan_required: The is_vulnerability_scan_required of this CreateArtifactDetails. + :type: bool + """ + self._is_vulnerability_scan_required = is_vulnerability_scan_required + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/generative_ai/models/create_hosted_application_base_details.py b/src/oci/generative_ai/models/create_hosted_application_base_details.py new file mode 100644 index 0000000000..175b13419e --- /dev/null +++ b/src/oci/generative_ai/models/create_hosted_application_base_details.py @@ -0,0 +1,336 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20231130 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateHostedApplicationBaseDetails(object): + """ + Common creation properties shared by HostedApplication and HostedApplicationIam. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateHostedApplicationBaseDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param display_name: + The value to assign to the display_name property of this CreateHostedApplicationBaseDetails. + :type display_name: str + + :param compartment_id: + The value to assign to the compartment_id property of this CreateHostedApplicationBaseDetails. + :type compartment_id: str + + :param description: + The value to assign to the description property of this CreateHostedApplicationBaseDetails. + :type description: str + + :param scaling_config: + The value to assign to the scaling_config property of this CreateHostedApplicationBaseDetails. + :type scaling_config: oci.generative_ai.models.ScalingConfig + + :param networking_config: + The value to assign to the networking_config property of this CreateHostedApplicationBaseDetails. + :type networking_config: oci.generative_ai.models.NetworkingConfig + + :param storage_configs: + The value to assign to the storage_configs property of this CreateHostedApplicationBaseDetails. + :type storage_configs: list[oci.generative_ai.models.StorageConfig] + + :param environment_variables: + The value to assign to the environment_variables property of this CreateHostedApplicationBaseDetails. + :type environment_variables: list[oci.generative_ai.models.EnvironmentVariable] + + :param freeform_tags: + The value to assign to the freeform_tags property of this CreateHostedApplicationBaseDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this CreateHostedApplicationBaseDetails. + :type defined_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'display_name': 'str', + 'compartment_id': 'str', + 'description': 'str', + 'scaling_config': 'ScalingConfig', + 'networking_config': 'NetworkingConfig', + 'storage_configs': 'list[StorageConfig]', + 'environment_variables': 'list[EnvironmentVariable]', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'display_name': 'displayName', + 'compartment_id': 'compartmentId', + 'description': 'description', + 'scaling_config': 'scalingConfig', + 'networking_config': 'networkingConfig', + 'storage_configs': 'storageConfigs', + 'environment_variables': 'environmentVariables', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' + } + self._display_name = None + self._compartment_id = None + self._description = None + self._scaling_config = None + self._networking_config = None + self._storage_configs = None + self._environment_variables = None + self._freeform_tags = None + self._defined_tags = None + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this CreateHostedApplicationBaseDetails. + The user-friendly display name for the Hosted Application. + Does not need to be unique and can be updated after creation. + + + :return: The display_name of this CreateHostedApplicationBaseDetails. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this CreateHostedApplicationBaseDetails. + The user-friendly display name for the Hosted Application. + Does not need to be unique and can be updated after creation. + + + :param display_name: The display_name of this CreateHostedApplicationBaseDetails. + :type: str + """ + self._display_name = display_name + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this CreateHostedApplicationBaseDetails. + The compartment OCID for the Hosted Application. + + + :return: The compartment_id of this CreateHostedApplicationBaseDetails. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this CreateHostedApplicationBaseDetails. + The compartment OCID for the Hosted Application. + + + :param compartment_id: The compartment_id of this CreateHostedApplicationBaseDetails. + :type: str + """ + self._compartment_id = compartment_id + + @property + def description(self): + """ + Gets the description of this CreateHostedApplicationBaseDetails. + The description for the Hosted Application. + + + :return: The description of this CreateHostedApplicationBaseDetails. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this CreateHostedApplicationBaseDetails. + The description for the Hosted Application. + + + :param description: The description of this CreateHostedApplicationBaseDetails. + :type: str + """ + self._description = description + + @property + def scaling_config(self): + """ + Gets the scaling_config of this CreateHostedApplicationBaseDetails. + + :return: The scaling_config of this CreateHostedApplicationBaseDetails. + :rtype: oci.generative_ai.models.ScalingConfig + """ + return self._scaling_config + + @scaling_config.setter + def scaling_config(self, scaling_config): + """ + Sets the scaling_config of this CreateHostedApplicationBaseDetails. + + :param scaling_config: The scaling_config of this CreateHostedApplicationBaseDetails. + :type: oci.generative_ai.models.ScalingConfig + """ + self._scaling_config = scaling_config + + @property + def networking_config(self): + """ + Gets the networking_config of this CreateHostedApplicationBaseDetails. + + :return: The networking_config of this CreateHostedApplicationBaseDetails. + :rtype: oci.generative_ai.models.NetworkingConfig + """ + return self._networking_config + + @networking_config.setter + def networking_config(self, networking_config): + """ + Sets the networking_config of this CreateHostedApplicationBaseDetails. + + :param networking_config: The networking_config of this CreateHostedApplicationBaseDetails. + :type: oci.generative_ai.models.NetworkingConfig + """ + self._networking_config = networking_config + + @property + def storage_configs(self): + """ + Gets the storage_configs of this CreateHostedApplicationBaseDetails. + The list of storage configuration for the Hosted Application. + Defines a list of service-managed storage back-ends. + + + :return: The storage_configs of this CreateHostedApplicationBaseDetails. + :rtype: list[oci.generative_ai.models.StorageConfig] + """ + return self._storage_configs + + @storage_configs.setter + def storage_configs(self, storage_configs): + """ + Sets the storage_configs of this CreateHostedApplicationBaseDetails. + The list of storage configuration for the Hosted Application. + Defines a list of service-managed storage back-ends. + + + :param storage_configs: The storage_configs of this CreateHostedApplicationBaseDetails. + :type: list[oci.generative_ai.models.StorageConfig] + """ + self._storage_configs = storage_configs + + @property + def environment_variables(self): + """ + Gets the environment_variables of this CreateHostedApplicationBaseDetails. + The list of environment variables for the Hosted Application. + Defines a list of environment variables injected at runtime. + + + :return: The environment_variables of this CreateHostedApplicationBaseDetails. + :rtype: list[oci.generative_ai.models.EnvironmentVariable] + """ + return self._environment_variables + + @environment_variables.setter + def environment_variables(self, environment_variables): + """ + Sets the environment_variables of this CreateHostedApplicationBaseDetails. + The list of environment variables for the Hosted Application. + Defines a list of environment variables injected at runtime. + + + :param environment_variables: The environment_variables of this CreateHostedApplicationBaseDetails. + :type: list[oci.generative_ai.models.EnvironmentVariable] + """ + self._environment_variables = environment_variables + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this CreateHostedApplicationBaseDetails. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this CreateHostedApplicationBaseDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this CreateHostedApplicationBaseDetails. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this CreateHostedApplicationBaseDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this CreateHostedApplicationBaseDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this CreateHostedApplicationBaseDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this CreateHostedApplicationBaseDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this CreateHostedApplicationBaseDetails. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/generative_ai/models/create_hosted_application_details.py b/src/oci/generative_ai/models/create_hosted_application_details.py index ae563743e1..4216758eac 100644 --- a/src/oci/generative_ai/models/create_hosted_application_details.py +++ b/src/oci/generative_ai/models/create_hosted_application_details.py @@ -20,6 +20,10 @@ def __init__(self, **kwargs): Initializes a new CreateHostedApplicationDetails object with values from keyword arguments. The following keyword arguments are supported (corresponding to the getters/setters of this class): + :param inbound_auth_config: + The value to assign to the inbound_auth_config property of this CreateHostedApplicationDetails. + :type inbound_auth_config: oci.generative_ai.models.InboundAuthConfig + :param display_name: The value to assign to the display_name property of this CreateHostedApplicationDetails. :type display_name: str @@ -36,10 +40,6 @@ def __init__(self, **kwargs): The value to assign to the scaling_config property of this CreateHostedApplicationDetails. :type scaling_config: oci.generative_ai.models.ScalingConfig - :param inbound_auth_config: - The value to assign to the inbound_auth_config property of this CreateHostedApplicationDetails. - :type inbound_auth_config: oci.generative_ai.models.InboundAuthConfig - :param networking_config: The value to assign to the networking_config property of this CreateHostedApplicationDetails. :type networking_config: oci.generative_ai.models.NetworkingConfig @@ -62,11 +62,11 @@ def __init__(self, **kwargs): """ self.swagger_types = { + 'inbound_auth_config': 'InboundAuthConfig', 'display_name': 'str', 'compartment_id': 'str', 'description': 'str', 'scaling_config': 'ScalingConfig', - 'inbound_auth_config': 'InboundAuthConfig', 'networking_config': 'NetworkingConfig', 'storage_configs': 'list[StorageConfig]', 'environment_variables': 'list[EnvironmentVariable]', @@ -74,28 +74,48 @@ def __init__(self, **kwargs): 'defined_tags': 'dict(str, dict(str, object))' } self.attribute_map = { + 'inbound_auth_config': 'inboundAuthConfig', 'display_name': 'displayName', 'compartment_id': 'compartmentId', 'description': 'description', 'scaling_config': 'scalingConfig', - 'inbound_auth_config': 'inboundAuthConfig', 'networking_config': 'networkingConfig', 'storage_configs': 'storageConfigs', 'environment_variables': 'environmentVariables', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags' } + self._inbound_auth_config = None self._display_name = None self._compartment_id = None self._description = None self._scaling_config = None - self._inbound_auth_config = None self._networking_config = None self._storage_configs = None self._environment_variables = None self._freeform_tags = None self._defined_tags = None + @property + def inbound_auth_config(self): + """ + **[Required]** Gets the inbound_auth_config of this CreateHostedApplicationDetails. + + :return: The inbound_auth_config of this CreateHostedApplicationDetails. + :rtype: oci.generative_ai.models.InboundAuthConfig + """ + return self._inbound_auth_config + + @inbound_auth_config.setter + def inbound_auth_config(self, inbound_auth_config): + """ + Sets the inbound_auth_config of this CreateHostedApplicationDetails. + + :param inbound_auth_config: The inbound_auth_config of this CreateHostedApplicationDetails. + :type: oci.generative_ai.models.InboundAuthConfig + """ + self._inbound_auth_config = inbound_auth_config + @property def display_name(self): """ @@ -190,26 +210,6 @@ def scaling_config(self, scaling_config): """ self._scaling_config = scaling_config - @property - def inbound_auth_config(self): - """ - Gets the inbound_auth_config of this CreateHostedApplicationDetails. - - :return: The inbound_auth_config of this CreateHostedApplicationDetails. - :rtype: oci.generative_ai.models.InboundAuthConfig - """ - return self._inbound_auth_config - - @inbound_auth_config.setter - def inbound_auth_config(self, inbound_auth_config): - """ - Sets the inbound_auth_config of this CreateHostedApplicationDetails. - - :param inbound_auth_config: The inbound_auth_config of this CreateHostedApplicationDetails. - :type: oci.generative_ai.models.InboundAuthConfig - """ - self._inbound_auth_config = inbound_auth_config - @property def networking_config(self): """ diff --git a/src/oci/generative_ai/models/create_hosted_application_iam_details.py b/src/oci/generative_ai/models/create_hosted_application_iam_details.py new file mode 100644 index 0000000000..df8a3e0301 --- /dev/null +++ b/src/oci/generative_ai/models/create_hosted_application_iam_details.py @@ -0,0 +1,336 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20231130 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateHostedApplicationIamDetails(object): + """ + The details required to create a hosted application. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateHostedApplicationIamDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param display_name: + The value to assign to the display_name property of this CreateHostedApplicationIamDetails. + :type display_name: str + + :param compartment_id: + The value to assign to the compartment_id property of this CreateHostedApplicationIamDetails. + :type compartment_id: str + + :param description: + The value to assign to the description property of this CreateHostedApplicationIamDetails. + :type description: str + + :param scaling_config: + The value to assign to the scaling_config property of this CreateHostedApplicationIamDetails. + :type scaling_config: oci.generative_ai.models.ScalingConfig + + :param networking_config: + The value to assign to the networking_config property of this CreateHostedApplicationIamDetails. + :type networking_config: oci.generative_ai.models.NetworkingConfig + + :param storage_configs: + The value to assign to the storage_configs property of this CreateHostedApplicationIamDetails. + :type storage_configs: list[oci.generative_ai.models.StorageConfig] + + :param environment_variables: + The value to assign to the environment_variables property of this CreateHostedApplicationIamDetails. + :type environment_variables: list[oci.generative_ai.models.EnvironmentVariable] + + :param freeform_tags: + The value to assign to the freeform_tags property of this CreateHostedApplicationIamDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this CreateHostedApplicationIamDetails. + :type defined_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'display_name': 'str', + 'compartment_id': 'str', + 'description': 'str', + 'scaling_config': 'ScalingConfig', + 'networking_config': 'NetworkingConfig', + 'storage_configs': 'list[StorageConfig]', + 'environment_variables': 'list[EnvironmentVariable]', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'display_name': 'displayName', + 'compartment_id': 'compartmentId', + 'description': 'description', + 'scaling_config': 'scalingConfig', + 'networking_config': 'networkingConfig', + 'storage_configs': 'storageConfigs', + 'environment_variables': 'environmentVariables', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' + } + self._display_name = None + self._compartment_id = None + self._description = None + self._scaling_config = None + self._networking_config = None + self._storage_configs = None + self._environment_variables = None + self._freeform_tags = None + self._defined_tags = None + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this CreateHostedApplicationIamDetails. + The user-friendly display name for the Hosted Application. + Does not need to be unique and can be updated after creation. + + + :return: The display_name of this CreateHostedApplicationIamDetails. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this CreateHostedApplicationIamDetails. + The user-friendly display name for the Hosted Application. + Does not need to be unique and can be updated after creation. + + + :param display_name: The display_name of this CreateHostedApplicationIamDetails. + :type: str + """ + self._display_name = display_name + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this CreateHostedApplicationIamDetails. + The compartment OCID for the Hosted Application. + + + :return: The compartment_id of this CreateHostedApplicationIamDetails. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this CreateHostedApplicationIamDetails. + The compartment OCID for the Hosted Application. + + + :param compartment_id: The compartment_id of this CreateHostedApplicationIamDetails. + :type: str + """ + self._compartment_id = compartment_id + + @property + def description(self): + """ + Gets the description of this CreateHostedApplicationIamDetails. + The description for the Hosted Application. + + + :return: The description of this CreateHostedApplicationIamDetails. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this CreateHostedApplicationIamDetails. + The description for the Hosted Application. + + + :param description: The description of this CreateHostedApplicationIamDetails. + :type: str + """ + self._description = description + + @property + def scaling_config(self): + """ + Gets the scaling_config of this CreateHostedApplicationIamDetails. + + :return: The scaling_config of this CreateHostedApplicationIamDetails. + :rtype: oci.generative_ai.models.ScalingConfig + """ + return self._scaling_config + + @scaling_config.setter + def scaling_config(self, scaling_config): + """ + Sets the scaling_config of this CreateHostedApplicationIamDetails. + + :param scaling_config: The scaling_config of this CreateHostedApplicationIamDetails. + :type: oci.generative_ai.models.ScalingConfig + """ + self._scaling_config = scaling_config + + @property + def networking_config(self): + """ + Gets the networking_config of this CreateHostedApplicationIamDetails. + + :return: The networking_config of this CreateHostedApplicationIamDetails. + :rtype: oci.generative_ai.models.NetworkingConfig + """ + return self._networking_config + + @networking_config.setter + def networking_config(self, networking_config): + """ + Sets the networking_config of this CreateHostedApplicationIamDetails. + + :param networking_config: The networking_config of this CreateHostedApplicationIamDetails. + :type: oci.generative_ai.models.NetworkingConfig + """ + self._networking_config = networking_config + + @property + def storage_configs(self): + """ + Gets the storage_configs of this CreateHostedApplicationIamDetails. + The list of storage configuration for the Hosted Application. + Defines a list of service-managed storage back-ends. + + + :return: The storage_configs of this CreateHostedApplicationIamDetails. + :rtype: list[oci.generative_ai.models.StorageConfig] + """ + return self._storage_configs + + @storage_configs.setter + def storage_configs(self, storage_configs): + """ + Sets the storage_configs of this CreateHostedApplicationIamDetails. + The list of storage configuration for the Hosted Application. + Defines a list of service-managed storage back-ends. + + + :param storage_configs: The storage_configs of this CreateHostedApplicationIamDetails. + :type: list[oci.generative_ai.models.StorageConfig] + """ + self._storage_configs = storage_configs + + @property + def environment_variables(self): + """ + Gets the environment_variables of this CreateHostedApplicationIamDetails. + The list of environment variables for the Hosted Application. + Defines a list of environment variables injected at runtime. + + + :return: The environment_variables of this CreateHostedApplicationIamDetails. + :rtype: list[oci.generative_ai.models.EnvironmentVariable] + """ + return self._environment_variables + + @environment_variables.setter + def environment_variables(self, environment_variables): + """ + Sets the environment_variables of this CreateHostedApplicationIamDetails. + The list of environment variables for the Hosted Application. + Defines a list of environment variables injected at runtime. + + + :param environment_variables: The environment_variables of this CreateHostedApplicationIamDetails. + :type: list[oci.generative_ai.models.EnvironmentVariable] + """ + self._environment_variables = environment_variables + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this CreateHostedApplicationIamDetails. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this CreateHostedApplicationIamDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this CreateHostedApplicationIamDetails. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this CreateHostedApplicationIamDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this CreateHostedApplicationIamDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this CreateHostedApplicationIamDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this CreateHostedApplicationIamDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this CreateHostedApplicationIamDetails. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/generative_ai/models/create_hosted_deployment_details.py b/src/oci/generative_ai/models/create_hosted_deployment_details.py index be8f7f0789..711ab012b7 100644 --- a/src/oci/generative_ai/models/create_hosted_deployment_details.py +++ b/src/oci/generative_ai/models/create_hosted_deployment_details.py @@ -12,7 +12,7 @@ @init_model_state_from_kwargs class CreateHostedDeploymentDetails(object): """ - The data to create a hosted deployment. + The data to create a hosted deployment. Exactly one of hostedApplicationId or hostedApplicationIamId must be provided. """ def __init__(self, **kwargs): @@ -119,8 +119,8 @@ def compartment_id(self, compartment_id): @property def hosted_application_id(self): """ - **[Required]** Gets the hosted_application_id of this CreateHostedDeploymentDetails. - The `OCID`__ of the application. + Gets the hosted_application_id of this CreateHostedDeploymentDetails. + The `OCID`__ of the HostedApplication parent. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm @@ -134,7 +134,7 @@ def hosted_application_id(self): def hosted_application_id(self, hosted_application_id): """ Sets the hosted_application_id of this CreateHostedDeploymentDetails. - The `OCID`__ of the application. + The `OCID`__ of the HostedApplication parent. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm diff --git a/src/oci/generative_ai/models/create_single_docker_artifact_details.py b/src/oci/generative_ai/models/create_single_docker_artifact_details.py index cf17c21823..a31c382d03 100644 --- a/src/oci/generative_ai/models/create_single_docker_artifact_details.py +++ b/src/oci/generative_ai/models/create_single_docker_artifact_details.py @@ -26,6 +26,10 @@ def __init__(self, **kwargs): Allowed values for this property are: "SIMPLE_DOCKER_ARTIFACT" :type artifact_type: str + :param is_vulnerability_scan_required: + The value to assign to the is_vulnerability_scan_required property of this CreateSingleDockerArtifactDetails. + :type is_vulnerability_scan_required: bool + :param container_uri: The value to assign to the container_uri property of this CreateSingleDockerArtifactDetails. :type container_uri: str @@ -37,15 +41,18 @@ def __init__(self, **kwargs): """ self.swagger_types = { 'artifact_type': 'str', + 'is_vulnerability_scan_required': 'bool', 'container_uri': 'str', 'tag': 'str' } self.attribute_map = { 'artifact_type': 'artifactType', + 'is_vulnerability_scan_required': 'isVulnerabilityScanRequired', 'container_uri': 'containerUri', 'tag': 'tag' } self._artifact_type = None + self._is_vulnerability_scan_required = None self._container_uri = None self._tag = None self._artifact_type = 'SIMPLE_DOCKER_ARTIFACT' diff --git a/src/oci/generative_ai/models/hosted_application.py b/src/oci/generative_ai/models/hosted_application.py index b0a7330206..f7cb16a127 100644 --- a/src/oci/generative_ai/models/hosted_application.py +++ b/src/oci/generative_ai/models/hosted_application.py @@ -50,6 +50,10 @@ def __init__(self, **kwargs): Initializes a new HostedApplication object with values from keyword arguments. The following keyword arguments are supported (corresponding to the getters/setters of this class): + :param inbound_auth_config: + The value to assign to the inbound_auth_config property of this HostedApplication. + :type inbound_auth_config: oci.generative_ai.models.InboundAuthConfig + :param id: The value to assign to the id property of this HostedApplication. :type id: str @@ -92,10 +96,6 @@ def __init__(self, **kwargs): The value to assign to the storage_configs property of this HostedApplication. :type storage_configs: list[oci.generative_ai.models.StorageConfig] - :param inbound_auth_config: - The value to assign to the inbound_auth_config property of this HostedApplication. - :type inbound_auth_config: oci.generative_ai.models.InboundAuthConfig - :param networking_config: The value to assign to the networking_config property of this HostedApplication. :type networking_config: oci.generative_ai.models.NetworkingConfig @@ -118,6 +118,7 @@ def __init__(self, **kwargs): """ self.swagger_types = { + 'inbound_auth_config': 'InboundAuthConfig', 'id': 'str', 'display_name': 'str', 'description': 'str', @@ -128,7 +129,6 @@ def __init__(self, **kwargs): 'lifecycle_details': 'str', 'scaling_config': 'ScalingConfig', 'storage_configs': 'list[StorageConfig]', - 'inbound_auth_config': 'InboundAuthConfig', 'networking_config': 'NetworkingConfig', 'environment_variables': 'list[EnvironmentVariable]', 'freeform_tags': 'dict(str, str)', @@ -136,6 +136,7 @@ def __init__(self, **kwargs): 'system_tags': 'dict(str, dict(str, object))' } self.attribute_map = { + 'inbound_auth_config': 'inboundAuthConfig', 'id': 'id', 'display_name': 'displayName', 'description': 'description', @@ -146,13 +147,13 @@ def __init__(self, **kwargs): 'lifecycle_details': 'lifecycleDetails', 'scaling_config': 'scalingConfig', 'storage_configs': 'storageConfigs', - 'inbound_auth_config': 'inboundAuthConfig', 'networking_config': 'networkingConfig', 'environment_variables': 'environmentVariables', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', 'system_tags': 'systemTags' } + self._inbound_auth_config = None self._id = None self._display_name = None self._description = None @@ -163,13 +164,32 @@ def __init__(self, **kwargs): self._lifecycle_details = None self._scaling_config = None self._storage_configs = None - self._inbound_auth_config = None self._networking_config = None self._environment_variables = None self._freeform_tags = None self._defined_tags = None self._system_tags = None + @property + def inbound_auth_config(self): + """ + Gets the inbound_auth_config of this HostedApplication. + + :return: The inbound_auth_config of this HostedApplication. + :rtype: oci.generative_ai.models.InboundAuthConfig + """ + return self._inbound_auth_config + + @inbound_auth_config.setter + def inbound_auth_config(self, inbound_auth_config): + """ + Sets the inbound_auth_config of this HostedApplication. + + :param inbound_auth_config: The inbound_auth_config of this HostedApplication. + :type: oci.generative_ai.models.InboundAuthConfig + """ + self._inbound_auth_config = inbound_auth_config + @property def id(self): """ @@ -416,26 +436,6 @@ def storage_configs(self, storage_configs): """ self._storage_configs = storage_configs - @property - def inbound_auth_config(self): - """ - Gets the inbound_auth_config of this HostedApplication. - - :return: The inbound_auth_config of this HostedApplication. - :rtype: oci.generative_ai.models.InboundAuthConfig - """ - return self._inbound_auth_config - - @inbound_auth_config.setter - def inbound_auth_config(self, inbound_auth_config): - """ - Sets the inbound_auth_config of this HostedApplication. - - :param inbound_auth_config: The inbound_auth_config of this HostedApplication. - :type: oci.generative_ai.models.InboundAuthConfig - """ - self._inbound_auth_config = inbound_auth_config - @property def networking_config(self): """ diff --git a/src/oci/generative_ai/models/hosted_application_base.py b/src/oci/generative_ai/models/hosted_application_base.py new file mode 100644 index 0000000000..b58a746ee2 --- /dev/null +++ b/src/oci/generative_ai/models/hosted_application_base.py @@ -0,0 +1,558 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20231130 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class HostedApplicationBase(object): + """ + Common properties shared by HostedApplication and HostedApplicationIam. + """ + + #: A constant which can be used with the lifecycle_state property of a HostedApplicationBase. + #: This constant has a value of "CREATING" + LIFECYCLE_STATE_CREATING = "CREATING" + + #: A constant which can be used with the lifecycle_state property of a HostedApplicationBase. + #: This constant has a value of "ACTIVE" + LIFECYCLE_STATE_ACTIVE = "ACTIVE" + + #: A constant which can be used with the lifecycle_state property of a HostedApplicationBase. + #: This constant has a value of "UPDATING" + LIFECYCLE_STATE_UPDATING = "UPDATING" + + #: A constant which can be used with the lifecycle_state property of a HostedApplicationBase. + #: This constant has a value of "DELETING" + LIFECYCLE_STATE_DELETING = "DELETING" + + #: A constant which can be used with the lifecycle_state property of a HostedApplicationBase. + #: This constant has a value of "DELETED" + LIFECYCLE_STATE_DELETED = "DELETED" + + #: A constant which can be used with the lifecycle_state property of a HostedApplicationBase. + #: This constant has a value of "FAILED" + LIFECYCLE_STATE_FAILED = "FAILED" + + def __init__(self, **kwargs): + """ + Initializes a new HostedApplicationBase object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this HostedApplicationBase. + :type id: str + + :param display_name: + The value to assign to the display_name property of this HostedApplicationBase. + :type display_name: str + + :param description: + The value to assign to the description property of this HostedApplicationBase. + :type description: str + + :param compartment_id: + The value to assign to the compartment_id property of this HostedApplicationBase. + :type compartment_id: str + + :param time_created: + The value to assign to the time_created property of this HostedApplicationBase. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this HostedApplicationBase. + :type time_updated: datetime + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this HostedApplicationBase. + Allowed values for this property are: "CREATING", "ACTIVE", "UPDATING", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + :param lifecycle_details: + The value to assign to the lifecycle_details property of this HostedApplicationBase. + :type lifecycle_details: str + + :param scaling_config: + The value to assign to the scaling_config property of this HostedApplicationBase. + :type scaling_config: oci.generative_ai.models.ScalingConfig + + :param storage_configs: + The value to assign to the storage_configs property of this HostedApplicationBase. + :type storage_configs: list[oci.generative_ai.models.StorageConfig] + + :param networking_config: + The value to assign to the networking_config property of this HostedApplicationBase. + :type networking_config: oci.generative_ai.models.NetworkingConfig + + :param environment_variables: + The value to assign to the environment_variables property of this HostedApplicationBase. + :type environment_variables: list[oci.generative_ai.models.EnvironmentVariable] + + :param freeform_tags: + The value to assign to the freeform_tags property of this HostedApplicationBase. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this HostedApplicationBase. + :type defined_tags: dict(str, dict(str, object)) + + :param system_tags: + The value to assign to the system_tags property of this HostedApplicationBase. + :type system_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'id': 'str', + 'display_name': 'str', + 'description': 'str', + 'compartment_id': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'lifecycle_state': 'str', + 'lifecycle_details': 'str', + 'scaling_config': 'ScalingConfig', + 'storage_configs': 'list[StorageConfig]', + 'networking_config': 'NetworkingConfig', + 'environment_variables': 'list[EnvironmentVariable]', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'id': 'id', + 'display_name': 'displayName', + 'description': 'description', + 'compartment_id': 'compartmentId', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'lifecycle_state': 'lifecycleState', + 'lifecycle_details': 'lifecycleDetails', + 'scaling_config': 'scalingConfig', + 'storage_configs': 'storageConfigs', + 'networking_config': 'networkingConfig', + 'environment_variables': 'environmentVariables', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags' + } + self._id = None + self._display_name = None + self._description = None + self._compartment_id = None + self._time_created = None + self._time_updated = None + self._lifecycle_state = None + self._lifecycle_details = None + self._scaling_config = None + self._storage_configs = None + self._networking_config = None + self._environment_variables = None + self._freeform_tags = None + self._defined_tags = None + self._system_tags = None + + @property + def id(self): + """ + **[Required]** Gets the id of this HostedApplicationBase. + The `OCID`__ of the hosted application. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this HostedApplicationBase. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this HostedApplicationBase. + The `OCID`__ of the hosted application. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this HostedApplicationBase. + :type: str + """ + self._id = id + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this HostedApplicationBase. + A user-friendly name. Does not have to be unique, and it's changeable. + + + :return: The display_name of this HostedApplicationBase. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this HostedApplicationBase. + A user-friendly name. Does not have to be unique, and it's changeable. + + + :param display_name: The display_name of this HostedApplicationBase. + :type: str + """ + self._display_name = display_name + + @property + def description(self): + """ + Gets the description of this HostedApplicationBase. + An optional description of the hosted application. + + + :return: The description of this HostedApplicationBase. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this HostedApplicationBase. + An optional description of the hosted application. + + + :param description: The description of this HostedApplicationBase. + :type: str + """ + self._description = description + + @property + def compartment_id(self): + """ + Gets the compartment_id of this HostedApplicationBase. + The compartment OCID to create the hosted application in. + + + :return: The compartment_id of this HostedApplicationBase. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this HostedApplicationBase. + The compartment OCID to create the hosted application in. + + + :param compartment_id: The compartment_id of this HostedApplicationBase. + :type: str + """ + self._compartment_id = compartment_id + + @property + def time_created(self): + """ + Gets the time_created of this HostedApplicationBase. + The date and time the hosted application was created, in the format defined by RFC 3339 + + + :return: The time_created of this HostedApplicationBase. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this HostedApplicationBase. + The date and time the hosted application was created, in the format defined by RFC 3339 + + + :param time_created: The time_created of this HostedApplicationBase. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + Gets the time_updated of this HostedApplicationBase. + The date and time the hosted application was updated, in the format defined by RFC 3339 + + + :return: The time_updated of this HostedApplicationBase. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this HostedApplicationBase. + The date and time the hosted application was updated, in the format defined by RFC 3339 + + + :param time_updated: The time_updated of this HostedApplicationBase. + :type: datetime + """ + self._time_updated = time_updated + + @property + def lifecycle_state(self): + """ + **[Required]** Gets the lifecycle_state of this HostedApplicationBase. + The current state of the hosted application. + + Allowed values for this property are: "CREATING", "ACTIVE", "UPDATING", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this HostedApplicationBase. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this HostedApplicationBase. + The current state of the hosted application. + + + :param lifecycle_state: The lifecycle_state of this HostedApplicationBase. + :type: str + """ + allowed_values = ["CREATING", "ACTIVE", "UPDATING", "DELETING", "DELETED", "FAILED"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + + @property + def lifecycle_details(self): + """ + Gets the lifecycle_details of this HostedApplicationBase. + A message describing the current state of the endpoint in more detail that can provide actionable information. + + + :return: The lifecycle_details of this HostedApplicationBase. + :rtype: str + """ + return self._lifecycle_details + + @lifecycle_details.setter + def lifecycle_details(self, lifecycle_details): + """ + Sets the lifecycle_details of this HostedApplicationBase. + A message describing the current state of the endpoint in more detail that can provide actionable information. + + + :param lifecycle_details: The lifecycle_details of this HostedApplicationBase. + :type: str + """ + self._lifecycle_details = lifecycle_details + + @property + def scaling_config(self): + """ + Gets the scaling_config of this HostedApplicationBase. + + :return: The scaling_config of this HostedApplicationBase. + :rtype: oci.generative_ai.models.ScalingConfig + """ + return self._scaling_config + + @scaling_config.setter + def scaling_config(self, scaling_config): + """ + Sets the scaling_config of this HostedApplicationBase. + + :param scaling_config: The scaling_config of this HostedApplicationBase. + :type: oci.generative_ai.models.ScalingConfig + """ + self._scaling_config = scaling_config + + @property + def storage_configs(self): + """ + Gets the storage_configs of this HostedApplicationBase. + A list of storageConfigs managed by the OCI GenAI Platform and attached to the application. + + + :return: The storage_configs of this HostedApplicationBase. + :rtype: list[oci.generative_ai.models.StorageConfig] + """ + return self._storage_configs + + @storage_configs.setter + def storage_configs(self, storage_configs): + """ + Sets the storage_configs of this HostedApplicationBase. + A list of storageConfigs managed by the OCI GenAI Platform and attached to the application. + + + :param storage_configs: The storage_configs of this HostedApplicationBase. + :type: list[oci.generative_ai.models.StorageConfig] + """ + self._storage_configs = storage_configs + + @property + def networking_config(self): + """ + Gets the networking_config of this HostedApplicationBase. + + :return: The networking_config of this HostedApplicationBase. + :rtype: oci.generative_ai.models.NetworkingConfig + """ + return self._networking_config + + @networking_config.setter + def networking_config(self, networking_config): + """ + Sets the networking_config of this HostedApplicationBase. + + :param networking_config: The networking_config of this HostedApplicationBase. + :type: oci.generative_ai.models.NetworkingConfig + """ + self._networking_config = networking_config + + @property + def environment_variables(self): + """ + Gets the environment_variables of this HostedApplicationBase. + The list of environment variables for the Hosted Application. + Defines a list of environment variables injected at runtime. + + + :return: The environment_variables of this HostedApplicationBase. + :rtype: list[oci.generative_ai.models.EnvironmentVariable] + """ + return self._environment_variables + + @environment_variables.setter + def environment_variables(self, environment_variables): + """ + Sets the environment_variables of this HostedApplicationBase. + The list of environment variables for the Hosted Application. + Defines a list of environment variables injected at runtime. + + + :param environment_variables: The environment_variables of this HostedApplicationBase. + :type: list[oci.generative_ai.models.EnvironmentVariable] + """ + self._environment_variables = environment_variables + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this HostedApplicationBase. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this HostedApplicationBase. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this HostedApplicationBase. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this HostedApplicationBase. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this HostedApplicationBase. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this HostedApplicationBase. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this HostedApplicationBase. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this HostedApplicationBase. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def system_tags(self): + """ + Gets the system_tags of this HostedApplicationBase. + System tags for this resource. Each key is predefined and scoped to a namespace. + + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :return: The system_tags of this HostedApplicationBase. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this HostedApplicationBase. + System tags for this resource. Each key is predefined and scoped to a namespace. + + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :param system_tags: The system_tags of this HostedApplicationBase. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/generative_ai/models/hosted_application_iam.py b/src/oci/generative_ai/models/hosted_application_iam.py new file mode 100644 index 0000000000..e535773f79 --- /dev/null +++ b/src/oci/generative_ai/models/hosted_application_iam.py @@ -0,0 +1,564 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20231130 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class HostedApplicationIam(object): + """ + Hosted Application IAM, defines shared configurations that apply across multiple deployments of the Agent or MCP application. + + To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to an administrator who gives OCI resource access to users. See + `Getting Started with Policies`__ and `Getting Access to Generative AI Resources`__. + + __ https://docs.oracle.com/iaas/Content/Identity/policiesgs/get-started-with-policies.htm + __ https://docs.oracle.com/iaas/Content/generative-ai/iam-policies.htm + """ + + #: A constant which can be used with the lifecycle_state property of a HostedApplicationIam. + #: This constant has a value of "CREATING" + LIFECYCLE_STATE_CREATING = "CREATING" + + #: A constant which can be used with the lifecycle_state property of a HostedApplicationIam. + #: This constant has a value of "ACTIVE" + LIFECYCLE_STATE_ACTIVE = "ACTIVE" + + #: A constant which can be used with the lifecycle_state property of a HostedApplicationIam. + #: This constant has a value of "UPDATING" + LIFECYCLE_STATE_UPDATING = "UPDATING" + + #: A constant which can be used with the lifecycle_state property of a HostedApplicationIam. + #: This constant has a value of "DELETING" + LIFECYCLE_STATE_DELETING = "DELETING" + + #: A constant which can be used with the lifecycle_state property of a HostedApplicationIam. + #: This constant has a value of "DELETED" + LIFECYCLE_STATE_DELETED = "DELETED" + + #: A constant which can be used with the lifecycle_state property of a HostedApplicationIam. + #: This constant has a value of "FAILED" + LIFECYCLE_STATE_FAILED = "FAILED" + + def __init__(self, **kwargs): + """ + Initializes a new HostedApplicationIam object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this HostedApplicationIam. + :type id: str + + :param display_name: + The value to assign to the display_name property of this HostedApplicationIam. + :type display_name: str + + :param description: + The value to assign to the description property of this HostedApplicationIam. + :type description: str + + :param compartment_id: + The value to assign to the compartment_id property of this HostedApplicationIam. + :type compartment_id: str + + :param time_created: + The value to assign to the time_created property of this HostedApplicationIam. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this HostedApplicationIam. + :type time_updated: datetime + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this HostedApplicationIam. + Allowed values for this property are: "CREATING", "ACTIVE", "UPDATING", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + :param lifecycle_details: + The value to assign to the lifecycle_details property of this HostedApplicationIam. + :type lifecycle_details: str + + :param scaling_config: + The value to assign to the scaling_config property of this HostedApplicationIam. + :type scaling_config: oci.generative_ai.models.ScalingConfig + + :param storage_configs: + The value to assign to the storage_configs property of this HostedApplicationIam. + :type storage_configs: list[oci.generative_ai.models.StorageConfig] + + :param networking_config: + The value to assign to the networking_config property of this HostedApplicationIam. + :type networking_config: oci.generative_ai.models.NetworkingConfig + + :param environment_variables: + The value to assign to the environment_variables property of this HostedApplicationIam. + :type environment_variables: list[oci.generative_ai.models.EnvironmentVariable] + + :param freeform_tags: + The value to assign to the freeform_tags property of this HostedApplicationIam. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this HostedApplicationIam. + :type defined_tags: dict(str, dict(str, object)) + + :param system_tags: + The value to assign to the system_tags property of this HostedApplicationIam. + :type system_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'id': 'str', + 'display_name': 'str', + 'description': 'str', + 'compartment_id': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'lifecycle_state': 'str', + 'lifecycle_details': 'str', + 'scaling_config': 'ScalingConfig', + 'storage_configs': 'list[StorageConfig]', + 'networking_config': 'NetworkingConfig', + 'environment_variables': 'list[EnvironmentVariable]', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'id': 'id', + 'display_name': 'displayName', + 'description': 'description', + 'compartment_id': 'compartmentId', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'lifecycle_state': 'lifecycleState', + 'lifecycle_details': 'lifecycleDetails', + 'scaling_config': 'scalingConfig', + 'storage_configs': 'storageConfigs', + 'networking_config': 'networkingConfig', + 'environment_variables': 'environmentVariables', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags' + } + self._id = None + self._display_name = None + self._description = None + self._compartment_id = None + self._time_created = None + self._time_updated = None + self._lifecycle_state = None + self._lifecycle_details = None + self._scaling_config = None + self._storage_configs = None + self._networking_config = None + self._environment_variables = None + self._freeform_tags = None + self._defined_tags = None + self._system_tags = None + + @property + def id(self): + """ + **[Required]** Gets the id of this HostedApplicationIam. + The `OCID`__ of the hosted application. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this HostedApplicationIam. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this HostedApplicationIam. + The `OCID`__ of the hosted application. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this HostedApplicationIam. + :type: str + """ + self._id = id + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this HostedApplicationIam. + A user-friendly name. Does not have to be unique, and it's changeable. + + + :return: The display_name of this HostedApplicationIam. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this HostedApplicationIam. + A user-friendly name. Does not have to be unique, and it's changeable. + + + :param display_name: The display_name of this HostedApplicationIam. + :type: str + """ + self._display_name = display_name + + @property + def description(self): + """ + Gets the description of this HostedApplicationIam. + An optional description of the hosted application. + + + :return: The description of this HostedApplicationIam. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this HostedApplicationIam. + An optional description of the hosted application. + + + :param description: The description of this HostedApplicationIam. + :type: str + """ + self._description = description + + @property + def compartment_id(self): + """ + Gets the compartment_id of this HostedApplicationIam. + The compartment OCID to create the hosted application in. + + + :return: The compartment_id of this HostedApplicationIam. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this HostedApplicationIam. + The compartment OCID to create the hosted application in. + + + :param compartment_id: The compartment_id of this HostedApplicationIam. + :type: str + """ + self._compartment_id = compartment_id + + @property + def time_created(self): + """ + Gets the time_created of this HostedApplicationIam. + The date and time the hosted application was created, in the format defined by RFC 3339 + + + :return: The time_created of this HostedApplicationIam. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this HostedApplicationIam. + The date and time the hosted application was created, in the format defined by RFC 3339 + + + :param time_created: The time_created of this HostedApplicationIam. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + Gets the time_updated of this HostedApplicationIam. + The date and time the hosted application was updated, in the format defined by RFC 3339 + + + :return: The time_updated of this HostedApplicationIam. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this HostedApplicationIam. + The date and time the hosted application was updated, in the format defined by RFC 3339 + + + :param time_updated: The time_updated of this HostedApplicationIam. + :type: datetime + """ + self._time_updated = time_updated + + @property + def lifecycle_state(self): + """ + **[Required]** Gets the lifecycle_state of this HostedApplicationIam. + The current state of the hosted application. + + Allowed values for this property are: "CREATING", "ACTIVE", "UPDATING", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this HostedApplicationIam. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this HostedApplicationIam. + The current state of the hosted application. + + + :param lifecycle_state: The lifecycle_state of this HostedApplicationIam. + :type: str + """ + allowed_values = ["CREATING", "ACTIVE", "UPDATING", "DELETING", "DELETED", "FAILED"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + + @property + def lifecycle_details(self): + """ + Gets the lifecycle_details of this HostedApplicationIam. + A message describing the current state of the endpoint in more detail that can provide actionable information. + + + :return: The lifecycle_details of this HostedApplicationIam. + :rtype: str + """ + return self._lifecycle_details + + @lifecycle_details.setter + def lifecycle_details(self, lifecycle_details): + """ + Sets the lifecycle_details of this HostedApplicationIam. + A message describing the current state of the endpoint in more detail that can provide actionable information. + + + :param lifecycle_details: The lifecycle_details of this HostedApplicationIam. + :type: str + """ + self._lifecycle_details = lifecycle_details + + @property + def scaling_config(self): + """ + Gets the scaling_config of this HostedApplicationIam. + + :return: The scaling_config of this HostedApplicationIam. + :rtype: oci.generative_ai.models.ScalingConfig + """ + return self._scaling_config + + @scaling_config.setter + def scaling_config(self, scaling_config): + """ + Sets the scaling_config of this HostedApplicationIam. + + :param scaling_config: The scaling_config of this HostedApplicationIam. + :type: oci.generative_ai.models.ScalingConfig + """ + self._scaling_config = scaling_config + + @property + def storage_configs(self): + """ + Gets the storage_configs of this HostedApplicationIam. + A list of storageConfigs managed by the OCI GenAI Platform and attached to the application. + + + :return: The storage_configs of this HostedApplicationIam. + :rtype: list[oci.generative_ai.models.StorageConfig] + """ + return self._storage_configs + + @storage_configs.setter + def storage_configs(self, storage_configs): + """ + Sets the storage_configs of this HostedApplicationIam. + A list of storageConfigs managed by the OCI GenAI Platform and attached to the application. + + + :param storage_configs: The storage_configs of this HostedApplicationIam. + :type: list[oci.generative_ai.models.StorageConfig] + """ + self._storage_configs = storage_configs + + @property + def networking_config(self): + """ + Gets the networking_config of this HostedApplicationIam. + + :return: The networking_config of this HostedApplicationIam. + :rtype: oci.generative_ai.models.NetworkingConfig + """ + return self._networking_config + + @networking_config.setter + def networking_config(self, networking_config): + """ + Sets the networking_config of this HostedApplicationIam. + + :param networking_config: The networking_config of this HostedApplicationIam. + :type: oci.generative_ai.models.NetworkingConfig + """ + self._networking_config = networking_config + + @property + def environment_variables(self): + """ + Gets the environment_variables of this HostedApplicationIam. + The list of environment variables for the Hosted Application. + Defines a list of environment variables injected at runtime. + + + :return: The environment_variables of this HostedApplicationIam. + :rtype: list[oci.generative_ai.models.EnvironmentVariable] + """ + return self._environment_variables + + @environment_variables.setter + def environment_variables(self, environment_variables): + """ + Sets the environment_variables of this HostedApplicationIam. + The list of environment variables for the Hosted Application. + Defines a list of environment variables injected at runtime. + + + :param environment_variables: The environment_variables of this HostedApplicationIam. + :type: list[oci.generative_ai.models.EnvironmentVariable] + """ + self._environment_variables = environment_variables + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this HostedApplicationIam. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this HostedApplicationIam. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this HostedApplicationIam. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this HostedApplicationIam. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this HostedApplicationIam. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this HostedApplicationIam. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this HostedApplicationIam. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this HostedApplicationIam. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def system_tags(self): + """ + Gets the system_tags of this HostedApplicationIam. + System tags for this resource. Each key is predefined and scoped to a namespace. + + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :return: The system_tags of this HostedApplicationIam. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this HostedApplicationIam. + System tags for this resource. Each key is predefined and scoped to a namespace. + + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :param system_tags: The system_tags of this HostedApplicationIam. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/generative_ai/models/hosted_application_summary.py b/src/oci/generative_ai/models/hosted_application_summary.py index a0836a8b59..8f79c7fe8e 100644 --- a/src/oci/generative_ai/models/hosted_application_summary.py +++ b/src/oci/generative_ai/models/hosted_application_summary.py @@ -250,14 +250,6 @@ def lifecycle_state(self): **[Required]** Gets the lifecycle_state of this HostedApplicationSummary. The current state of the hosted application. - Allowed values are: - - CREATING - - ACTIVE - - UPDATING - - DELETING - - DELETED - - FAILED - :return: The lifecycle_state of this HostedApplicationSummary. :rtype: str @@ -270,14 +262,6 @@ def lifecycle_state(self, lifecycle_state): Sets the lifecycle_state of this HostedApplicationSummary. The current state of the hosted application. - Allowed values are: - - CREATING - - ACTIVE - - UPDATING - - DELETING - - DELETED - - FAILED - :param lifecycle_state: The lifecycle_state of this HostedApplicationSummary. :type: str diff --git a/src/oci/generative_ai/models/hosted_deployment.py b/src/oci/generative_ai/models/hosted_deployment.py index 9c5fb8e35f..6e0a564ca5 100644 --- a/src/oci/generative_ai/models/hosted_deployment.py +++ b/src/oci/generative_ai/models/hosted_deployment.py @@ -25,6 +25,10 @@ class HostedDeployment(object): #: This constant has a value of "CREATING" LIFECYCLE_STATE_CREATING = "CREATING" + #: A constant which can be used with the lifecycle_state property of a HostedDeployment. + #: This constant has a value of "NEEDS_ATTENTION" + LIFECYCLE_STATE_NEEDS_ATTENTION = "NEEDS_ATTENTION" + #: A constant which can be used with the lifecycle_state property of a HostedDeployment. #: This constant has a value of "ACTIVE" LIFECYCLE_STATE_ACTIVE = "ACTIVE" @@ -76,7 +80,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this HostedDeployment. - Allowed values for this property are: "CREATING", "ACTIVE", "INACTIVE", "UPDATING", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATING", "NEEDS_ATTENTION", "ACTIVE", "INACTIVE", "UPDATING", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str @@ -276,7 +280,7 @@ def lifecycle_state(self): **[Required]** Gets the lifecycle_state of this HostedDeployment. The current state of the hosted deployment. - Allowed values for this property are: "CREATING", "ACTIVE", "INACTIVE", "UPDATING", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATING", "NEEDS_ATTENTION", "ACTIVE", "INACTIVE", "UPDATING", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -295,7 +299,7 @@ def lifecycle_state(self, lifecycle_state): :param lifecycle_state: The lifecycle_state of this HostedDeployment. :type: str """ - allowed_values = ["CREATING", "ACTIVE", "INACTIVE", "UPDATING", "DELETING", "DELETED", "FAILED"] + allowed_values = ["CREATING", "NEEDS_ATTENTION", "ACTIVE", "INACTIVE", "UPDATING", "DELETING", "DELETED", "FAILED"] if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): lifecycle_state = 'UNKNOWN_ENUM_VALUE' self._lifecycle_state = lifecycle_state @@ -303,8 +307,8 @@ def lifecycle_state(self, lifecycle_state): @property def hosted_application_id(self): """ - **[Required]** Gets the hosted_application_id of this HostedDeployment. - The `OCID`__ of the application. + Gets the hosted_application_id of this HostedDeployment. + The `OCID`__ of the HostedApplication parent. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm @@ -318,7 +322,7 @@ def hosted_application_id(self): def hosted_application_id(self, hosted_application_id): """ Sets the hosted_application_id of this HostedDeployment. - The `OCID`__ of the application. + The `OCID`__ of the HostedApplication parent. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm diff --git a/src/oci/generative_ai/models/hosted_deployment_summary.py b/src/oci/generative_ai/models/hosted_deployment_summary.py index b2f21f9da1..f331f9443f 100644 --- a/src/oci/generative_ai/models/hosted_deployment_summary.py +++ b/src/oci/generative_ai/models/hosted_deployment_summary.py @@ -216,7 +216,7 @@ def lifecycle_state(self, lifecycle_state): def hosted_application_id(self): """ Gets the hosted_application_id of this HostedDeploymentSummary. - The `OCID`__ of the application. + The `OCID`__ of the HostedApplication parent. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm @@ -230,7 +230,7 @@ def hosted_application_id(self): def hosted_application_id(self, hosted_application_id): """ Sets the hosted_application_id of this HostedDeploymentSummary. - The `OCID`__ of the application. + The `OCID`__ of the HostedApplication parent. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm diff --git a/src/oci/generative_ai/models/single_docker_artifact.py b/src/oci/generative_ai/models/single_docker_artifact.py index 3a0e84c452..23a1b71c01 100644 --- a/src/oci/generative_ai/models/single_docker_artifact.py +++ b/src/oci/generative_ai/models/single_docker_artifact.py @@ -33,9 +33,13 @@ def __init__(self, **kwargs): The value to assign to the hosted_deployment_id property of this SingleDockerArtifact. :type hosted_deployment_id: str + :param is_vulnerability_scan_required: + The value to assign to the is_vulnerability_scan_required property of this SingleDockerArtifact. + :type is_vulnerability_scan_required: bool + :param status: The value to assign to the status property of this SingleDockerArtifact. - Allowed values for this property are: "ACTIVE", "INACTIVE", "UPDATING" + Allowed values for this property are: "ACTIVE", "INACTIVE", "UPDATING", "FAILED" :type status: str :param artifact_type: @@ -56,6 +60,7 @@ def __init__(self, **kwargs): 'id': 'str', 'time_created': 'datetime', 'hosted_deployment_id': 'str', + 'is_vulnerability_scan_required': 'bool', 'status': 'str', 'artifact_type': 'str', 'container_uri': 'str', @@ -65,6 +70,7 @@ def __init__(self, **kwargs): 'id': 'id', 'time_created': 'timeCreated', 'hosted_deployment_id': 'hostedDeploymentId', + 'is_vulnerability_scan_required': 'isVulnerabilityScanRequired', 'status': 'status', 'artifact_type': 'artifactType', 'container_uri': 'containerUri', @@ -73,6 +79,7 @@ def __init__(self, **kwargs): self._id = None self._time_created = None self._hosted_deployment_id = None + self._is_vulnerability_scan_required = None self._status = None self._artifact_type = None self._container_uri = None diff --git a/src/oci/generative_ai/models/update_hosted_application_base_details.py b/src/oci/generative_ai/models/update_hosted_application_base_details.py new file mode 100644 index 0000000000..d407a44206 --- /dev/null +++ b/src/oci/generative_ai/models/update_hosted_application_base_details.py @@ -0,0 +1,243 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20231130 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class UpdateHostedApplicationBaseDetails(object): + """ + Common update properties shared by HostedApplication and HostedApplicationIam. + """ + + def __init__(self, **kwargs): + """ + Initializes a new UpdateHostedApplicationBaseDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param display_name: + The value to assign to the display_name property of this UpdateHostedApplicationBaseDetails. + :type display_name: str + + :param description: + The value to assign to the description property of this UpdateHostedApplicationBaseDetails. + :type description: str + + :param scaling_config: + The value to assign to the scaling_config property of this UpdateHostedApplicationBaseDetails. + :type scaling_config: oci.generative_ai.models.ScalingConfig + + :param environment_variables: + The value to assign to the environment_variables property of this UpdateHostedApplicationBaseDetails. + :type environment_variables: list[oci.generative_ai.models.EnvironmentVariable] + + :param freeform_tags: + The value to assign to the freeform_tags property of this UpdateHostedApplicationBaseDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this UpdateHostedApplicationBaseDetails. + :type defined_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'display_name': 'str', + 'description': 'str', + 'scaling_config': 'ScalingConfig', + 'environment_variables': 'list[EnvironmentVariable]', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'display_name': 'displayName', + 'description': 'description', + 'scaling_config': 'scalingConfig', + 'environment_variables': 'environmentVariables', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' + } + self._display_name = None + self._description = None + self._scaling_config = None + self._environment_variables = None + self._freeform_tags = None + self._defined_tags = None + + @property + def display_name(self): + """ + Gets the display_name of this UpdateHostedApplicationBaseDetails. + A user-friendly name. Does not have to be unique, and it's changeable. + + + :return: The display_name of this UpdateHostedApplicationBaseDetails. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this UpdateHostedApplicationBaseDetails. + A user-friendly name. Does not have to be unique, and it's changeable. + + + :param display_name: The display_name of this UpdateHostedApplicationBaseDetails. + :type: str + """ + self._display_name = display_name + + @property + def description(self): + """ + Gets the description of this UpdateHostedApplicationBaseDetails. + An optional description of the hosted application. + + + :return: The description of this UpdateHostedApplicationBaseDetails. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this UpdateHostedApplicationBaseDetails. + An optional description of the hosted application. + + + :param description: The description of this UpdateHostedApplicationBaseDetails. + :type: str + """ + self._description = description + + @property + def scaling_config(self): + """ + Gets the scaling_config of this UpdateHostedApplicationBaseDetails. + + :return: The scaling_config of this UpdateHostedApplicationBaseDetails. + :rtype: oci.generative_ai.models.ScalingConfig + """ + return self._scaling_config + + @scaling_config.setter + def scaling_config(self, scaling_config): + """ + Sets the scaling_config of this UpdateHostedApplicationBaseDetails. + + :param scaling_config: The scaling_config of this UpdateHostedApplicationBaseDetails. + :type: oci.generative_ai.models.ScalingConfig + """ + self._scaling_config = scaling_config + + @property + def environment_variables(self): + """ + Gets the environment_variables of this UpdateHostedApplicationBaseDetails. + The list of environment variables for the Hosted Application. + Defines a list of environment variables injected at runtime. + + + :return: The environment_variables of this UpdateHostedApplicationBaseDetails. + :rtype: list[oci.generative_ai.models.EnvironmentVariable] + """ + return self._environment_variables + + @environment_variables.setter + def environment_variables(self, environment_variables): + """ + Sets the environment_variables of this UpdateHostedApplicationBaseDetails. + The list of environment variables for the Hosted Application. + Defines a list of environment variables injected at runtime. + + + :param environment_variables: The environment_variables of this UpdateHostedApplicationBaseDetails. + :type: list[oci.generative_ai.models.EnvironmentVariable] + """ + self._environment_variables = environment_variables + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this UpdateHostedApplicationBaseDetails. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this UpdateHostedApplicationBaseDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this UpdateHostedApplicationBaseDetails. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this UpdateHostedApplicationBaseDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this UpdateHostedApplicationBaseDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this UpdateHostedApplicationBaseDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this UpdateHostedApplicationBaseDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this UpdateHostedApplicationBaseDetails. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/generative_ai/models/update_hosted_application_details.py b/src/oci/generative_ai/models/update_hosted_application_details.py index 5b3aae0ed8..c1c03c16ba 100644 --- a/src/oci/generative_ai/models/update_hosted_application_details.py +++ b/src/oci/generative_ai/models/update_hosted_application_details.py @@ -20,6 +20,10 @@ def __init__(self, **kwargs): Initializes a new UpdateHostedApplicationDetails object with values from keyword arguments. The following keyword arguments are supported (corresponding to the getters/setters of this class): + :param inbound_auth_config: + The value to assign to the inbound_auth_config property of this UpdateHostedApplicationDetails. + :type inbound_auth_config: oci.generative_ai.models.InboundAuthConfig + :param display_name: The value to assign to the display_name property of this UpdateHostedApplicationDetails. :type display_name: str @@ -32,10 +36,6 @@ def __init__(self, **kwargs): The value to assign to the scaling_config property of this UpdateHostedApplicationDetails. :type scaling_config: oci.generative_ai.models.ScalingConfig - :param inbound_auth_config: - The value to assign to the inbound_auth_config property of this UpdateHostedApplicationDetails. - :type inbound_auth_config: oci.generative_ai.models.InboundAuthConfig - :param environment_variables: The value to assign to the environment_variables property of this UpdateHostedApplicationDetails. :type environment_variables: list[oci.generative_ai.models.EnvironmentVariable] @@ -50,31 +50,51 @@ def __init__(self, **kwargs): """ self.swagger_types = { + 'inbound_auth_config': 'InboundAuthConfig', 'display_name': 'str', 'description': 'str', 'scaling_config': 'ScalingConfig', - 'inbound_auth_config': 'InboundAuthConfig', 'environment_variables': 'list[EnvironmentVariable]', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))' } self.attribute_map = { + 'inbound_auth_config': 'inboundAuthConfig', 'display_name': 'displayName', 'description': 'description', 'scaling_config': 'scalingConfig', - 'inbound_auth_config': 'inboundAuthConfig', 'environment_variables': 'environmentVariables', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags' } + self._inbound_auth_config = None self._display_name = None self._description = None self._scaling_config = None - self._inbound_auth_config = None self._environment_variables = None self._freeform_tags = None self._defined_tags = None + @property + def inbound_auth_config(self): + """ + Gets the inbound_auth_config of this UpdateHostedApplicationDetails. + + :return: The inbound_auth_config of this UpdateHostedApplicationDetails. + :rtype: oci.generative_ai.models.InboundAuthConfig + """ + return self._inbound_auth_config + + @inbound_auth_config.setter + def inbound_auth_config(self, inbound_auth_config): + """ + Sets the inbound_auth_config of this UpdateHostedApplicationDetails. + + :param inbound_auth_config: The inbound_auth_config of this UpdateHostedApplicationDetails. + :type: oci.generative_ai.models.InboundAuthConfig + """ + self._inbound_auth_config = inbound_auth_config + @property def display_name(self): """ @@ -143,26 +163,6 @@ def scaling_config(self, scaling_config): """ self._scaling_config = scaling_config - @property - def inbound_auth_config(self): - """ - Gets the inbound_auth_config of this UpdateHostedApplicationDetails. - - :return: The inbound_auth_config of this UpdateHostedApplicationDetails. - :rtype: oci.generative_ai.models.InboundAuthConfig - """ - return self._inbound_auth_config - - @inbound_auth_config.setter - def inbound_auth_config(self, inbound_auth_config): - """ - Sets the inbound_auth_config of this UpdateHostedApplicationDetails. - - :param inbound_auth_config: The inbound_auth_config of this UpdateHostedApplicationDetails. - :type: oci.generative_ai.models.InboundAuthConfig - """ - self._inbound_auth_config = inbound_auth_config - @property def environment_variables(self): """ diff --git a/src/oci/generative_ai/models/update_hosted_application_iam_details.py b/src/oci/generative_ai/models/update_hosted_application_iam_details.py new file mode 100644 index 0000000000..0a77ae0c0c --- /dev/null +++ b/src/oci/generative_ai/models/update_hosted_application_iam_details.py @@ -0,0 +1,243 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20231130 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class UpdateHostedApplicationIamDetails(object): + """ + The data to update a hosted application. + """ + + def __init__(self, **kwargs): + """ + Initializes a new UpdateHostedApplicationIamDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param display_name: + The value to assign to the display_name property of this UpdateHostedApplicationIamDetails. + :type display_name: str + + :param description: + The value to assign to the description property of this UpdateHostedApplicationIamDetails. + :type description: str + + :param scaling_config: + The value to assign to the scaling_config property of this UpdateHostedApplicationIamDetails. + :type scaling_config: oci.generative_ai.models.ScalingConfig + + :param environment_variables: + The value to assign to the environment_variables property of this UpdateHostedApplicationIamDetails. + :type environment_variables: list[oci.generative_ai.models.EnvironmentVariable] + + :param freeform_tags: + The value to assign to the freeform_tags property of this UpdateHostedApplicationIamDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this UpdateHostedApplicationIamDetails. + :type defined_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'display_name': 'str', + 'description': 'str', + 'scaling_config': 'ScalingConfig', + 'environment_variables': 'list[EnvironmentVariable]', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'display_name': 'displayName', + 'description': 'description', + 'scaling_config': 'scalingConfig', + 'environment_variables': 'environmentVariables', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' + } + self._display_name = None + self._description = None + self._scaling_config = None + self._environment_variables = None + self._freeform_tags = None + self._defined_tags = None + + @property + def display_name(self): + """ + Gets the display_name of this UpdateHostedApplicationIamDetails. + A user-friendly name. Does not have to be unique, and it's changeable. + + + :return: The display_name of this UpdateHostedApplicationIamDetails. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this UpdateHostedApplicationIamDetails. + A user-friendly name. Does not have to be unique, and it's changeable. + + + :param display_name: The display_name of this UpdateHostedApplicationIamDetails. + :type: str + """ + self._display_name = display_name + + @property + def description(self): + """ + Gets the description of this UpdateHostedApplicationIamDetails. + An optional description of the hosted application. + + + :return: The description of this UpdateHostedApplicationIamDetails. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this UpdateHostedApplicationIamDetails. + An optional description of the hosted application. + + + :param description: The description of this UpdateHostedApplicationIamDetails. + :type: str + """ + self._description = description + + @property + def scaling_config(self): + """ + Gets the scaling_config of this UpdateHostedApplicationIamDetails. + + :return: The scaling_config of this UpdateHostedApplicationIamDetails. + :rtype: oci.generative_ai.models.ScalingConfig + """ + return self._scaling_config + + @scaling_config.setter + def scaling_config(self, scaling_config): + """ + Sets the scaling_config of this UpdateHostedApplicationIamDetails. + + :param scaling_config: The scaling_config of this UpdateHostedApplicationIamDetails. + :type: oci.generative_ai.models.ScalingConfig + """ + self._scaling_config = scaling_config + + @property + def environment_variables(self): + """ + Gets the environment_variables of this UpdateHostedApplicationIamDetails. + The list of environment variables for the Hosted Application. + Defines a list of environment variables injected at runtime. + + + :return: The environment_variables of this UpdateHostedApplicationIamDetails. + :rtype: list[oci.generative_ai.models.EnvironmentVariable] + """ + return self._environment_variables + + @environment_variables.setter + def environment_variables(self, environment_variables): + """ + Sets the environment_variables of this UpdateHostedApplicationIamDetails. + The list of environment variables for the Hosted Application. + Defines a list of environment variables injected at runtime. + + + :param environment_variables: The environment_variables of this UpdateHostedApplicationIamDetails. + :type: list[oci.generative_ai.models.EnvironmentVariable] + """ + self._environment_variables = environment_variables + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this UpdateHostedApplicationIamDetails. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this UpdateHostedApplicationIamDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this UpdateHostedApplicationIamDetails. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this UpdateHostedApplicationIamDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this UpdateHostedApplicationIamDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this UpdateHostedApplicationIamDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this UpdateHostedApplicationIamDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this UpdateHostedApplicationIamDetails. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/oda/models/create_oda_private_endpoint_details.py b/src/oci/oda/models/create_oda_private_endpoint_details.py index 7f24d44393..e6adae82ad 100644 --- a/src/oci/oda/models/create_oda_private_endpoint_details.py +++ b/src/oci/oda/models/create_oda_private_endpoint_details.py @@ -48,6 +48,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this CreateOdaPrivateEndpointDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this CreateOdaPrivateEndpointDetails. + :type security_attributes: dict(str, dict(str, object)) + """ self.swagger_types = { 'display_name': 'str', @@ -56,7 +60,8 @@ def __init__(self, **kwargs): 'subnet_id': 'str', 'nsg_ids': 'list[str]', 'freeform_tags': 'dict(str, str)', - 'defined_tags': 'dict(str, dict(str, object))' + 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))' } self.attribute_map = { 'display_name': 'displayName', @@ -65,7 +70,8 @@ def __init__(self, **kwargs): 'subnet_id': 'subnetId', 'nsg_ids': 'nsgIds', 'freeform_tags': 'freeformTags', - 'defined_tags': 'definedTags' + 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes' } self._display_name = None self._description = None @@ -74,6 +80,7 @@ def __init__(self, **kwargs): self._nsg_ids = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None @property def display_name(self): @@ -263,6 +270,38 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this CreateOdaPrivateEndpointDetails. + 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\": \"enforce\"}}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this CreateOdaPrivateEndpointDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this CreateOdaPrivateEndpointDetails. + 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\": \"enforce\"}}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this CreateOdaPrivateEndpointDetails. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/oda/models/oda_private_endpoint.py b/src/oci/oda/models/oda_private_endpoint.py index 694ca08226..0588d45f13 100644 --- a/src/oci/oda/models/oda_private_endpoint.py +++ b/src/oci/oda/models/oda_private_endpoint.py @@ -82,6 +82,10 @@ def __init__(self, **kwargs): The value to assign to the nsg_ids property of this OdaPrivateEndpoint. :type nsg_ids: list[str] + :param security_attributes: + The value to assign to the security_attributes property of this OdaPrivateEndpoint. + :type security_attributes: dict(str, dict(str, object)) + :param freeform_tags: The value to assign to the freeform_tags property of this OdaPrivateEndpoint. :type freeform_tags: dict(str, str) @@ -101,6 +105,7 @@ def __init__(self, **kwargs): 'lifecycle_state': 'str', 'subnet_id': 'str', 'nsg_ids': 'list[str]', + 'security_attributes': 'dict(str, dict(str, object))', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))' } @@ -114,6 +119,7 @@ def __init__(self, **kwargs): 'lifecycle_state': 'lifecycleState', 'subnet_id': 'subnetId', 'nsg_ids': 'nsgIds', + 'security_attributes': 'securityAttributes', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags' } @@ -126,6 +132,7 @@ def __init__(self, **kwargs): self._lifecycle_state = None self._subnet_id = None self._nsg_ids = None + self._security_attributes = None self._freeform_tags = None self._defined_tags = None @@ -379,6 +386,38 @@ def nsg_ids(self, nsg_ids): """ self._nsg_ids = nsg_ids + @property + def security_attributes(self): + """ + Gets the security_attributes of this OdaPrivateEndpoint. + 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\": \"enforce\"}}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this OdaPrivateEndpoint. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this OdaPrivateEndpoint. + 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\": \"enforce\"}}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this OdaPrivateEndpoint. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + @property def freeform_tags(self): """ diff --git a/src/oci/oda/models/oda_private_endpoint_summary.py b/src/oci/oda/models/oda_private_endpoint_summary.py index 1efc9fa3e2..1e892542aa 100644 --- a/src/oci/oda/models/oda_private_endpoint_summary.py +++ b/src/oci/oda/models/oda_private_endpoint_summary.py @@ -56,6 +56,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this OdaPrivateEndpointSummary. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this OdaPrivateEndpointSummary. + :type security_attributes: dict(str, dict(str, object)) + """ self.swagger_types = { 'id': 'str', @@ -66,7 +70,8 @@ def __init__(self, **kwargs): 'time_updated': 'datetime', 'lifecycle_state': 'str', 'freeform_tags': 'dict(str, str)', - 'defined_tags': 'dict(str, dict(str, object))' + 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))' } self.attribute_map = { 'id': 'id', @@ -77,7 +82,8 @@ def __init__(self, **kwargs): 'time_updated': 'timeUpdated', 'lifecycle_state': 'lifecycleState', 'freeform_tags': 'freeformTags', - 'defined_tags': 'definedTags' + 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes' } self._id = None self._display_name = None @@ -88,6 +94,7 @@ def __init__(self, **kwargs): self._lifecycle_state = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None @property def id(self): @@ -327,6 +334,38 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this OdaPrivateEndpointSummary. + 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\": \"enforce\"}}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this OdaPrivateEndpointSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this OdaPrivateEndpointSummary. + 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\": \"enforce\"}}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this OdaPrivateEndpointSummary. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/oda/models/parameter_definition.py b/src/oci/oda/models/parameter_definition.py index efc1ab1244..04cb306c88 100644 --- a/src/oci/oda/models/parameter_definition.py +++ b/src/oci/oda/models/parameter_definition.py @@ -35,6 +35,10 @@ class ParameterDefinition(object): #: This constant has a value of "BOOLEAN" TYPE_BOOLEAN = "BOOLEAN" + #: A constant which can be used with the type property of a ParameterDefinition. + #: This constant has a value of "PARAMETERIZED_STRING" + TYPE_PARAMETERIZED_STRING = "PARAMETERIZED_STRING" + #: A constant which can be used with the direction property of a ParameterDefinition. #: This constant has a value of "INPUT" DIRECTION_INPUT = "INPUT" @@ -54,7 +58,7 @@ def __init__(self, **kwargs): :param type: The value to assign to the type property of this ParameterDefinition. - Allowed values for this property are: "STRING", "URI", "URL", "NUMBER", "BOOLEAN", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "STRING", "URI", "URL", "NUMBER", "BOOLEAN", "PARAMETERIZED_STRING", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type type: str @@ -172,7 +176,7 @@ def type(self): **[Required]** Gets the type of this ParameterDefinition. Enumerated parameter type. - Allowed values for this property are: "STRING", "URI", "URL", "NUMBER", "BOOLEAN", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "STRING", "URI", "URL", "NUMBER", "BOOLEAN", "PARAMETERIZED_STRING", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -191,7 +195,7 @@ def type(self, type): :param type: The type of this ParameterDefinition. :type: str """ - allowed_values = ["STRING", "URI", "URL", "NUMBER", "BOOLEAN"] + allowed_values = ["STRING", "URI", "URL", "NUMBER", "BOOLEAN", "PARAMETERIZED_STRING"] if not value_allowed_none_or_none_sentinel(type, allowed_values): type = 'UNKNOWN_ENUM_VALUE' self._type = type diff --git a/src/oci/oda/models/update_oda_private_endpoint_details.py b/src/oci/oda/models/update_oda_private_endpoint_details.py index 948e539860..19d06ed1e5 100644 --- a/src/oci/oda/models/update_oda_private_endpoint_details.py +++ b/src/oci/oda/models/update_oda_private_endpoint_details.py @@ -40,26 +40,33 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this UpdateOdaPrivateEndpointDetails. :type defined_tags: dict(str, dict(str, object)) + :param security_attributes: + The value to assign to the security_attributes property of this UpdateOdaPrivateEndpointDetails. + :type security_attributes: dict(str, dict(str, object)) + """ self.swagger_types = { 'display_name': 'str', 'description': 'str', 'nsg_ids': 'list[str]', 'freeform_tags': 'dict(str, str)', - 'defined_tags': 'dict(str, dict(str, object))' + 'defined_tags': 'dict(str, dict(str, object))', + 'security_attributes': 'dict(str, dict(str, object))' } self.attribute_map = { 'display_name': 'displayName', 'description': 'description', 'nsg_ids': 'nsgIds', 'freeform_tags': 'freeformTags', - 'defined_tags': 'definedTags' + 'defined_tags': 'definedTags', + 'security_attributes': 'securityAttributes' } self._display_name = None self._description = None self._nsg_ids = None self._freeform_tags = None self._defined_tags = None + self._security_attributes = None @property def display_name(self): @@ -193,6 +200,38 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def security_attributes(self): + """ + Gets the security_attributes of this UpdateOdaPrivateEndpointDetails. + 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\": \"enforce\"}}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The security_attributes of this UpdateOdaPrivateEndpointDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._security_attributes + + @security_attributes.setter + def security_attributes(self, security_attributes): + """ + Sets the security_attributes of this UpdateOdaPrivateEndpointDetails. + 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\": \"enforce\"}}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param security_attributes: The security_attributes of this UpdateOdaPrivateEndpointDetails. + :type: dict(str, dict(str, object)) + """ + self._security_attributes = security_attributes + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/os_management_hub/models/create_software_source_profile_details.py b/src/oci/os_management_hub/models/create_software_source_profile_details.py index dcaa24e7b4..25f963903e 100644 --- a/src/oci/os_management_hub/models/create_software_source_profile_details.py +++ b/src/oci/os_management_hub/models/create_software_source_profile_details.py @@ -323,7 +323,7 @@ def arch_type(self, arch_type): @property def software_source_ids(self): """ - **[Required]** Gets the software_source_ids of this CreateSoftwareSourceProfileDetails. + Gets the software_source_ids of this CreateSoftwareSourceProfileDetails. The list of software source `OCIDs`__ that the registration profile will use. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm diff --git a/src/oci/version.py b/src/oci/version.py index dd05b0f2ba..2fb8c56567 100644 --- a/src/oci/version.py +++ b/src/oci/version.py @@ -2,4 +2,4 @@ # Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. # This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. -__version__ = "2.181.1" +__version__ = "2.182.0" From 1ca4488941833170ae64048af27556540abffedf Mon Sep 17 00:00:00 2001 From: OCI DEX Release Bot Automation Date: Tue, 21 Jul 2026 05:15:53 +0000 Subject: [PATCH 07/11] Releasing version 2.182.1 Co-authored-by: Harsh Kumar --- CHANGELOG.rst | 9 + docs/api/analytics.rst | 4 + ...tics.models.CreateResourceGroupDetails.rst | 11 + ...analytics.models.InstanceResourceGroup.rst | 11 + ...cs.models.InstanceResourceGroupSummary.rst | 11 + ...tics.models.UpdateResourceGroupDetails.rst | 11 + docs/api/core.rst | 2 + .../oci.core.models.LoaExtensionData.rst | 11 + ...teCrossConnectLetterOfAuthorityDetails.rst | 11 + src/oci/analytics/analytics_client.py | 901 +++++++++++++++--- .../analytics_client_composite_operations.py | 191 +++- src/oci/analytics/models/__init__.py | 8 + .../analytics/models/analytics_instance.py | 89 +- .../models/analytics_instance_summary.py | 34 +- src/oci/analytics/models/capacity.py | 6 +- ...ytics_instance_network_endpoint_details.py | 2 +- .../create_analytics_instance_details.py | 36 +- .../create_private_access_channel_details.py | 34 +- .../models/create_resource_group_details.py | 163 ++++ .../models/create_vanity_url_details.py | 18 +- .../models/instance_resource_group.py | 194 ++++ .../models/instance_resource_group_summary.py | 194 ++++ .../models/private_access_channel.py | 50 +- .../models/private_endpoint_details.py | 4 +- .../models/private_source_dns_zone.py | 10 +- .../models/private_source_scan_host.py | 14 +- .../models/public_endpoint_details.py | 4 +- .../models/set_feature_bundle_details.py | 10 +- .../analytics/models/set_kms_key_details.py | 6 +- .../update_analytics_instance_details.py | 8 +- .../update_private_access_channel_details.py | 34 +- .../models/update_resource_group_details.py | 163 ++++ .../models/update_vanity_url_details.py | 14 +- .../analytics/models/vanity_url_details.py | 18 +- src/oci/analytics/models/work_request.py | 22 +- .../analytics/models/work_request_error.py | 8 +- src/oci/analytics/models/work_request_log.py | 4 +- .../analytics/models/work_request_resource.py | 22 +- .../analytics/models/work_request_summary.py | 22 +- src/oci/core/models/__init__.py | 4 + .../models/create_cross_connect_details.py | 97 ++ .../create_cross_connect_group_details.py | 138 ++- .../models/create_virtual_circuit_details.py | 53 +- src/oci/core/models/cross_connect.py | 93 ++ src/oci/core/models/cross_connect_group.py | 132 ++- src/oci/core/models/letter_of_authority.py | 62 +- src/oci/core/models/loa_extension_data.py | 110 +++ .../models/update_cross_connect_details.py | 66 +- .../update_cross_connect_group_details.py | 101 +- ...oss_connect_letter_of_authority_details.py | 147 +++ .../models/update_virtual_circuit_details.py | 49 + src/oci/core/models/virtual_circuit.py | 49 + src/oci/core/virtual_network_client.py | 136 ++- src/oci/file_storage/models/file_system.py | 51 +- .../models/file_system_summary.py | 51 +- src/oci/file_storage/models/snapshot.py | 35 +- .../file_storage/models/snapshot_summary.py | 35 +- src/oci/version.py | 2 +- 58 files changed, 3413 insertions(+), 362 deletions(-) create mode 100644 docs/api/analytics/models/oci.analytics.models.CreateResourceGroupDetails.rst create mode 100644 docs/api/analytics/models/oci.analytics.models.InstanceResourceGroup.rst create mode 100644 docs/api/analytics/models/oci.analytics.models.InstanceResourceGroupSummary.rst create mode 100644 docs/api/analytics/models/oci.analytics.models.UpdateResourceGroupDetails.rst create mode 100644 docs/api/core/models/oci.core.models.LoaExtensionData.rst create mode 100644 docs/api/core/models/oci.core.models.UpdateCrossConnectLetterOfAuthorityDetails.rst create mode 100644 src/oci/analytics/models/create_resource_group_details.py create mode 100644 src/oci/analytics/models/instance_resource_group.py create mode 100644 src/oci/analytics/models/instance_resource_group_summary.py create mode 100644 src/oci/analytics/models/update_resource_group_details.py create mode 100644 src/oci/core/models/loa_extension_data.py create mode 100644 src/oci/core/models/update_cross_connect_letter_of_authority_details.py diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 7881ab25c2..6c33ed1d85 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -5,6 +5,15 @@ All notable changes to this project will be documented in this file. The format is based on `Keep a Changelog `_. ==================== +2.182.1 - 2026-07-21 +==================== + +Added +----- +* Support for multiple FastConnect enhancements in the Networking service +* Support for updating a Letter of Authority for a cross-connect in the Networking service +* Support for creating, updating, deleting, getting, and listing Analytics instance resource groups in the Analytics Cloud service +* Support for reporting snapshot-exclusive bytes for compartment-level quota tracking in the File Storage service 2.182.0 - 2026-07-14 ==================== diff --git a/docs/api/analytics.rst b/docs/api/analytics.rst index b494449446..145b0b8437 100644 --- a/docs/api/analytics.rst +++ b/docs/api/analytics.rst @@ -25,7 +25,10 @@ Analytics oci.analytics.models.ChangeCompartmentDetails oci.analytics.models.CreateAnalyticsInstanceDetails oci.analytics.models.CreatePrivateAccessChannelDetails + oci.analytics.models.CreateResourceGroupDetails oci.analytics.models.CreateVanityUrlDetails + oci.analytics.models.InstanceResourceGroup + oci.analytics.models.InstanceResourceGroupSummary oci.analytics.models.NetworkEndpointDetails oci.analytics.models.PrivateAccessChannel oci.analytics.models.PrivateEndpointDetails @@ -37,6 +40,7 @@ Analytics oci.analytics.models.SetKmsKeyDetails oci.analytics.models.UpdateAnalyticsInstanceDetails oci.analytics.models.UpdatePrivateAccessChannelDetails + oci.analytics.models.UpdateResourceGroupDetails oci.analytics.models.UpdateVanityUrlDetails oci.analytics.models.VanityUrlDetails oci.analytics.models.VirtualCloudNetwork diff --git a/docs/api/analytics/models/oci.analytics.models.CreateResourceGroupDetails.rst b/docs/api/analytics/models/oci.analytics.models.CreateResourceGroupDetails.rst new file mode 100644 index 0000000000..6296d6f166 --- /dev/null +++ b/docs/api/analytics/models/oci.analytics.models.CreateResourceGroupDetails.rst @@ -0,0 +1,11 @@ +CreateResourceGroupDetails +========================== + +.. currentmodule:: oci.analytics.models + +.. autoclass:: CreateResourceGroupDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/analytics/models/oci.analytics.models.InstanceResourceGroup.rst b/docs/api/analytics/models/oci.analytics.models.InstanceResourceGroup.rst new file mode 100644 index 0000000000..95f227271a --- /dev/null +++ b/docs/api/analytics/models/oci.analytics.models.InstanceResourceGroup.rst @@ -0,0 +1,11 @@ +InstanceResourceGroup +===================== + +.. currentmodule:: oci.analytics.models + +.. autoclass:: InstanceResourceGroup + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/analytics/models/oci.analytics.models.InstanceResourceGroupSummary.rst b/docs/api/analytics/models/oci.analytics.models.InstanceResourceGroupSummary.rst new file mode 100644 index 0000000000..c66579e980 --- /dev/null +++ b/docs/api/analytics/models/oci.analytics.models.InstanceResourceGroupSummary.rst @@ -0,0 +1,11 @@ +InstanceResourceGroupSummary +============================ + +.. currentmodule:: oci.analytics.models + +.. autoclass:: InstanceResourceGroupSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/analytics/models/oci.analytics.models.UpdateResourceGroupDetails.rst b/docs/api/analytics/models/oci.analytics.models.UpdateResourceGroupDetails.rst new file mode 100644 index 0000000000..271891138c --- /dev/null +++ b/docs/api/analytics/models/oci.analytics.models.UpdateResourceGroupDetails.rst @@ -0,0 +1,11 @@ +UpdateResourceGroupDetails +========================== + +.. currentmodule:: oci.analytics.models + +.. autoclass:: UpdateResourceGroupDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/core.rst b/docs/api/core.rst index b5d009bba2..50f5da34f5 100644 --- a/docs/api/core.rst +++ b/docs/api/core.rst @@ -505,6 +505,7 @@ Core Services oci.core.models.LetterOfAuthority oci.core.models.LicensingConfig oci.core.models.ListIpInventoryDetails + oci.core.models.LoaExtensionData oci.core.models.LocalPeeringGateway oci.core.models.LoopBackDrgAttachmentNetworkDetails oci.core.models.MacsecKey @@ -626,6 +627,7 @@ Core Services oci.core.models.UpdateCpeDetails oci.core.models.UpdateCrossConnectDetails oci.core.models.UpdateCrossConnectGroupDetails + oci.core.models.UpdateCrossConnectLetterOfAuthorityDetails oci.core.models.UpdateDedicatedCapacitySourceDetails oci.core.models.UpdateDedicatedVmHostDetails oci.core.models.UpdateDhcpDetails diff --git a/docs/api/core/models/oci.core.models.LoaExtensionData.rst b/docs/api/core/models/oci.core.models.LoaExtensionData.rst new file mode 100644 index 0000000000..de021fa1e0 --- /dev/null +++ b/docs/api/core/models/oci.core.models.LoaExtensionData.rst @@ -0,0 +1,11 @@ +LoaExtensionData +================ + +.. currentmodule:: oci.core.models + +.. autoclass:: LoaExtensionData + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/core/models/oci.core.models.UpdateCrossConnectLetterOfAuthorityDetails.rst b/docs/api/core/models/oci.core.models.UpdateCrossConnectLetterOfAuthorityDetails.rst new file mode 100644 index 0000000000..89fb39546e --- /dev/null +++ b/docs/api/core/models/oci.core.models.UpdateCrossConnectLetterOfAuthorityDetails.rst @@ -0,0 +1,11 @@ +UpdateCrossConnectLetterOfAuthorityDetails +========================================== + +.. currentmodule:: oci.core.models + +.. autoclass:: UpdateCrossConnectLetterOfAuthorityDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/src/oci/analytics/analytics_client.py b/src/oci/analytics/analytics_client.py index aa6d9047c0..9e143e616e 100644 --- a/src/oci/analytics/analytics_client.py +++ b/src/oci/analytics/analytics_client.py @@ -127,11 +127,11 @@ def __init__(self, config, **kwargs): def change_analytics_instance_compartment(self, analytics_instance_id, change_compartment_details, **kwargs): """ Change the compartment of an Analytics instance. The operation is long-running - and creates a new WorkRequest. + and creates a new work request. :param str analytics_instance_id: (required) - The OCID of the AnalyticsInstance. + The OCID of the Analytics instance. :param oci.analytics.models.ChangeCompartmentDetails change_compartment_details: (required) Input payload to move the resource to a different compartment. @@ -253,15 +253,15 @@ def change_analytics_instance_compartment(self, analytics_instance_id, change_co def change_analytics_instance_network_endpoint(self, analytics_instance_id, change_analytics_instance_network_endpoint_details, **kwargs): """ - Change an Analytics instance network endpoint. The operation is long-running - and creates a new WorkRequest. + Change the network endpoint for an Analytics instance. The operation is long-running + and creates a new work request. :param str analytics_instance_id: (required) - The OCID of the AnalyticsInstance. + The OCID of the Analytics instance. :param oci.analytics.models.ChangeAnalyticsInstanceNetworkEndpointDetails change_analytics_instance_network_endpoint_details: (required) - Input payload for changing an Analytics instance network endpoint. + Input payload for changing a network endpoint for an Analytics instance. :param str if_match: (optional) For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` @@ -380,12 +380,12 @@ def change_analytics_instance_network_endpoint(self, analytics_instance_id, chan def create_analytics_instance(self, create_analytics_instance_details, **kwargs): """ - Create a new AnalyticsInstance in the specified compartment. The operation is long-running - and creates a new WorkRequest. + Create a new Analytics instance in the specified compartment. The operation is long-running + and creates a new work request. :param oci.analytics.models.CreateAnalyticsInstanceDetails create_analytics_instance_details: (required) - Analytics Instance details. + Analytics instance details. :param str opc_request_id: (optional) Unique identifier for the request. @@ -487,12 +487,12 @@ def create_analytics_instance(self, create_analytics_instance_details, **kwargs) def create_private_access_channel(self, analytics_instance_id, create_private_access_channel_details, **kwargs): """ - Create an Private access Channel for the Analytics instance. The operation is long-running - and creates a new WorkRequest. + Create an private access channel for the Analytics instance. The operation is long-running + and creates a new work request. :param str analytics_instance_id: (required) - The OCID of the AnalyticsInstance. + The OCID of the Analytics instance. :param oci.analytics.models.CreatePrivateAccessChannelDetails create_private_access_channel_details: (required) Input payload for creating a private access channel for an Analytics instance. @@ -605,17 +605,137 @@ def create_private_access_channel(self, analytics_instance_id, create_private_ac api_reference_link=api_reference_link, required_arguments=required_arguments) + def create_resource_group(self, analytics_instance_id, create_resource_group_details, **kwargs): + """ + Create a new resource group for the instance + + + :param str analytics_instance_id: (required) + The OCID of the Analytics instance. + + :param oci.analytics.models.CreateResourceGroupDetails create_resource_group_details: (required) + Resource group details + + :param str opc_request_id: (optional) + Unique identifier for the request. + If you need to contact Oracle about a particular request, please provide the request ID. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations (for example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + may be rejected). + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.analytics.models.InstanceResourceGroup` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use create_resource_group API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['analyticsInstanceId'] + resource_path = "/analyticsInstances/{analyticsInstanceId}/resourceGroups" + method = "POST" + operation_name = "create_resource_group" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/analytics/20190331/AnalyticsInstance/CreateResourceGroup" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id", + "opc_retry_token" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"create_resource_group got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "analyticsInstanceId": analytics_instance_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=create_resource_group_details, + response_type="InstanceResourceGroup", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=create_resource_group_details, + response_type="InstanceResourceGroup", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + def create_vanity_url(self, analytics_instance_id, create_vanity_url_details, **kwargs): """ - Allows specifying a custom host name to be used to access the analytics instance. This requires prior setup of DNS entry and certificate - for this host. + Allows you to specify a custom host name to be used to access the Analytics instance. You must set up a DNS entry and certificate for this host in advance. :param str analytics_instance_id: (required) - The OCID of the AnalyticsInstance. + The OCID of the Analytics instance. :param oci.analytics.models.CreateVanityUrlDetails create_vanity_url_details: (required) - Vanity url details. + Vanity URL details. :param str opc_request_id: (optional) Unique identifier for the request. @@ -727,12 +847,12 @@ def create_vanity_url(self, analytics_instance_id, create_vanity_url_details, ** def delete_analytics_instance(self, analytics_instance_id, **kwargs): """ - Terminates the specified Analytics instance. The operation is long-running - and creates a new WorkRequest. + Deletes the specified Analytics instance. The operation is long-running + and creates a new work request. :param str analytics_instance_id: (required) - The OCID of the AnalyticsInstance. + The OCID of the Analytics instance. :param str if_match: (optional) For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` @@ -849,14 +969,14 @@ def delete_analytics_instance(self, analytics_instance_id, **kwargs): def delete_private_access_channel(self, private_access_channel_key, analytics_instance_id, **kwargs): """ - Delete an Analytics instance's Private access channel with the given unique identifier key. + Delete a private access channel with a given unique identifier key, for an Analytics instance. :param str private_access_channel_key: (required) - The unique identifier key of the Private Access Channel. + The unique identifier key of the private access channel. :param str analytics_instance_id: (required) - The OCID of the AnalyticsInstance. + The OCID of the Analytics instance. :param str if_match: (optional) For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` @@ -972,16 +1092,141 @@ def delete_private_access_channel(self, private_access_channel_key, analytics_in api_reference_link=api_reference_link, required_arguments=required_arguments) + def delete_resource_group(self, analytics_instance_id, analytics_instance_resource_group_id, **kwargs): + """ + Allows deleting a previously created resource group. + + + :param str analytics_instance_id: (required) + The OCID of the Analytics instance. + + :param str analytics_instance_resource_group_id: (required) + Specify unique id of a resource group within an Analytics instance. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` + parameter to the value of the etag from a previous GET or POST response for that resource. The resource + will be updated or deleted only if the etag you provide matches the resource's current etag value. + + :param str opc_request_id: (optional) + Unique identifier for the request. + If you need to contact Oracle about a particular request, please provide the request ID. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations (for example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + may be rejected). + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use delete_resource_group API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['analyticsInstanceId', 'analyticsInstanceResourceGroupId'] + resource_path = "/analyticsInstances/{analyticsInstanceId}/resourceGroups/{analyticsInstanceResourceGroupId}" + method = "DELETE" + operation_name = "delete_resource_group" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/analytics/20190331/AnalyticsInstance/DeleteResourceGroup" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id", + "opc_retry_token" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"delete_resource_group got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "analyticsInstanceId": analytics_instance_id, + "analyticsInstanceResourceGroupId": analytics_instance_resource_group_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + def delete_vanity_url(self, analytics_instance_id, vanity_url_key, **kwargs): """ - Allows deleting a previously created vanity url. + Deletes a previously created vanity URL. :param str analytics_instance_id: (required) - The OCID of the AnalyticsInstance. + The OCID of the Analytics instance. :param str vanity_url_key: (required) - Specify unique identifier key of a vanity url to update or delete. + Specify unique identifier key of a vanity URL to update or delete. :param str if_match: (optional) For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` @@ -1099,7 +1344,7 @@ def delete_vanity_url(self, analytics_instance_id, vanity_url_key, **kwargs): def delete_work_request(self, work_request_id, **kwargs): """ - Cancel a work request that has not started yet. + Cancel a work request that hasn't started yet. :param str work_request_id: (required) @@ -1208,11 +1453,11 @@ def delete_work_request(self, work_request_id, **kwargs): def get_analytics_instance(self, analytics_instance_id, **kwargs): """ - Info for a specific Analytics instance. + Information about a specific Analytics instance. :param str analytics_instance_id: (required) - The OCID of the AnalyticsInstance. + The OCID of the Analytics instance. :param str opc_request_id: (optional) Unique identifier for the request. @@ -1314,14 +1559,14 @@ def get_analytics_instance(self, analytics_instance_id, **kwargs): def get_private_access_channel(self, private_access_channel_key, analytics_instance_id, **kwargs): """ - Retrieve private access channel in the specified Analytics Instance. + Retrieve private access channel for the specified Analytics Instance. :param str private_access_channel_key: (required) - The unique identifier key of the Private Access Channel. + The unique identifier key of the private access channel. :param str analytics_instance_id: (required) - The OCID of the AnalyticsInstance. + The OCID of the Analytics instance. :param str opc_request_id: (optional) Unique identifier for the request. @@ -1422,6 +1667,116 @@ def get_private_access_channel(self, private_access_channel_key, analytics_insta api_reference_link=api_reference_link, required_arguments=required_arguments) + def get_resource_group(self, analytics_instance_id, analytics_instance_resource_group_id, **kwargs): + """ + Get details of a resource group for an instance + + + :param str analytics_instance_id: (required) + The OCID of the Analytics instance. + + :param str analytics_instance_resource_group_id: (required) + Specify unique id of a resource group within an Analytics instance. + + :param str opc_request_id: (optional) + Unique identifier for the request. + If you need to contact Oracle about a particular request, please provide the request ID. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.analytics.models.InstanceResourceGroup` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_resource_group API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['analyticsInstanceId', 'analyticsInstanceResourceGroupId'] + resource_path = "/analyticsInstances/{analyticsInstanceId}/resourceGroups/{analyticsInstanceResourceGroupId}" + method = "GET" + operation_name = "get_resource_group" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/analytics/20190331/AnalyticsInstance/GetResourceGroup" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"get_resource_group got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "analyticsInstanceId": analytics_instance_id, + "analyticsInstanceResourceGroupId": analytics_instance_resource_group_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="InstanceResourceGroup", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="InstanceResourceGroup", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + def get_work_request(self, work_request_id, **kwargs): """ Get the details of a work request. @@ -1468,22 +1823,222 @@ def get_work_request(self, work_request_id, **kwargs): "allow_control_chars", "enable_strict_url_encoding", "retry_strategy", - "opc_request_id" + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"get_work_request got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "workRequestId": work_request_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="WorkRequest", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="WorkRequest", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_analytics_instances(self, compartment_id, **kwargs): + """ + List Analytics instances. + + + :param str compartment_id: (required) + The OCID of the compartment. + + :param str opc_request_id: (optional) + Unique identifier for the request. + If you need to contact Oracle about a particular request, please provide the request ID. + + :param str name: (optional) + A filter to return only resources that match the given name exactly. + + :param str capacity_type: (optional) + A filter to only return resources matching the capacity type enum. Values are + case-insensitive. + + Allowed values are: "OLPU_COUNT", "USER_COUNT" + + :param str feature_set: (optional) + A filter to only return resources matching the feature set. Values are + case-insensitive. + + Allowed values are: "SELF_SERVICE_ANALYTICS", "ENTERPRISE_ANALYTICS" + + :param str lifecycle_state: (optional) + A filter to only return resources matching the lifecycle state. The state + value is case-insensitive. + + Allowed values are: "ACTIVE", "CREATING", "DELETED", "DELETING", "FAILED", "INACTIVE", "UPDATING" + + :param int limit: (optional) + For list pagination. The maximum number of results per page, or items to return in a paginated + \"List\" call. For important details about how pagination works, see + `List Pagination`__. + + Example: `50` + + __ https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param str page: (optional) + For list pagination. The value of the `opc-next-page` response header from the previous \"List\" + call. For important details about how pagination works, see + `List Pagination`__. + + __ https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param str sort_by: (optional) + The field to sort by (one column only). Default sort order is + ascending exception of `timeCreated` column (descending). + + Allowed values are: "capacityType", "capacityValue", "featureSet", "lifecycleState", "name", "timeCreated" + + :param str sort_order: (optional) + The sort order to use, either ascending (`ASC`) or descending (`DESC`). + + Allowed values are: "ASC", "DESC" + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.analytics.models.AnalyticsInstanceSummary` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_analytics_instances API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['compartmentId'] + resource_path = "/analyticsInstances" + method = "GET" + operation_name = "list_analytics_instances" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/analytics/20190331/AnalyticsInstanceSummary/ListAnalyticsInstances" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id", + "name", + "capacity_type", + "feature_set", + "lifecycle_state", + "limit", + "page", + "sort_by", + "sort_order" ] extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] if extra_kwargs: raise ValueError( - f"get_work_request got unknown kwargs: {extra_kwargs!r}") + f"list_analytics_instances got unknown kwargs: {extra_kwargs!r}") - path_params = { - "workRequestId": work_request_id - } + if 'capacity_type' in kwargs: + capacity_type_allowed_values = ["OLPU_COUNT", "USER_COUNT"] + if kwargs['capacity_type'] not in capacity_type_allowed_values: + raise ValueError( + f"Invalid value for `capacity_type`, must be one of { capacity_type_allowed_values }" + ) - path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + if 'feature_set' in kwargs: + feature_set_allowed_values = ["SELF_SERVICE_ANALYTICS", "ENTERPRISE_ANALYTICS"] + if kwargs['feature_set'] not in feature_set_allowed_values: + raise ValueError( + f"Invalid value for `feature_set`, must be one of { feature_set_allowed_values }" + ) - for (k, v) in six.iteritems(path_params): - if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): - raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + if 'lifecycle_state' in kwargs: + lifecycle_state_allowed_values = ["ACTIVE", "CREATING", "DELETED", "DELETING", "FAILED", "INACTIVE", "UPDATING"] + if kwargs['lifecycle_state'] not in lifecycle_state_allowed_values: + raise ValueError( + f"Invalid value for `lifecycle_state`, must be one of { lifecycle_state_allowed_values }" + ) + + if 'sort_by' in kwargs: + sort_by_allowed_values = ["capacityType", "capacityValue", "featureSet", "lifecycleState", "name", "timeCreated"] + if kwargs['sort_by'] not in sort_by_allowed_values: + raise ValueError( + f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" + ) + + if 'sort_order' in kwargs: + sort_order_allowed_values = ["ASC", "DESC"] + if kwargs['sort_order'] not in sort_order_allowed_values: + raise ValueError( + f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + ) + + query_params = { + "compartmentId": compartment_id, + "name": kwargs.get("name", missing), + "capacityType": kwargs.get("capacity_type", missing), + "featureSet": kwargs.get("feature_set", missing), + "lifecycleState": kwargs.get("lifecycle_state", missing), + "limit": kwargs.get("limit", missing), + "page": kwargs.get("page", missing), + "sortBy": kwargs.get("sort_by", missing), + "sortOrder": kwargs.get("sort_order", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} header_params = { "accept": "application/json", @@ -1507,9 +2062,9 @@ def get_work_request(self, work_request_id, **kwargs): self.base_client.call_api, resource_path=resource_path, method=method, - path_params=path_params, + query_params=query_params, header_params=header_params, - response_type="WorkRequest", + response_type="list[AnalyticsInstanceSummary]", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, @@ -1519,22 +2074,22 @@ def get_work_request(self, work_request_id, **kwargs): return self.base_client.call_api( resource_path=resource_path, method=method, - path_params=path_params, + query_params=query_params, header_params=header_params, - response_type="WorkRequest", + response_type="list[AnalyticsInstanceSummary]", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, api_reference_link=api_reference_link, required_arguments=required_arguments) - def list_analytics_instances(self, compartment_id, **kwargs): + def list_resource_groups(self, analytics_instance_id, **kwargs): """ - List Analytics instances. + List resource groups associated with an instance. - :param str compartment_id: (required) - The OCID of the compartment. + :param str analytics_instance_id: (required) + The OCID of the Analytics instance. :param str opc_request_id: (optional) Unique identifier for the request. @@ -1543,24 +2098,6 @@ def list_analytics_instances(self, compartment_id, **kwargs): :param str name: (optional) A filter to return only resources that match the given name exactly. - :param str capacity_type: (optional) - A filter to only return resources matching the capacity type enum. Values are - case-insensitive. - - Allowed values are: "OLPU_COUNT", "USER_COUNT" - - :param str feature_set: (optional) - A filter to only return resources matching the feature set. Values are - case-insensitive. - - Allowed values are: "SELF_SERVICE_ANALYTICS", "ENTERPRISE_ANALYTICS" - - :param str lifecycle_state: (optional) - A filter to only return resources matching the lifecycle state. The state - value is case-insensitive. - - Allowed values are: "ACTIVE", "CREATING", "DELETED", "DELETING", "FAILED", "INACTIVE", "UPDATING" - :param int limit: (optional) For list pagination. The maximum number of results per page, or items to return in a paginated \"List\" call. For important details about how pagination works, see @@ -1579,9 +2116,9 @@ def list_analytics_instances(self, compartment_id, **kwargs): :param str sort_by: (optional) The field to sort by (one column only). Default sort order is - ascending exception of `timeCreated` column (descending). + default group first, then sort by resource name, ascending. - Allowed values are: "capacityType", "capacityValue", "featureSet", "lifecycleState", "name", "timeCreated" + Allowed values are: "id", "resourceName", "displayName", "description", "capacity", "status" :param str sort_order: (optional) The sort order to use, either ascending (`ASC`) or descending (`DESC`). @@ -1604,18 +2141,18 @@ def list_analytics_instances(self, compartment_id, **kwargs): enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. By default, strict url encoding for path params is disabled - :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.analytics.models.AnalyticsInstanceSummary` + :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.analytics.models.InstanceResourceGroupSummary` :rtype: :class:`~oci.response.Response` :example: - Click `here `__ to see an example of how to use list_analytics_instances API. + Click `here `__ to see an example of how to use list_resource_groups API. """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. - required_arguments = ['compartmentId'] - resource_path = "/analyticsInstances" + required_arguments = ['analyticsInstanceId'] + resource_path = "/analyticsInstances/{analyticsInstanceId}/resourceGroups" method = "GET" - operation_name = "list_analytics_instances" - api_reference_link = "https://docs.oracle.com/iaas/api/#/en/analytics/20190331/AnalyticsInstanceSummary/ListAnalyticsInstances" + operation_name = "list_resource_groups" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/analytics/20190331/AnalyticsInstance/ListResourceGroups" # Don't accept unknown kwargs expected_kwargs = [ @@ -1624,9 +2161,6 @@ def list_analytics_instances(self, compartment_id, **kwargs): "retry_strategy", "opc_request_id", "name", - "capacity_type", - "feature_set", - "lifecycle_state", "limit", "page", "sort_by", @@ -1635,31 +2169,20 @@ def list_analytics_instances(self, compartment_id, **kwargs): extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] if extra_kwargs: raise ValueError( - f"list_analytics_instances got unknown kwargs: {extra_kwargs!r}") + f"list_resource_groups got unknown kwargs: {extra_kwargs!r}") - if 'capacity_type' in kwargs: - capacity_type_allowed_values = ["OLPU_COUNT", "USER_COUNT"] - if kwargs['capacity_type'] not in capacity_type_allowed_values: - raise ValueError( - f"Invalid value for `capacity_type`, must be one of { capacity_type_allowed_values }" - ) + path_params = { + "analyticsInstanceId": analytics_instance_id + } - if 'feature_set' in kwargs: - feature_set_allowed_values = ["SELF_SERVICE_ANALYTICS", "ENTERPRISE_ANALYTICS"] - if kwargs['feature_set'] not in feature_set_allowed_values: - raise ValueError( - f"Invalid value for `feature_set`, must be one of { feature_set_allowed_values }" - ) + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} - if 'lifecycle_state' in kwargs: - lifecycle_state_allowed_values = ["ACTIVE", "CREATING", "DELETED", "DELETING", "FAILED", "INACTIVE", "UPDATING"] - if kwargs['lifecycle_state'] not in lifecycle_state_allowed_values: - raise ValueError( - f"Invalid value for `lifecycle_state`, must be one of { lifecycle_state_allowed_values }" - ) + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') if 'sort_by' in kwargs: - sort_by_allowed_values = ["capacityType", "capacityValue", "featureSet", "lifecycleState", "name", "timeCreated"] + sort_by_allowed_values = ["id", "resourceName", "displayName", "description", "capacity", "status"] if kwargs['sort_by'] not in sort_by_allowed_values: raise ValueError( f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" @@ -1673,11 +2196,7 @@ def list_analytics_instances(self, compartment_id, **kwargs): ) query_params = { - "compartmentId": compartment_id, "name": kwargs.get("name", missing), - "capacityType": kwargs.get("capacity_type", missing), - "featureSet": kwargs.get("feature_set", missing), - "lifecycleState": kwargs.get("lifecycle_state", missing), "limit": kwargs.get("limit", missing), "page": kwargs.get("page", missing), "sortBy": kwargs.get("sort_by", missing), @@ -1707,9 +2226,10 @@ def list_analytics_instances(self, compartment_id, **kwargs): self.base_client.call_api, resource_path=resource_path, method=method, + path_params=path_params, query_params=query_params, header_params=header_params, - response_type="list[AnalyticsInstanceSummary]", + response_type="list[InstanceResourceGroupSummary]", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, @@ -1719,9 +2239,10 @@ def list_analytics_instances(self, compartment_id, **kwargs): return self.base_client.call_api( resource_path=resource_path, method=method, + path_params=path_params, query_params=query_params, header_params=header_params, - response_type="list[AnalyticsInstanceSummary]", + response_type="list[InstanceResourceGroupSummary]", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, @@ -2178,11 +2699,11 @@ def list_work_requests(self, compartment_id, **kwargs): def scale_analytics_instance(self, analytics_instance_id, scale_analytics_instance_details, **kwargs): """ Scale an Analytics instance up or down. The operation is long-running - and creates a new WorkRequest. + and creates a new work request. :param str analytics_instance_id: (required) - The OCID of the AnalyticsInstance. + The OCID of the Analytics instance. :param oci.analytics.models.ScaleAnalyticsInstanceDetails scale_analytics_instance_details: (required) Input payload for scaling an Analytics instance up or down. @@ -2308,7 +2829,7 @@ def set_feature_bundle(self, analytics_instance_id, set_feature_bundle_details, :param str analytics_instance_id: (required) - The OCID of the AnalyticsInstance. + The OCID of the Analytics instance. :param oci.analytics.models.SetFeatureBundleDetails set_feature_bundle_details: (required) Input payload for the feature set of an Analytics instance. @@ -2430,14 +2951,14 @@ def set_feature_bundle(self, analytics_instance_id, set_feature_bundle_details, def set_kms_key(self, analytics_instance_id, set_kms_key_details, **kwargs): """ - Encrypts the customer data of this Analytics instance using either a customer OCI Vault Key or Oracle managed default key. + Encrypts the customer data of this Analytics instance using either a customer OCI vault key or default Oracle-managed key. :param str analytics_instance_id: (required) - The OCID of the AnalyticsInstance. + The OCID of the Analytics instance. :param oci.analytics.models.SetKmsKeyDetails set_kms_key_details: (required) - Input payload to reset the OCI Vault encryption key. + Input payload to reset the OCI vault encryption key. :param str if_match: (optional) For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` @@ -2557,11 +3078,11 @@ def set_kms_key(self, analytics_instance_id, set_kms_key_details, **kwargs): def start_analytics_instance(self, analytics_instance_id, **kwargs): """ Starts the specified Analytics instance. The operation is long-running - and creates a new WorkRequest. + and creates a new work request. :param str analytics_instance_id: (required) - The OCID of the AnalyticsInstance. + The OCID of the Analytics instance. :param str if_match: (optional) For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` @@ -2679,11 +3200,11 @@ def start_analytics_instance(self, analytics_instance_id, **kwargs): def stop_analytics_instance(self, analytics_instance_id, **kwargs): """ Stop the specified Analytics instance. The operation is long-running - and creates a new WorkRequest. + and creates a new work request. :param str analytics_instance_id: (required) - The OCID of the AnalyticsInstance. + The OCID of the Analytics instance. :param str if_match: (optional) For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` @@ -2805,11 +3326,11 @@ def update_analytics_instance(self, analytics_instance_id, update_analytics_inst :param str analytics_instance_id: (required) - The OCID of the AnalyticsInstance. + The OCID of the Analytics instance. :param oci.analytics.models.UpdateAnalyticsInstanceDetails update_analytics_instance_details: (required) - The Analytics Instance fields to update. Fields that are not provided - will not be updated. + Update specified fields for an Analytics instance. Fields that aren't provided + won't be updated. :param str if_match: (optional) For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` @@ -2918,17 +3439,17 @@ def update_analytics_instance(self, analytics_instance_id, update_analytics_inst def update_private_access_channel(self, private_access_channel_key, analytics_instance_id, update_private_access_channel_details, **kwargs): """ - Update the Private Access Channel with the given unique identifier key in the specified Analytics Instance. + Update the private access channel with the given unique identifier key in the specified Analytics instance. :param str private_access_channel_key: (required) - The unique identifier key of the Private Access Channel. + The unique identifier key of the private access channel. :param str analytics_instance_id: (required) - The OCID of the AnalyticsInstance. + The OCID of the Analytics instance. :param oci.analytics.models.UpdatePrivateAccessChannelDetails update_private_access_channel_details: (required) - Update the Private Access Channel with the given unique identifier key in the specified Analytics Instance. + Update the private access channel with the given unique identifier key in the specified Analytics instance. :param str if_match: (optional) For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` @@ -3046,19 +3567,151 @@ def update_private_access_channel(self, private_access_channel_key, analytics_in api_reference_link=api_reference_link, required_arguments=required_arguments) + def update_resource_group(self, analytics_instance_id, analytics_instance_resource_group_id, update_resource_group_details, **kwargs): + """ + Update any fields in a resource group + + + :param str analytics_instance_id: (required) + The OCID of the Analytics instance. + + :param str analytics_instance_resource_group_id: (required) + Specify unique id of a resource group within an Analytics instance. + + :param oci.analytics.models.UpdateResourceGroupDetails update_resource_group_details: (required) + Resource group details to update (certificate). + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` + parameter to the value of the etag from a previous GET or POST response for that resource. The resource + will be updated or deleted only if the etag you provide matches the resource's current etag value. + + :param str opc_request_id: (optional) + Unique identifier for the request. + If you need to contact Oracle about a particular request, please provide the request ID. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations (for example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + may be rejected). + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.analytics.models.InstanceResourceGroup` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use update_resource_group API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['analyticsInstanceId', 'analyticsInstanceResourceGroupId'] + resource_path = "/analyticsInstances/{analyticsInstanceId}/resourceGroups/{analyticsInstanceResourceGroupId}" + method = "PUT" + operation_name = "update_resource_group" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/analytics/20190331/AnalyticsInstance/UpdateResourceGroup" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id", + "opc_retry_token" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"update_resource_group got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "analyticsInstanceId": analytics_instance_id, + "analyticsInstanceResourceGroupId": analytics_instance_resource_group_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=update_resource_group_details, + response_type="InstanceResourceGroup", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=update_resource_group_details, + response_type="InstanceResourceGroup", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + def update_vanity_url(self, analytics_instance_id, vanity_url_key, update_vanity_url_details, **kwargs): """ - Allows uploading a new certificate for a vanity url, which will have to be done when the current certificate is expiring. + Uploads a new certificate for a vanity URL. Required before the current certificate expires. :param str analytics_instance_id: (required) - The OCID of the AnalyticsInstance. + The OCID of the Analytics instance. :param str vanity_url_key: (required) - Specify unique identifier key of a vanity url to update or delete. + Specify unique identifier key of a vanity URL to update or delete. :param oci.analytics.models.UpdateVanityUrlDetails update_vanity_url_details: (required) - Vanity url details to update (certificate). + Vanity URL details to update (certificate). :param str if_match: (optional) For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` diff --git a/src/oci/analytics/analytics_client_composite_operations.py b/src/oci/analytics/analytics_client_composite_operations.py index 0577521966..1900fefcf8 100644 --- a/src/oci/analytics/analytics_client_composite_operations.py +++ b/src/oci/analytics/analytics_client_composite_operations.py @@ -31,7 +31,7 @@ def change_analytics_instance_compartment_and_wait_for_state(self, analytics_ins to enter the given state(s). :param str analytics_instance_id: (required) - The OCID of the AnalyticsInstance. + The OCID of the Analytics instance. :param oci.analytics.models.ChangeCompartmentDetails change_compartment_details: (required) Input payload to move the resource to a different compartment. @@ -73,10 +73,10 @@ def change_analytics_instance_network_endpoint_and_wait_for_state(self, analytic to enter the given state(s). :param str analytics_instance_id: (required) - The OCID of the AnalyticsInstance. + The OCID of the Analytics instance. :param oci.analytics.models.ChangeAnalyticsInstanceNetworkEndpointDetails change_analytics_instance_network_endpoint_details: (required) - Input payload for changing an Analytics instance network endpoint. + Input payload for changing a network endpoint for an Analytics instance. :param list[str] wait_for_states: An array of states to wait on. These should be valid values for :py:attr:`~oci.analytics.models.WorkRequest.status` @@ -115,7 +115,7 @@ def create_analytics_instance_and_wait_for_state(self, create_analytics_instance to enter the given state(s). :param oci.analytics.models.CreateAnalyticsInstanceDetails create_analytics_instance_details: (required) - Analytics Instance details. + Analytics instance details. :param list[str] wait_for_states: An array of states to wait on. These should be valid values for :py:attr:`~oci.analytics.models.WorkRequest.status` @@ -154,7 +154,7 @@ def create_private_access_channel_and_wait_for_state(self, analytics_instance_id to enter the given state(s). :param str analytics_instance_id: (required) - The OCID of the AnalyticsInstance. + The OCID of the Analytics instance. :param oci.analytics.models.CreatePrivateAccessChannelDetails create_private_access_channel_details: (required) Input payload for creating a private access channel for an Analytics instance. @@ -190,16 +190,58 @@ def create_private_access_channel_and_wait_for_state(self, analytics_instance_id except Exception as e: raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def create_resource_group_and_wait_for_state(self, analytics_instance_id, create_resource_group_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.analytics.AnalyticsClient.create_resource_group` and waits for the :py:class:`~oci.analytics.models.WorkRequest` + to enter the given state(s). + + :param str analytics_instance_id: (required) + The OCID of the Analytics instance. + + :param oci.analytics.models.CreateResourceGroupDetails create_resource_group_details: (required) + Resource group details + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.analytics.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.analytics.AnalyticsClient.create_resource_group` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.create_resource_group(analytics_instance_id, create_resource_group_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def create_vanity_url_and_wait_for_state(self, analytics_instance_id, create_vanity_url_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): """ Calls :py:func:`~oci.analytics.AnalyticsClient.create_vanity_url` and waits for the :py:class:`~oci.analytics.models.WorkRequest` to enter the given state(s). :param str analytics_instance_id: (required) - The OCID of the AnalyticsInstance. + The OCID of the Analytics instance. :param oci.analytics.models.CreateVanityUrlDetails create_vanity_url_details: (required) - Vanity url details. + Vanity URL details. :param list[str] wait_for_states: An array of states to wait on. These should be valid values for :py:attr:`~oci.analytics.models.WorkRequest.status` @@ -238,7 +280,7 @@ def delete_analytics_instance_and_wait_for_state(self, analytics_instance_id, wa to enter the given state(s). :param str analytics_instance_id: (required) - The OCID of the AnalyticsInstance. + The OCID of the Analytics instance. :param list[str] wait_for_states: An array of states to wait on. These should be valid values for :py:attr:`~oci.analytics.models.WorkRequest.status` @@ -285,10 +327,10 @@ def delete_private_access_channel_and_wait_for_state(self, private_access_channe to enter the given state(s). :param str private_access_channel_key: (required) - The unique identifier key of the Private Access Channel. + The unique identifier key of the private access channel. :param str analytics_instance_id: (required) - The OCID of the AnalyticsInstance. + The OCID of the Analytics instance. :param list[str] wait_for_states: An array of states to wait on. These should be valid values for :py:attr:`~oci.analytics.models.WorkRequest.status` @@ -329,16 +371,66 @@ def delete_private_access_channel_and_wait_for_state(self, private_access_channe except Exception as e: raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def delete_resource_group_and_wait_for_state(self, analytics_instance_id, analytics_instance_resource_group_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.analytics.AnalyticsClient.delete_resource_group` and waits for the :py:class:`~oci.analytics.models.WorkRequest` + to enter the given state(s). + + :param str analytics_instance_id: (required) + The OCID of the Analytics instance. + + :param str analytics_instance_resource_group_id: (required) + Specify unique id of a resource group within an Analytics instance. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.analytics.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.analytics.AnalyticsClient.delete_resource_group` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = None + try: + operation_result = self.client.delete_resource_group(analytics_instance_id, analytics_instance_resource_group_id, **operation_kwargs) + except oci.exceptions.ServiceError as e: + if e.status == 404: + return WAIT_RESOURCE_NOT_FOUND + else: + raise e + + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def delete_vanity_url_and_wait_for_state(self, analytics_instance_id, vanity_url_key, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): """ Calls :py:func:`~oci.analytics.AnalyticsClient.delete_vanity_url` and waits for the :py:class:`~oci.analytics.models.WorkRequest` to enter the given state(s). :param str analytics_instance_id: (required) - The OCID of the AnalyticsInstance. + The OCID of the Analytics instance. :param str vanity_url_key: (required) - Specify unique identifier key of a vanity url to update or delete. + Specify unique identifier key of a vanity URL to update or delete. :param list[str] wait_for_states: An array of states to wait on. These should be valid values for :py:attr:`~oci.analytics.models.WorkRequest.status` @@ -385,7 +477,7 @@ def scale_analytics_instance_and_wait_for_state(self, analytics_instance_id, sca to enter the given state(s). :param str analytics_instance_id: (required) - The OCID of the AnalyticsInstance. + The OCID of the Analytics instance. :param oci.analytics.models.ScaleAnalyticsInstanceDetails scale_analytics_instance_details: (required) Input payload for scaling an Analytics instance up or down. @@ -427,7 +519,7 @@ def set_feature_bundle_and_wait_for_state(self, analytics_instance_id, set_featu to enter the given state(s). :param str analytics_instance_id: (required) - The OCID of the AnalyticsInstance. + The OCID of the Analytics instance. :param oci.analytics.models.SetFeatureBundleDetails set_feature_bundle_details: (required) Input payload for the feature set of an Analytics instance. @@ -469,10 +561,10 @@ def set_kms_key_and_wait_for_state(self, analytics_instance_id, set_kms_key_deta to enter the given state(s). :param str analytics_instance_id: (required) - The OCID of the AnalyticsInstance. + The OCID of the Analytics instance. :param oci.analytics.models.SetKmsKeyDetails set_kms_key_details: (required) - Input payload to reset the OCI Vault encryption key. + Input payload to reset the OCI vault encryption key. :param list[str] wait_for_states: An array of states to wait on. These should be valid values for :py:attr:`~oci.analytics.models.WorkRequest.status` @@ -511,7 +603,7 @@ def start_analytics_instance_and_wait_for_state(self, analytics_instance_id, wai to enter the given state(s). :param str analytics_instance_id: (required) - The OCID of the AnalyticsInstance. + The OCID of the Analytics instance. :param list[str] wait_for_states: An array of states to wait on. These should be valid values for :py:attr:`~oci.analytics.models.WorkRequest.status` @@ -550,7 +642,7 @@ def stop_analytics_instance_and_wait_for_state(self, analytics_instance_id, wait to enter the given state(s). :param str analytics_instance_id: (required) - The OCID of the AnalyticsInstance. + The OCID of the Analytics instance. :param list[str] wait_for_states: An array of states to wait on. These should be valid values for :py:attr:`~oci.analytics.models.WorkRequest.status` @@ -589,11 +681,11 @@ def update_analytics_instance_and_wait_for_state(self, analytics_instance_id, up to enter the given state(s). :param str analytics_instance_id: (required) - The OCID of the AnalyticsInstance. + The OCID of the Analytics instance. :param oci.analytics.models.UpdateAnalyticsInstanceDetails update_analytics_instance_details: (required) - The Analytics Instance fields to update. Fields that are not provided - will not be updated. + Update specified fields for an Analytics instance. Fields that aren't provided + won't be updated. :param list[str] wait_for_states: An array of states to wait on. These should be valid values for :py:attr:`~oci.analytics.models.AnalyticsInstance.lifecycle_state` @@ -635,13 +727,13 @@ def update_private_access_channel_and_wait_for_state(self, private_access_channe to enter the given state(s). :param str private_access_channel_key: (required) - The unique identifier key of the Private Access Channel. + The unique identifier key of the private access channel. :param str analytics_instance_id: (required) - The OCID of the AnalyticsInstance. + The OCID of the Analytics instance. :param oci.analytics.models.UpdatePrivateAccessChannelDetails update_private_access_channel_details: (required) - Update the Private Access Channel with the given unique identifier key in the specified Analytics Instance. + Update the private access channel with the given unique identifier key in the specified Analytics instance. :param list[str] wait_for_states: An array of states to wait on. These should be valid values for :py:attr:`~oci.analytics.models.WorkRequest.status` @@ -674,19 +766,64 @@ def update_private_access_channel_and_wait_for_state(self, private_access_channe except Exception as e: raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def update_resource_group_and_wait_for_state(self, analytics_instance_id, analytics_instance_resource_group_id, update_resource_group_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.analytics.AnalyticsClient.update_resource_group` and waits for the :py:class:`~oci.analytics.models.WorkRequest` + to enter the given state(s). + + :param str analytics_instance_id: (required) + The OCID of the Analytics instance. + + :param str analytics_instance_resource_group_id: (required) + Specify unique id of a resource group within an Analytics instance. + + :param oci.analytics.models.UpdateResourceGroupDetails update_resource_group_details: (required) + Resource group details to update (certificate). + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.analytics.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.analytics.AnalyticsClient.update_resource_group` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.update_resource_group(analytics_instance_id, analytics_instance_resource_group_id, update_resource_group_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def update_vanity_url_and_wait_for_state(self, analytics_instance_id, vanity_url_key, update_vanity_url_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): """ Calls :py:func:`~oci.analytics.AnalyticsClient.update_vanity_url` and waits for the :py:class:`~oci.analytics.models.WorkRequest` to enter the given state(s). :param str analytics_instance_id: (required) - The OCID of the AnalyticsInstance. + The OCID of the Analytics instance. :param str vanity_url_key: (required) - Specify unique identifier key of a vanity url to update or delete. + Specify unique identifier key of a vanity URL to update or delete. :param oci.analytics.models.UpdateVanityUrlDetails update_vanity_url_details: (required) - Vanity url details to update (certificate). + Vanity URL details to update (certificate). :param list[str] wait_for_states: An array of states to wait on. These should be valid values for :py:attr:`~oci.analytics.models.WorkRequest.status` diff --git a/src/oci/analytics/models/__init__.py b/src/oci/analytics/models/__init__.py index 5fd79e3b78..47e80ae416 100644 --- a/src/oci/analytics/models/__init__.py +++ b/src/oci/analytics/models/__init__.py @@ -13,7 +13,10 @@ from .change_compartment_details import ChangeCompartmentDetails from .create_analytics_instance_details import CreateAnalyticsInstanceDetails from .create_private_access_channel_details import CreatePrivateAccessChannelDetails +from .create_resource_group_details import CreateResourceGroupDetails from .create_vanity_url_details import CreateVanityUrlDetails +from .instance_resource_group import InstanceResourceGroup +from .instance_resource_group_summary import InstanceResourceGroupSummary from .network_endpoint_details import NetworkEndpointDetails from .private_access_channel import PrivateAccessChannel from .private_endpoint_details import PrivateEndpointDetails @@ -25,6 +28,7 @@ from .set_kms_key_details import SetKmsKeyDetails from .update_analytics_instance_details import UpdateAnalyticsInstanceDetails from .update_private_access_channel_details import UpdatePrivateAccessChannelDetails +from .update_resource_group_details import UpdateResourceGroupDetails from .update_vanity_url_details import UpdateVanityUrlDetails from .vanity_url_details import VanityUrlDetails from .virtual_cloud_network import VirtualCloudNetwork @@ -43,7 +47,10 @@ "ChangeCompartmentDetails": ChangeCompartmentDetails, "CreateAnalyticsInstanceDetails": CreateAnalyticsInstanceDetails, "CreatePrivateAccessChannelDetails": CreatePrivateAccessChannelDetails, + "CreateResourceGroupDetails": CreateResourceGroupDetails, "CreateVanityUrlDetails": CreateVanityUrlDetails, + "InstanceResourceGroup": InstanceResourceGroup, + "InstanceResourceGroupSummary": InstanceResourceGroupSummary, "NetworkEndpointDetails": NetworkEndpointDetails, "PrivateAccessChannel": PrivateAccessChannel, "PrivateEndpointDetails": PrivateEndpointDetails, @@ -55,6 +62,7 @@ "SetKmsKeyDetails": SetKmsKeyDetails, "UpdateAnalyticsInstanceDetails": UpdateAnalyticsInstanceDetails, "UpdatePrivateAccessChannelDetails": UpdatePrivateAccessChannelDetails, + "UpdateResourceGroupDetails": UpdateResourceGroupDetails, "UpdateVanityUrlDetails": UpdateVanityUrlDetails, "VanityUrlDetails": VanityUrlDetails, "VirtualCloudNetwork": VirtualCloudNetwork, diff --git a/src/oci/analytics/models/analytics_instance.py b/src/oci/analytics/models/analytics_instance.py index 025cb8c06e..71c71dc89b 100644 --- a/src/oci/analytics/models/analytics_instance.py +++ b/src/oci/analytics/models/analytics_instance.py @@ -12,7 +12,7 @@ @init_model_state_from_kwargs class AnalyticsInstance(object): """ - Analytics Instance metadata. + Analytics instance metadata. """ #: A constant which can be used with the lifecycle_state property of a AnalyticsInstance. @@ -83,6 +83,10 @@ class AnalyticsInstance(object): #: This constant has a value of "FAW_FREE" FEATURE_BUNDLE_FAW_FREE = "FAW_FREE" + #: A constant which can be used with the feature_bundle property of a AnalyticsInstance. + #: This constant has a value of "FDI_BASE" + FEATURE_BUNDLE_FDI_BASE = "FDI_BASE" + #: A constant which can be used with the feature_bundle property of a AnalyticsInstance. #: This constant has a value of "EE_EMBEDDED" FEATURE_BUNDLE_EE_EMBEDDED = "EE_EMBEDDED" @@ -186,7 +190,7 @@ def __init__(self, **kwargs): :param feature_bundle: The value to assign to the feature_bundle property of this AnalyticsInstance. - Allowed values for this property are: "FAW_PAID", "FAW_FREE", "EE_EMBEDDED", "SE_EMBEDDED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "FAW_PAID", "FAW_FREE", "FDI_BASE", "EE_EMBEDDED", "SE_EMBEDDED", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type feature_bundle: str @@ -194,6 +198,10 @@ def __init__(self, **kwargs): The value to assign to the domain_id property of this AnalyticsInstance. :type domain_id: str + :param resource_groups: + The value to assign to the resource_groups property of this AnalyticsInstance. + :type resource_groups: list[oci.analytics.models.InstanceResourceGroup] + """ self.swagger_types = { 'id': 'str', @@ -217,7 +225,8 @@ def __init__(self, **kwargs): 'time_created': 'datetime', 'time_updated': 'datetime', 'feature_bundle': 'str', - 'domain_id': 'str' + 'domain_id': 'str', + 'resource_groups': 'list[InstanceResourceGroup]' } self.attribute_map = { 'id': 'id', @@ -241,7 +250,8 @@ def __init__(self, **kwargs): 'time_created': 'timeCreated', 'time_updated': 'timeUpdated', 'feature_bundle': 'featureBundle', - 'domain_id': 'domainId' + 'domain_id': 'domainId', + 'resource_groups': 'resourceGroups' } self._id = None self._name = None @@ -265,6 +275,7 @@ def __init__(self, **kwargs): self._time_updated = None self._feature_bundle = None self._domain_id = None + self._resource_groups = None @property def id(self): @@ -294,7 +305,8 @@ def id(self, id): def name(self): """ **[Required]** Gets the name of this AnalyticsInstance. - The name of the Analytics instance. This name must be unique in the tenancy and cannot be changed. + The name of the Analytics instance. This name must be unique in the tenancy and can't be changed. + The name must start with a letter and can contain only letters, numbers and dash (-). :return: The name of this AnalyticsInstance. @@ -306,7 +318,8 @@ def name(self): def name(self, name): """ Sets the name of this AnalyticsInstance. - The name of the Analytics instance. This name must be unique in the tenancy and cannot be changed. + The name of the Analytics instance. This name must be unique in the tenancy and can't be changed. + The name must start with a letter and can contain only letters, numbers and dash (-). :param name: The name of this AnalyticsInstance. @@ -366,7 +379,7 @@ def compartment_id(self, compartment_id): def lifecycle_state(self): """ **[Required]** Gets the lifecycle_state of this AnalyticsInstance. - The current state of an instance. + The current state of the Analytics instance. Allowed values for this property are: "ACTIVE", "CREATING", "DELETED", "DELETING", "FAILED", "INACTIVE", "UPDATING", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -381,7 +394,7 @@ def lifecycle_state(self): def lifecycle_state(self, lifecycle_state): """ Sets the lifecycle_state of this AnalyticsInstance. - The current state of an instance. + The current state of the Analytics instance. :param lifecycle_state: The lifecycle_state of this AnalyticsInstance. @@ -396,7 +409,7 @@ def lifecycle_state(self, lifecycle_state): def feature_set(self): """ **[Required]** Gets the feature_set of this AnalyticsInstance. - Analytics feature set. + The feature set. Either `SELF_SERVICE_ANALYTICS` (Professional Edition) or `ENTERPRISE_ANALYTICS` (Enterprise Edition). Allowed values for this property are: "SELF_SERVICE_ANALYTICS", "ENTERPRISE_ANALYTICS", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -411,7 +424,7 @@ def feature_set(self): def feature_set(self, feature_set): """ Sets the feature_set of this AnalyticsInstance. - Analytics feature set. + The feature set. Either `SELF_SERVICE_ANALYTICS` (Professional Edition) or `ENTERPRISE_ANALYTICS` (Enterprise Edition). :param feature_set: The feature_set of this AnalyticsInstance. @@ -500,7 +513,7 @@ def email_notification(self, email_notification): def update_channel(self): """ Gets the update_channel of this AnalyticsInstance. - Analytics instance update channel. + The Analytics instance update cycle. Allowed values for this property are: "REGULAR", "EARLY", "PHASE_2", "PHASE_1", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -515,7 +528,7 @@ def update_channel(self): def update_channel(self, update_channel): """ Sets the update_channel of this AnalyticsInstance. - Analytics instance update channel. + The Analytics instance update cycle. :param update_channel: The update_channel of this AnalyticsInstance. @@ -598,7 +611,7 @@ def vanity_url_details(self, vanity_url_details): def service_url(self): """ Gets the service_url of this AnalyticsInstance. - URL of the Analytics service. + URL of the Analytics instance. :return: The service_url of this AnalyticsInstance. @@ -610,7 +623,7 @@ def service_url(self): def service_url(self, service_url): """ Sets the service_url of this AnalyticsInstance. - URL of the Analytics service. + URL of the Analytics instance. :param service_url: The service_url of this AnalyticsInstance. @@ -716,7 +729,7 @@ def system_tags(self, system_tags): def kms_key_id(self): """ Gets the kms_key_id of this AnalyticsInstance. - OCID of the OCI Vault Key encrypting the customer data stored in this Analytics instance. A null value indicates Oracle managed default encryption. + OCID of the OCI Vault Key encrypting the customer data stored in this Analytics instance. A null value indicates that the default Oracle-managed encryption is used. :return: The kms_key_id of this AnalyticsInstance. @@ -728,7 +741,7 @@ def kms_key_id(self): def kms_key_id(self, kms_key_id): """ Sets the kms_key_id of this AnalyticsInstance. - OCID of the OCI Vault Key encrypting the customer data stored in this Analytics instance. A null value indicates Oracle managed default encryption. + OCID of the OCI Vault Key encrypting the customer data stored in this Analytics instance. A null value indicates that the default Oracle-managed encryption is used. :param kms_key_id: The kms_key_id of this AnalyticsInstance. @@ -740,7 +753,7 @@ def kms_key_id(self, kms_key_id): def time_created(self): """ **[Required]** Gets the time_created of this AnalyticsInstance. - The date and time the instance was created, in the format defined by RFC3339. + The date and time the Analytics instance was created, in the format defined by RFC3339. Example: `2016-08-25T21:10:29.600Z` @@ -754,7 +767,7 @@ def time_created(self): def time_created(self, time_created): """ Sets the time_created of this AnalyticsInstance. - The date and time the instance was created, in the format defined by RFC3339. + The date and time the Analytics instance was created, in the format defined by RFC3339. Example: `2016-08-25T21:10:29.600Z` @@ -768,9 +781,9 @@ def time_created(self, time_created): def time_updated(self): """ Gets the time_updated of this AnalyticsInstance. - The date and time the instance was last updated (in the format defined by RFC3339). - This timestamp represents updates made through this API. External events do not - influence it. + The date and time the Analytics instance was last updated (in the format defined by RFC3339). + This timestamp represents updates made through this API. External events don't + affect it. :return: The time_updated of this AnalyticsInstance. @@ -782,9 +795,9 @@ def time_updated(self): def time_updated(self, time_updated): """ Sets the time_updated of this AnalyticsInstance. - The date and time the instance was last updated (in the format defined by RFC3339). - This timestamp represents updates made through this API. External events do not - influence it. + The date and time the Analytics instance was last updated (in the format defined by RFC3339). + This timestamp represents updates made through this API. External events don't + affect it. :param time_updated: The time_updated of this AnalyticsInstance. @@ -798,7 +811,7 @@ def feature_bundle(self): Gets the feature_bundle of this AnalyticsInstance. The feature set of an Analytics instance. - Allowed values for this property are: "FAW_PAID", "FAW_FREE", "EE_EMBEDDED", "SE_EMBEDDED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "FAW_PAID", "FAW_FREE", "FDI_BASE", "EE_EMBEDDED", "SE_EMBEDDED", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -817,7 +830,7 @@ def feature_bundle(self, feature_bundle): :param feature_bundle: The feature_bundle of this AnalyticsInstance. :type: str """ - allowed_values = ["FAW_PAID", "FAW_FREE", "EE_EMBEDDED", "SE_EMBEDDED"] + allowed_values = ["FAW_PAID", "FAW_FREE", "FDI_BASE", "EE_EMBEDDED", "SE_EMBEDDED"] if not value_allowed_none_or_none_sentinel(feature_bundle, allowed_values): feature_bundle = 'UNKNOWN_ENUM_VALUE' self._feature_bundle = feature_bundle @@ -846,6 +859,30 @@ def domain_id(self, domain_id): """ self._domain_id = domain_id + @property + def resource_groups(self): + """ + Gets the resource_groups of this AnalyticsInstance. + List of resource groups for this Analytics instance. The resource group id must be unique within the instance. + + + :return: The resource_groups of this AnalyticsInstance. + :rtype: list[oci.analytics.models.InstanceResourceGroup] + """ + return self._resource_groups + + @resource_groups.setter + def resource_groups(self, resource_groups): + """ + Sets the resource_groups of this AnalyticsInstance. + List of resource groups for this Analytics instance. The resource group id must be unique within the instance. + + + :param resource_groups: The resource_groups of this AnalyticsInstance. + :type: list[oci.analytics.models.InstanceResourceGroup] + """ + self._resource_groups = resource_groups + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/analytics/models/analytics_instance_summary.py b/src/oci/analytics/models/analytics_instance_summary.py index 30b1e245a2..b810ec9f69 100644 --- a/src/oci/analytics/models/analytics_instance_summary.py +++ b/src/oci/analytics/models/analytics_instance_summary.py @@ -216,7 +216,8 @@ def id(self, id): def name(self): """ **[Required]** Gets the name of this AnalyticsInstanceSummary. - The name of the Analytics instance. This name must be unique in the tenancy and cannot be changed. + The name of the Analytics instance. This name must be unique in the tenancy and can't be changed. + The name must start with a letter and can contain only letters, numbers and dash (-). :return: The name of this AnalyticsInstanceSummary. @@ -228,7 +229,8 @@ def name(self): def name(self, name): """ Sets the name of this AnalyticsInstanceSummary. - The name of the Analytics instance. This name must be unique in the tenancy and cannot be changed. + The name of the Analytics instance. This name must be unique in the tenancy and can't be changed. + The name must start with a letter and can contain only letters, numbers and dash (-). :param name: The name of this AnalyticsInstanceSummary. @@ -288,7 +290,7 @@ def compartment_id(self, compartment_id): def lifecycle_state(self): """ **[Required]** Gets the lifecycle_state of this AnalyticsInstanceSummary. - The current state of an instance. + The current state of the Analytics instance. Allowed values for this property are: "ACTIVE", "CREATING", "DELETED", "DELETING", "FAILED", "INACTIVE", "UPDATING", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -303,7 +305,7 @@ def lifecycle_state(self): def lifecycle_state(self, lifecycle_state): """ Sets the lifecycle_state of this AnalyticsInstanceSummary. - The current state of an instance. + The current state of the Analytics instance. :param lifecycle_state: The lifecycle_state of this AnalyticsInstanceSummary. @@ -318,7 +320,7 @@ def lifecycle_state(self, lifecycle_state): def feature_set(self): """ **[Required]** Gets the feature_set of this AnalyticsInstanceSummary. - Analytics feature set. + The feature set. Either `SELF_SERVICE_ANALYTICS` (Professional Edition) or `ENTERPRISE_ANALYTICS` (Enterprise Edition). Allowed values for this property are: "SELF_SERVICE_ANALYTICS", "ENTERPRISE_ANALYTICS", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -333,7 +335,7 @@ def feature_set(self): def feature_set(self, feature_set): """ Sets the feature_set of this AnalyticsInstanceSummary. - Analytics feature set. + The feature set. Either `SELF_SERVICE_ANALYTICS` (Professional Edition) or `ENTERPRISE_ANALYTICS` (Enterprise Edition). :param feature_set: The feature_set of this AnalyticsInstanceSummary. @@ -442,7 +444,7 @@ def network_endpoint_details(self, network_endpoint_details): def service_url(self): """ Gets the service_url of this AnalyticsInstanceSummary. - URL of the Analytics service. + URL of the Analytics instance. :return: The service_url of this AnalyticsInstanceSummary. @@ -454,7 +456,7 @@ def service_url(self): def service_url(self, service_url): """ Sets the service_url of this AnalyticsInstanceSummary. - URL of the Analytics service. + URL of the Analytics instance. :param service_url: The service_url of this AnalyticsInstanceSummary. @@ -560,7 +562,7 @@ def system_tags(self, system_tags): def time_created(self): """ **[Required]** Gets the time_created of this AnalyticsInstanceSummary. - The date and time the instance was created, in the format defined by RFC3339. + The date and time the Analytics instance was created, in the format defined by RFC3339. Example: `2016-08-25T21:10:29.600Z` @@ -574,7 +576,7 @@ def time_created(self): def time_created(self, time_created): """ Sets the time_created of this AnalyticsInstanceSummary. - The date and time the instance was created, in the format defined by RFC3339. + The date and time the Analytics instance was created, in the format defined by RFC3339. Example: `2016-08-25T21:10:29.600Z` @@ -588,9 +590,9 @@ def time_created(self, time_created): def time_updated(self): """ Gets the time_updated of this AnalyticsInstanceSummary. - The date and time the instance was last updated (in the format defined by RFC3339). - This timestamp represents updates made through this API. External events do not - influence it. + The date and time the Analytics instance was last updated (in the format defined by RFC3339). + This timestamp represents updates made through this API. External events don't + affect it. :return: The time_updated of this AnalyticsInstanceSummary. @@ -602,9 +604,9 @@ def time_updated(self): def time_updated(self, time_updated): """ Sets the time_updated of this AnalyticsInstanceSummary. - The date and time the instance was last updated (in the format defined by RFC3339). - This timestamp represents updates made through this API. External events do not - influence it. + The date and time the Analytics instance was last updated (in the format defined by RFC3339). + This timestamp represents updates made through this API. External events don't + affect it. :param time_updated: The time_updated of this AnalyticsInstanceSummary. diff --git a/src/oci/analytics/models/capacity.py b/src/oci/analytics/models/capacity.py index 6451873a3c..347d38317d 100644 --- a/src/oci/analytics/models/capacity.py +++ b/src/oci/analytics/models/capacity.py @@ -12,7 +12,7 @@ @init_model_state_from_kwargs class Capacity(object): """ - Service instance capacity metadata (e.g.: OLPU count, number of users, ...etc...). + Service instance capacity metadata (for example, OLPU count, number of users, and so on). """ #: A constant which can be used with the capacity_type property of a Capacity. @@ -89,7 +89,7 @@ def capacity_value(self): """ **[Required]** Gets the capacity_value of this Capacity. The capacity value selected, either the number of OCPUs (OLPU_COUNT) or the number of users (USER_COUNT). - This parameter affects the number of OCPUs, amount of memory, and other resources allocated to the instance. + This parameter affects the number of OCPUs, amount of memory, and other resources allocated to the Analytics instance. :return: The capacity_value of this Capacity. @@ -102,7 +102,7 @@ def capacity_value(self, capacity_value): """ Sets the capacity_value of this Capacity. The capacity value selected, either the number of OCPUs (OLPU_COUNT) or the number of users (USER_COUNT). - This parameter affects the number of OCPUs, amount of memory, and other resources allocated to the instance. + This parameter affects the number of OCPUs, amount of memory, and other resources allocated to the Analytics instance. :param capacity_value: The capacity_value of this Capacity. diff --git a/src/oci/analytics/models/change_analytics_instance_network_endpoint_details.py b/src/oci/analytics/models/change_analytics_instance_network_endpoint_details.py index 20b3f91ce1..e84d4dc89b 100644 --- a/src/oci/analytics/models/change_analytics_instance_network_endpoint_details.py +++ b/src/oci/analytics/models/change_analytics_instance_network_endpoint_details.py @@ -12,7 +12,7 @@ @init_model_state_from_kwargs class ChangeAnalyticsInstanceNetworkEndpointDetails(object): """ - Input payload to update an Analytics instance endpoint details. + Input payload to update endpoint details for an Analytics instance. """ def __init__(self, **kwargs): diff --git a/src/oci/analytics/models/create_analytics_instance_details.py b/src/oci/analytics/models/create_analytics_instance_details.py index 73fbb91d5a..6a3541c9f3 100644 --- a/src/oci/analytics/models/create_analytics_instance_details.py +++ b/src/oci/analytics/models/create_analytics_instance_details.py @@ -55,6 +55,10 @@ class CreateAnalyticsInstanceDetails(object): #: This constant has a value of "FAW_FREE" FEATURE_BUNDLE_FAW_FREE = "FAW_FREE" + #: A constant which can be used with the feature_bundle property of a CreateAnalyticsInstanceDetails. + #: This constant has a value of "FDI_BASE" + FEATURE_BUNDLE_FDI_BASE = "FDI_BASE" + #: A constant which can be used with the feature_bundle property of a CreateAnalyticsInstanceDetails. #: This constant has a value of "EE_EMBEDDED" FEATURE_BUNDLE_EE_EMBEDDED = "EE_EMBEDDED" @@ -133,7 +137,7 @@ def __init__(self, **kwargs): :param feature_bundle: The value to assign to the feature_bundle property of this CreateAnalyticsInstanceDetails. - Allowed values for this property are: "FAW_PAID", "FAW_FREE", "EE_EMBEDDED", "SE_EMBEDDED" + Allowed values for this property are: "FAW_PAID", "FAW_FREE", "FDI_BASE", "EE_EMBEDDED", "SE_EMBEDDED" :type feature_bundle: str """ @@ -194,7 +198,8 @@ def __init__(self, **kwargs): def name(self): """ **[Required]** Gets the name of this CreateAnalyticsInstanceDetails. - The name of the Analytics instance. This name must be unique in the tenancy and cannot be changed. + The name of the Analytics instance. This name must be unique in the tenancy and can't be changed. + The name must start with a letter and can contain only letters, numbers and dash (-). :return: The name of this CreateAnalyticsInstanceDetails. @@ -206,7 +211,8 @@ def name(self): def name(self, name): """ Sets the name of this CreateAnalyticsInstanceDetails. - The name of the Analytics instance. This name must be unique in the tenancy and cannot be changed. + The name of the Analytics instance. This name must be unique in the tenancy and can't be changed. + The name must start with a letter and can contain only letters, numbers and dash (-). :param name: The name of this CreateAnalyticsInstanceDetails. @@ -266,7 +272,7 @@ def compartment_id(self, compartment_id): def feature_set(self): """ **[Required]** Gets the feature_set of this CreateAnalyticsInstanceDetails. - Analytics feature set. + The feature set. Either `SELF_SERVICE_ANALYTICS` (Professional Edition) or `ENTERPRISE_ANALYTICS` (Enterprise Edition). Allowed values for this property are: "SELF_SERVICE_ANALYTICS", "ENTERPRISE_ANALYTICS" @@ -280,7 +286,7 @@ def feature_set(self): def feature_set(self, feature_set): """ Sets the feature_set of this CreateAnalyticsInstanceDetails. - Analytics feature set. + The feature set. Either `SELF_SERVICE_ANALYTICS` (Professional Edition) or `ENTERPRISE_ANALYTICS` (Enterprise Edition). :param feature_set: The feature_set of this CreateAnalyticsInstanceDetails. @@ -484,7 +490,7 @@ def freeform_tags(self, freeform_tags): def update_channel(self): """ Gets the update_channel of this CreateAnalyticsInstanceDetails. - Analytics instance update channel. + The Analytics instance update cycle. Allowed values for this property are: "REGULAR", "EARLY", "PHASE_2", "PHASE_1" @@ -498,7 +504,7 @@ def update_channel(self): def update_channel(self, update_channel): """ Sets the update_channel of this CreateAnalyticsInstanceDetails. - Analytics instance update channel. + The Analytics instance update cycle. :param update_channel: The update_channel of this CreateAnalyticsInstanceDetails. @@ -515,7 +521,7 @@ def update_channel(self, update_channel): def kms_key_id(self): """ Gets the kms_key_id of this CreateAnalyticsInstanceDetails. - OCID of the OCI Vault Key encrypting the customer data stored in this Analytics instance. A null value indicates Oracle managed default encryption. + OCID of the OCI Vault Key encrypting the customer data stored in this Analytics instance. A null value indicates that the default Oracle-managed encryption is used. :return: The kms_key_id of this CreateAnalyticsInstanceDetails. @@ -527,7 +533,7 @@ def kms_key_id(self): def kms_key_id(self, kms_key_id): """ Sets the kms_key_id of this CreateAnalyticsInstanceDetails. - OCID of the OCI Vault Key encrypting the customer data stored in this Analytics instance. A null value indicates Oracle managed default encryption. + OCID of the OCI Vault Key encrypting the customer data stored in this Analytics instance. A null value indicates that the default Oracle-managed encryption is used. :param kms_key_id: The kms_key_id of this CreateAnalyticsInstanceDetails. @@ -539,7 +545,7 @@ def kms_key_id(self, kms_key_id): def domain_id(self): """ Gets the domain_id of this CreateAnalyticsInstanceDetails. - domain id for which the user is authorized. + The OCID of the identity domain to use for the new Analytics instance. For example: ocid1.domain.oc1..ocid1.domain.oc1..aaaaaa111111bbbbbb222222cccccc333333dddddd444444eeeeee5555. :return: The domain_id of this CreateAnalyticsInstanceDetails. @@ -551,7 +557,7 @@ def domain_id(self): def domain_id(self, domain_id): """ Sets the domain_id of this CreateAnalyticsInstanceDetails. - domain id for which the user is authorized. + The OCID of the identity domain to use for the new Analytics instance. For example: ocid1.domain.oc1..ocid1.domain.oc1..aaaaaa111111bbbbbb222222cccccc333333dddddd444444eeeeee5555. :param domain_id: The domain_id of this CreateAnalyticsInstanceDetails. @@ -563,7 +569,7 @@ def domain_id(self, domain_id): def admin_user(self): """ Gets the admin_user of this CreateAnalyticsInstanceDetails. - user name of the authorized user. + The Analytics instance administrator user. This must be the user name (not OCID) of a user in the nominated identity domain. For example: john.smith@example.com. :return: The admin_user of this CreateAnalyticsInstanceDetails. @@ -575,7 +581,7 @@ def admin_user(self): def admin_user(self, admin_user): """ Sets the admin_user of this CreateAnalyticsInstanceDetails. - user name of the authorized user. + The Analytics instance administrator user. This must be the user name (not OCID) of a user in the nominated identity domain. For example: john.smith@example.com. :param admin_user: The admin_user of this CreateAnalyticsInstanceDetails. @@ -589,7 +595,7 @@ def feature_bundle(self): Gets the feature_bundle of this CreateAnalyticsInstanceDetails. The feature set of an Analytics instance. - Allowed values for this property are: "FAW_PAID", "FAW_FREE", "EE_EMBEDDED", "SE_EMBEDDED" + Allowed values for this property are: "FAW_PAID", "FAW_FREE", "FDI_BASE", "EE_EMBEDDED", "SE_EMBEDDED" :return: The feature_bundle of this CreateAnalyticsInstanceDetails. @@ -607,7 +613,7 @@ def feature_bundle(self, feature_bundle): :param feature_bundle: The feature_bundle of this CreateAnalyticsInstanceDetails. :type: str """ - allowed_values = ["FAW_PAID", "FAW_FREE", "EE_EMBEDDED", "SE_EMBEDDED"] + allowed_values = ["FAW_PAID", "FAW_FREE", "FDI_BASE", "EE_EMBEDDED", "SE_EMBEDDED"] if not value_allowed_none_or_none_sentinel(feature_bundle, allowed_values): raise ValueError( f"Invalid value for `feature_bundle`, must be None or one of {allowed_values}" diff --git a/src/oci/analytics/models/create_private_access_channel_details.py b/src/oci/analytics/models/create_private_access_channel_details.py index a04350f789..b5dae6e315 100644 --- a/src/oci/analytics/models/create_private_access_channel_details.py +++ b/src/oci/analytics/models/create_private_access_channel_details.py @@ -12,7 +12,7 @@ @init_model_state_from_kwargs class CreatePrivateAccessChannelDetails(object): """ - Input payload to create a Private Access Channel. + Input payload to create a private access channel. """ def __init__(self, **kwargs): @@ -72,7 +72,7 @@ def __init__(self, **kwargs): def display_name(self): """ **[Required]** Gets the display_name of this CreatePrivateAccessChannelDetails. - Display Name of the Private Access Channel. + Display name of the private access channel. :return: The display_name of this CreatePrivateAccessChannelDetails. @@ -84,7 +84,7 @@ def display_name(self): def display_name(self, display_name): """ Sets the display_name of this CreatePrivateAccessChannelDetails. - Display Name of the Private Access Channel. + Display name of the private access channel. :param display_name: The display_name of this CreatePrivateAccessChannelDetails. @@ -96,7 +96,7 @@ def display_name(self, display_name): def vcn_id(self): """ **[Required]** Gets the vcn_id of this CreatePrivateAccessChannelDetails. - OCID of the customer VCN peered with private access channel. + OCID of the customer VCN peered with the private access channel. :return: The vcn_id of this CreatePrivateAccessChannelDetails. @@ -108,7 +108,7 @@ def vcn_id(self): def vcn_id(self, vcn_id): """ Sets the vcn_id of this CreatePrivateAccessChannelDetails. - OCID of the customer VCN peered with private access channel. + OCID of the customer VCN peered with the private access channel. :param vcn_id: The vcn_id of this CreatePrivateAccessChannelDetails. @@ -120,7 +120,7 @@ def vcn_id(self, vcn_id): def subnet_id(self): """ **[Required]** Gets the subnet_id of this CreatePrivateAccessChannelDetails. - OCID of the customer subnet connected to private access channel. + OCID of the customer subnet connected to the private access channel. :return: The subnet_id of this CreatePrivateAccessChannelDetails. @@ -132,7 +132,7 @@ def subnet_id(self): def subnet_id(self, subnet_id): """ Sets the subnet_id of this CreatePrivateAccessChannelDetails. - OCID of the customer subnet connected to private access channel. + OCID of the customer subnet connected to the private access channel. :param subnet_id: The subnet_id of this CreatePrivateAccessChannelDetails. @@ -144,9 +144,9 @@ def subnet_id(self, subnet_id): def private_source_dns_zones(self): """ **[Required]** Gets the private_source_dns_zones of this CreatePrivateAccessChannelDetails. - List of Private Source DNS zones registered with Private Access Channel, - where datasource hostnames from these dns zones / domains will be resolved in the peered VCN for access from Analytics Instance. - Min of 1 is required and Max of 30 Private Source DNS zones can be registered. + List of private source DNS zones registered with the private access channel. The + datasource hostnames from these DNS zones / domains will be resolved in the peered VCN for access from the Analytics instance. + Minimum 1 private source is required. Maximum 30 private source DNS zones can be registered. :return: The private_source_dns_zones of this CreatePrivateAccessChannelDetails. @@ -158,9 +158,9 @@ def private_source_dns_zones(self): def private_source_dns_zones(self, private_source_dns_zones): """ Sets the private_source_dns_zones of this CreatePrivateAccessChannelDetails. - List of Private Source DNS zones registered with Private Access Channel, - where datasource hostnames from these dns zones / domains will be resolved in the peered VCN for access from Analytics Instance. - Min of 1 is required and Max of 30 Private Source DNS zones can be registered. + List of private source DNS zones registered with the private access channel. The + datasource hostnames from these DNS zones / domains will be resolved in the peered VCN for access from the Analytics instance. + Minimum 1 private source is required. Maximum 30 private source DNS zones can be registered. :param private_source_dns_zones: The private_source_dns_zones of this CreatePrivateAccessChannelDetails. @@ -172,7 +172,7 @@ def private_source_dns_zones(self, private_source_dns_zones): def private_source_scan_hosts(self): """ Gets the private_source_scan_hosts of this CreatePrivateAccessChannelDetails. - List of Private Source DB SCAN hosts registered with Private Access Channel for access from Analytics Instance. + List of private source database SCAN hosts registered with the private access channel for access from the Analytics instance. :return: The private_source_scan_hosts of this CreatePrivateAccessChannelDetails. @@ -184,7 +184,7 @@ def private_source_scan_hosts(self): def private_source_scan_hosts(self, private_source_scan_hosts): """ Sets the private_source_scan_hosts of this CreatePrivateAccessChannelDetails. - List of Private Source DB SCAN hosts registered with Private Access Channel for access from Analytics Instance. + List of private source database SCAN hosts registered with the private access channel for access from the Analytics instance. :param private_source_scan_hosts: The private_source_scan_hosts of this CreatePrivateAccessChannelDetails. @@ -196,7 +196,7 @@ def private_source_scan_hosts(self, private_source_scan_hosts): def network_security_group_ids(self): """ Gets the network_security_group_ids of this CreatePrivateAccessChannelDetails. - Network Security Group OCIDs for an Analytics instance. + Network Security Group OCIDs for the Analytics instance. :return: The network_security_group_ids of this CreatePrivateAccessChannelDetails. @@ -208,7 +208,7 @@ def network_security_group_ids(self): def network_security_group_ids(self, network_security_group_ids): """ Sets the network_security_group_ids of this CreatePrivateAccessChannelDetails. - Network Security Group OCIDs for an Analytics instance. + Network Security Group OCIDs for the Analytics instance. :param network_security_group_ids: The network_security_group_ids of this CreatePrivateAccessChannelDetails. diff --git a/src/oci/analytics/models/create_resource_group_details.py b/src/oci/analytics/models/create_resource_group_details.py new file mode 100644 index 0000000000..6e87fdbea8 --- /dev/null +++ b/src/oci/analytics/models/create_resource_group_details.py @@ -0,0 +1,163 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190331 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateResourceGroupDetails(object): + """ + Input payload to create resource group. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateResourceGroupDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param resource_name: + The value to assign to the resource_name property of this CreateResourceGroupDetails. + :type resource_name: str + + :param display_name: + The value to assign to the display_name property of this CreateResourceGroupDetails. + :type display_name: str + + :param description: + The value to assign to the description property of this CreateResourceGroupDetails. + :type description: str + + :param capacity: + The value to assign to the capacity property of this CreateResourceGroupDetails. + :type capacity: int + + """ + self.swagger_types = { + 'resource_name': 'str', + 'display_name': 'str', + 'description': 'str', + 'capacity': 'int' + } + self.attribute_map = { + 'resource_name': 'resourceName', + 'display_name': 'displayName', + 'description': 'description', + 'capacity': 'capacity' + } + self._resource_name = None + self._display_name = None + self._description = None + self._capacity = None + + @property + def resource_name(self): + """ + **[Required]** Gets the resource_name of this CreateResourceGroupDetails. + Meaningful name of resource group for end user + + + :return: The resource_name of this CreateResourceGroupDetails. + :rtype: str + """ + return self._resource_name + + @resource_name.setter + def resource_name(self, resource_name): + """ + Sets the resource_name of this CreateResourceGroupDetails. + Meaningful name of resource group for end user + + + :param resource_name: The resource_name of this CreateResourceGroupDetails. + :type: str + """ + self._resource_name = resource_name + + @property + def display_name(self): + """ + Gets the display_name of this CreateResourceGroupDetails. + Meaningful name of resource group for end user + + + :return: The display_name of this CreateResourceGroupDetails. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this CreateResourceGroupDetails. + Meaningful name of resource group for end user + + + :param display_name: The display_name of this CreateResourceGroupDetails. + :type: str + """ + self._display_name = display_name + + @property + def description(self): + """ + Gets the description of this CreateResourceGroupDetails. + Optional description of the resource group + + + :return: The description of this CreateResourceGroupDetails. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this CreateResourceGroupDetails. + Optional description of the resource group + + + :param description: The description of this CreateResourceGroupDetails. + :type: str + """ + self._description = description + + @property + def capacity(self): + """ + **[Required]** Gets the capacity of this CreateResourceGroupDetails. + The capacity (in OCPU's) to be allocated for this resource. + + + :return: The capacity of this CreateResourceGroupDetails. + :rtype: int + """ + return self._capacity + + @capacity.setter + def capacity(self, capacity): + """ + Sets the capacity of this CreateResourceGroupDetails. + The capacity (in OCPU's) to be allocated for this resource. + + + :param capacity: The capacity of this CreateResourceGroupDetails. + :type: int + """ + self._capacity = capacity + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/analytics/models/create_vanity_url_details.py b/src/oci/analytics/models/create_vanity_url_details.py index 4e55010370..c89f86a194 100644 --- a/src/oci/analytics/models/create_vanity_url_details.py +++ b/src/oci/analytics/models/create_vanity_url_details.py @@ -12,7 +12,7 @@ @init_model_state_from_kwargs class CreateVanityUrlDetails(object): """ - Input payload to create a vanity url. + Input payload to create a vanity URL. """ def __init__(self, **kwargs): @@ -96,7 +96,7 @@ def description(self, description): def hosts(self): """ **[Required]** Gets the hosts of this CreateVanityUrlDetails. - List of fully qualified hostnames supported by this vanity URL definition (max of 3). + List of fully-qualified hostnames supported by this vanity URL definition (maximum of 3). :return: The hosts of this CreateVanityUrlDetails. @@ -108,7 +108,7 @@ def hosts(self): def hosts(self, hosts): """ Sets the hosts of this CreateVanityUrlDetails. - List of fully qualified hostnames supported by this vanity URL definition (max of 3). + List of fully-qualified hostnames supported by this vanity URL definition (maximum of 3). :param hosts: The hosts of this CreateVanityUrlDetails. @@ -120,7 +120,7 @@ def hosts(self, hosts): def passphrase(self): """ Gets the passphrase of this CreateVanityUrlDetails. - Passphrase for the PEM Private key (if any). + Passphrase for the PEM private key (if any). :return: The passphrase of this CreateVanityUrlDetails. @@ -132,7 +132,7 @@ def passphrase(self): def passphrase(self, passphrase): """ Sets the passphrase of this CreateVanityUrlDetails. - Passphrase for the PEM Private key (if any). + Passphrase for the PEM private key (if any). :param passphrase: The passphrase of this CreateVanityUrlDetails. @@ -144,7 +144,7 @@ def passphrase(self, passphrase): def private_key(self): """ **[Required]** Gets the private_key of this CreateVanityUrlDetails. - PEM Private key for HTTPS connections. + PEM private key for HTTPS connections. :return: The private_key of this CreateVanityUrlDetails. @@ -156,7 +156,7 @@ def private_key(self): def private_key(self, private_key): """ Sets the private_key of this CreateVanityUrlDetails. - PEM Private key for HTTPS connections. + PEM private key for HTTPS connections. :param private_key: The private_key of this CreateVanityUrlDetails. @@ -192,7 +192,7 @@ def public_certificate(self, public_certificate): def ca_certificate(self): """ **[Required]** Gets the ca_certificate of this CreateVanityUrlDetails. - PEM CA certificate(s) for HTTPS connections. This may include multiple PEM certificates. + PEM CA certificates for HTTPS connections. This may include multiple PEM certificates. :return: The ca_certificate of this CreateVanityUrlDetails. @@ -204,7 +204,7 @@ def ca_certificate(self): def ca_certificate(self, ca_certificate): """ Sets the ca_certificate of this CreateVanityUrlDetails. - PEM CA certificate(s) for HTTPS connections. This may include multiple PEM certificates. + PEM CA certificates for HTTPS connections. This may include multiple PEM certificates. :param ca_certificate: The ca_certificate of this CreateVanityUrlDetails. diff --git a/src/oci/analytics/models/instance_resource_group.py b/src/oci/analytics/models/instance_resource_group.py new file mode 100644 index 0000000000..66069aaca1 --- /dev/null +++ b/src/oci/analytics/models/instance_resource_group.py @@ -0,0 +1,194 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190331 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class InstanceResourceGroup(object): + """ + Resource Groups for Instance + """ + + def __init__(self, **kwargs): + """ + Initializes a new InstanceResourceGroup object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this InstanceResourceGroup. + :type id: str + + :param resource_name: + The value to assign to the resource_name property of this InstanceResourceGroup. + :type resource_name: str + + :param display_name: + The value to assign to the display_name property of this InstanceResourceGroup. + :type display_name: str + + :param description: + The value to assign to the description property of this InstanceResourceGroup. + :type description: str + + :param capacity: + The value to assign to the capacity property of this InstanceResourceGroup. + :type capacity: int + + """ + self.swagger_types = { + 'id': 'str', + 'resource_name': 'str', + 'display_name': 'str', + 'description': 'str', + 'capacity': 'int' + } + self.attribute_map = { + 'id': 'id', + 'resource_name': 'resourceName', + 'display_name': 'displayName', + 'description': 'description', + 'capacity': 'capacity' + } + self._id = None + self._resource_name = None + self._display_name = None + self._description = None + self._capacity = None + + @property + def id(self): + """ + **[Required]** Gets the id of this InstanceResourceGroup. + Unique identifier and name of resource group. Must be unique within the instance + + + :return: The id of this InstanceResourceGroup. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this InstanceResourceGroup. + Unique identifier and name of resource group. Must be unique within the instance + + + :param id: The id of this InstanceResourceGroup. + :type: str + """ + self._id = id + + @property + def resource_name(self): + """ + **[Required]** Gets the resource_name of this InstanceResourceGroup. + Meaningful name of resource group for end user + + + :return: The resource_name of this InstanceResourceGroup. + :rtype: str + """ + return self._resource_name + + @resource_name.setter + def resource_name(self, resource_name): + """ + Sets the resource_name of this InstanceResourceGroup. + Meaningful name of resource group for end user + + + :param resource_name: The resource_name of this InstanceResourceGroup. + :type: str + """ + self._resource_name = resource_name + + @property + def display_name(self): + """ + Gets the display_name of this InstanceResourceGroup. + Meaningful name of resource group for end user + + + :return: The display_name of this InstanceResourceGroup. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this InstanceResourceGroup. + Meaningful name of resource group for end user + + + :param display_name: The display_name of this InstanceResourceGroup. + :type: str + """ + self._display_name = display_name + + @property + def description(self): + """ + Gets the description of this InstanceResourceGroup. + Optional description of the resource group + + + :return: The description of this InstanceResourceGroup. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this InstanceResourceGroup. + Optional description of the resource group + + + :param description: The description of this InstanceResourceGroup. + :type: str + """ + self._description = description + + @property + def capacity(self): + """ + **[Required]** Gets the capacity of this InstanceResourceGroup. + The capacity (in OCPU's) to be allocated for this resource. + + + :return: The capacity of this InstanceResourceGroup. + :rtype: int + """ + return self._capacity + + @capacity.setter + def capacity(self, capacity): + """ + Sets the capacity of this InstanceResourceGroup. + The capacity (in OCPU's) to be allocated for this resource. + + + :param capacity: The capacity of this InstanceResourceGroup. + :type: int + """ + self._capacity = capacity + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/analytics/models/instance_resource_group_summary.py b/src/oci/analytics/models/instance_resource_group_summary.py new file mode 100644 index 0000000000..fad1e2ca99 --- /dev/null +++ b/src/oci/analytics/models/instance_resource_group_summary.py @@ -0,0 +1,194 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190331 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class InstanceResourceGroupSummary(object): + """ + Resource Groups for Instance + """ + + def __init__(self, **kwargs): + """ + Initializes a new InstanceResourceGroupSummary object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this InstanceResourceGroupSummary. + :type id: str + + :param resource_name: + The value to assign to the resource_name property of this InstanceResourceGroupSummary. + :type resource_name: str + + :param display_name: + The value to assign to the display_name property of this InstanceResourceGroupSummary. + :type display_name: str + + :param description: + The value to assign to the description property of this InstanceResourceGroupSummary. + :type description: str + + :param capacity: + The value to assign to the capacity property of this InstanceResourceGroupSummary. + :type capacity: int + + """ + self.swagger_types = { + 'id': 'str', + 'resource_name': 'str', + 'display_name': 'str', + 'description': 'str', + 'capacity': 'int' + } + self.attribute_map = { + 'id': 'id', + 'resource_name': 'resourceName', + 'display_name': 'displayName', + 'description': 'description', + 'capacity': 'capacity' + } + self._id = None + self._resource_name = None + self._display_name = None + self._description = None + self._capacity = None + + @property + def id(self): + """ + **[Required]** Gets the id of this InstanceResourceGroupSummary. + Unique identifier and name of resource group. Must be unique within the instance + + + :return: The id of this InstanceResourceGroupSummary. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this InstanceResourceGroupSummary. + Unique identifier and name of resource group. Must be unique within the instance + + + :param id: The id of this InstanceResourceGroupSummary. + :type: str + """ + self._id = id + + @property + def resource_name(self): + """ + **[Required]** Gets the resource_name of this InstanceResourceGroupSummary. + Meaningful name of resource group for end user + + + :return: The resource_name of this InstanceResourceGroupSummary. + :rtype: str + """ + return self._resource_name + + @resource_name.setter + def resource_name(self, resource_name): + """ + Sets the resource_name of this InstanceResourceGroupSummary. + Meaningful name of resource group for end user + + + :param resource_name: The resource_name of this InstanceResourceGroupSummary. + :type: str + """ + self._resource_name = resource_name + + @property + def display_name(self): + """ + Gets the display_name of this InstanceResourceGroupSummary. + Meaningful name of resource group for end user + + + :return: The display_name of this InstanceResourceGroupSummary. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this InstanceResourceGroupSummary. + Meaningful name of resource group for end user + + + :param display_name: The display_name of this InstanceResourceGroupSummary. + :type: str + """ + self._display_name = display_name + + @property + def description(self): + """ + Gets the description of this InstanceResourceGroupSummary. + Optional description of the resource group + + + :return: The description of this InstanceResourceGroupSummary. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this InstanceResourceGroupSummary. + Optional description of the resource group + + + :param description: The description of this InstanceResourceGroupSummary. + :type: str + """ + self._description = description + + @property + def capacity(self): + """ + **[Required]** Gets the capacity of this InstanceResourceGroupSummary. + The capacity (in OCPU's) to be allocated for this resource. + + + :return: The capacity of this InstanceResourceGroupSummary. + :rtype: int + """ + return self._capacity + + @capacity.setter + def capacity(self, capacity): + """ + Sets the capacity of this InstanceResourceGroupSummary. + The capacity (in OCPU's) to be allocated for this resource. + + + :param capacity: The capacity of this InstanceResourceGroupSummary. + :type: int + """ + self._capacity = capacity + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/analytics/models/private_access_channel.py b/src/oci/analytics/models/private_access_channel.py index cb5fcee039..d51038e3e4 100644 --- a/src/oci/analytics/models/private_access_channel.py +++ b/src/oci/analytics/models/private_access_channel.py @@ -12,7 +12,7 @@ @init_model_state_from_kwargs class PrivateAccessChannel(object): """ - Analytics Instance Private Access Channel model. + Analytics instance private access channel model. """ def __init__(self, **kwargs): @@ -93,7 +93,7 @@ def __init__(self, **kwargs): def key(self): """ **[Required]** Gets the key of this PrivateAccessChannel. - Private Access Channel unique identifier key. + Private access channel unique identifier key. :return: The key of this PrivateAccessChannel. @@ -105,7 +105,7 @@ def key(self): def key(self, key): """ Sets the key of this PrivateAccessChannel. - Private Access Channel unique identifier key. + Private access channel unique identifier key. :param key: The key of this PrivateAccessChannel. @@ -117,7 +117,7 @@ def key(self, key): def display_name(self): """ **[Required]** Gets the display_name of this PrivateAccessChannel. - Display Name of the Private Access Channel. + Display name of the private access channel. :return: The display_name of this PrivateAccessChannel. @@ -129,7 +129,7 @@ def display_name(self): def display_name(self, display_name): """ Sets the display_name of this PrivateAccessChannel. - Display Name of the Private Access Channel. + Display name of the private access channel. :param display_name: The display_name of this PrivateAccessChannel. @@ -141,7 +141,7 @@ def display_name(self, display_name): def vcn_id(self): """ **[Required]** Gets the vcn_id of this PrivateAccessChannel. - OCID of the customer VCN peered with private access channel. + OCID of the customer VCN peered with the private access channel. :return: The vcn_id of this PrivateAccessChannel. @@ -153,7 +153,7 @@ def vcn_id(self): def vcn_id(self, vcn_id): """ Sets the vcn_id of this PrivateAccessChannel. - OCID of the customer VCN peered with private access channel. + OCID of the customer VCN peered with the private access channel. :param vcn_id: The vcn_id of this PrivateAccessChannel. @@ -165,7 +165,7 @@ def vcn_id(self, vcn_id): def subnet_id(self): """ **[Required]** Gets the subnet_id of this PrivateAccessChannel. - OCID of the customer subnet connected to private access channel. + OCID of the customer subnet connected to the private access channel. :return: The subnet_id of this PrivateAccessChannel. @@ -177,7 +177,7 @@ def subnet_id(self): def subnet_id(self, subnet_id): """ Sets the subnet_id of this PrivateAccessChannel. - OCID of the customer subnet connected to private access channel. + OCID of the customer subnet connected to the private access channel. :param subnet_id: The subnet_id of this PrivateAccessChannel. @@ -189,7 +189,7 @@ def subnet_id(self, subnet_id): def ip_address(self): """ **[Required]** Gets the ip_address of this PrivateAccessChannel. - IP Address of the Private Access channel. + IP address of the private access channel. :return: The ip_address of this PrivateAccessChannel. @@ -201,7 +201,7 @@ def ip_address(self): def ip_address(self, ip_address): """ Sets the ip_address of this PrivateAccessChannel. - IP Address of the Private Access channel. + IP address of the private access channel. :param ip_address: The ip_address of this PrivateAccessChannel. @@ -213,8 +213,8 @@ def ip_address(self, ip_address): def egress_source_ip_addresses(self): """ **[Required]** Gets the egress_source_ip_addresses of this PrivateAccessChannel. - The list of IP addresses from the customer subnet connected to private access channel, used as a source Ip by Private Access Channel - for network traffic from the AnalyticsInstance to Private Sources. + List of IP addresses from the customer subnet connected to the private access channel, used as a source IP by the private access channel + for network traffic from the Analytics instance to the private sources. :return: The egress_source_ip_addresses of this PrivateAccessChannel. @@ -226,8 +226,8 @@ def egress_source_ip_addresses(self): def egress_source_ip_addresses(self, egress_source_ip_addresses): """ Sets the egress_source_ip_addresses of this PrivateAccessChannel. - The list of IP addresses from the customer subnet connected to private access channel, used as a source Ip by Private Access Channel - for network traffic from the AnalyticsInstance to Private Sources. + List of IP addresses from the customer subnet connected to the private access channel, used as a source IP by the private access channel + for network traffic from the Analytics instance to the private sources. :param egress_source_ip_addresses: The egress_source_ip_addresses of this PrivateAccessChannel. @@ -239,9 +239,9 @@ def egress_source_ip_addresses(self, egress_source_ip_addresses): def private_source_dns_zones(self): """ Gets the private_source_dns_zones of this PrivateAccessChannel. - List of Private Source DNS zones registered with Private Access Channel, - where datasource hostnames from these dns zones / domains will be resolved in the peered VCN for access from Analytics Instance. - Min of 1 is required and Max of 30 Private Source DNS zones can be registered. + List of private source DNS zones registered with the private access channel. The + datasource hostnames from these DNS zones / domains will be resolved in the peered VCN for access from the Analytics instance. + Minimum 1 private source is required. Maximum 30 private source DNS zones can be registered. :return: The private_source_dns_zones of this PrivateAccessChannel. @@ -253,9 +253,9 @@ def private_source_dns_zones(self): def private_source_dns_zones(self, private_source_dns_zones): """ Sets the private_source_dns_zones of this PrivateAccessChannel. - List of Private Source DNS zones registered with Private Access Channel, - where datasource hostnames from these dns zones / domains will be resolved in the peered VCN for access from Analytics Instance. - Min of 1 is required and Max of 30 Private Source DNS zones can be registered. + List of private source DNS zones registered with the private access channel. The + datasource hostnames from these DNS zones / domains will be resolved in the peered VCN for access from the Analytics instance. + Minimum 1 private source is required. Maximum 30 private source DNS zones can be registered. :param private_source_dns_zones: The private_source_dns_zones of this PrivateAccessChannel. @@ -267,7 +267,7 @@ def private_source_dns_zones(self, private_source_dns_zones): def private_source_scan_hosts(self): """ Gets the private_source_scan_hosts of this PrivateAccessChannel. - List of Private Source DB SCAN hosts registered with Private Access Channel for access from Analytics Instance. + List of private source database SCAN hosts registered with the private access channel for access from the Analytics instance. :return: The private_source_scan_hosts of this PrivateAccessChannel. @@ -279,7 +279,7 @@ def private_source_scan_hosts(self): def private_source_scan_hosts(self, private_source_scan_hosts): """ Sets the private_source_scan_hosts of this PrivateAccessChannel. - List of Private Source DB SCAN hosts registered with Private Access Channel for access from Analytics Instance. + List of private source database SCAN hosts registered with the private access channel for access from the Analytics instance. :param private_source_scan_hosts: The private_source_scan_hosts of this PrivateAccessChannel. @@ -291,7 +291,7 @@ def private_source_scan_hosts(self, private_source_scan_hosts): def network_security_group_ids(self): """ Gets the network_security_group_ids of this PrivateAccessChannel. - Network Security Group OCIDs for an Analytics instance. + Network Security Group OCIDs for the Analytics instance. :return: The network_security_group_ids of this PrivateAccessChannel. @@ -303,7 +303,7 @@ def network_security_group_ids(self): def network_security_group_ids(self, network_security_group_ids): """ Sets the network_security_group_ids of this PrivateAccessChannel. - Network Security Group OCIDs for an Analytics instance. + Network Security Group OCIDs for the Analytics instance. :param network_security_group_ids: The network_security_group_ids of this PrivateAccessChannel. diff --git a/src/oci/analytics/models/private_endpoint_details.py b/src/oci/analytics/models/private_endpoint_details.py index 4f4ae24144..257c43f571 100644 --- a/src/oci/analytics/models/private_endpoint_details.py +++ b/src/oci/analytics/models/private_endpoint_details.py @@ -109,7 +109,7 @@ def subnet_id(self, subnet_id): def network_security_group_ids(self): """ Gets the network_security_group_ids of this PrivateEndpointDetails. - Network Security Group OCIDs for an Analytics instance. + Network Security Group OCIDs for the Analytics instance. :return: The network_security_group_ids of this PrivateEndpointDetails. @@ -121,7 +121,7 @@ def network_security_group_ids(self): def network_security_group_ids(self, network_security_group_ids): """ Sets the network_security_group_ids of this PrivateEndpointDetails. - Network Security Group OCIDs for an Analytics instance. + Network Security Group OCIDs for the Analytics instance. :param network_security_group_ids: The network_security_group_ids of this PrivateEndpointDetails. diff --git a/src/oci/analytics/models/private_source_dns_zone.py b/src/oci/analytics/models/private_source_dns_zone.py index 6f9c6ef358..03bcdf1a92 100644 --- a/src/oci/analytics/models/private_source_dns_zone.py +++ b/src/oci/analytics/models/private_source_dns_zone.py @@ -12,7 +12,7 @@ @init_model_state_from_kwargs class PrivateSourceDnsZone(object): """ - Private source DNS Zone model. + Private source DNS zone model. """ def __init__(self, **kwargs): @@ -44,7 +44,7 @@ def __init__(self, **kwargs): def dns_zone(self): """ **[Required]** Gets the dns_zone of this PrivateSourceDnsZone. - Private Source DNS Zone. Ex: example-vcn.oraclevcn.com, corp.example.com. + Private source DNS zone. For example: example-vcn.oraclevcn.com, corp.example.com. :return: The dns_zone of this PrivateSourceDnsZone. @@ -56,7 +56,7 @@ def dns_zone(self): def dns_zone(self, dns_zone): """ Sets the dns_zone of this PrivateSourceDnsZone. - Private Source DNS Zone. Ex: example-vcn.oraclevcn.com, corp.example.com. + Private source DNS zone. For example: example-vcn.oraclevcn.com, corp.example.com. :param dns_zone: The dns_zone of this PrivateSourceDnsZone. @@ -68,7 +68,7 @@ def dns_zone(self, dns_zone): def description(self): """ Gets the description of this PrivateSourceDnsZone. - Description of private source dns zone. + Description of the private source DNS zone. :return: The description of this PrivateSourceDnsZone. @@ -80,7 +80,7 @@ def description(self): def description(self, description): """ Sets the description of this PrivateSourceDnsZone. - Description of private source dns zone. + Description of the private source DNS zone. :param description: The description of this PrivateSourceDnsZone. diff --git a/src/oci/analytics/models/private_source_scan_host.py b/src/oci/analytics/models/private_source_scan_host.py index f9541dd8e5..fe03c57a11 100644 --- a/src/oci/analytics/models/private_source_scan_host.py +++ b/src/oci/analytics/models/private_source_scan_host.py @@ -12,7 +12,7 @@ @init_model_state_from_kwargs class PrivateSourceScanHost(object): """ - Private source Scan Hostname model. + Private source SCAN hostname model. """ def __init__(self, **kwargs): @@ -51,7 +51,7 @@ def __init__(self, **kwargs): def scan_hostname(self): """ **[Required]** Gets the scan_hostname of this PrivateSourceScanHost. - Private Source Scan hostname. Ex: db01-scan.corp.example.com, prd-db01-scan.mycompany.com. + Private source SCAN hostname. For example: db01-scan.corp.example.com, prd-db01-scan.mycompany.com. :return: The scan_hostname of this PrivateSourceScanHost. @@ -63,7 +63,7 @@ def scan_hostname(self): def scan_hostname(self, scan_hostname): """ Sets the scan_hostname of this PrivateSourceScanHost. - Private Source Scan hostname. Ex: db01-scan.corp.example.com, prd-db01-scan.mycompany.com. + Private source SCAN hostname. For example: db01-scan.corp.example.com, prd-db01-scan.mycompany.com. :param scan_hostname: The scan_hostname of this PrivateSourceScanHost. @@ -75,7 +75,7 @@ def scan_hostname(self, scan_hostname): def scan_port(self): """ **[Required]** Gets the scan_port of this PrivateSourceScanHost. - Private Source Scan host port. This is the source port where SCAN protocol will get connected (e.g. 1521). + Private source SCAN host port. This is the source port where the SCAN protocol connects (for example, 1521). :return: The scan_port of this PrivateSourceScanHost. @@ -87,7 +87,7 @@ def scan_port(self): def scan_port(self, scan_port): """ Sets the scan_port of this PrivateSourceScanHost. - Private Source Scan host port. This is the source port where SCAN protocol will get connected (e.g. 1521). + Private source SCAN host port. This is the source port where the SCAN protocol connects (for example, 1521). :param scan_port: The scan_port of this PrivateSourceScanHost. @@ -99,7 +99,7 @@ def scan_port(self, scan_port): def description(self): """ Gets the description of this PrivateSourceScanHost. - Description of private source scan host zone. + Description of private source SCAN host zone. :return: The description of this PrivateSourceScanHost. @@ -111,7 +111,7 @@ def description(self): def description(self, description): """ Sets the description of this PrivateSourceScanHost. - Description of private source scan host zone. + Description of private source SCAN host zone. :param description: The description of this PrivateSourceScanHost. diff --git a/src/oci/analytics/models/public_endpoint_details.py b/src/oci/analytics/models/public_endpoint_details.py index f6af3bbf33..19afdac9a0 100644 --- a/src/oci/analytics/models/public_endpoint_details.py +++ b/src/oci/analytics/models/public_endpoint_details.py @@ -116,7 +116,7 @@ def whitelisted_vcns(self, whitelisted_vcns): def whitelisted_services(self): """ Gets the whitelisted_services of this PublicEndpointDetails. - Oracle Cloud Services that are allowed to access this Analytics instance. + Oracle Cloud services that are allowed to access this Analytics instance. Allowed values for items in this list are: "ALL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -131,7 +131,7 @@ def whitelisted_services(self): def whitelisted_services(self, whitelisted_services): """ Sets the whitelisted_services of this PublicEndpointDetails. - Oracle Cloud Services that are allowed to access this Analytics instance. + Oracle Cloud services that are allowed to access this Analytics instance. :param whitelisted_services: The whitelisted_services of this PublicEndpointDetails. diff --git a/src/oci/analytics/models/set_feature_bundle_details.py b/src/oci/analytics/models/set_feature_bundle_details.py index d14f438313..fad5e87f88 100644 --- a/src/oci/analytics/models/set_feature_bundle_details.py +++ b/src/oci/analytics/models/set_feature_bundle_details.py @@ -23,6 +23,10 @@ class SetFeatureBundleDetails(object): #: This constant has a value of "FAW_FREE" FEATURE_BUNDLE_FAW_FREE = "FAW_FREE" + #: A constant which can be used with the feature_bundle property of a SetFeatureBundleDetails. + #: This constant has a value of "FDI_BASE" + FEATURE_BUNDLE_FDI_BASE = "FDI_BASE" + #: A constant which can be used with the feature_bundle property of a SetFeatureBundleDetails. #: This constant has a value of "EE_EMBEDDED" FEATURE_BUNDLE_EE_EMBEDDED = "EE_EMBEDDED" @@ -38,7 +42,7 @@ def __init__(self, **kwargs): :param feature_bundle: The value to assign to the feature_bundle property of this SetFeatureBundleDetails. - Allowed values for this property are: "FAW_PAID", "FAW_FREE", "EE_EMBEDDED", "SE_EMBEDDED" + Allowed values for this property are: "FAW_PAID", "FAW_FREE", "FDI_BASE", "EE_EMBEDDED", "SE_EMBEDDED" :type feature_bundle: str """ @@ -56,7 +60,7 @@ def feature_bundle(self): Gets the feature_bundle of this SetFeatureBundleDetails. The feature set of an Analytics instance. - Allowed values for this property are: "FAW_PAID", "FAW_FREE", "EE_EMBEDDED", "SE_EMBEDDED" + Allowed values for this property are: "FAW_PAID", "FAW_FREE", "FDI_BASE", "EE_EMBEDDED", "SE_EMBEDDED" :return: The feature_bundle of this SetFeatureBundleDetails. @@ -74,7 +78,7 @@ def feature_bundle(self, feature_bundle): :param feature_bundle: The feature_bundle of this SetFeatureBundleDetails. :type: str """ - allowed_values = ["FAW_PAID", "FAW_FREE", "EE_EMBEDDED", "SE_EMBEDDED"] + allowed_values = ["FAW_PAID", "FAW_FREE", "FDI_BASE", "EE_EMBEDDED", "SE_EMBEDDED"] if not value_allowed_none_or_none_sentinel(feature_bundle, allowed_values): raise ValueError( f"Invalid value for `feature_bundle`, must be None or one of {allowed_values}" diff --git a/src/oci/analytics/models/set_kms_key_details.py b/src/oci/analytics/models/set_kms_key_details.py index c77e66fcc7..49c37766bb 100644 --- a/src/oci/analytics/models/set_kms_key_details.py +++ b/src/oci/analytics/models/set_kms_key_details.py @@ -12,7 +12,7 @@ @init_model_state_from_kwargs class SetKmsKeyDetails(object): """ - Input payload to reset the OCI Vault encryption key. + Input payload to reset the OCI vault encryption key. """ def __init__(self, **kwargs): @@ -37,7 +37,7 @@ def __init__(self, **kwargs): def kms_key_id(self): """ **[Required]** Gets the kms_key_id of this SetKmsKeyDetails. - OCID of the OCI Vault Key encrypting the customer data stored in this Analytics instance. An empty value indicates Oracle managed default encryption (null is not supported in this API). + OCID of the OCI vault key encrypting the customer data stored in this Analytics instance. An empty value indicates the default Oracle-managed encryption (this API doesn't support null). :return: The kms_key_id of this SetKmsKeyDetails. @@ -49,7 +49,7 @@ def kms_key_id(self): def kms_key_id(self, kms_key_id): """ Sets the kms_key_id of this SetKmsKeyDetails. - OCID of the OCI Vault Key encrypting the customer data stored in this Analytics instance. An empty value indicates Oracle managed default encryption (null is not supported in this API). + OCID of the OCI vault key encrypting the customer data stored in this Analytics instance. An empty value indicates the default Oracle-managed encryption (this API doesn't support null). :param kms_key_id: The kms_key_id of this SetKmsKeyDetails. diff --git a/src/oci/analytics/models/update_analytics_instance_details.py b/src/oci/analytics/models/update_analytics_instance_details.py index 7764066967..447b304a57 100644 --- a/src/oci/analytics/models/update_analytics_instance_details.py +++ b/src/oci/analytics/models/update_analytics_instance_details.py @@ -12,8 +12,8 @@ @init_model_state_from_kwargs class UpdateAnalyticsInstanceDetails(object): """ - Input payload to update an Analytics instance. Fields that are not provided - will not be updated. + Input payload to update an Analytics instance. Fields that aren't provided + won't be updated. """ #: A constant which can be used with the license_type property of a UpdateAnalyticsInstanceDetails. @@ -246,7 +246,7 @@ def freeform_tags(self, freeform_tags): def update_channel(self): """ Gets the update_channel of this UpdateAnalyticsInstanceDetails. - Analytics instance update channel. + The Analytics instance update cycle. Allowed values for this property are: "REGULAR", "EARLY", "PHASE_2", "PHASE_1" @@ -260,7 +260,7 @@ def update_channel(self): def update_channel(self, update_channel): """ Sets the update_channel of this UpdateAnalyticsInstanceDetails. - Analytics instance update channel. + The Analytics instance update cycle. :param update_channel: The update_channel of this UpdateAnalyticsInstanceDetails. diff --git a/src/oci/analytics/models/update_private_access_channel_details.py b/src/oci/analytics/models/update_private_access_channel_details.py index 2f5555cb28..98c5d89862 100644 --- a/src/oci/analytics/models/update_private_access_channel_details.py +++ b/src/oci/analytics/models/update_private_access_channel_details.py @@ -12,7 +12,7 @@ @init_model_state_from_kwargs class UpdatePrivateAccessChannelDetails(object): """ - Input payload to update a Private Access Channel. + Input payload to update a private access channel. """ def __init__(self, **kwargs): @@ -72,7 +72,7 @@ def __init__(self, **kwargs): def display_name(self): """ Gets the display_name of this UpdatePrivateAccessChannelDetails. - Display Name of the Private Access Channel. + Display name of the private access channel. :return: The display_name of this UpdatePrivateAccessChannelDetails. @@ -84,7 +84,7 @@ def display_name(self): def display_name(self, display_name): """ Sets the display_name of this UpdatePrivateAccessChannelDetails. - Display Name of the Private Access Channel. + Display name of the private access channel. :param display_name: The display_name of this UpdatePrivateAccessChannelDetails. @@ -96,7 +96,7 @@ def display_name(self, display_name): def vcn_id(self): """ Gets the vcn_id of this UpdatePrivateAccessChannelDetails. - OCID of the customer VCN peered with private access channel. + OCID of the customer VCN peered with the private access channel. :return: The vcn_id of this UpdatePrivateAccessChannelDetails. @@ -108,7 +108,7 @@ def vcn_id(self): def vcn_id(self, vcn_id): """ Sets the vcn_id of this UpdatePrivateAccessChannelDetails. - OCID of the customer VCN peered with private access channel. + OCID of the customer VCN peered with the private access channel. :param vcn_id: The vcn_id of this UpdatePrivateAccessChannelDetails. @@ -120,7 +120,7 @@ def vcn_id(self, vcn_id): def subnet_id(self): """ Gets the subnet_id of this UpdatePrivateAccessChannelDetails. - OCID of the customer subnet connected to private access channel. + OCID of the customer subnet connected to the private access channel. :return: The subnet_id of this UpdatePrivateAccessChannelDetails. @@ -132,7 +132,7 @@ def subnet_id(self): def subnet_id(self, subnet_id): """ Sets the subnet_id of this UpdatePrivateAccessChannelDetails. - OCID of the customer subnet connected to private access channel. + OCID of the customer subnet connected to the private access channel. :param subnet_id: The subnet_id of this UpdatePrivateAccessChannelDetails. @@ -144,9 +144,9 @@ def subnet_id(self, subnet_id): def private_source_dns_zones(self): """ Gets the private_source_dns_zones of this UpdatePrivateAccessChannelDetails. - List of Private Source DNS zones registered with Private Access Channel, - where datasource hostnames from these dns zones / domains will be resolved in the peered VCN for access from Analytics Instance. - Min of 1 is required and Max of 30 Private Source DNS zones can be registered. + List of private source DNS zones registered with the private access channel. The + datasource hostnames from these DNS zones / domains will be resolved in the peered VCN for access from the Analytics instance. + Minimum 1 private source is required. Maximum 30 private source DNS zones can be registered. :return: The private_source_dns_zones of this UpdatePrivateAccessChannelDetails. @@ -158,9 +158,9 @@ def private_source_dns_zones(self): def private_source_dns_zones(self, private_source_dns_zones): """ Sets the private_source_dns_zones of this UpdatePrivateAccessChannelDetails. - List of Private Source DNS zones registered with Private Access Channel, - where datasource hostnames from these dns zones / domains will be resolved in the peered VCN for access from Analytics Instance. - Min of 1 is required and Max of 30 Private Source DNS zones can be registered. + List of private source DNS zones registered with the private access channel. The + datasource hostnames from these DNS zones / domains will be resolved in the peered VCN for access from the Analytics instance. + Minimum 1 private source is required. Maximum 30 private source DNS zones can be registered. :param private_source_dns_zones: The private_source_dns_zones of this UpdatePrivateAccessChannelDetails. @@ -172,7 +172,7 @@ def private_source_dns_zones(self, private_source_dns_zones): def private_source_scan_hosts(self): """ Gets the private_source_scan_hosts of this UpdatePrivateAccessChannelDetails. - List of Private Source DB SCAN hosts registered with Private Access Channel for access from Analytics Instance. + List of private source database SCAN hosts registered with the private access channel for access from the Analytics instance. :return: The private_source_scan_hosts of this UpdatePrivateAccessChannelDetails. @@ -184,7 +184,7 @@ def private_source_scan_hosts(self): def private_source_scan_hosts(self, private_source_scan_hosts): """ Sets the private_source_scan_hosts of this UpdatePrivateAccessChannelDetails. - List of Private Source DB SCAN hosts registered with Private Access Channel for access from Analytics Instance. + List of private source database SCAN hosts registered with the private access channel for access from the Analytics instance. :param private_source_scan_hosts: The private_source_scan_hosts of this UpdatePrivateAccessChannelDetails. @@ -196,7 +196,7 @@ def private_source_scan_hosts(self, private_source_scan_hosts): def network_security_group_ids(self): """ Gets the network_security_group_ids of this UpdatePrivateAccessChannelDetails. - Network Security Group OCIDs for an Analytics instance. + Network Security Group OCIDs for the Analytics instance. :return: The network_security_group_ids of this UpdatePrivateAccessChannelDetails. @@ -208,7 +208,7 @@ def network_security_group_ids(self): def network_security_group_ids(self, network_security_group_ids): """ Sets the network_security_group_ids of this UpdatePrivateAccessChannelDetails. - Network Security Group OCIDs for an Analytics instance. + Network Security Group OCIDs for the Analytics instance. :param network_security_group_ids: The network_security_group_ids of this UpdatePrivateAccessChannelDetails. diff --git a/src/oci/analytics/models/update_resource_group_details.py b/src/oci/analytics/models/update_resource_group_details.py new file mode 100644 index 0000000000..46f2e6ff57 --- /dev/null +++ b/src/oci/analytics/models/update_resource_group_details.py @@ -0,0 +1,163 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190331 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class UpdateResourceGroupDetails(object): + """ + Input payload to update a resource group. + """ + + def __init__(self, **kwargs): + """ + Initializes a new UpdateResourceGroupDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param resource_name: + The value to assign to the resource_name property of this UpdateResourceGroupDetails. + :type resource_name: str + + :param display_name: + The value to assign to the display_name property of this UpdateResourceGroupDetails. + :type display_name: str + + :param description: + The value to assign to the description property of this UpdateResourceGroupDetails. + :type description: str + + :param capacity: + The value to assign to the capacity property of this UpdateResourceGroupDetails. + :type capacity: int + + """ + self.swagger_types = { + 'resource_name': 'str', + 'display_name': 'str', + 'description': 'str', + 'capacity': 'int' + } + self.attribute_map = { + 'resource_name': 'resourceName', + 'display_name': 'displayName', + 'description': 'description', + 'capacity': 'capacity' + } + self._resource_name = None + self._display_name = None + self._description = None + self._capacity = None + + @property + def resource_name(self): + """ + **[Required]** Gets the resource_name of this UpdateResourceGroupDetails. + Meaningful name of resource group for end user + + + :return: The resource_name of this UpdateResourceGroupDetails. + :rtype: str + """ + return self._resource_name + + @resource_name.setter + def resource_name(self, resource_name): + """ + Sets the resource_name of this UpdateResourceGroupDetails. + Meaningful name of resource group for end user + + + :param resource_name: The resource_name of this UpdateResourceGroupDetails. + :type: str + """ + self._resource_name = resource_name + + @property + def display_name(self): + """ + Gets the display_name of this UpdateResourceGroupDetails. + Meaningful name of resource group for end user + + + :return: The display_name of this UpdateResourceGroupDetails. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this UpdateResourceGroupDetails. + Meaningful name of resource group for end user + + + :param display_name: The display_name of this UpdateResourceGroupDetails. + :type: str + """ + self._display_name = display_name + + @property + def description(self): + """ + Gets the description of this UpdateResourceGroupDetails. + Optional description of the resource group + + + :return: The description of this UpdateResourceGroupDetails. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this UpdateResourceGroupDetails. + Optional description of the resource group + + + :param description: The description of this UpdateResourceGroupDetails. + :type: str + """ + self._description = description + + @property + def capacity(self): + """ + **[Required]** Gets the capacity of this UpdateResourceGroupDetails. + The capacity (in OCPU's) to be allocated for this resource. + + + :return: The capacity of this UpdateResourceGroupDetails. + :rtype: int + """ + return self._capacity + + @capacity.setter + def capacity(self, capacity): + """ + Sets the capacity of this UpdateResourceGroupDetails. + The capacity (in OCPU's) to be allocated for this resource. + + + :param capacity: The capacity of this UpdateResourceGroupDetails. + :type: int + """ + self._capacity = capacity + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/analytics/models/update_vanity_url_details.py b/src/oci/analytics/models/update_vanity_url_details.py index 00d7a10b39..4d96e8b830 100644 --- a/src/oci/analytics/models/update_vanity_url_details.py +++ b/src/oci/analytics/models/update_vanity_url_details.py @@ -12,7 +12,7 @@ @init_model_state_from_kwargs class UpdateVanityUrlDetails(object): """ - Input payload to update a vanity url. + Input payload to update a vanity URL. """ def __init__(self, **kwargs): @@ -58,7 +58,7 @@ def __init__(self, **kwargs): def passphrase(self): """ Gets the passphrase of this UpdateVanityUrlDetails. - Passphrase for the PEM Private key (if any). + Passphrase for the PEM private key (if any). :return: The passphrase of this UpdateVanityUrlDetails. @@ -70,7 +70,7 @@ def passphrase(self): def passphrase(self, passphrase): """ Sets the passphrase of this UpdateVanityUrlDetails. - Passphrase for the PEM Private key (if any). + Passphrase for the PEM private key (if any). :param passphrase: The passphrase of this UpdateVanityUrlDetails. @@ -82,7 +82,7 @@ def passphrase(self, passphrase): def private_key(self): """ **[Required]** Gets the private_key of this UpdateVanityUrlDetails. - PEM Private key for HTTPS connections. + PEM private key for HTTPS connections. :return: The private_key of this UpdateVanityUrlDetails. @@ -94,7 +94,7 @@ def private_key(self): def private_key(self, private_key): """ Sets the private_key of this UpdateVanityUrlDetails. - PEM Private key for HTTPS connections. + PEM private key for HTTPS connections. :param private_key: The private_key of this UpdateVanityUrlDetails. @@ -130,7 +130,7 @@ def public_certificate(self, public_certificate): def ca_certificate(self): """ **[Required]** Gets the ca_certificate of this UpdateVanityUrlDetails. - PEM CA certificate(s) for HTTPS connections. This may include multiple PEM certificates. + PEM CA certificates for HTTPS connections. This may include multiple PEM certificates. :return: The ca_certificate of this UpdateVanityUrlDetails. @@ -142,7 +142,7 @@ def ca_certificate(self): def ca_certificate(self, ca_certificate): """ Sets the ca_certificate of this UpdateVanityUrlDetails. - PEM CA certificate(s) for HTTPS connections. This may include multiple PEM certificates. + PEM CA certificates for HTTPS connections. This may include multiple PEM certificates. :param ca_certificate: The ca_certificate of this UpdateVanityUrlDetails. diff --git a/src/oci/analytics/models/vanity_url_details.py b/src/oci/analytics/models/vanity_url_details.py index 46c20af393..d7c69ad7b9 100644 --- a/src/oci/analytics/models/vanity_url_details.py +++ b/src/oci/analytics/models/vanity_url_details.py @@ -12,7 +12,7 @@ @init_model_state_from_kwargs class VanityUrlDetails(object): """ - Vanity url configuration details. + Vanity URL configuration details. """ def __init__(self, **kwargs): @@ -65,7 +65,7 @@ def __init__(self, **kwargs): def key(self): """ Gets the key of this VanityUrlDetails. - The vanity url unique identifier key. + The vanity URL unique identifier key. :return: The key of this VanityUrlDetails. @@ -77,7 +77,7 @@ def key(self): def key(self, key): """ Sets the key of this VanityUrlDetails. - The vanity url unique identifier key. + The vanity URL unique identifier key. :param key: The key of this VanityUrlDetails. @@ -89,7 +89,7 @@ def key(self, key): def description(self): """ Gets the description of this VanityUrlDetails. - Description of the vanity url. + Description of the vanity URL. :return: The description of this VanityUrlDetails. @@ -101,7 +101,7 @@ def description(self): def description(self, description): """ Sets the description of this VanityUrlDetails. - Description of the vanity url. + Description of the vanity URL. :param description: The description of this VanityUrlDetails. @@ -113,7 +113,7 @@ def description(self, description): def urls(self): """ Gets the urls of this VanityUrlDetails. - List of urls supported by this vanity URL definition (max of 3). + List of URLs supported by this vanity URL definition (maximum of 3). :return: The urls of this VanityUrlDetails. @@ -125,7 +125,7 @@ def urls(self): def urls(self, urls): """ Sets the urls of this VanityUrlDetails. - List of urls supported by this vanity URL definition (max of 3). + List of URLs supported by this vanity URL definition (maximum of 3). :param urls: The urls of this VanityUrlDetails. @@ -137,7 +137,7 @@ def urls(self, urls): def hosts(self): """ Gets the hosts of this VanityUrlDetails. - List of fully qualified hostnames supported by this vanity URL definition (max of 3). + List of fully-qualified hostnames supported by this vanity URL definition (maximum of 3). :return: The hosts of this VanityUrlDetails. @@ -149,7 +149,7 @@ def hosts(self): def hosts(self, hosts): """ Sets the hosts of this VanityUrlDetails. - List of fully qualified hostnames supported by this vanity URL definition (max of 3). + List of fully-qualified hostnames supported by this vanity URL definition (maximum of 3). :param hosts: The hosts of this VanityUrlDetails. diff --git a/src/oci/analytics/models/work_request.py b/src/oci/analytics/models/work_request.py index 849ff83937..165798f8e4 100644 --- a/src/oci/analytics/models/work_request.py +++ b/src/oci/analytics/models/work_request.py @@ -71,6 +71,22 @@ class WorkRequest(object): #: This constant has a value of "UPDATE_INSTANCE_ENCRYPTION_KEY" OPERATION_TYPE_UPDATE_INSTANCE_ENCRYPTION_KEY = "UPDATE_INSTANCE_ENCRYPTION_KEY" + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "CREATE_RESOURCE_GROUP" + OPERATION_TYPE_CREATE_RESOURCE_GROUP = "CREATE_RESOURCE_GROUP" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "UPDATE_RESOURCE_GROUP" + OPERATION_TYPE_UPDATE_RESOURCE_GROUP = "UPDATE_RESOURCE_GROUP" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "DELETE_RESOURCE_GROUP" + OPERATION_TYPE_DELETE_RESOURCE_GROUP = "DELETE_RESOURCE_GROUP" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "SET_FEATURE_SET" + OPERATION_TYPE_SET_FEATURE_SET = "SET_FEATURE_SET" + #: A constant which can be used with the status property of a WorkRequest. #: This constant has a value of "ACCEPTED" STATUS_ACCEPTED = "ACCEPTED" @@ -106,7 +122,7 @@ def __init__(self, **kwargs): :param operation_type: The value to assign to the operation_type property of this WorkRequest. - Allowed values for this property are: "CREATE_ANALYTICS_INSTANCE", "DELETE_ANALYTICS_INSTANCE", "START_ANALYTICS_INSTANCE", "STOP_ANALYTICS_INSTANCE", "SCALE_ANALYTICS_INSTANCE", "CHANGE_ANALYTICS_INSTANCE_COMPARTMENT", "CHANGE_ANALYTICS_INSTANCE_NETWORK_ENDPOINT", "CREATE_VANITY_URL", "UPDATE_VANITY_URL", "DELETE_VANITY_URL", "CREATE_PRIVATE_ACCESS_CHANNEL", "UPDATE_PRIVATE_ACCESS_CHANNEL", "DELETE_PRIVATE_ACCESS_CHANNEL", "UPDATE_INSTANCE_ENCRYPTION_KEY", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATE_ANALYTICS_INSTANCE", "DELETE_ANALYTICS_INSTANCE", "START_ANALYTICS_INSTANCE", "STOP_ANALYTICS_INSTANCE", "SCALE_ANALYTICS_INSTANCE", "CHANGE_ANALYTICS_INSTANCE_COMPARTMENT", "CHANGE_ANALYTICS_INSTANCE_NETWORK_ENDPOINT", "CREATE_VANITY_URL", "UPDATE_VANITY_URL", "DELETE_VANITY_URL", "CREATE_PRIVATE_ACCESS_CHANNEL", "UPDATE_PRIVATE_ACCESS_CHANNEL", "DELETE_PRIVATE_ACCESS_CHANNEL", "UPDATE_INSTANCE_ENCRYPTION_KEY", "CREATE_RESOURCE_GROUP", "UPDATE_RESOURCE_GROUP", "DELETE_RESOURCE_GROUP", "SET_FEATURE_SET", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type operation_type: str @@ -203,7 +219,7 @@ def operation_type(self): **[Required]** Gets the operation_type of this WorkRequest. The operation performed by the work request. - Allowed values for this property are: "CREATE_ANALYTICS_INSTANCE", "DELETE_ANALYTICS_INSTANCE", "START_ANALYTICS_INSTANCE", "STOP_ANALYTICS_INSTANCE", "SCALE_ANALYTICS_INSTANCE", "CHANGE_ANALYTICS_INSTANCE_COMPARTMENT", "CHANGE_ANALYTICS_INSTANCE_NETWORK_ENDPOINT", "CREATE_VANITY_URL", "UPDATE_VANITY_URL", "DELETE_VANITY_URL", "CREATE_PRIVATE_ACCESS_CHANNEL", "UPDATE_PRIVATE_ACCESS_CHANNEL", "DELETE_PRIVATE_ACCESS_CHANNEL", "UPDATE_INSTANCE_ENCRYPTION_KEY", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATE_ANALYTICS_INSTANCE", "DELETE_ANALYTICS_INSTANCE", "START_ANALYTICS_INSTANCE", "STOP_ANALYTICS_INSTANCE", "SCALE_ANALYTICS_INSTANCE", "CHANGE_ANALYTICS_INSTANCE_COMPARTMENT", "CHANGE_ANALYTICS_INSTANCE_NETWORK_ENDPOINT", "CREATE_VANITY_URL", "UPDATE_VANITY_URL", "DELETE_VANITY_URL", "CREATE_PRIVATE_ACCESS_CHANNEL", "UPDATE_PRIVATE_ACCESS_CHANNEL", "DELETE_PRIVATE_ACCESS_CHANNEL", "UPDATE_INSTANCE_ENCRYPTION_KEY", "CREATE_RESOURCE_GROUP", "UPDATE_RESOURCE_GROUP", "DELETE_RESOURCE_GROUP", "SET_FEATURE_SET", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -222,7 +238,7 @@ def operation_type(self, operation_type): :param operation_type: The operation_type of this WorkRequest. :type: str """ - allowed_values = ["CREATE_ANALYTICS_INSTANCE", "DELETE_ANALYTICS_INSTANCE", "START_ANALYTICS_INSTANCE", "STOP_ANALYTICS_INSTANCE", "SCALE_ANALYTICS_INSTANCE", "CHANGE_ANALYTICS_INSTANCE_COMPARTMENT", "CHANGE_ANALYTICS_INSTANCE_NETWORK_ENDPOINT", "CREATE_VANITY_URL", "UPDATE_VANITY_URL", "DELETE_VANITY_URL", "CREATE_PRIVATE_ACCESS_CHANNEL", "UPDATE_PRIVATE_ACCESS_CHANNEL", "DELETE_PRIVATE_ACCESS_CHANNEL", "UPDATE_INSTANCE_ENCRYPTION_KEY"] + allowed_values = ["CREATE_ANALYTICS_INSTANCE", "DELETE_ANALYTICS_INSTANCE", "START_ANALYTICS_INSTANCE", "STOP_ANALYTICS_INSTANCE", "SCALE_ANALYTICS_INSTANCE", "CHANGE_ANALYTICS_INSTANCE_COMPARTMENT", "CHANGE_ANALYTICS_INSTANCE_NETWORK_ENDPOINT", "CREATE_VANITY_URL", "UPDATE_VANITY_URL", "DELETE_VANITY_URL", "CREATE_PRIVATE_ACCESS_CHANNEL", "UPDATE_PRIVATE_ACCESS_CHANNEL", "DELETE_PRIVATE_ACCESS_CHANNEL", "UPDATE_INSTANCE_ENCRYPTION_KEY", "CREATE_RESOURCE_GROUP", "UPDATE_RESOURCE_GROUP", "DELETE_RESOURCE_GROUP", "SET_FEATURE_SET"] if not value_allowed_none_or_none_sentinel(operation_type, allowed_values): operation_type = 'UNKNOWN_ENUM_VALUE' self._operation_type = operation_type diff --git a/src/oci/analytics/models/work_request_error.py b/src/oci/analytics/models/work_request_error.py index 2ab0e4bb38..6aa90a88c0 100644 --- a/src/oci/analytics/models/work_request_error.py +++ b/src/oci/analytics/models/work_request_error.py @@ -51,7 +51,7 @@ def __init__(self, **kwargs): def code(self): """ **[Required]** Gets the code of this WorkRequestError. - A short error code that defines the error, meant for programmatic parsing. + A short error code that defines the error, for programmatic parsing. :return: The code of this WorkRequestError. @@ -63,7 +63,7 @@ def code(self): def code(self, code): """ Sets the code of this WorkRequestError. - A short error code that defines the error, meant for programmatic parsing. + A short error code that defines the error, for programmatic parsing. :param code: The code of this WorkRequestError. @@ -99,7 +99,7 @@ def message(self, message): def timestamp(self): """ **[Required]** Gets the timestamp of this WorkRequestError. - The date and time the error occured, in the format defined by RFC3339. + The date and time the error occurred, in the format defined by RFC3339. Example: `2016-08-25T21:10:29.600Z` @@ -113,7 +113,7 @@ def timestamp(self): def timestamp(self, timestamp): """ Sets the timestamp of this WorkRequestError. - The date and time the error occured, in the format defined by RFC3339. + The date and time the error occurred, in the format defined by RFC3339. Example: `2016-08-25T21:10:29.600Z` diff --git a/src/oci/analytics/models/work_request_log.py b/src/oci/analytics/models/work_request_log.py index a01c9556b3..7319a46ca9 100644 --- a/src/oci/analytics/models/work_request_log.py +++ b/src/oci/analytics/models/work_request_log.py @@ -68,7 +68,7 @@ def message(self, message): def timestamp(self): """ **[Required]** Gets the timestamp of this WorkRequestLog. - The date and time the log entry occured, in the format defined by RFC3339. + The date and time the log entry occurred, in the format defined by RFC3339. Example: `2016-08-25T21:10:29.600Z` @@ -82,7 +82,7 @@ def timestamp(self): def timestamp(self, timestamp): """ Sets the timestamp of this WorkRequestLog. - The date and time the log entry occured, in the format defined by RFC3339. + The date and time the log entry occurred, in the format defined by RFC3339. Example: `2016-08-25T21:10:29.600Z` diff --git a/src/oci/analytics/models/work_request_resource.py b/src/oci/analytics/models/work_request_resource.py index addb984d28..937aec3389 100644 --- a/src/oci/analytics/models/work_request_resource.py +++ b/src/oci/analytics/models/work_request_resource.py @@ -71,6 +71,18 @@ class WorkRequestResource(object): #: This constant has a value of "NONE" ACTION_RESULT_NONE = "NONE" + #: A constant which can be used with the action_result property of a WorkRequestResource. + #: This constant has a value of "RESOURCE_GROUP_CREATED" + ACTION_RESULT_RESOURCE_GROUP_CREATED = "RESOURCE_GROUP_CREATED" + + #: A constant which can be used with the action_result property of a WorkRequestResource. + #: This constant has a value of "RESOURCE_GROUP_UPDATED" + ACTION_RESULT_RESOURCE_GROUP_UPDATED = "RESOURCE_GROUP_UPDATED" + + #: A constant which can be used with the action_result property of a WorkRequestResource. + #: This constant has a value of "RESOURCE_GROUP_DELETED" + ACTION_RESULT_RESOURCE_GROUP_DELETED = "RESOURCE_GROUP_DELETED" + #: A constant which can be used with the resource_type property of a WorkRequestResource. #: This constant has a value of "ANALYTICS_INSTANCE" RESOURCE_TYPE_ANALYTICS_INSTANCE = "ANALYTICS_INSTANCE" @@ -82,7 +94,7 @@ def __init__(self, **kwargs): :param action_result: The value to assign to the action_result property of this WorkRequestResource. - Allowed values for this property are: "COMPARTMENT_CHANGED", "CREATED", "DELETED", "STARTED", "STOPPED", "SCALED", "NETWORK_ENDPOINT_CHANGED", "VANITY_URL_CREATED", "VANITY_URL_UPDATED", "VANITY_URL_DELETED", "PRIVATE_ACCESS_CHANNEL_CREATED", "PRIVATE_ACCESS_CHANNEL_UPDATED", "PRIVATE_ACCESS_CHANNEL_DELETED", "NONE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "COMPARTMENT_CHANGED", "CREATED", "DELETED", "STARTED", "STOPPED", "SCALED", "NETWORK_ENDPOINT_CHANGED", "VANITY_URL_CREATED", "VANITY_URL_UPDATED", "VANITY_URL_DELETED", "PRIVATE_ACCESS_CHANNEL_CREATED", "PRIVATE_ACCESS_CHANNEL_UPDATED", "PRIVATE_ACCESS_CHANNEL_DELETED", "NONE", "RESOURCE_GROUP_CREATED", "RESOURCE_GROUP_UPDATED", "RESOURCE_GROUP_DELETED", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type action_result: str @@ -129,9 +141,9 @@ def __init__(self, **kwargs): def action_result(self): """ **[Required]** Gets the action_result of this WorkRequestResource. - The way in which this resource was affected by this work request. + The way this resource was affected by this work request. - Allowed values for this property are: "COMPARTMENT_CHANGED", "CREATED", "DELETED", "STARTED", "STOPPED", "SCALED", "NETWORK_ENDPOINT_CHANGED", "VANITY_URL_CREATED", "VANITY_URL_UPDATED", "VANITY_URL_DELETED", "PRIVATE_ACCESS_CHANNEL_CREATED", "PRIVATE_ACCESS_CHANNEL_UPDATED", "PRIVATE_ACCESS_CHANNEL_DELETED", "NONE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "COMPARTMENT_CHANGED", "CREATED", "DELETED", "STARTED", "STOPPED", "SCALED", "NETWORK_ENDPOINT_CHANGED", "VANITY_URL_CREATED", "VANITY_URL_UPDATED", "VANITY_URL_DELETED", "PRIVATE_ACCESS_CHANNEL_CREATED", "PRIVATE_ACCESS_CHANNEL_UPDATED", "PRIVATE_ACCESS_CHANNEL_DELETED", "NONE", "RESOURCE_GROUP_CREATED", "RESOURCE_GROUP_UPDATED", "RESOURCE_GROUP_DELETED", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -144,13 +156,13 @@ def action_result(self): def action_result(self, action_result): """ Sets the action_result of this WorkRequestResource. - The way in which this resource was affected by this work request. + The way this resource was affected by this work request. :param action_result: The action_result of this WorkRequestResource. :type: str """ - allowed_values = ["COMPARTMENT_CHANGED", "CREATED", "DELETED", "STARTED", "STOPPED", "SCALED", "NETWORK_ENDPOINT_CHANGED", "VANITY_URL_CREATED", "VANITY_URL_UPDATED", "VANITY_URL_DELETED", "PRIVATE_ACCESS_CHANNEL_CREATED", "PRIVATE_ACCESS_CHANNEL_UPDATED", "PRIVATE_ACCESS_CHANNEL_DELETED", "NONE"] + allowed_values = ["COMPARTMENT_CHANGED", "CREATED", "DELETED", "STARTED", "STOPPED", "SCALED", "NETWORK_ENDPOINT_CHANGED", "VANITY_URL_CREATED", "VANITY_URL_UPDATED", "VANITY_URL_DELETED", "PRIVATE_ACCESS_CHANNEL_CREATED", "PRIVATE_ACCESS_CHANNEL_UPDATED", "PRIVATE_ACCESS_CHANNEL_DELETED", "NONE", "RESOURCE_GROUP_CREATED", "RESOURCE_GROUP_UPDATED", "RESOURCE_GROUP_DELETED"] if not value_allowed_none_or_none_sentinel(action_result, allowed_values): action_result = 'UNKNOWN_ENUM_VALUE' self._action_result = action_result diff --git a/src/oci/analytics/models/work_request_summary.py b/src/oci/analytics/models/work_request_summary.py index 736e015eb3..2035cfbdce 100644 --- a/src/oci/analytics/models/work_request_summary.py +++ b/src/oci/analytics/models/work_request_summary.py @@ -71,6 +71,22 @@ class WorkRequestSummary(object): #: This constant has a value of "UPDATE_INSTANCE_ENCRYPTION_KEY" OPERATION_TYPE_UPDATE_INSTANCE_ENCRYPTION_KEY = "UPDATE_INSTANCE_ENCRYPTION_KEY" + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "CREATE_RESOURCE_GROUP" + OPERATION_TYPE_CREATE_RESOURCE_GROUP = "CREATE_RESOURCE_GROUP" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "UPDATE_RESOURCE_GROUP" + OPERATION_TYPE_UPDATE_RESOURCE_GROUP = "UPDATE_RESOURCE_GROUP" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "DELETE_RESOURCE_GROUP" + OPERATION_TYPE_DELETE_RESOURCE_GROUP = "DELETE_RESOURCE_GROUP" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "SET_FEATURE_SET" + OPERATION_TYPE_SET_FEATURE_SET = "SET_FEATURE_SET" + #: A constant which can be used with the status property of a WorkRequestSummary. #: This constant has a value of "ACCEPTED" STATUS_ACCEPTED = "ACCEPTED" @@ -106,7 +122,7 @@ def __init__(self, **kwargs): :param operation_type: The value to assign to the operation_type property of this WorkRequestSummary. - Allowed values for this property are: "CREATE_ANALYTICS_INSTANCE", "DELETE_ANALYTICS_INSTANCE", "START_ANALYTICS_INSTANCE", "STOP_ANALYTICS_INSTANCE", "SCALE_ANALYTICS_INSTANCE", "CHANGE_ANALYTICS_INSTANCE_COMPARTMENT", "CHANGE_ANALYTICS_INSTANCE_NETWORK_ENDPOINT", "CREATE_VANITY_URL", "UPDATE_VANITY_URL", "DELETE_VANITY_URL", "CREATE_PRIVATE_ACCESS_CHANNEL", "UPDATE_PRIVATE_ACCESS_CHANNEL", "DELETE_PRIVATE_ACCESS_CHANNEL", "UPDATE_INSTANCE_ENCRYPTION_KEY", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATE_ANALYTICS_INSTANCE", "DELETE_ANALYTICS_INSTANCE", "START_ANALYTICS_INSTANCE", "STOP_ANALYTICS_INSTANCE", "SCALE_ANALYTICS_INSTANCE", "CHANGE_ANALYTICS_INSTANCE_COMPARTMENT", "CHANGE_ANALYTICS_INSTANCE_NETWORK_ENDPOINT", "CREATE_VANITY_URL", "UPDATE_VANITY_URL", "DELETE_VANITY_URL", "CREATE_PRIVATE_ACCESS_CHANNEL", "UPDATE_PRIVATE_ACCESS_CHANNEL", "DELETE_PRIVATE_ACCESS_CHANNEL", "UPDATE_INSTANCE_ENCRYPTION_KEY", "CREATE_RESOURCE_GROUP", "UPDATE_RESOURCE_GROUP", "DELETE_RESOURCE_GROUP", "SET_FEATURE_SET", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type operation_type: str @@ -196,7 +212,7 @@ def operation_type(self): **[Required]** Gets the operation_type of this WorkRequestSummary. The operation performed by the work request. - Allowed values for this property are: "CREATE_ANALYTICS_INSTANCE", "DELETE_ANALYTICS_INSTANCE", "START_ANALYTICS_INSTANCE", "STOP_ANALYTICS_INSTANCE", "SCALE_ANALYTICS_INSTANCE", "CHANGE_ANALYTICS_INSTANCE_COMPARTMENT", "CHANGE_ANALYTICS_INSTANCE_NETWORK_ENDPOINT", "CREATE_VANITY_URL", "UPDATE_VANITY_URL", "DELETE_VANITY_URL", "CREATE_PRIVATE_ACCESS_CHANNEL", "UPDATE_PRIVATE_ACCESS_CHANNEL", "DELETE_PRIVATE_ACCESS_CHANNEL", "UPDATE_INSTANCE_ENCRYPTION_KEY", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATE_ANALYTICS_INSTANCE", "DELETE_ANALYTICS_INSTANCE", "START_ANALYTICS_INSTANCE", "STOP_ANALYTICS_INSTANCE", "SCALE_ANALYTICS_INSTANCE", "CHANGE_ANALYTICS_INSTANCE_COMPARTMENT", "CHANGE_ANALYTICS_INSTANCE_NETWORK_ENDPOINT", "CREATE_VANITY_URL", "UPDATE_VANITY_URL", "DELETE_VANITY_URL", "CREATE_PRIVATE_ACCESS_CHANNEL", "UPDATE_PRIVATE_ACCESS_CHANNEL", "DELETE_PRIVATE_ACCESS_CHANNEL", "UPDATE_INSTANCE_ENCRYPTION_KEY", "CREATE_RESOURCE_GROUP", "UPDATE_RESOURCE_GROUP", "DELETE_RESOURCE_GROUP", "SET_FEATURE_SET", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -215,7 +231,7 @@ def operation_type(self, operation_type): :param operation_type: The operation_type of this WorkRequestSummary. :type: str """ - allowed_values = ["CREATE_ANALYTICS_INSTANCE", "DELETE_ANALYTICS_INSTANCE", "START_ANALYTICS_INSTANCE", "STOP_ANALYTICS_INSTANCE", "SCALE_ANALYTICS_INSTANCE", "CHANGE_ANALYTICS_INSTANCE_COMPARTMENT", "CHANGE_ANALYTICS_INSTANCE_NETWORK_ENDPOINT", "CREATE_VANITY_URL", "UPDATE_VANITY_URL", "DELETE_VANITY_URL", "CREATE_PRIVATE_ACCESS_CHANNEL", "UPDATE_PRIVATE_ACCESS_CHANNEL", "DELETE_PRIVATE_ACCESS_CHANNEL", "UPDATE_INSTANCE_ENCRYPTION_KEY"] + allowed_values = ["CREATE_ANALYTICS_INSTANCE", "DELETE_ANALYTICS_INSTANCE", "START_ANALYTICS_INSTANCE", "STOP_ANALYTICS_INSTANCE", "SCALE_ANALYTICS_INSTANCE", "CHANGE_ANALYTICS_INSTANCE_COMPARTMENT", "CHANGE_ANALYTICS_INSTANCE_NETWORK_ENDPOINT", "CREATE_VANITY_URL", "UPDATE_VANITY_URL", "DELETE_VANITY_URL", "CREATE_PRIVATE_ACCESS_CHANNEL", "UPDATE_PRIVATE_ACCESS_CHANNEL", "DELETE_PRIVATE_ACCESS_CHANNEL", "UPDATE_INSTANCE_ENCRYPTION_KEY", "CREATE_RESOURCE_GROUP", "UPDATE_RESOURCE_GROUP", "DELETE_RESOURCE_GROUP", "SET_FEATURE_SET"] if not value_allowed_none_or_none_sentinel(operation_type, allowed_values): operation_type = 'UNKNOWN_ENUM_VALUE' self._operation_type = operation_type diff --git a/src/oci/core/models/__init__.py b/src/oci/core/models/__init__.py index 1aeaac6581..1600865931 100644 --- a/src/oci/core/models/__init__.py +++ b/src/oci/core/models/__init__.py @@ -487,6 +487,7 @@ from .letter_of_authority import LetterOfAuthority from .licensing_config import LicensingConfig from .list_ip_inventory_details import ListIpInventoryDetails +from .loa_extension_data import LoaExtensionData from .local_peering_gateway import LocalPeeringGateway from .loop_back_drg_attachment_network_details import LoopBackDrgAttachmentNetworkDetails from .macsec_key import MacsecKey @@ -608,6 +609,7 @@ from .update_cpe_details import UpdateCpeDetails from .update_cross_connect_details import UpdateCrossConnectDetails from .update_cross_connect_group_details import UpdateCrossConnectGroupDetails +from .update_cross_connect_letter_of_authority_details import UpdateCrossConnectLetterOfAuthorityDetails from .update_dedicated_capacity_source_details import UpdateDedicatedCapacitySourceDetails from .update_dedicated_vm_host_details import UpdateDedicatedVmHostDetails from .update_dhcp_details import UpdateDhcpDetails @@ -1196,6 +1198,7 @@ "LetterOfAuthority": LetterOfAuthority, "LicensingConfig": LicensingConfig, "ListIpInventoryDetails": ListIpInventoryDetails, + "LoaExtensionData": LoaExtensionData, "LocalPeeringGateway": LocalPeeringGateway, "LoopBackDrgAttachmentNetworkDetails": LoopBackDrgAttachmentNetworkDetails, "MacsecKey": MacsecKey, @@ -1317,6 +1320,7 @@ "UpdateCpeDetails": UpdateCpeDetails, "UpdateCrossConnectDetails": UpdateCrossConnectDetails, "UpdateCrossConnectGroupDetails": UpdateCrossConnectGroupDetails, + "UpdateCrossConnectLetterOfAuthorityDetails": UpdateCrossConnectLetterOfAuthorityDetails, "UpdateDedicatedCapacitySourceDetails": UpdateDedicatedCapacitySourceDetails, "UpdateDedicatedVmHostDetails": UpdateDedicatedVmHostDetails, "UpdateDhcpDetails": UpdateDhcpDetails, diff --git a/src/oci/core/models/create_cross_connect_details.py b/src/oci/core/models/create_cross_connect_details.py index 2a5333125d..09c80c5ebf 100644 --- a/src/oci/core/models/create_cross_connect_details.py +++ b/src/oci/core/models/create_cross_connect_details.py @@ -64,6 +64,18 @@ def __init__(self, **kwargs): The value to assign to the macsec_properties property of this CreateCrossConnectDetails. :type macsec_properties: oci.core.models.CreateMacsecProperties + :param is_interface_hold_timer_enabled: + The value to assign to the is_interface_hold_timer_enabled property of this CreateCrossConnectDetails. + :type is_interface_hold_timer_enabled: bool + + :param interface_down_timer_value_in_milliseconds: + The value to assign to the interface_down_timer_value_in_milliseconds property of this CreateCrossConnectDetails. + :type interface_down_timer_value_in_milliseconds: int + + :param is_qos_enabled: + The value to assign to the is_qos_enabled property of this CreateCrossConnectDetails. + :type is_qos_enabled: bool + :param oci_physical_device_name: The value to assign to the oci_physical_device_name property of this CreateCrossConnectDetails. :type oci_physical_device_name: str @@ -85,6 +97,9 @@ def __init__(self, **kwargs): 'port_speed_shape_name': 'str', 'customer_reference_name': 'str', 'macsec_properties': 'CreateMacsecProperties', + 'is_interface_hold_timer_enabled': 'bool', + 'interface_down_timer_value_in_milliseconds': 'int', + 'is_qos_enabled': 'bool', 'oci_physical_device_name': 'str', 'interface_name': 'str' } @@ -100,6 +115,9 @@ def __init__(self, **kwargs): 'port_speed_shape_name': 'portSpeedShapeName', 'customer_reference_name': 'customerReferenceName', 'macsec_properties': 'macsecProperties', + 'is_interface_hold_timer_enabled': 'isInterfaceHoldTimerEnabled', + 'interface_down_timer_value_in_milliseconds': 'interfaceDownTimerValueInMilliseconds', + 'is_qos_enabled': 'isQosEnabled', 'oci_physical_device_name': 'ociPhysicalDeviceName', 'interface_name': 'interfaceName' } @@ -114,6 +132,9 @@ def __init__(self, **kwargs): self._port_speed_shape_name = None self._customer_reference_name = None self._macsec_properties = None + self._is_interface_hold_timer_enabled = None + self._interface_down_timer_value_in_milliseconds = None + self._is_qos_enabled = None self._oci_physical_device_name = None self._interface_name = None @@ -441,6 +462,82 @@ def macsec_properties(self, macsec_properties): """ self._macsec_properties = macsec_properties + @property + def is_interface_hold_timer_enabled(self): + """ + Gets the is_interface_hold_timer_enabled of this CreateCrossConnectDetails. + The flag to enable or disable the down timer for the interface. + + + :return: The is_interface_hold_timer_enabled of this CreateCrossConnectDetails. + :rtype: bool + """ + return self._is_interface_hold_timer_enabled + + @is_interface_hold_timer_enabled.setter + def is_interface_hold_timer_enabled(self, is_interface_hold_timer_enabled): + """ + Sets the is_interface_hold_timer_enabled of this CreateCrossConnectDetails. + The flag to enable or disable the down timer for the interface. + + + :param is_interface_hold_timer_enabled: The is_interface_hold_timer_enabled of this CreateCrossConnectDetails. + :type: bool + """ + self._is_interface_hold_timer_enabled = is_interface_hold_timer_enabled + + @property + def interface_down_timer_value_in_milliseconds(self): + """ + Gets the interface_down_timer_value_in_milliseconds of this CreateCrossConnectDetails. + The duration of the interface down timer in milliseconds between 0 and 3000 in multiples of 500. + + + :return: The interface_down_timer_value_in_milliseconds of this CreateCrossConnectDetails. + :rtype: int + """ + return self._interface_down_timer_value_in_milliseconds + + @interface_down_timer_value_in_milliseconds.setter + def interface_down_timer_value_in_milliseconds(self, interface_down_timer_value_in_milliseconds): + """ + Sets the interface_down_timer_value_in_milliseconds of this CreateCrossConnectDetails. + The duration of the interface down timer in milliseconds between 0 and 3000 in multiples of 500. + + + :param interface_down_timer_value_in_milliseconds: The interface_down_timer_value_in_milliseconds of this CreateCrossConnectDetails. + :type: int + """ + self._interface_down_timer_value_in_milliseconds = interface_down_timer_value_in_milliseconds + + @property + def is_qos_enabled(self): + """ + Gets the is_qos_enabled of this CreateCrossConnectDetails. + When true, restricts placement so cross-connects lands only on QoS-capable devices. + When false (default), placement may use any supported device. If no QoS-capable devices are available + in the selected location, the request fails. + + + :return: The is_qos_enabled of this CreateCrossConnectDetails. + :rtype: bool + """ + return self._is_qos_enabled + + @is_qos_enabled.setter + def is_qos_enabled(self, is_qos_enabled): + """ + Sets the is_qos_enabled of this CreateCrossConnectDetails. + When true, restricts placement so cross-connects lands only on QoS-capable devices. + When false (default), placement may use any supported device. If no QoS-capable devices are available + in the selected location, the request fails. + + + :param is_qos_enabled: The is_qos_enabled of this CreateCrossConnectDetails. + :type: bool + """ + self._is_qos_enabled = is_qos_enabled + @property def oci_physical_device_name(self): """ diff --git a/src/oci/core/models/create_cross_connect_group_details.py b/src/oci/core/models/create_cross_connect_group_details.py index e7667688c2..6876eafade 100644 --- a/src/oci/core/models/create_cross_connect_group_details.py +++ b/src/oci/core/models/create_cross_connect_group_details.py @@ -44,6 +44,22 @@ def __init__(self, **kwargs): The value to assign to the macsec_properties property of this CreateCrossConnectGroupDetails. :type macsec_properties: oci.core.models.CreateMacsecProperties + :param minimum_links: + The value to assign to the minimum_links property of this CreateCrossConnectGroupDetails. + :type minimum_links: int + + :param is_interface_hold_timer_enabled: + The value to assign to the is_interface_hold_timer_enabled property of this CreateCrossConnectGroupDetails. + :type is_interface_hold_timer_enabled: bool + + :param interface_down_timer_value_in_milliseconds: + The value to assign to the interface_down_timer_value_in_milliseconds property of this CreateCrossConnectGroupDetails. + :type interface_down_timer_value_in_milliseconds: int + + :param is_qos_enabled: + The value to assign to the is_qos_enabled property of this CreateCrossConnectGroupDetails. + :type is_qos_enabled: bool + """ self.swagger_types = { 'compartment_id': 'str', @@ -51,7 +67,11 @@ def __init__(self, **kwargs): 'display_name': 'str', 'customer_reference_name': 'str', 'freeform_tags': 'dict(str, str)', - 'macsec_properties': 'CreateMacsecProperties' + 'macsec_properties': 'CreateMacsecProperties', + 'minimum_links': 'int', + 'is_interface_hold_timer_enabled': 'bool', + 'interface_down_timer_value_in_milliseconds': 'int', + 'is_qos_enabled': 'bool' } self.attribute_map = { 'compartment_id': 'compartmentId', @@ -59,7 +79,11 @@ def __init__(self, **kwargs): 'display_name': 'displayName', 'customer_reference_name': 'customerReferenceName', 'freeform_tags': 'freeformTags', - 'macsec_properties': 'macsecProperties' + 'macsec_properties': 'macsecProperties', + 'minimum_links': 'minimumLinks', + 'is_interface_hold_timer_enabled': 'isInterfaceHoldTimerEnabled', + 'interface_down_timer_value_in_milliseconds': 'interfaceDownTimerValueInMilliseconds', + 'is_qos_enabled': 'isQosEnabled' } self._compartment_id = None self._defined_tags = None @@ -67,6 +91,10 @@ def __init__(self, **kwargs): self._customer_reference_name = None self._freeform_tags = None self._macsec_properties = None + self._minimum_links = None + self._is_interface_hold_timer_enabled = None + self._interface_down_timer_value_in_milliseconds = None + self._is_qos_enabled = None @property def compartment_id(self): @@ -236,6 +264,112 @@ def macsec_properties(self, macsec_properties): """ self._macsec_properties = macsec_properties + @property + def minimum_links(self): + """ + Gets the minimum_links of this CreateCrossConnectGroupDetails. + (Optional) Minimum number of active cross-connects required for the cross-connect group to be considered + operational. During create cross-connect-group operation this value can only be set to 1 (If not specified, + this value defaults to 1) and can be edited using the update cross-connect group operation. Value must not + exceed the total number of cross-connects in the cross-connect group. + + + :return: The minimum_links of this CreateCrossConnectGroupDetails. + :rtype: int + """ + return self._minimum_links + + @minimum_links.setter + def minimum_links(self, minimum_links): + """ + Sets the minimum_links of this CreateCrossConnectGroupDetails. + (Optional) Minimum number of active cross-connects required for the cross-connect group to be considered + operational. During create cross-connect-group operation this value can only be set to 1 (If not specified, + this value defaults to 1) and can be edited using the update cross-connect group operation. Value must not + exceed the total number of cross-connects in the cross-connect group. + + + :param minimum_links: The minimum_links of this CreateCrossConnectGroupDetails. + :type: int + """ + self._minimum_links = minimum_links + + @property + def is_interface_hold_timer_enabled(self): + """ + Gets the is_interface_hold_timer_enabled of this CreateCrossConnectGroupDetails. + The flag to enable or disable the down timer for the interface. + + + :return: The is_interface_hold_timer_enabled of this CreateCrossConnectGroupDetails. + :rtype: bool + """ + return self._is_interface_hold_timer_enabled + + @is_interface_hold_timer_enabled.setter + def is_interface_hold_timer_enabled(self, is_interface_hold_timer_enabled): + """ + Sets the is_interface_hold_timer_enabled of this CreateCrossConnectGroupDetails. + The flag to enable or disable the down timer for the interface. + + + :param is_interface_hold_timer_enabled: The is_interface_hold_timer_enabled of this CreateCrossConnectGroupDetails. + :type: bool + """ + self._is_interface_hold_timer_enabled = is_interface_hold_timer_enabled + + @property + def interface_down_timer_value_in_milliseconds(self): + """ + Gets the interface_down_timer_value_in_milliseconds of this CreateCrossConnectGroupDetails. + The duration of the interface down timer in milliseconds between 0 and 3000 in multiples of 500. + + + :return: The interface_down_timer_value_in_milliseconds of this CreateCrossConnectGroupDetails. + :rtype: int + """ + return self._interface_down_timer_value_in_milliseconds + + @interface_down_timer_value_in_milliseconds.setter + def interface_down_timer_value_in_milliseconds(self, interface_down_timer_value_in_milliseconds): + """ + Sets the interface_down_timer_value_in_milliseconds of this CreateCrossConnectGroupDetails. + The duration of the interface down timer in milliseconds between 0 and 3000 in multiples of 500. + + + :param interface_down_timer_value_in_milliseconds: The interface_down_timer_value_in_milliseconds of this CreateCrossConnectGroupDetails. + :type: int + """ + self._interface_down_timer_value_in_milliseconds = interface_down_timer_value_in_milliseconds + + @property + def is_qos_enabled(self): + """ + Gets the is_qos_enabled of this CreateCrossConnectGroupDetails. + (Optional) When true, restricts placement so cross-connects lands only on QoS-capable devices. + When false (default), placement may use any supported device. If no QoS-capable devices are available + in the selected location, the request fails. + + + :return: The is_qos_enabled of this CreateCrossConnectGroupDetails. + :rtype: bool + """ + return self._is_qos_enabled + + @is_qos_enabled.setter + def is_qos_enabled(self, is_qos_enabled): + """ + Sets the is_qos_enabled of this CreateCrossConnectGroupDetails. + (Optional) When true, restricts placement so cross-connects lands only on QoS-capable devices. + When false (default), placement may use any supported device. If no QoS-capable devices are available + in the selected location, the request fails. + + + :param is_qos_enabled: The is_qos_enabled of this CreateCrossConnectGroupDetails. + :type: bool + """ + self._is_qos_enabled = is_qos_enabled + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/core/models/create_virtual_circuit_details.py b/src/oci/core/models/create_virtual_circuit_details.py index 4d3f43e728..e8d1f448b7 100644 --- a/src/oci/core/models/create_virtual_circuit_details.py +++ b/src/oci/core/models/create_virtual_circuit_details.py @@ -55,6 +55,14 @@ class CreateVirtualCircuitDetails(object): #: This constant has a value of "MTU_9000" IP_MTU_MTU_9000 = "MTU_9000" + #: A constant which can be used with the traffic_mode property of a CreateVirtualCircuitDetails. + #: This constant has a value of "NORMAL" + TRAFFIC_MODE_NORMAL = "NORMAL" + + #: A constant which can be used with the traffic_mode property of a CreateVirtualCircuitDetails. + #: This constant has a value of "DRAIN" + TRAFFIC_MODE_DRAIN = "DRAIN" + def __init__(self, **kwargs): """ Initializes a new CreateVirtualCircuitDetails object with values from keyword arguments. @@ -148,6 +156,11 @@ def __init__(self, **kwargs): Allowed values for this property are: "MTU_1500", "MTU_9000" :type ip_mtu: str + :param traffic_mode: + The value to assign to the traffic_mode property of this CreateVirtualCircuitDetails. + Allowed values for this property are: "NORMAL", "DRAIN" + :type traffic_mode: str + """ self.swagger_types = { 'bandwidth_shape_name': 'str', @@ -170,7 +183,8 @@ def __init__(self, **kwargs): 'public_prefixes': 'list[CreateVirtualCircuitPublicPrefixDetails]', 'region': 'str', 'type': 'str', - 'ip_mtu': 'str' + 'ip_mtu': 'str', + 'traffic_mode': 'str' } self.attribute_map = { 'bandwidth_shape_name': 'bandwidthShapeName', @@ -193,7 +207,8 @@ def __init__(self, **kwargs): 'public_prefixes': 'publicPrefixes', 'region': 'region', 'type': 'type', - 'ip_mtu': 'ipMtu' + 'ip_mtu': 'ipMtu', + 'traffic_mode': 'trafficMode' } self._bandwidth_shape_name = None self._compartment_id = None @@ -216,6 +231,7 @@ def __init__(self, **kwargs): self._region = None self._type = None self._ip_mtu = None + self._traffic_mode = None @property def bandwidth_shape_name(self): @@ -846,6 +862,39 @@ def ip_mtu(self, ip_mtu): ) self._ip_mtu = ip_mtu + @property + def traffic_mode(self): + """ + Gets the traffic_mode of this CreateVirtualCircuitDetails. + The traffic mode to be set with this Virtual Circuit. This controls whether the traffic is to be drained + for the associated Virtual Circuit or not. + + Allowed values for this property are: "NORMAL", "DRAIN" + + + :return: The traffic_mode of this CreateVirtualCircuitDetails. + :rtype: str + """ + return self._traffic_mode + + @traffic_mode.setter + def traffic_mode(self, traffic_mode): + """ + Sets the traffic_mode of this CreateVirtualCircuitDetails. + The traffic mode to be set with this Virtual Circuit. This controls whether the traffic is to be drained + for the associated Virtual Circuit or not. + + + :param traffic_mode: The traffic_mode of this CreateVirtualCircuitDetails. + :type: str + """ + allowed_values = ["NORMAL", "DRAIN"] + if not value_allowed_none_or_none_sentinel(traffic_mode, allowed_values): + raise ValueError( + f"Invalid value for `traffic_mode`, must be None or one of {allowed_values}" + ) + self._traffic_mode = traffic_mode + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/core/models/cross_connect.py b/src/oci/core/models/cross_connect.py index 45940e3994..7f92cfecc7 100644 --- a/src/oci/core/models/cross_connect.py +++ b/src/oci/core/models/cross_connect.py @@ -124,6 +124,18 @@ def __init__(self, **kwargs): The value to assign to the oci_logical_device_name property of this CrossConnect. :type oci_logical_device_name: str + :param is_interface_hold_timer_enabled: + The value to assign to the is_interface_hold_timer_enabled property of this CrossConnect. + :type is_interface_hold_timer_enabled: bool + + :param interface_down_timer_value_in_milliseconds: + The value to assign to the interface_down_timer_value_in_milliseconds property of this CrossConnect. + :type interface_down_timer_value_in_milliseconds: int + + :param is_qos_enabled: + The value to assign to the is_qos_enabled property of this CrossConnect. + :type is_qos_enabled: bool + :param interface_name: The value to assign to the interface_name property of this CrossConnect. :type interface_name: str @@ -145,6 +157,9 @@ def __init__(self, **kwargs): 'macsec_properties': 'MacsecProperties', 'oci_physical_device_name': 'str', 'oci_logical_device_name': 'str', + 'is_interface_hold_timer_enabled': 'bool', + 'interface_down_timer_value_in_milliseconds': 'int', + 'is_qos_enabled': 'bool', 'interface_name': 'str' } self.attribute_map = { @@ -163,6 +178,9 @@ def __init__(self, **kwargs): 'macsec_properties': 'macsecProperties', 'oci_physical_device_name': 'ociPhysicalDeviceName', 'oci_logical_device_name': 'ociLogicalDeviceName', + 'is_interface_hold_timer_enabled': 'isInterfaceHoldTimerEnabled', + 'interface_down_timer_value_in_milliseconds': 'interfaceDownTimerValueInMilliseconds', + 'is_qos_enabled': 'isQosEnabled', 'interface_name': 'interfaceName' } self._compartment_id = None @@ -180,6 +198,9 @@ def __init__(self, **kwargs): self._macsec_properties = None self._oci_physical_device_name = None self._oci_logical_device_name = None + self._is_interface_hold_timer_enabled = None + self._interface_down_timer_value_in_milliseconds = None + self._is_qos_enabled = None self._interface_name = None @property @@ -590,6 +611,78 @@ def oci_logical_device_name(self, oci_logical_device_name): """ self._oci_logical_device_name = oci_logical_device_name + @property + def is_interface_hold_timer_enabled(self): + """ + Gets the is_interface_hold_timer_enabled of this CrossConnect. + The flag to enable or disable the down timer for the interface. + + + :return: The is_interface_hold_timer_enabled of this CrossConnect. + :rtype: bool + """ + return self._is_interface_hold_timer_enabled + + @is_interface_hold_timer_enabled.setter + def is_interface_hold_timer_enabled(self, is_interface_hold_timer_enabled): + """ + Sets the is_interface_hold_timer_enabled of this CrossConnect. + The flag to enable or disable the down timer for the interface. + + + :param is_interface_hold_timer_enabled: The is_interface_hold_timer_enabled of this CrossConnect. + :type: bool + """ + self._is_interface_hold_timer_enabled = is_interface_hold_timer_enabled + + @property + def interface_down_timer_value_in_milliseconds(self): + """ + Gets the interface_down_timer_value_in_milliseconds of this CrossConnect. + The duration of the interface down timer in milliseconds between 0 and 3000 in multiples of 500. + + + :return: The interface_down_timer_value_in_milliseconds of this CrossConnect. + :rtype: int + """ + return self._interface_down_timer_value_in_milliseconds + + @interface_down_timer_value_in_milliseconds.setter + def interface_down_timer_value_in_milliseconds(self, interface_down_timer_value_in_milliseconds): + """ + Sets the interface_down_timer_value_in_milliseconds of this CrossConnect. + The duration of the interface down timer in milliseconds between 0 and 3000 in multiples of 500. + + + :param interface_down_timer_value_in_milliseconds: The interface_down_timer_value_in_milliseconds of this CrossConnect. + :type: int + """ + self._interface_down_timer_value_in_milliseconds = interface_down_timer_value_in_milliseconds + + @property + def is_qos_enabled(self): + """ + Gets the is_qos_enabled of this CrossConnect. + The flag to enable or disable the Qos for the cross-connect. + + + :return: The is_qos_enabled of this CrossConnect. + :rtype: bool + """ + return self._is_qos_enabled + + @is_qos_enabled.setter + def is_qos_enabled(self, is_qos_enabled): + """ + Sets the is_qos_enabled of this CrossConnect. + The flag to enable or disable the Qos for the cross-connect. + + + :param is_qos_enabled: The is_qos_enabled of this CrossConnect. + :type: bool + """ + self._is_qos_enabled = is_qos_enabled + @property def interface_name(self): """ diff --git a/src/oci/core/models/cross_connect_group.py b/src/oci/core/models/cross_connect_group.py index 505afb6c8d..54d80b4118 100644 --- a/src/oci/core/models/cross_connect_group.py +++ b/src/oci/core/models/cross_connect_group.py @@ -105,6 +105,22 @@ def __init__(self, **kwargs): The value to assign to the oci_logical_device_name property of this CrossConnectGroup. :type oci_logical_device_name: str + :param minimum_links: + The value to assign to the minimum_links property of this CrossConnectGroup. + :type minimum_links: int + + :param is_interface_hold_timer_enabled: + The value to assign to the is_interface_hold_timer_enabled property of this CrossConnectGroup. + :type is_interface_hold_timer_enabled: bool + + :param interface_down_timer_value_in_milliseconds: + The value to assign to the interface_down_timer_value_in_milliseconds property of this CrossConnectGroup. + :type interface_down_timer_value_in_milliseconds: int + + :param is_qos_enabled: + The value to assign to the is_qos_enabled property of this CrossConnectGroup. + :type is_qos_enabled: bool + """ self.swagger_types = { 'compartment_id': 'str', @@ -118,7 +134,11 @@ def __init__(self, **kwargs): 'time_created': 'datetime', 'macsec_properties': 'MacsecProperties', 'oci_physical_device_name': 'str', - 'oci_logical_device_name': 'str' + 'oci_logical_device_name': 'str', + 'minimum_links': 'int', + 'is_interface_hold_timer_enabled': 'bool', + 'interface_down_timer_value_in_milliseconds': 'int', + 'is_qos_enabled': 'bool' } self.attribute_map = { 'compartment_id': 'compartmentId', @@ -132,7 +152,11 @@ def __init__(self, **kwargs): 'time_created': 'timeCreated', 'macsec_properties': 'macsecProperties', 'oci_physical_device_name': 'ociPhysicalDeviceName', - 'oci_logical_device_name': 'ociLogicalDeviceName' + 'oci_logical_device_name': 'ociLogicalDeviceName', + 'minimum_links': 'minimumLinks', + 'is_interface_hold_timer_enabled': 'isInterfaceHoldTimerEnabled', + 'interface_down_timer_value_in_milliseconds': 'interfaceDownTimerValueInMilliseconds', + 'is_qos_enabled': 'isQosEnabled' } self._compartment_id = None self._defined_tags = None @@ -146,6 +170,10 @@ def __init__(self, **kwargs): self._macsec_properties = None self._oci_physical_device_name = None self._oci_logical_device_name = None + self._minimum_links = None + self._is_interface_hold_timer_enabled = None + self._interface_down_timer_value_in_milliseconds = None + self._is_qos_enabled = None @property def compartment_id(self): @@ -477,6 +505,106 @@ def oci_logical_device_name(self, oci_logical_device_name): """ self._oci_logical_device_name = oci_logical_device_name + @property + def minimum_links(self): + """ + Gets the minimum_links of this CrossConnectGroup. + Minimum number of active cross-connects required for the cross-connect group to be considered operational. + If the number of active cross-connects falls below this value, the group is not considered operational. + If this value was not explicitly set when the group was created or updated, it defaults to 1. + + + :return: The minimum_links of this CrossConnectGroup. + :rtype: int + """ + return self._minimum_links + + @minimum_links.setter + def minimum_links(self, minimum_links): + """ + Sets the minimum_links of this CrossConnectGroup. + Minimum number of active cross-connects required for the cross-connect group to be considered operational. + If the number of active cross-connects falls below this value, the group is not considered operational. + If this value was not explicitly set when the group was created or updated, it defaults to 1. + + + :param minimum_links: The minimum_links of this CrossConnectGroup. + :type: int + """ + self._minimum_links = minimum_links + + @property + def is_interface_hold_timer_enabled(self): + """ + Gets the is_interface_hold_timer_enabled of this CrossConnectGroup. + The flag to enable or disable the down timer for the interface. + + + :return: The is_interface_hold_timer_enabled of this CrossConnectGroup. + :rtype: bool + """ + return self._is_interface_hold_timer_enabled + + @is_interface_hold_timer_enabled.setter + def is_interface_hold_timer_enabled(self, is_interface_hold_timer_enabled): + """ + Sets the is_interface_hold_timer_enabled of this CrossConnectGroup. + The flag to enable or disable the down timer for the interface. + + + :param is_interface_hold_timer_enabled: The is_interface_hold_timer_enabled of this CrossConnectGroup. + :type: bool + """ + self._is_interface_hold_timer_enabled = is_interface_hold_timer_enabled + + @property + def interface_down_timer_value_in_milliseconds(self): + """ + Gets the interface_down_timer_value_in_milliseconds of this CrossConnectGroup. + The duration of the interface down timer in milliseconds between 0 and 3000 in multiples of 500. + + + :return: The interface_down_timer_value_in_milliseconds of this CrossConnectGroup. + :rtype: int + """ + return self._interface_down_timer_value_in_milliseconds + + @interface_down_timer_value_in_milliseconds.setter + def interface_down_timer_value_in_milliseconds(self, interface_down_timer_value_in_milliseconds): + """ + Sets the interface_down_timer_value_in_milliseconds of this CrossConnectGroup. + The duration of the interface down timer in milliseconds between 0 and 3000 in multiples of 500. + + + :param interface_down_timer_value_in_milliseconds: The interface_down_timer_value_in_milliseconds of this CrossConnectGroup. + :type: int + """ + self._interface_down_timer_value_in_milliseconds = interface_down_timer_value_in_milliseconds + + @property + def is_qos_enabled(self): + """ + Gets the is_qos_enabled of this CrossConnectGroup. + The flag to enable or disable the Qos for the cross-connect-group. + + + :return: The is_qos_enabled of this CrossConnectGroup. + :rtype: bool + """ + return self._is_qos_enabled + + @is_qos_enabled.setter + def is_qos_enabled(self, is_qos_enabled): + """ + Sets the is_qos_enabled of this CrossConnectGroup. + The flag to enable or disable the Qos for the cross-connect-group. + + + :param is_qos_enabled: The is_qos_enabled of this CrossConnectGroup. + :type: bool + """ + self._is_qos_enabled = is_qos_enabled + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/core/models/letter_of_authority.py b/src/oci/core/models/letter_of_authority.py index fa5a2a3f51..c2dc2af223 100644 --- a/src/oci/core/models/letter_of_authority.py +++ b/src/oci/core/models/letter_of_authority.py @@ -59,6 +59,14 @@ def __init__(self, **kwargs): The value to assign to the time_issued property of this LetterOfAuthority. :type time_issued: datetime + :param authorized_agent: + The value to assign to the authorized_agent property of this LetterOfAuthority. + :type authorized_agent: str + + :param extension_details: + The value to assign to the extension_details property of this LetterOfAuthority. + :type extension_details: oci.core.models.LoaExtensionData + """ self.swagger_types = { 'authorized_entity_name': 'str', @@ -67,7 +75,9 @@ def __init__(self, **kwargs): 'facility_location': 'str', 'port_name': 'str', 'time_expires': 'datetime', - 'time_issued': 'datetime' + 'time_issued': 'datetime', + 'authorized_agent': 'str', + 'extension_details': 'LoaExtensionData' } self.attribute_map = { 'authorized_entity_name': 'authorizedEntityName', @@ -76,7 +86,9 @@ def __init__(self, **kwargs): 'facility_location': 'facilityLocation', 'port_name': 'portName', 'time_expires': 'timeExpires', - 'time_issued': 'timeIssued' + 'time_issued': 'timeIssued', + 'authorized_agent': 'authorizedAgent', + 'extension_details': 'extensionDetails' } self._authorized_entity_name = None self._circuit_type = None @@ -85,6 +97,8 @@ def __init__(self, **kwargs): self._port_name = None self._time_expires = None self._time_issued = None + self._authorized_agent = None + self._extension_details = None @property def authorized_entity_name(self): @@ -276,6 +290,50 @@ def time_issued(self, time_issued): """ self._time_issued = time_issued + @property + def authorized_agent(self): + """ + Gets the authorized_agent of this LetterOfAuthority. + Name of a customer authorized agent which will be appended to the LOA as 'Authorized Agent'. + + + :return: The authorized_agent of this LetterOfAuthority. + :rtype: str + """ + return self._authorized_agent + + @authorized_agent.setter + def authorized_agent(self, authorized_agent): + """ + Sets the authorized_agent of this LetterOfAuthority. + Name of a customer authorized agent which will be appended to the LOA as 'Authorized Agent'. + + + :param authorized_agent: The authorized_agent of this LetterOfAuthority. + :type: str + """ + self._authorized_agent = authorized_agent + + @property + def extension_details(self): + """ + Gets the extension_details of this LetterOfAuthority. + + :return: The extension_details of this LetterOfAuthority. + :rtype: oci.core.models.LoaExtensionData + """ + return self._extension_details + + @extension_details.setter + def extension_details(self, extension_details): + """ + Sets the extension_details of this LetterOfAuthority. + + :param extension_details: The extension_details of this LetterOfAuthority. + :type: oci.core.models.LoaExtensionData + """ + self._extension_details = extension_details + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/core/models/loa_extension_data.py b/src/oci/core/models/loa_extension_data.py new file mode 100644 index 0000000000..cb3ac9f33f --- /dev/null +++ b/src/oci/core/models/loa_extension_data.py @@ -0,0 +1,110 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class LoaExtensionData(object): + """ + Data related to the extension of the Expiry date of the LOA. It gives you number of remaining extensions along + with a history of past extensions made on the LOA. + """ + + def __init__(self, **kwargs): + """ + Initializes a new LoaExtensionData object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param remaining_extensions: + The value to assign to the remaining_extensions property of this LoaExtensionData. + :type remaining_extensions: int + + :param history: + The value to assign to the history property of this LoaExtensionData. + :type history: list[str] + + """ + self.swagger_types = { + 'remaining_extensions': 'int', + 'history': 'list[str]' + } + self.attribute_map = { + 'remaining_extensions': 'remainingExtensions', + 'history': 'history' + } + self._remaining_extensions = None + self._history = None + + @property + def remaining_extensions(self): + """ + Gets the remaining_extensions of this LoaExtensionData. + The maximum number of times this LOA's expiry can be extended. + + + :return: The remaining_extensions of this LoaExtensionData. + :rtype: int + """ + return self._remaining_extensions + + @remaining_extensions.setter + def remaining_extensions(self, remaining_extensions): + """ + Sets the remaining_extensions of this LoaExtensionData. + The maximum number of times this LOA's expiry can be extended. + + + :param remaining_extensions: The remaining_extensions of this LoaExtensionData. + :type: int + """ + self._remaining_extensions = remaining_extensions + + @property + def history(self): + """ + Gets the history of this LoaExtensionData. + Chronologically sorted list of date and time when the Letter of Authority's expiration was last updated, + most recent first, in the format defined by `RFC3339`__. List is empty + if the LOA's expiration date has never been extended. + + __ https://tools.ietf.org/html/rfc3339 + + + :return: The history of this LoaExtensionData. + :rtype: list[str] + """ + return self._history + + @history.setter + def history(self, history): + """ + Sets the history of this LoaExtensionData. + Chronologically sorted list of date and time when the Letter of Authority's expiration was last updated, + most recent first, in the format defined by `RFC3339`__. List is empty + if the LOA's expiration date has never been extended. + + __ https://tools.ietf.org/html/rfc3339 + + + :param history: The history of this LoaExtensionData. + :type: list[str] + """ + self._history = history + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/core/models/update_cross_connect_details.py b/src/oci/core/models/update_cross_connect_details.py index 0bfeab33c1..d4d1d906b0 100644 --- a/src/oci/core/models/update_cross_connect_details.py +++ b/src/oci/core/models/update_cross_connect_details.py @@ -44,6 +44,14 @@ def __init__(self, **kwargs): The value to assign to the macsec_properties property of this UpdateCrossConnectDetails. :type macsec_properties: oci.core.models.UpdateMacsecProperties + :param is_interface_hold_timer_enabled: + The value to assign to the is_interface_hold_timer_enabled property of this UpdateCrossConnectDetails. + :type is_interface_hold_timer_enabled: bool + + :param interface_down_timer_value_in_milliseconds: + The value to assign to the interface_down_timer_value_in_milliseconds property of this UpdateCrossConnectDetails. + :type interface_down_timer_value_in_milliseconds: int + """ self.swagger_types = { 'defined_tags': 'dict(str, dict(str, object))', @@ -51,7 +59,9 @@ def __init__(self, **kwargs): 'freeform_tags': 'dict(str, str)', 'is_active': 'bool', 'customer_reference_name': 'str', - 'macsec_properties': 'UpdateMacsecProperties' + 'macsec_properties': 'UpdateMacsecProperties', + 'is_interface_hold_timer_enabled': 'bool', + 'interface_down_timer_value_in_milliseconds': 'int' } self.attribute_map = { 'defined_tags': 'definedTags', @@ -59,7 +69,9 @@ def __init__(self, **kwargs): 'freeform_tags': 'freeformTags', 'is_active': 'isActive', 'customer_reference_name': 'customerReferenceName', - 'macsec_properties': 'macsecProperties' + 'macsec_properties': 'macsecProperties', + 'is_interface_hold_timer_enabled': 'isInterfaceHoldTimerEnabled', + 'interface_down_timer_value_in_milliseconds': 'interfaceDownTimerValueInMilliseconds' } self._defined_tags = None self._display_name = None @@ -67,6 +79,8 @@ def __init__(self, **kwargs): self._is_active = None self._customer_reference_name = None self._macsec_properties = None + self._is_interface_hold_timer_enabled = None + self._interface_down_timer_value_in_milliseconds = None @property def defined_tags(self): @@ -238,6 +252,54 @@ def macsec_properties(self, macsec_properties): """ self._macsec_properties = macsec_properties + @property + def is_interface_hold_timer_enabled(self): + """ + Gets the is_interface_hold_timer_enabled of this UpdateCrossConnectDetails. + The flag to enable or disable the down timer for the interface. + + + :return: The is_interface_hold_timer_enabled of this UpdateCrossConnectDetails. + :rtype: bool + """ + return self._is_interface_hold_timer_enabled + + @is_interface_hold_timer_enabled.setter + def is_interface_hold_timer_enabled(self, is_interface_hold_timer_enabled): + """ + Sets the is_interface_hold_timer_enabled of this UpdateCrossConnectDetails. + The flag to enable or disable the down timer for the interface. + + + :param is_interface_hold_timer_enabled: The is_interface_hold_timer_enabled of this UpdateCrossConnectDetails. + :type: bool + """ + self._is_interface_hold_timer_enabled = is_interface_hold_timer_enabled + + @property + def interface_down_timer_value_in_milliseconds(self): + """ + Gets the interface_down_timer_value_in_milliseconds of this UpdateCrossConnectDetails. + The duration of the interface down timer in milliseconds between 0 and 3000 in multiples of 500. + + + :return: The interface_down_timer_value_in_milliseconds of this UpdateCrossConnectDetails. + :rtype: int + """ + return self._interface_down_timer_value_in_milliseconds + + @interface_down_timer_value_in_milliseconds.setter + def interface_down_timer_value_in_milliseconds(self, interface_down_timer_value_in_milliseconds): + """ + Sets the interface_down_timer_value_in_milliseconds of this UpdateCrossConnectDetails. + The duration of the interface down timer in milliseconds between 0 and 3000 in multiples of 500. + + + :param interface_down_timer_value_in_milliseconds: The interface_down_timer_value_in_milliseconds of this UpdateCrossConnectDetails. + :type: int + """ + self._interface_down_timer_value_in_milliseconds = interface_down_timer_value_in_milliseconds + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/core/models/update_cross_connect_group_details.py b/src/oci/core/models/update_cross_connect_group_details.py index 2202f5389f..c03952fcfa 100644 --- a/src/oci/core/models/update_cross_connect_group_details.py +++ b/src/oci/core/models/update_cross_connect_group_details.py @@ -40,26 +40,47 @@ def __init__(self, **kwargs): The value to assign to the macsec_properties property of this UpdateCrossConnectGroupDetails. :type macsec_properties: oci.core.models.UpdateMacsecProperties + :param minimum_links: + The value to assign to the minimum_links property of this UpdateCrossConnectGroupDetails. + :type minimum_links: int + + :param is_interface_hold_timer_enabled: + The value to assign to the is_interface_hold_timer_enabled property of this UpdateCrossConnectGroupDetails. + :type is_interface_hold_timer_enabled: bool + + :param interface_down_timer_value_in_milliseconds: + The value to assign to the interface_down_timer_value_in_milliseconds property of this UpdateCrossConnectGroupDetails. + :type interface_down_timer_value_in_milliseconds: int + """ self.swagger_types = { 'defined_tags': 'dict(str, dict(str, object))', 'display_name': 'str', 'customer_reference_name': 'str', 'freeform_tags': 'dict(str, str)', - 'macsec_properties': 'UpdateMacsecProperties' + 'macsec_properties': 'UpdateMacsecProperties', + 'minimum_links': 'int', + 'is_interface_hold_timer_enabled': 'bool', + 'interface_down_timer_value_in_milliseconds': 'int' } self.attribute_map = { 'defined_tags': 'definedTags', 'display_name': 'displayName', 'customer_reference_name': 'customerReferenceName', 'freeform_tags': 'freeformTags', - 'macsec_properties': 'macsecProperties' + 'macsec_properties': 'macsecProperties', + 'minimum_links': 'minimumLinks', + 'is_interface_hold_timer_enabled': 'isInterfaceHoldTimerEnabled', + 'interface_down_timer_value_in_milliseconds': 'interfaceDownTimerValueInMilliseconds' } self._defined_tags = None self._display_name = None self._customer_reference_name = None self._freeform_tags = None self._macsec_properties = None + self._minimum_links = None + self._is_interface_hold_timer_enabled = None + self._interface_down_timer_value_in_milliseconds = None @property def defined_tags(self): @@ -199,6 +220,82 @@ def macsec_properties(self, macsec_properties): """ self._macsec_properties = macsec_properties + @property + def minimum_links(self): + """ + Gets the minimum_links of this UpdateCrossConnectGroupDetails. + (Optional) Minimum number of active cross-connects required for the cross-connect group to be considered + operational. If not specified, this value defaults to 1. Value must not exceed the total number of + cross-connects in the cross-connect group. + + + :return: The minimum_links of this UpdateCrossConnectGroupDetails. + :rtype: int + """ + return self._minimum_links + + @minimum_links.setter + def minimum_links(self, minimum_links): + """ + Sets the minimum_links of this UpdateCrossConnectGroupDetails. + (Optional) Minimum number of active cross-connects required for the cross-connect group to be considered + operational. If not specified, this value defaults to 1. Value must not exceed the total number of + cross-connects in the cross-connect group. + + + :param minimum_links: The minimum_links of this UpdateCrossConnectGroupDetails. + :type: int + """ + self._minimum_links = minimum_links + + @property + def is_interface_hold_timer_enabled(self): + """ + Gets the is_interface_hold_timer_enabled of this UpdateCrossConnectGroupDetails. + The flag to enable or disable the down timer for the interface. + + + :return: The is_interface_hold_timer_enabled of this UpdateCrossConnectGroupDetails. + :rtype: bool + """ + return self._is_interface_hold_timer_enabled + + @is_interface_hold_timer_enabled.setter + def is_interface_hold_timer_enabled(self, is_interface_hold_timer_enabled): + """ + Sets the is_interface_hold_timer_enabled of this UpdateCrossConnectGroupDetails. + The flag to enable or disable the down timer for the interface. + + + :param is_interface_hold_timer_enabled: The is_interface_hold_timer_enabled of this UpdateCrossConnectGroupDetails. + :type: bool + """ + self._is_interface_hold_timer_enabled = is_interface_hold_timer_enabled + + @property + def interface_down_timer_value_in_milliseconds(self): + """ + Gets the interface_down_timer_value_in_milliseconds of this UpdateCrossConnectGroupDetails. + The duration of the interface down timer in milliseconds between 0 and 3000 in multiples of 500. + + + :return: The interface_down_timer_value_in_milliseconds of this UpdateCrossConnectGroupDetails. + :rtype: int + """ + return self._interface_down_timer_value_in_milliseconds + + @interface_down_timer_value_in_milliseconds.setter + def interface_down_timer_value_in_milliseconds(self, interface_down_timer_value_in_milliseconds): + """ + Sets the interface_down_timer_value_in_milliseconds of this UpdateCrossConnectGroupDetails. + The duration of the interface down timer in milliseconds between 0 and 3000 in multiples of 500. + + + :param interface_down_timer_value_in_milliseconds: The interface_down_timer_value_in_milliseconds of this UpdateCrossConnectGroupDetails. + :type: int + """ + self._interface_down_timer_value_in_milliseconds = interface_down_timer_value_in_milliseconds + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/core/models/update_cross_connect_letter_of_authority_details.py b/src/oci/core/models/update_cross_connect_letter_of_authority_details.py new file mode 100644 index 0000000000..704a843a75 --- /dev/null +++ b/src/oci/core/models/update_cross_connect_letter_of_authority_details.py @@ -0,0 +1,147 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class UpdateCrossConnectLetterOfAuthorityDetails(object): + """ + Update the details of the Letter of Authority associated with a cross-connect. Upon successful alterations + a new updated copy of the LOA will be attached to the cross-connect. + """ + + def __init__(self, **kwargs): + """ + Initializes a new UpdateCrossConnectLetterOfAuthorityDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param should_extend: + The value to assign to the should_extend property of this UpdateCrossConnectLetterOfAuthorityDetails. + :type should_extend: bool + + :param should_remove_authorized_agent: + The value to assign to the should_remove_authorized_agent property of this UpdateCrossConnectLetterOfAuthorityDetails. + :type should_remove_authorized_agent: bool + + :param authorized_agent: + The value to assign to the authorized_agent property of this UpdateCrossConnectLetterOfAuthorityDetails. + :type authorized_agent: str + + """ + self.swagger_types = { + 'should_extend': 'bool', + 'should_remove_authorized_agent': 'bool', + 'authorized_agent': 'str' + } + self.attribute_map = { + 'should_extend': 'shouldExtend', + 'should_remove_authorized_agent': 'shouldRemoveAuthorizedAgent', + 'authorized_agent': 'authorizedAgent' + } + self._should_extend = None + self._should_remove_authorized_agent = None + self._authorized_agent = None + + @property + def should_extend(self): + """ + Gets the should_extend of this UpdateCrossConnectLetterOfAuthorityDetails. + A boolean flag to indicate whether to extend the expiry of the associated LOA with the provided + cross-connect. If un-set or set to false, it does not alter the existing expiry of the LOA. + On extension an updated copy of the LOA will be provided with the new expiry date. An LOA cannot + be extended more than 3 times. + + + :return: The should_extend of this UpdateCrossConnectLetterOfAuthorityDetails. + :rtype: bool + """ + return self._should_extend + + @should_extend.setter + def should_extend(self, should_extend): + """ + Sets the should_extend of this UpdateCrossConnectLetterOfAuthorityDetails. + A boolean flag to indicate whether to extend the expiry of the associated LOA with the provided + cross-connect. If un-set or set to false, it does not alter the existing expiry of the LOA. + On extension an updated copy of the LOA will be provided with the new expiry date. An LOA cannot + be extended more than 3 times. + + + :param should_extend: The should_extend of this UpdateCrossConnectLetterOfAuthorityDetails. + :type: bool + """ + self._should_extend = should_extend + + @property + def should_remove_authorized_agent(self): + """ + Gets the should_remove_authorized_agent of this UpdateCrossConnectLetterOfAuthorityDetails. + A boolean flag to indicate whether to remove an attached Authorized Agent to the LOA. If this boolean flag + is set, an attempt will be made to remove the attached authorized agent to the LOA, if any, and any value + given in the field 'authorizedAgent' will be ignored. In case, of updating an existing Authorized Agent, + keep this flag unset and set the expected value in 'authorizedAgent'. + + + :return: The should_remove_authorized_agent of this UpdateCrossConnectLetterOfAuthorityDetails. + :rtype: bool + """ + return self._should_remove_authorized_agent + + @should_remove_authorized_agent.setter + def should_remove_authorized_agent(self, should_remove_authorized_agent): + """ + Sets the should_remove_authorized_agent of this UpdateCrossConnectLetterOfAuthorityDetails. + A boolean flag to indicate whether to remove an attached Authorized Agent to the LOA. If this boolean flag + is set, an attempt will be made to remove the attached authorized agent to the LOA, if any, and any value + given in the field 'authorizedAgent' will be ignored. In case, of updating an existing Authorized Agent, + keep this flag unset and set the expected value in 'authorizedAgent'. + + + :param should_remove_authorized_agent: The should_remove_authorized_agent of this UpdateCrossConnectLetterOfAuthorityDetails. + :type: bool + """ + self._should_remove_authorized_agent = should_remove_authorized_agent + + @property + def authorized_agent(self): + """ + Gets the authorized_agent of this UpdateCrossConnectLetterOfAuthorityDetails. + Name of a customer authorized agent which will be appended to the LOA as the field 'Authorized Agent'. + If the field is left un-set in the request body, no changes will be done on the LOA for Authorized Agent. + + + :return: The authorized_agent of this UpdateCrossConnectLetterOfAuthorityDetails. + :rtype: str + """ + return self._authorized_agent + + @authorized_agent.setter + def authorized_agent(self, authorized_agent): + """ + Sets the authorized_agent of this UpdateCrossConnectLetterOfAuthorityDetails. + Name of a customer authorized agent which will be appended to the LOA as the field 'Authorized Agent'. + If the field is left un-set in the request body, no changes will be done on the LOA for Authorized Agent. + + + :param authorized_agent: The authorized_agent of this UpdateCrossConnectLetterOfAuthorityDetails. + :type: str + """ + self._authorized_agent = authorized_agent + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/core/models/update_virtual_circuit_details.py b/src/oci/core/models/update_virtual_circuit_details.py index 5076af0110..cfd1dacf74 100644 --- a/src/oci/core/models/update_virtual_circuit_details.py +++ b/src/oci/core/models/update_virtual_circuit_details.py @@ -39,6 +39,14 @@ class UpdateVirtualCircuitDetails(object): #: This constant has a value of "DISABLED" BGP_ADMIN_STATE_DISABLED = "DISABLED" + #: A constant which can be used with the traffic_mode property of a UpdateVirtualCircuitDetails. + #: This constant has a value of "NORMAL" + TRAFFIC_MODE_NORMAL = "NORMAL" + + #: A constant which can be used with the traffic_mode property of a UpdateVirtualCircuitDetails. + #: This constant has a value of "DRAIN" + TRAFFIC_MODE_DRAIN = "DRAIN" + #: A constant which can be used with the provider_state property of a UpdateVirtualCircuitDetails. #: This constant has a value of "ACTIVE" PROVIDER_STATE_ACTIVE = "ACTIVE" @@ -106,6 +114,11 @@ def __init__(self, **kwargs): The value to assign to the freeform_tags property of this UpdateVirtualCircuitDetails. :type freeform_tags: dict(str, str) + :param traffic_mode: + The value to assign to the traffic_mode property of this UpdateVirtualCircuitDetails. + Allowed values for this property are: "NORMAL", "DRAIN" + :type traffic_mode: str + :param gateway_id: The value to assign to the gateway_id property of this UpdateVirtualCircuitDetails. :type gateway_id: str @@ -141,6 +154,7 @@ def __init__(self, **kwargs): 'defined_tags': 'dict(str, dict(str, object))', 'display_name': 'str', 'freeform_tags': 'dict(str, str)', + 'traffic_mode': 'str', 'gateway_id': 'str', 'provider_state': 'str', 'provider_service_key_name': 'str', @@ -159,6 +173,7 @@ def __init__(self, **kwargs): 'defined_tags': 'definedTags', 'display_name': 'displayName', 'freeform_tags': 'freeformTags', + 'traffic_mode': 'trafficMode', 'gateway_id': 'gatewayId', 'provider_state': 'providerState', 'provider_service_key_name': 'providerServiceKeyName', @@ -176,6 +191,7 @@ def __init__(self, **kwargs): self._defined_tags = None self._display_name = None self._freeform_tags = None + self._traffic_mode = None self._gateway_id = None self._provider_state = None self._provider_service_key_name = None @@ -535,6 +551,39 @@ def freeform_tags(self, freeform_tags): """ self._freeform_tags = freeform_tags + @property + def traffic_mode(self): + """ + Gets the traffic_mode of this UpdateVirtualCircuitDetails. + The traffic mode to be set with this Virtual Circuit. This controls whether the traffic is to be drained + for the associated Virtual Circuit or not. + + Allowed values for this property are: "NORMAL", "DRAIN" + + + :return: The traffic_mode of this UpdateVirtualCircuitDetails. + :rtype: str + """ + return self._traffic_mode + + @traffic_mode.setter + def traffic_mode(self, traffic_mode): + """ + Sets the traffic_mode of this UpdateVirtualCircuitDetails. + The traffic mode to be set with this Virtual Circuit. This controls whether the traffic is to be drained + for the associated Virtual Circuit or not. + + + :param traffic_mode: The traffic_mode of this UpdateVirtualCircuitDetails. + :type: str + """ + allowed_values = ["NORMAL", "DRAIN"] + if not value_allowed_none_or_none_sentinel(traffic_mode, allowed_values): + raise ValueError( + f"Invalid value for `traffic_mode`, must be None or one of {allowed_values}" + ) + self._traffic_mode = traffic_mode + @property def gateway_id(self): """ diff --git a/src/oci/core/models/virtual_circuit.py b/src/oci/core/models/virtual_circuit.py index d261e24e85..d9147e8fa3 100644 --- a/src/oci/core/models/virtual_circuit.py +++ b/src/oci/core/models/virtual_circuit.py @@ -156,6 +156,14 @@ class VirtualCircuit(object): #: This constant has a value of "MTU_9000" IP_MTU_MTU_9000 = "MTU_9000" + #: A constant which can be used with the traffic_mode property of a VirtualCircuit. + #: This constant has a value of "NORMAL" + TRAFFIC_MODE_NORMAL = "NORMAL" + + #: A constant which can be used with the traffic_mode property of a VirtualCircuit. + #: This constant has a value of "DRAIN" + TRAFFIC_MODE_DRAIN = "DRAIN" + def __init__(self, **kwargs): """ Initializes a new VirtualCircuit object with values from keyword arguments. @@ -305,6 +313,12 @@ def __init__(self, **kwargs): Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type ip_mtu: str + :param traffic_mode: + The value to assign to the traffic_mode property of this VirtualCircuit. + Allowed values for this property are: "NORMAL", "DRAIN", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type traffic_mode: str + :param virtual_circuit_redundancy_metadata: The value to assign to the virtual_circuit_redundancy_metadata property of this VirtualCircuit. :type virtual_circuit_redundancy_metadata: oci.core.models.VirtualCircuitRedundancyMetadata @@ -342,6 +356,7 @@ def __init__(self, **kwargs): 'time_created': 'datetime', 'type': 'str', 'ip_mtu': 'str', + 'traffic_mode': 'str', 'virtual_circuit_redundancy_metadata': 'VirtualCircuitRedundancyMetadata' } self.attribute_map = { @@ -376,6 +391,7 @@ def __init__(self, **kwargs): 'time_created': 'timeCreated', 'type': 'type', 'ip_mtu': 'ipMtu', + 'traffic_mode': 'trafficMode', 'virtual_circuit_redundancy_metadata': 'virtualCircuitRedundancyMetadata' } self._bandwidth_shape_name = None @@ -409,6 +425,7 @@ def __init__(self, **kwargs): self._time_created = None self._type = None self._ip_mtu = None + self._traffic_mode = None self._virtual_circuit_redundancy_metadata = None @property @@ -1329,6 +1346,38 @@ def ip_mtu(self, ip_mtu): ip_mtu = 'UNKNOWN_ENUM_VALUE' self._ip_mtu = ip_mtu + @property + def traffic_mode(self): + """ + Gets the traffic_mode of this VirtualCircuit. + The current traffic mode for the Virtual Circuit. This indicates whether the traffic is drained for the + associated Virtual Circuit or not. + + Allowed values for this property are: "NORMAL", "DRAIN", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The traffic_mode of this VirtualCircuit. + :rtype: str + """ + return self._traffic_mode + + @traffic_mode.setter + def traffic_mode(self, traffic_mode): + """ + Sets the traffic_mode of this VirtualCircuit. + The current traffic mode for the Virtual Circuit. This indicates whether the traffic is drained for the + associated Virtual Circuit or not. + + + :param traffic_mode: The traffic_mode of this VirtualCircuit. + :type: str + """ + allowed_values = ["NORMAL", "DRAIN"] + if not value_allowed_none_or_none_sentinel(traffic_mode, allowed_values): + traffic_mode = 'UNKNOWN_ENUM_VALUE' + self._traffic_mode = traffic_mode + @property def virtual_circuit_redundancy_metadata(self): """ diff --git a/src/oci/core/virtual_network_client.py b/src/oci/core/virtual_network_client.py index 1b79d12ee9..54c9d579d6 100644 --- a/src/oci/core/virtual_network_client.py +++ b/src/oci/core/virtual_network_client.py @@ -13276,6 +13276,10 @@ def get_cross_connect_letter_of_authority(self, cross_connect_id, **kwargs): __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + :param str opc_request_id: (optional) + Unique identifier for the request. + If you need to contact Oracle about a particular request, please provide the request ID. + :param obj retry_strategy: (optional) A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. @@ -13305,7 +13309,13 @@ def get_cross_connect_letter_of_authority(self, cross_connect_id, **kwargs): operation_name = "get_cross_connect_letter_of_authority" api_reference_link = "https://docs.oracle.com/iaas/api/#/en/iaas/20160918/LetterOfAuthority/GetCrossConnectLetterOfAuthority" - expected_kwargs = ["retry_strategy"] + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id" + ] extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] if extra_kwargs: raise ValueError( @@ -13323,8 +13333,10 @@ def get_cross_connect_letter_of_authority(self, cross_connect_id, **kwargs): header_params = { "accept": "application/json, text/html", - "content-type": "application/json" + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} retry_strategy = self.base_client.get_preferred_retry_strategy( operation_retry_strategy=kwargs.get('retry_strategy'), @@ -28704,6 +28716,126 @@ def update_cross_connect_group(self, cross_connect_group_id, update_cross_connec api_reference_link=api_reference_link, required_arguments=required_arguments) + def update_cross_connect_letter_of_authority(self, cross_connect_id, update_cross_connect_letter_of_authority_details, **kwargs): + """ + Updates the Letter of Authority for the specified cross-connect. + + + :param str cross_connect_id: (required) + The `OCID`__ of the cross-connect. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param oci.core.models.UpdateCrossConnectLetterOfAuthorityDetails update_cross_connect_letter_of_authority_details: (required) + Update CrossConnect LOA fields. + + :param str opc_request_id: (optional) + Unique identifier for the request. + If you need to contact Oracle about a particular request, please provide the request ID. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` + parameter to the value of the etag from a previous GET or POST response for that resource. The resource + will be updated or deleted only if the etag you provide matches the resource's current etag value. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.core.models.LetterOfAuthority` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use update_cross_connect_letter_of_authority API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['crossConnectId'] + resource_path = "/crossConnects/{crossConnectId}/letterOfAuthority" + method = "PUT" + operation_name = "update_cross_connect_letter_of_authority" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/iaas/20160918/LetterOfAuthority/UpdateCrossConnectLetterOfAuthority" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id", + "if_match" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"update_cross_connect_letter_of_authority got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "crossConnectId": cross_connect_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json, text/html", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=update_cross_connect_letter_of_authority_details, + response_type="LetterOfAuthority", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=update_cross_connect_letter_of_authority_details, + response_type="LetterOfAuthority", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + def update_dhcp_options(self, dhcp_id, update_dhcp_details, **kwargs): """ Updates the specified set of DHCP options. You can update the display name or the options diff --git a/src/oci/file_storage/models/file_system.py b/src/oci/file_storage/models/file_system.py index f543f20c69..9c1483a221 100644 --- a/src/oci/file_storage/models/file_system.py +++ b/src/oci/file_storage/models/file_system.py @@ -86,6 +86,14 @@ class FileSystem(object): #: This constant has a value of "FAILED" QUOTA_ENFORCEMENT_STATE_FAILED = "FAILED" + #: A constant which can be used with the compartment_quota_enforcement_state property of a FileSystem. + #: This constant has a value of "NOT_BLOCKED" + COMPARTMENT_QUOTA_ENFORCEMENT_STATE_NOT_BLOCKED = "NOT_BLOCKED" + + #: A constant which can be used with the compartment_quota_enforcement_state property of a FileSystem. + #: This constant has a value of "BLOCKED" + COMPARTMENT_QUOTA_ENFORCEMENT_STATE_BLOCKED = "BLOCKED" + def __init__(self, **kwargs): """ Initializes a new FileSystem object with values from keyword arguments. @@ -193,6 +201,12 @@ def __init__(self, **kwargs): The value to assign to the replication_source_count property of this FileSystem. :type replication_source_count: int + :param compartment_quota_enforcement_state: + The value to assign to the compartment_quota_enforcement_state property of this FileSystem. + Allowed values for this property are: "NOT_BLOCKED", "BLOCKED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type compartment_quota_enforcement_state: str + """ self.swagger_types = { 'availability_domain': 'str', @@ -218,7 +232,8 @@ def __init__(self, **kwargs): 'filesystem_snapshot_policy_id': 'str', 'are_quota_rules_enabled': 'bool', 'quota_enforcement_state': 'str', - 'replication_source_count': 'int' + 'replication_source_count': 'int', + 'compartment_quota_enforcement_state': 'str' } self.attribute_map = { 'availability_domain': 'availabilityDomain', @@ -244,7 +259,8 @@ def __init__(self, **kwargs): 'filesystem_snapshot_policy_id': 'filesystemSnapshotPolicyId', 'are_quota_rules_enabled': 'areQuotaRulesEnabled', 'quota_enforcement_state': 'quotaEnforcementState', - 'replication_source_count': 'replicationSourceCount' + 'replication_source_count': 'replicationSourceCount', + 'compartment_quota_enforcement_state': 'compartmentQuotaEnforcementState' } self._availability_domain = None self._metered_bytes = None @@ -270,6 +286,7 @@ def __init__(self, **kwargs): self._are_quota_rules_enabled = None self._quota_enforcement_state = None self._replication_source_count = None + self._compartment_quota_enforcement_state = None @property def availability_domain(self): @@ -961,6 +978,36 @@ def replication_source_count(self, replication_source_count): """ self._replication_source_count = replication_source_count + @property + def compartment_quota_enforcement_state(self): + """ + Gets the compartment_quota_enforcement_state of this FileSystem. + Displays the compartment-level quota enforcement state affecting this file system. + + Allowed values for this property are: "NOT_BLOCKED", "BLOCKED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The compartment_quota_enforcement_state of this FileSystem. + :rtype: str + """ + return self._compartment_quota_enforcement_state + + @compartment_quota_enforcement_state.setter + def compartment_quota_enforcement_state(self, compartment_quota_enforcement_state): + """ + Sets the compartment_quota_enforcement_state of this FileSystem. + Displays the compartment-level quota enforcement state affecting this file system. + + + :param compartment_quota_enforcement_state: The compartment_quota_enforcement_state of this FileSystem. + :type: str + """ + allowed_values = ["NOT_BLOCKED", "BLOCKED"] + if not value_allowed_none_or_none_sentinel(compartment_quota_enforcement_state, allowed_values): + compartment_quota_enforcement_state = 'UNKNOWN_ENUM_VALUE' + self._compartment_quota_enforcement_state = compartment_quota_enforcement_state + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/file_storage/models/file_system_summary.py b/src/oci/file_storage/models/file_system_summary.py index 9c262f68a4..783813f26d 100644 --- a/src/oci/file_storage/models/file_system_summary.py +++ b/src/oci/file_storage/models/file_system_summary.py @@ -75,6 +75,14 @@ class FileSystemSummary(object): #: This constant has a value of "FAILED" QUOTA_ENFORCEMENT_STATE_FAILED = "FAILED" + #: A constant which can be used with the compartment_quota_enforcement_state property of a FileSystemSummary. + #: This constant has a value of "NOT_BLOCKED" + COMPARTMENT_QUOTA_ENFORCEMENT_STATE_NOT_BLOCKED = "NOT_BLOCKED" + + #: A constant which can be used with the compartment_quota_enforcement_state property of a FileSystemSummary. + #: This constant has a value of "BLOCKED" + COMPARTMENT_QUOTA_ENFORCEMENT_STATE_BLOCKED = "BLOCKED" + def __init__(self, **kwargs): """ Initializes a new FileSystemSummary object with values from keyword arguments. @@ -162,6 +170,12 @@ def __init__(self, **kwargs): Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type quota_enforcement_state: str + :param compartment_quota_enforcement_state: + The value to assign to the compartment_quota_enforcement_state property of this FileSystemSummary. + Allowed values for this property are: "NOT_BLOCKED", "BLOCKED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type compartment_quota_enforcement_state: str + """ self.swagger_types = { 'availability_domain': 'str', @@ -182,7 +196,8 @@ def __init__(self, **kwargs): 'is_hydrated': 'bool', 'lifecycle_details': 'str', 'clone_attach_status': 'str', - 'quota_enforcement_state': 'str' + 'quota_enforcement_state': 'str', + 'compartment_quota_enforcement_state': 'str' } self.attribute_map = { 'availability_domain': 'availabilityDomain', @@ -203,7 +218,8 @@ def __init__(self, **kwargs): 'is_hydrated': 'isHydrated', 'lifecycle_details': 'lifecycleDetails', 'clone_attach_status': 'cloneAttachStatus', - 'quota_enforcement_state': 'quotaEnforcementState' + 'quota_enforcement_state': 'quotaEnforcementState', + 'compartment_quota_enforcement_state': 'compartmentQuotaEnforcementState' } self._availability_domain = None self._metered_bytes = None @@ -224,6 +240,7 @@ def __init__(self, **kwargs): self._lifecycle_details = None self._clone_attach_status = None self._quota_enforcement_state = None + self._compartment_quota_enforcement_state = None @property def availability_domain(self): @@ -771,6 +788,36 @@ def quota_enforcement_state(self, quota_enforcement_state): quota_enforcement_state = 'UNKNOWN_ENUM_VALUE' self._quota_enforcement_state = quota_enforcement_state + @property + def compartment_quota_enforcement_state(self): + """ + Gets the compartment_quota_enforcement_state of this FileSystemSummary. + Displays the compartment-level quota enforcement state affecting this file system. + + Allowed values for this property are: "NOT_BLOCKED", "BLOCKED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The compartment_quota_enforcement_state of this FileSystemSummary. + :rtype: str + """ + return self._compartment_quota_enforcement_state + + @compartment_quota_enforcement_state.setter + def compartment_quota_enforcement_state(self, compartment_quota_enforcement_state): + """ + Sets the compartment_quota_enforcement_state of this FileSystemSummary. + Displays the compartment-level quota enforcement state affecting this file system. + + + :param compartment_quota_enforcement_state: The compartment_quota_enforcement_state of this FileSystemSummary. + :type: str + """ + allowed_values = ["NOT_BLOCKED", "BLOCKED"] + if not value_allowed_none_or_none_sentinel(compartment_quota_enforcement_state, allowed_values): + compartment_quota_enforcement_state = 'UNKNOWN_ENUM_VALUE' + self._compartment_quota_enforcement_state = compartment_quota_enforcement_state + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/file_storage/models/snapshot.py b/src/oci/file_storage/models/snapshot.py index 7d14ed516d..925a5052e9 100644 --- a/src/oci/file_storage/models/snapshot.py +++ b/src/oci/file_storage/models/snapshot.py @@ -124,6 +124,10 @@ def __init__(self, **kwargs): The value to assign to the filesystem_snapshot_policy_id property of this Snapshot. :type filesystem_snapshot_policy_id: str + :param exclusive_bytes: + The value to assign to the exclusive_bytes property of this Snapshot. + :type exclusive_bytes: int + """ self.swagger_types = { 'file_system_id': 'str', @@ -143,7 +147,8 @@ def __init__(self, **kwargs): 'defined_tags': 'dict(str, dict(str, object))', 'system_tags': 'dict(str, dict(str, object))', 'expiration_time': 'datetime', - 'filesystem_snapshot_policy_id': 'str' + 'filesystem_snapshot_policy_id': 'str', + 'exclusive_bytes': 'int' } self.attribute_map = { 'file_system_id': 'fileSystemId', @@ -163,7 +168,8 @@ def __init__(self, **kwargs): 'defined_tags': 'definedTags', 'system_tags': 'systemTags', 'expiration_time': 'expirationTime', - 'filesystem_snapshot_policy_id': 'filesystemSnapshotPolicyId' + 'filesystem_snapshot_policy_id': 'filesystemSnapshotPolicyId', + 'exclusive_bytes': 'exclusiveBytes' } self._file_system_id = None self._id = None @@ -183,6 +189,7 @@ def __init__(self, **kwargs): self._system_tags = None self._expiration_time = None self._filesystem_snapshot_policy_id = None + self._exclusive_bytes = None @property def file_system_id(self): @@ -720,6 +727,30 @@ def filesystem_snapshot_policy_id(self, filesystem_snapshot_policy_id): """ self._filesystem_snapshot_policy_id = filesystem_snapshot_policy_id + @property + def exclusive_bytes(self): + """ + Gets the exclusive_bytes of this Snapshot. + Bytes referenced only by this snapshot; deducted from compartment usage immediately upon deletion. + + + :return: The exclusive_bytes of this Snapshot. + :rtype: int + """ + return self._exclusive_bytes + + @exclusive_bytes.setter + def exclusive_bytes(self, exclusive_bytes): + """ + Sets the exclusive_bytes of this Snapshot. + Bytes referenced only by this snapshot; deducted from compartment usage immediately upon deletion. + + + :param exclusive_bytes: The exclusive_bytes of this Snapshot. + :type: int + """ + self._exclusive_bytes = exclusive_bytes + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/file_storage/models/snapshot_summary.py b/src/oci/file_storage/models/snapshot_summary.py index 298dc4690b..f5c05e2ce9 100644 --- a/src/oci/file_storage/models/snapshot_summary.py +++ b/src/oci/file_storage/models/snapshot_summary.py @@ -116,6 +116,10 @@ def __init__(self, **kwargs): The value to assign to the system_tags property of this SnapshotSummary. :type system_tags: dict(str, dict(str, object)) + :param exclusive_bytes: + The value to assign to the exclusive_bytes property of this SnapshotSummary. + :type exclusive_bytes: int + """ self.swagger_types = { 'file_system_id': 'str', @@ -133,7 +137,8 @@ def __init__(self, **kwargs): 'lifecycle_details': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', - 'system_tags': 'dict(str, dict(str, object))' + 'system_tags': 'dict(str, dict(str, object))', + 'exclusive_bytes': 'int' } self.attribute_map = { 'file_system_id': 'fileSystemId', @@ -151,7 +156,8 @@ def __init__(self, **kwargs): 'lifecycle_details': 'lifecycleDetails', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', - 'system_tags': 'systemTags' + 'system_tags': 'systemTags', + 'exclusive_bytes': 'exclusiveBytes' } self._file_system_id = None self._id = None @@ -169,6 +175,7 @@ def __init__(self, **kwargs): self._freeform_tags = None self._defined_tags = None self._system_tags = None + self._exclusive_bytes = None @property def file_system_id(self): @@ -646,6 +653,30 @@ def system_tags(self, system_tags): """ self._system_tags = system_tags + @property + def exclusive_bytes(self): + """ + Gets the exclusive_bytes of this SnapshotSummary. + Bytes referenced only by this snapshot; deducted from compartment usage immediately upon deletion. + + + :return: The exclusive_bytes of this SnapshotSummary. + :rtype: int + """ + return self._exclusive_bytes + + @exclusive_bytes.setter + def exclusive_bytes(self, exclusive_bytes): + """ + Sets the exclusive_bytes of this SnapshotSummary. + Bytes referenced only by this snapshot; deducted from compartment usage immediately upon deletion. + + + :param exclusive_bytes: The exclusive_bytes of this SnapshotSummary. + :type: int + """ + self._exclusive_bytes = exclusive_bytes + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/version.py b/src/oci/version.py index 2fb8c56567..3d5179d049 100644 --- a/src/oci/version.py +++ b/src/oci/version.py @@ -2,4 +2,4 @@ # Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. # This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. -__version__ = "2.182.0" +__version__ = "2.182.1" From 4ee5f2f0ca2f5fa16a3eaa1fd22c228136699be0 Mon Sep 17 00:00:00 2001 From: OCI DEX Release Bot Automation Date: Tue, 28 Jul 2026 05:55:38 +0000 Subject: [PATCH 08/11] Releasing version 2.183.0 Co-authored-by: Harsh Kumar --- CHANGELOG.rst | 27 + docs/api/apiaccesscontrol.rst | 1 + ...ccesscontrol.models.ApproverGroupLevel.rst | 11 + docs/api/core.rst | 3 + .../core/models/oci.core.models.Instances.rst | 11 + ...i.core.models.ProviderRemoteRegionName.rst | 11 + .../oci.core.models.RetentionDuration.rst | 11 + docs/api/database.rst | 13 + .../oci.database.models.BaseccVmCluster.rst | 11 + ...database.models.BaseccVmClusterSummary.rst | 11 + ....database.models.BaseccVmClusterUpdate.rst | 11 + ...se.models.BaseccVmClusterUpdateDetails.rst | 11 + ...dels.BaseccVmClusterUpdateHistoryEntry.rst | 11 + ...seccVmClusterUpdateHistoryEntrySummary.rst | 11 + ...se.models.BaseccVmClusterUpdateSummary.rst | 11 + ...hangeBaseccVmClusterCompartmentDetails.rst | 11 + ...se.models.CreateBaseccVmClusterDetails.rst | 11 + ....models.ExadataLiveImageVersionDetails.rst | 11 + ...dels.RegisterExadbVmClusterPkcsDetails.rst | 11 + ...ls.UnregisterExadbVmClusterPkcsDetails.rst | 11 + ...se.models.UpdateBaseccVmClusterDetails.rst | 11 + docs/api/golden_gate.rst | 28 + ....golden_gate.models.AiModelAuthDetails.rst | 11 + ..._gate.models.AiModelAuthDetailsSummary.rst | 11 + ...i.golden_gate.models.AiModelCollection.rst | 11 + ...i.golden_gate.models.AiModelConnection.rst | 11 + ...n_gate.models.AiModelConnectionSummary.rst | 11 + .../oci.golden_gate.models.AiModelSummary.rst | 11 + ...olden_gate.models.AiProviderCollection.rst | 11 + ...i.golden_gate.models.AiProviderSummary.rst | 11 + ...n_gate.models.ApiKeyAiModelAuthDetails.rst | 11 + ...models.ApiKeyAiModelAuthDetailsSummary.rst | 11 + ...n_gate.models.CreateAiModelAuthDetails.rst | 11 + ....models.CreateAiModelConnectionDetails.rst | 11 + ....models.CreateApiKeyAiModelAuthDetails.rst | 11 + ...e.models.CreateNoIcebergStorageDetails.rst | 11 + ....models.CreateOciGenAiModelAuthDetails.rst | 11 + ...bjectStorageS3ApiIcebergStorageDetails.rst | 11 + ...ci.golden_gate.models.NoIcebergStorage.rst | 11 + ...en_gate.models.NoIcebergStorageSummary.rst | 11 + ...n_gate.models.OciGenAiModelAuthDetails.rst | 11 + ...models.OciGenAiModelAuthDetailsSummary.rst | 11 + ...ls.OciObjectStorageS3ApiIcebergStorage.rst | 11 + ...bjectStorageS3ApiIcebergStorageSummary.rst | 11 + ...n_gate.models.UpdateAiModelAuthDetails.rst | 11 + ....models.UpdateAiModelConnectionDetails.rst | 11 + ....models.UpdateApiKeyAiModelAuthDetails.rst | 11 + ...e.models.UpdateNoIcebergStorageDetails.rst | 11 + ....models.UpdateOciGenAiModelAuthDetails.rst | 11 + ...bjectStorageS3ApiIcebergStorageDetails.rst | 11 + examples/showoci/CHANGELOG.rst | 9 + examples/showoci/showoci.py | 2 +- examples/showoci/showoci_data.py | 45 +- examples/showoci/showoci_output.py | 333 ++- examples/showoci/showoci_service.py | 649 ++++- .../models/create_ai_data_platform_details.py | 9 +- .../models/enable_ai_feature_details.py | 9 +- .../apiaccesscontrol/api_metadata_client.py | 18 +- src/oci/apiaccesscontrol/models/__init__.py | 2 + .../apiaccesscontrol/models/api_metadata.py | 35 +- .../api_metadata_by_entity_type_summary.py | 31 + .../models/approver_detail.py | 31 + .../models/approver_group_level.py | 101 + .../create_privileged_api_control_details.py | 37 +- .../create_privileged_api_request_details.py | 2 +- .../models/privileged_api_control.py | 33 +- .../models/privileged_api_control_summary.py | 2 - .../update_privileged_api_control_details.py | 35 +- .../privileged_api_control_client.py | 9 +- .../privileged_api_requests_client.py | 9 +- .../privileged_api_work_request_client.py | 9 +- .../apm_synthetics/models/password_in_text.py | 9 +- src/oci/base_client.py | 2 +- ...ate_bds_metastore_configuration_details.py | 11 +- ...ate_iam_user_sync_configuration_details.py | 9 +- .../activate_upst_configuration_details.py | 9 +- .../add_auto_scaling_configuration_details.py | 9 +- .../bds/models/add_block_storage_details.py | 9 +- src/oci/bds/models/add_cloud_sql_details.py | 9 +- src/oci/bds/models/add_kafka_details.py | 9 +- .../bds/models/add_master_nodes_details.py | 9 +- .../bds/models/add_utility_nodes_details.py | 9 +- .../bds/models/add_worker_nodes_details.py | 9 +- .../bds_instance_reset_password_details.py | 9 +- src/oci/bds/models/change_shape_details.py | 9 +- .../bds/models/create_bds_api_key_details.py | 9 +- .../bds/models/create_bds_instance_details.py | 9 +- ...ate_bds_metastore_configuration_details.py | 11 +- .../create_identity_configuration_details.py | 9 +- ...eate_node_replace_configuration_details.py | 9 +- ...esource_principal_configuration_details.py | 9 +- ...ate_iam_user_sync_configuration_details.py | 9 +- .../deactivate_upst_configuration_details.py | 9 +- .../bds/models/disable_certificate_details.py | 9 +- .../bds/models/enable_certificate_details.py | 13 +- .../execute_bootstrap_script_details.py | 9 +- ...orce_refresh_resource_principal_details.py | 9 +- .../generate_bds_certificate_details.py | 9 +- src/oci/bds/models/host_cert_details.py | 9 +- .../bds/models/install_os_patch_details.py | 9 +- src/oci/bds/models/install_patch_details.py | 9 +- src/oci/bds/models/password_summary.py | 9 +- ...efresh_confidential_application_details.py | 9 +- ...resh_upst_token_exchange_keytab_details.py | 9 +- ...move_auto_scaling_configuration_details.py | 9 +- .../bds/models/remove_cloud_sql_details.py | 9 +- src/oci/bds/models/remove_kafka_details.py | 9 +- src/oci/bds/models/remove_node_details.py | 9 +- ...move_node_replace_configuration_details.py | 9 +- src/oci/bds/models/remove_nodes_details.py | 9 +- ...esource_principal_configuration_details.py | 9 +- .../models/renew_bds_certificate_details.py | 9 +- .../bds/models/renew_certificate_details.py | 13 +- src/oci/bds/models/replace_node_details.py | 9 +- ...t_bds_certificate_configuration_details.py | 9 +- .../bds/models/start_bds_instance_details.py | 9 +- .../bds/models/stop_bds_instance_details.py | 9 +- ...est_bds_metastore_configuration_details.py | 9 +- ...t_bds_object_storage_connection_details.py | 9 +- ...date_auto_scaling_configuration_details.py | 9 +- ...ate_bds_metastore_configuration_details.py | 11 +- .../update_identity_configuration_details.py | 9 +- src/oci/cloud_bridge/models/logical_unit.py | 9 +- .../olvm_storage_domain_asset_details.py | 13 +- .../models/olvm_storage_domain_properties.py | 13 +- .../models/olvm_template_asset_details.py | 19 +- .../models/olvm_template_properties.py | 19 +- .../models/olvm_virtual_machine.py | 13 +- src/oci/cloud_bridge/models/storage.py | 13 +- src/oci/cloud_bridge/models/volume_group.py | 9 +- .../cloud_migrations/models/logical_unit.py | 9 +- .../olvm_storage_domain_asset_details.py | 13 +- .../models/olvm_storage_domain_properties.py | 13 +- .../models/olvm_template_asset_details.py | 19 +- .../models/olvm_template_properties.py | 19 +- .../models/olvm_virtual_machine.py | 13 +- src/oci/cloud_migrations/models/storage.py | 13 +- .../cloud_migrations/models/volume_group.py | 9 +- .../create_basic_image_pull_secret_details.py | 9 +- src/oci/core/models/__init__.py | 6 + src/oci/core/models/boot_volume_backup.py | 186 +- .../create_boot_volume_backup_details.py | 124 +- .../create_dedicated_vm_host_details.py | 35 +- .../models/create_virtual_circuit_details.py | 64 + .../models/create_volume_backup_details.py | 124 +- .../create_volume_group_backup_details.py | 124 +- src/oci/core/models/dedicated_vm_host.py | 31 + .../dedicated_vm_host_instance_summary.py | 31 + .../core/models/dedicated_vm_host_summary.py | 31 + src/oci/core/models/instances.py | 39 + .../models/provider_remote_region_name.py | 105 + src/oci/core/models/retention_duration.py | 117 + src/oci/core/models/supported_capabilities.py | 35 +- .../update_boot_volume_backup_details.py | 124 +- .../models/update_volume_backup_details.py | 124 +- .../update_volume_group_backup_details.py | 124 +- src/oci/core/models/virtual_circuit.py | 95 + src/oci/core/models/volume_backup.py | 186 +- src/oci/core/models/volume_backup_schedule.py | 93 +- src/oci/core/models/volume_group_backup.py | 155 +- src/oci/core/virtual_network_client.py | 134 + .../models/connection_from_adwc.py | 9 +- .../models/connection_from_adwc_details.py | 9 +- .../models/connection_from_atp.py | 9 +- .../models/connection_from_atp_details.py | 9 +- .../connection_from_my_sql_heat_wave.py | 9 +- ...onnection_from_my_sql_heat_wave_details.py | 9 +- .../models/connection_from_oracle.py | 9 +- .../models/connection_from_oracle_details.py | 9 +- .../models/connection_from_oracle_ebs.py | 9 +- .../connection_from_oracle_ebs_details.py | 9 +- .../connection_from_oracle_people_soft.py | 9 +- ...nection_from_oracle_people_soft_details.py | 9 +- .../models/connection_from_oracle_siebel.py | 9 +- .../connection_from_oracle_siebel_details.py | 9 +- .../models/connection_summary_from_adwc.py | 9 +- .../models/connection_summary_from_atp.py | 9 +- ...onnection_summary_from_my_sql_heat_wave.py | 9 +- .../models/connection_summary_from_oracle.py | 9 +- .../connection_summary_from_oracle_ebs.py | 9 +- ...nection_summary_from_oracle_people_soft.py | 9 +- .../connection_summary_from_oracle_siebel.py | 9 +- .../models/create_connection_from_adwc.py | 9 +- .../models/create_connection_from_atp.py | 9 +- .../models/create_connection_from_jdbc.py | 9 +- .../models/create_connection_from_my_sql.py | 9 +- ...create_connection_from_my_sql_heat_wave.py | 9 +- .../models/create_connection_from_oracle.py | 9 +- .../create_connection_from_oracle_ebs.py | 9 +- ...eate_connection_from_oracle_people_soft.py | 9 +- .../create_connection_from_oracle_siebel.py | 9 +- .../models/create_data_asset_from_adwc.py | 9 +- .../models/create_data_asset_from_atp.py | 9 +- .../models/create_data_asset_from_jdbc.py | 9 +- .../models/create_data_asset_from_my_sql.py | 9 +- ...create_data_asset_from_my_sql_heat_wave.py | 9 +- .../models/create_data_asset_from_oracle.py | 9 +- .../create_data_asset_from_oracle_ebs.py | 9 +- ...eate_data_asset_from_oracle_people_soft.py | 9 +- .../create_data_asset_from_oracle_siebel.py | 9 +- .../models/data_asset_from_adwc_details.py | 9 +- .../models/data_asset_from_atp_details.py | 9 +- .../data_asset_from_my_sql_heat_wave.py | 9 +- .../models/data_asset_from_oracle_details.py | 9 +- .../data_asset_from_oracle_ebs_details.py | 9 +- ...a_asset_from_oracle_people_soft_details.py | 9 +- .../data_asset_from_oracle_siebel_details.py | 9 +- .../models/data_asset_summary_from_adwc.py | 9 +- .../models/data_asset_summary_from_atp.py | 9 +- ...ata_asset_summary_from_my_sql_heat_wave.py | 9 +- .../models/data_asset_summary_from_oracle.py | 9 +- .../data_asset_summary_from_oracle_ebs.py | 9 +- ...a_asset_summary_from_oracle_people_soft.py | 9 +- .../data_asset_summary_from_oracle_siebel.py | 9 +- .../models/update_connection_from_adwc.py | 9 +- .../models/update_connection_from_atp.py | 9 +- .../models/update_connection_from_jdbc.py | 9 +- .../models/update_connection_from_my_sql.py | 9 +- ...update_connection_from_my_sql_heat_wave.py | 9 +- .../models/update_connection_from_oracle.py | 9 +- .../update_connection_from_oracle_ebs.py | 9 +- ...date_connection_from_oracle_people_soft.py | 9 +- .../update_connection_from_oracle_siebel.py | 9 +- .../models/update_data_asset_from_adwc.py | 9 +- .../models/update_data_asset_from_atp.py | 9 +- .../models/update_data_asset_from_jdbc.py | 9 +- .../models/update_data_asset_from_my_sql.py | 9 +- ...update_data_asset_from_my_sql_heat_wave.py | 9 +- .../models/update_data_asset_from_oracle.py | 9 +- .../update_data_asset_from_oracle_ebs.py | 9 +- ...date_data_asset_from_oracle_people_soft.py | 9 +- .../update_data_asset_from_oracle_siebel.py | 9 +- .../activate_target_database_details.py | 9 +- .../create_peer_target_database_details.py | 9 +- .../models/create_target_database_details.py | 13 +- src/oci/data_safe/models/credentials.py | 9 +- .../models/generate_health_report_details.py | 9 +- src/oci/data_safe/models/mask_data_details.py | 13 +- .../data_safe/models/peer_target_database.py | 9 +- src/oci/data_safe/models/target_database.py | 13 +- src/oci/data_safe/models/tls_config.py | 9 +- .../update_peer_target_database_details.py | 9 +- .../models/update_target_database_details.py | 11 +- src/oci/database/database_client.py | 2290 ++++++++++++++--- .../database_client_composite_operations.py | 327 +++ src/oci/database/models/__init__.py | 26 + src/oci/database/models/basecc_vm_cluster.py | 1229 +++++++++ .../models/basecc_vm_cluster_summary.py | 1229 +++++++++ .../models/basecc_vm_cluster_update.py | 402 +++ .../basecc_vm_cluster_update_details.py | 160 ++ .../basecc_vm_cluster_update_history_entry.py | 382 +++ ...vm_cluster_update_history_entry_summary.py | 382 +++ .../basecc_vm_cluster_update_summary.py | 408 +++ ...e_basecc_vm_cluster_compartment_details.py | 74 + src/oci/database/models/cloud_vm_cluster.py | 58 + .../models/cloud_vm_cluster_summary.py | 58 + .../convert_standby_database_type_details.py | 9 +- ...t_to_regular_pluggable_database_details.py | 11 +- .../models/convert_to_standalone_details.py | 9 +- .../create_basecc_vm_cluster_details.py | 813 ++++++ .../models/create_database_details.py | 9 +- ..._database_for_standby_db_system_details.py | 9 +- .../create_database_software_image_details.py | 10 +- .../database/models/create_db_home_details.py | 9 +- .../create_db_home_for_standby_db_system.py | 9 +- ...reate_db_home_with_db_system_id_details.py | 9 +- ...eate_db_home_with_vm_cluster_id_details.py | 9 +- .../models/create_new_database_details.py | 9 +- .../create_pluggable_database_details.py | 9 +- ...luggable_database_from_relocate_details.py | 11 +- ...able_database_from_remote_clone_details.py | 11 +- .../create_stand_by_database_details.py | 11 +- .../database/models/create_standby_details.py | 11 +- ...abase_connection_credentials_by_details.py | 9 +- .../models/database_software_image.py | 10 +- .../models/database_software_image_summary.py | 10 +- .../database_ssl_connection_credentials.py | 9 +- .../exadata_live_image_version_details.py | 183 ++ src/oci/database/models/exadb_vm_cluster.py | 90 +- .../models/exadb_vm_cluster_summary.py | 90 +- .../models/external_hsm_encryption_details.py | 9 +- .../models/failover_data_guard_details.py | 9 +- .../models/launch_db_system_details.py | 9 +- .../launch_standby_db_system_details.py | 9 +- .../models/migrate_vault_key_details.py | 11 +- .../pdb_conversion_to_new_database_details.py | 15 +- .../register_exadb_vm_cluster_pkcs_details.py | 94 + .../models/reinstate_data_guard_details.py | 9 +- .../models/switch_over_data_guard_details.py | 9 +- ...nregister_exadb_vm_cluster_pkcs_details.py | 94 + src/oci/database/models/update.py | 149 ++ .../update_basecc_vm_cluster_details.py | 462 ++++ .../models/update_data_guard_details.py | 9 +- .../models/update_database_details.py | 13 +- src/oci/database/models/update_details.py | 59 + .../database/models/update_history_entry.py | 67 + .../models/update_history_entry_summary.py | 67 + src/oci/database/models/update_summary.py | 149 ++ src/oci/database/models/vm_cluster.py | 58 + src/oci/database/models/vm_cluster_summary.py | 58 + src/oci/database/models/vm_cluster_update.py | 149 ++ .../models/vm_cluster_update_details.py | 59 + .../models/vm_cluster_update_history_entry.py | 67 + ...vm_cluster_update_history_entry_summary.py | 67 + .../models/vm_cluster_update_summary.py | 149 ++ .../change_database_parameters_details.py | 9 +- ...cloud_exadata_storage_connector_details.py | 11 +- ...ernal_exadata_storage_connector_details.py | 11 +- .../models/database_credentials.py | 9 +- .../database_password_credential_details.py | 9 +- .../managed_database_password_credential.py | 9 +- .../reset_database_parameters_details.py | 9 +- .../models/rest_credential.py | 11 +- ...g_set_admin_password_credential_details.py | 9 +- ...tuning_task_password_credential_details.py | 9 +- ...space_admin_password_credential_details.py | 9 +- ...cloud_exadata_storage_connector_details.py | 11 +- ...ernal_exadata_storage_connector_details.py | 11 +- .../database_migration/models/connection.py | 11 +- .../models/create_admin_credentials.py | 9 +- .../models/create_connection_details.py | 11 +- .../models/create_golden_gate_hub_details.py | 9 +- .../models/create_my_sql_migration_details.py | 9 +- .../models/create_mysql_connection_details.py | 11 +- ...cle_aws_s3_data_transfer_medium_details.py | 11 +- .../create_oracle_connection_details.py | 11 +- .../models/create_oracle_migration_details.py | 9 +- .../models/mysql_connection.py | 11 +- ...cle_aws_s3_data_transfer_medium_details.py | 11 +- .../models/oracle_connection.py | 11 +- .../models/update_admin_credentials.py | 9 +- .../models/update_connection_details.py | 11 +- .../models/update_golden_gate_hub_details.py | 9 +- .../models/update_my_sql_migration_details.py | 9 +- .../models/update_mysql_connection_details.py | 11 +- ...cle_aws_s3_data_transfer_medium_details.py | 11 +- .../update_oracle_connection_details.py | 11 +- .../models/update_oracle_migration_details.py | 9 +- .../models/create_credential_basic_details.py | 9 +- .../models/update_credential_basic_details.py | 9 +- ..._exadb_xs_new_vault_and_cluster_details.py | 9 +- ..._exadb_xs_new_vault_and_cluster_details.py | 9 +- .../create_migrated_dynect_zone_details.py | 9 +- .../dns/models/dynect_migration_details.py | 9 +- ...leet_credential_entity_specific_details.py | 9 +- .../fleet_apps_management/models/variable.py | 9 +- .../models/extract_details_collection.py | 9 +- .../models/extract_details_summary.py | 9 +- ...set_fusion_environment_password_details.py | 9 +- .../create_dedicated_ai_cluster_details.py | 6 + .../models/dedicated_ai_cluster.py | 14 +- src/oci/golden_gate/golden_gate_client.py | 292 ++- src/oci/golden_gate/models/__init__.py | 56 + .../models/ai_model_auth_details.py | 107 + .../models/ai_model_auth_details_summary.py | 107 + .../golden_gate/models/ai_model_collection.py | 70 + .../golden_gate/models/ai_model_connection.py | 395 +++ .../models/ai_model_connection_summary.py | 381 +++ .../golden_gate/models/ai_model_summary.py | 187 ++ .../models/ai_provider_collection.py | 70 + .../golden_gate/models/ai_provider_summary.py | 255 ++ .../models/amazon_kinesis_connection.py | 6 +- .../amazon_kinesis_connection_summary.py | 4 +- .../models/amazon_redshift_connection.py | 4 +- .../amazon_redshift_connection_summary.py | 2 +- .../models/amazon_s3_connection.py | 8 +- .../models/amazon_s3_connection_summary.py | 6 +- .../models/amazon_s3_iceberg_storage.py | 4 +- .../amazon_s3_iceberg_storage_summary.py | 4 +- .../models/api_key_ai_model_auth_details.py | 150 ++ .../api_key_ai_model_auth_details_summary.py | 113 + .../azure_data_lake_storage_connection.py | 4 +- ...re_data_lake_storage_connection_summary.py | 2 +- ...azure_data_lake_storage_iceberg_storage.py | 2 +- ...ta_lake_storage_iceberg_storage_summary.py | 2 +- .../models/azure_synapse_connection.py | 4 +- .../azure_synapse_connection_summary.py | 2 +- src/oci/golden_gate/models/connection.py | 116 +- .../models/connection_assignment.py | 159 ++ .../models/connection_assignment_summary.py | 159 ++ .../golden_gate/models/connection_summary.py | 106 +- .../models/create_ai_model_auth_details.py | 107 + .../create_ai_model_connection_details.py | 330 +++ ...reate_amazon_kinesis_connection_details.py | 21 +- ...eate_amazon_redshift_connection_details.py | 19 +- .../create_amazon_s3_connection_details.py | 27 +- ...reate_amazon_s3_iceberg_storage_details.py | 25 +- .../create_api_key_ai_model_auth_details.py | 150 ++ ...re_data_lake_storage_connection_details.py | 39 +- ...ta_lake_storage_iceberg_storage_details.py | 19 +- ...create_azure_synapse_connection_details.py | 19 +- .../models/create_connection_details.py | 106 +- .../create_database_registration_details.py | 25 +- .../create_databricks_connection_details.py | 29 +- .../models/create_db2_connection_details.py | 35 +- .../models/create_deployment_details.py | 9 +- ...create_elasticsearch_connection_details.py | 19 +- .../create_generic_connection_details.py | 2 +- .../create_golden_gate_connection_details.py | 19 +- ...ate_google_big_query_connection_details.py | 10 +- ...google_cloud_storage_connection_details.py | 10 +- ...e_cloud_storage_iceberg_storage_details.py | 10 +- ...reate_google_pub_sub_connection_details.py | 10 +- .../models/create_hdfs_connection_details.py | 2 +- .../create_iceberg_connection_details.py | 2 +- .../models/create_iceberg_storage_details.py | 22 +- ...java_message_service_connection_details.py | 75 +- .../models/create_kafka_connection_details.py | 65 +- ...afka_schema_registry_connection_details.py | 65 +- ...ate_microsoft_fabric_connection_details.py | 10 +- ..._microsoft_sqlserver_connection_details.py | 19 +- .../create_mongo_db_connection_details.py | 37 +- .../models/create_mysql_connection_details.py | 27 +- .../create_no_iceberg_storage_details.py | 50 + .../create_oci_gen_ai_model_auth_details.py | 247 ++ ...e_oci_object_storage_connection_details.py | 27 +- ..._storage_s3_api_iceberg_storage_details.py | 229 ++ .../models/create_ogg_deployment_details.py | 9 +- ...cle_ai_data_platform_connection_details.py | 27 +- .../create_oracle_connection_details.py | 31 +- .../create_oracle_nosql_connection_details.py | 27 +- .../create_polaris_iceberg_catalog_details.py | 9 +- .../create_postgresql_connection_details.py | 27 +- .../models/create_redis_connection_details.py | 55 +- .../create_snowflake_connection_details.py | 37 +- .../models/databricks_connection.py | 4 +- .../models/databricks_connection_summary.py | 2 +- src/oci/golden_gate/models/db2_connection.py | 4 +- .../models/db2_connection_summary.py | 2 +- .../models/deployment_type_summary.py | 10 +- .../models/elasticsearch_connection.py | 4 +- .../elasticsearch_connection_summary.py | 2 +- .../golden_gate/models/generic_connection.py | 4 +- .../models/generic_connection_summary.py | 2 +- .../models/golden_gate_connection.py | 4 +- .../models/golden_gate_connection_summary.py | 2 +- .../models/google_big_query_connection.py | 4 +- .../google_big_query_connection_summary.py | 2 +- .../models/google_cloud_storage_connection.py | 4 +- ...google_cloud_storage_connection_summary.py | 2 +- .../google_cloud_storage_iceberg_storage.py | 2 +- ...e_cloud_storage_iceberg_storage_summary.py | 2 +- .../models/google_pub_sub_connection.py | 4 +- .../google_pub_sub_connection_summary.py | 2 +- src/oci/golden_gate/models/hdfs_connection.py | 4 +- .../models/hdfs_connection_summary.py | 2 +- .../golden_gate/models/iceberg_connection.py | 4 +- .../models/iceberg_connection_summary.py | 2 +- src/oci/golden_gate/models/iceberg_storage.py | 22 +- .../models/iceberg_storage_summary.py | 22 +- .../models/java_message_service_connection.py | 4 +- ...java_message_service_connection_summary.py | 2 +- .../golden_gate/models/kafka_connection.py | 14 +- .../models/kafka_connection_summary.py | 2 +- .../kafka_schema_registry_connection.py | 4 +- ...afka_schema_registry_connection_summary.py | 2 +- .../models/microsoft_fabric_connection.py | 4 +- .../microsoft_fabric_connection_summary.py | 2 +- .../models/microsoft_sqlserver_connection.py | 4 +- .../microsoft_sqlserver_connection_summary.py | 2 +- .../golden_gate/models/mongo_db_connection.py | 4 +- .../models/mongo_db_connection_summary.py | 2 +- .../golden_gate/models/mysql_connection.py | 4 +- .../models/mysql_connection_summary.py | 2 +- .../golden_gate/models/no_iceberg_storage.py | 50 + .../models/no_iceberg_storage_summary.py | 50 + .../models/oci_gen_ai_model_auth_details.py | 247 ++ .../oci_gen_ai_model_auth_details_summary.py | 210 ++ .../models/oci_object_storage_connection.py | 4 +- .../oci_object_storage_connection_summary.py | 2 +- ...i_object_storage_s3_api_iceberg_storage.py | 190 ++ ..._storage_s3_api_iceberg_storage_summary.py | 190 ++ .../oracle_ai_data_platform_connection.py | 4 +- ...cle_ai_data_platform_connection_summary.py | 2 +- .../golden_gate/models/oracle_connection.py | 26 +- .../models/oracle_connection_summary.py | 6 +- .../models/oracle_nosql_connection.py | 4 +- .../models/oracle_nosql_connection_summary.py | 2 +- .../models/postgresql_connection.py | 4 +- .../models/postgresql_connection_summary.py | 2 +- .../golden_gate/models/redis_connection.py | 4 +- .../models/redis_connection_summary.py | 2 +- .../models/snowflake_connection.py | 4 +- .../models/snowflake_connection_summary.py | 2 +- .../models/update_ai_model_auth_details.py | 107 + .../update_ai_model_connection_details.py | 216 ++ ...pdate_amazon_kinesis_connection_details.py | 21 +- ...date_amazon_redshift_connection_details.py | 19 +- .../update_amazon_s3_connection_details.py | 27 +- ...pdate_amazon_s3_iceberg_storage_details.py | 25 +- .../update_api_key_ai_model_auth_details.py | 150 ++ ...re_data_lake_storage_connection_details.py | 39 +- ...ta_lake_storage_iceberg_storage_details.py | 19 +- ...update_azure_synapse_connection_details.py | 19 +- .../models/update_connection_details.py | 106 +- .../update_database_registration_details.py | 25 +- .../update_databricks_connection_details.py | 29 +- .../models/update_db2_connection_details.py | 35 +- .../models/update_deployment_details.py | 9 +- ...update_elasticsearch_connection_details.py | 19 +- .../update_generic_connection_details.py | 2 +- .../update_golden_gate_connection_details.py | 19 +- ...ate_google_big_query_connection_details.py | 10 +- ...google_cloud_storage_connection_details.py | 10 +- ...e_cloud_storage_iceberg_storage_details.py | 10 +- ...pdate_google_pub_sub_connection_details.py | 10 +- .../models/update_hdfs_connection_details.py | 2 +- .../update_iceberg_connection_details.py | 2 +- .../models/update_iceberg_storage_details.py | 22 +- ...java_message_service_connection_details.py | 75 +- .../models/update_kafka_connection_details.py | 65 +- ...afka_schema_registry_connection_details.py | 65 +- ...ate_microsoft_fabric_connection_details.py | 10 +- ..._microsoft_sqlserver_connection_details.py | 19 +- .../update_mongo_db_connection_details.py | 37 +- .../models/update_mysql_connection_details.py | 27 +- .../update_no_iceberg_storage_details.py | 50 + .../update_oci_gen_ai_model_auth_details.py | 247 ++ ...e_oci_object_storage_connection_details.py | 27 +- ..._storage_s3_api_iceberg_storage_details.py | 229 ++ .../models/update_ogg_deployment_details.py | 9 +- ...cle_ai_data_platform_connection_details.py | 27 +- .../update_oracle_connection_details.py | 31 +- .../update_oracle_nosql_connection_details.py | 27 +- .../update_polaris_iceberg_catalog_details.py | 9 +- .../update_postgresql_connection_details.py | 27 +- .../models/update_redis_connection_details.py | 55 +- .../update_snowflake_connection_details.py | 37 +- src/oci/identity/models/auth_token.py | 9 +- .../models/user_password_resetter.py | 9 +- .../iot/models/apex_data_access_details.py | 9 +- .../models/create_vault_details.py | 9 +- .../models/external_key_manager_metadata.py | 9 +- .../key_management/models/oauth_metadata.py | 9 +- src/oci/lockbox/models/access_materials.py | 9 +- ...reate_channel_source_from_mysql_details.py | 9 +- .../mysql/models/create_db_system_details.py | 9 +- ...m_source_from_db_system_channel_details.py | 9 +- ...db_system_source_from_db_system_details.py | 9 +- ...b_system_source_import_from_url_details.py | 9 +- ...pdate_channel_source_from_mysql_details.py | 9 +- .../mysql/models/update_db_system_details.py | 9 +- .../models/create_android_channel_result.py | 9 +- .../models/create_app_event_channel_result.py | 9 +- .../create_application_channel_result.py | 9 +- .../create_authentication_provider_details.py | 9 +- .../models/create_cortana_channel_details.py | 9 +- .../models/create_facebook_channel_details.py | 11 +- .../oda/models/create_ios_channel_result.py | 9 +- .../models/create_ms_teams_channel_details.py | 9 +- .../oda/models/create_oss_channel_details.py | 9 +- .../oda/models/create_osvc_channel_details.py | 9 +- .../create_service_cloud_channel_details.py | 9 +- .../models/create_slack_channel_details.py | 11 +- .../oda/models/create_test_channel_result.py | 9 +- .../oda/models/create_translator_details.py | 9 +- .../models/create_twilio_channel_details.py | 9 +- .../oda/models/create_web_channel_result.py | 9 +- .../models/create_webhook_channel_result.py | 9 +- .../update_authentication_provider_details.py | 9 +- .../models/update_cortana_channel_details.py | 9 +- .../models/update_facebook_channel_details.py | 11 +- .../models/update_ms_teams_channel_details.py | 9 +- .../oda/models/update_oss_channel_details.py | 9 +- .../oda/models/update_osvc_channel_details.py | 9 +- .../update_service_cloud_channel_details.py | 9 +- .../models/update_slack_channel_details.py | 11 +- .../oda/models/update_translator_details.py | 9 +- .../models/update_twilio_channel_details.py | 9 +- ...rations_insights_warehouse_user_details.py | 9 +- ...tions_insights_warehouse_wallet_details.py | 9 +- .../operations_insights_warehouse_user.py | 9 +- ...rations_insights_warehouse_user_summary.py | 9 +- ...ights_warehouse_user_summary_collection.py | 9 +- ...rations_insights_warehouse_user_details.py | 9 +- .../models/plain_text_password_details.py | 9 +- src/oci/util.py | 42 +- src/oci/version.py | 2 +- tests/autogentest/test_model.py | 196 ++ 579 files changed, 23324 insertions(+), 1673 deletions(-) create mode 100644 docs/api/apiaccesscontrol/models/oci.apiaccesscontrol.models.ApproverGroupLevel.rst create mode 100644 docs/api/core/models/oci.core.models.Instances.rst create mode 100644 docs/api/core/models/oci.core.models.ProviderRemoteRegionName.rst create mode 100644 docs/api/core/models/oci.core.models.RetentionDuration.rst create mode 100644 docs/api/database/models/oci.database.models.BaseccVmCluster.rst create mode 100644 docs/api/database/models/oci.database.models.BaseccVmClusterSummary.rst create mode 100644 docs/api/database/models/oci.database.models.BaseccVmClusterUpdate.rst create mode 100644 docs/api/database/models/oci.database.models.BaseccVmClusterUpdateDetails.rst create mode 100644 docs/api/database/models/oci.database.models.BaseccVmClusterUpdateHistoryEntry.rst create mode 100644 docs/api/database/models/oci.database.models.BaseccVmClusterUpdateHistoryEntrySummary.rst create mode 100644 docs/api/database/models/oci.database.models.BaseccVmClusterUpdateSummary.rst create mode 100644 docs/api/database/models/oci.database.models.ChangeBaseccVmClusterCompartmentDetails.rst create mode 100644 docs/api/database/models/oci.database.models.CreateBaseccVmClusterDetails.rst create mode 100644 docs/api/database/models/oci.database.models.ExadataLiveImageVersionDetails.rst create mode 100644 docs/api/database/models/oci.database.models.RegisterExadbVmClusterPkcsDetails.rst create mode 100644 docs/api/database/models/oci.database.models.UnregisterExadbVmClusterPkcsDetails.rst create mode 100644 docs/api/database/models/oci.database.models.UpdateBaseccVmClusterDetails.rst create mode 100644 docs/api/golden_gate/models/oci.golden_gate.models.AiModelAuthDetails.rst create mode 100644 docs/api/golden_gate/models/oci.golden_gate.models.AiModelAuthDetailsSummary.rst create mode 100644 docs/api/golden_gate/models/oci.golden_gate.models.AiModelCollection.rst create mode 100644 docs/api/golden_gate/models/oci.golden_gate.models.AiModelConnection.rst create mode 100644 docs/api/golden_gate/models/oci.golden_gate.models.AiModelConnectionSummary.rst create mode 100644 docs/api/golden_gate/models/oci.golden_gate.models.AiModelSummary.rst create mode 100644 docs/api/golden_gate/models/oci.golden_gate.models.AiProviderCollection.rst create mode 100644 docs/api/golden_gate/models/oci.golden_gate.models.AiProviderSummary.rst create mode 100644 docs/api/golden_gate/models/oci.golden_gate.models.ApiKeyAiModelAuthDetails.rst create mode 100644 docs/api/golden_gate/models/oci.golden_gate.models.ApiKeyAiModelAuthDetailsSummary.rst create mode 100644 docs/api/golden_gate/models/oci.golden_gate.models.CreateAiModelAuthDetails.rst create mode 100644 docs/api/golden_gate/models/oci.golden_gate.models.CreateAiModelConnectionDetails.rst create mode 100644 docs/api/golden_gate/models/oci.golden_gate.models.CreateApiKeyAiModelAuthDetails.rst create mode 100644 docs/api/golden_gate/models/oci.golden_gate.models.CreateNoIcebergStorageDetails.rst create mode 100644 docs/api/golden_gate/models/oci.golden_gate.models.CreateOciGenAiModelAuthDetails.rst create mode 100644 docs/api/golden_gate/models/oci.golden_gate.models.CreateOciObjectStorageS3ApiIcebergStorageDetails.rst create mode 100644 docs/api/golden_gate/models/oci.golden_gate.models.NoIcebergStorage.rst create mode 100644 docs/api/golden_gate/models/oci.golden_gate.models.NoIcebergStorageSummary.rst create mode 100644 docs/api/golden_gate/models/oci.golden_gate.models.OciGenAiModelAuthDetails.rst create mode 100644 docs/api/golden_gate/models/oci.golden_gate.models.OciGenAiModelAuthDetailsSummary.rst create mode 100644 docs/api/golden_gate/models/oci.golden_gate.models.OciObjectStorageS3ApiIcebergStorage.rst create mode 100644 docs/api/golden_gate/models/oci.golden_gate.models.OciObjectStorageS3ApiIcebergStorageSummary.rst create mode 100644 docs/api/golden_gate/models/oci.golden_gate.models.UpdateAiModelAuthDetails.rst create mode 100644 docs/api/golden_gate/models/oci.golden_gate.models.UpdateAiModelConnectionDetails.rst create mode 100644 docs/api/golden_gate/models/oci.golden_gate.models.UpdateApiKeyAiModelAuthDetails.rst create mode 100644 docs/api/golden_gate/models/oci.golden_gate.models.UpdateNoIcebergStorageDetails.rst create mode 100644 docs/api/golden_gate/models/oci.golden_gate.models.UpdateOciGenAiModelAuthDetails.rst create mode 100644 docs/api/golden_gate/models/oci.golden_gate.models.UpdateOciObjectStorageS3ApiIcebergStorageDetails.rst create mode 100644 src/oci/apiaccesscontrol/models/approver_group_level.py create mode 100644 src/oci/core/models/instances.py create mode 100644 src/oci/core/models/provider_remote_region_name.py create mode 100644 src/oci/core/models/retention_duration.py create mode 100644 src/oci/database/models/basecc_vm_cluster.py create mode 100644 src/oci/database/models/basecc_vm_cluster_summary.py create mode 100644 src/oci/database/models/basecc_vm_cluster_update.py create mode 100644 src/oci/database/models/basecc_vm_cluster_update_details.py create mode 100644 src/oci/database/models/basecc_vm_cluster_update_history_entry.py create mode 100644 src/oci/database/models/basecc_vm_cluster_update_history_entry_summary.py create mode 100644 src/oci/database/models/basecc_vm_cluster_update_summary.py create mode 100644 src/oci/database/models/change_basecc_vm_cluster_compartment_details.py create mode 100644 src/oci/database/models/create_basecc_vm_cluster_details.py create mode 100644 src/oci/database/models/exadata_live_image_version_details.py create mode 100644 src/oci/database/models/register_exadb_vm_cluster_pkcs_details.py create mode 100644 src/oci/database/models/unregister_exadb_vm_cluster_pkcs_details.py create mode 100644 src/oci/database/models/update_basecc_vm_cluster_details.py create mode 100644 src/oci/golden_gate/models/ai_model_auth_details.py create mode 100644 src/oci/golden_gate/models/ai_model_auth_details_summary.py create mode 100644 src/oci/golden_gate/models/ai_model_collection.py create mode 100644 src/oci/golden_gate/models/ai_model_connection.py create mode 100644 src/oci/golden_gate/models/ai_model_connection_summary.py create mode 100644 src/oci/golden_gate/models/ai_model_summary.py create mode 100644 src/oci/golden_gate/models/ai_provider_collection.py create mode 100644 src/oci/golden_gate/models/ai_provider_summary.py create mode 100644 src/oci/golden_gate/models/api_key_ai_model_auth_details.py create mode 100644 src/oci/golden_gate/models/api_key_ai_model_auth_details_summary.py create mode 100644 src/oci/golden_gate/models/create_ai_model_auth_details.py create mode 100644 src/oci/golden_gate/models/create_ai_model_connection_details.py create mode 100644 src/oci/golden_gate/models/create_api_key_ai_model_auth_details.py create mode 100644 src/oci/golden_gate/models/create_no_iceberg_storage_details.py create mode 100644 src/oci/golden_gate/models/create_oci_gen_ai_model_auth_details.py create mode 100644 src/oci/golden_gate/models/create_oci_object_storage_s3_api_iceberg_storage_details.py create mode 100644 src/oci/golden_gate/models/no_iceberg_storage.py create mode 100644 src/oci/golden_gate/models/no_iceberg_storage_summary.py create mode 100644 src/oci/golden_gate/models/oci_gen_ai_model_auth_details.py create mode 100644 src/oci/golden_gate/models/oci_gen_ai_model_auth_details_summary.py create mode 100644 src/oci/golden_gate/models/oci_object_storage_s3_api_iceberg_storage.py create mode 100644 src/oci/golden_gate/models/oci_object_storage_s3_api_iceberg_storage_summary.py create mode 100644 src/oci/golden_gate/models/update_ai_model_auth_details.py create mode 100644 src/oci/golden_gate/models/update_ai_model_connection_details.py create mode 100644 src/oci/golden_gate/models/update_api_key_ai_model_auth_details.py create mode 100644 src/oci/golden_gate/models/update_no_iceberg_storage_details.py create mode 100644 src/oci/golden_gate/models/update_oci_gen_ai_model_auth_details.py create mode 100644 src/oci/golden_gate/models/update_oci_object_storage_s3_api_iceberg_storage_details.py diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 6c33ed1d85..6410567b6b 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -4,6 +4,33 @@ All notable changes to this project will be documented in this file. The format is based on `Keep a Changelog `_. +==================== +2.183.0 - 2026-07-28 +==================== + +Added +----- +* Support for retention locks for block backups in the Block Volume service +* Support for Data Guard creation with Azure encryption keys and changing encryption key locations to Azure in the Database service +* Support for registering and unregistering PKCS for Exadata Database Service on Dedicated Infrastructure VM clusters in the Database service +* Support for Exadata DomU OS live updates in Exadata Cloud and Exadata Cloud@Customer in the Database service +* Support for Oracle Base Database Cloud@Customer VM clusters in the Database service +* Support for autonomous database and two-level approver groups in the Oracle API Access Control service +* Support for creating virtual circuits with AWS as the provider in the Networking service +* Support for listing available provider regions in the Networking service +* Support for Oracle Exadata Exascale, Oracle Exadata Exascale at Azure, and Oracle Exadata Exascale at Google Cloud connection technology types in the GoldenGate service +* Support for Google Cloud Managed Service for Apache Kafka connection technology types in the GoldenGate service +* Support for AI model connections in the GoldenGate service +* Support for listing supported AI models by provider, region, and tenancy in the GoldenGate service +* Support for NEEDS_ATTENTION lifecycle state for connection resources in the GoldenGate service +* Support for connectionType metadata and connectionTypeNotEqualTo filtering on connection assignment resources in the GoldenGate service +* Support for H100_X16 and H100_X32 Dedicated AI Cluster shapes for model import in the Generative AI service + +Breaking +-------- +* The field compartment_id was made required in list_api_metadata_by_entity_types, list_api_metadata, list_privileged_api_controls, list_privileged_api_requests, and list_work_requests APIs in the Oracle API Access Control service +* The field compartment_id was made required in CreatePrivilegedApiRequestDetails in the Oracle API Access Control service + ==================== 2.182.1 - 2026-07-21 ==================== diff --git a/docs/api/apiaccesscontrol.rst b/docs/api/apiaccesscontrol.rst index c5f688c40e..c9b6e226dd 100644 --- a/docs/api/apiaccesscontrol.rst +++ b/docs/api/apiaccesscontrol.rst @@ -31,6 +31,7 @@ Apiaccesscontrol oci.apiaccesscontrol.models.ApiMetadataSummary oci.apiaccesscontrol.models.ApprovePrivilegedApiRequestDetails oci.apiaccesscontrol.models.ApproverDetail + oci.apiaccesscontrol.models.ApproverGroupLevel oci.apiaccesscontrol.models.ChangePrivilegedApiControlCompartmentDetails oci.apiaccesscontrol.models.ClosePrivilegedApiRequestDetails oci.apiaccesscontrol.models.CreatePrivilegedApiControlDetails diff --git a/docs/api/apiaccesscontrol/models/oci.apiaccesscontrol.models.ApproverGroupLevel.rst b/docs/api/apiaccesscontrol/models/oci.apiaccesscontrol.models.ApproverGroupLevel.rst new file mode 100644 index 0000000000..e2b2e2eb13 --- /dev/null +++ b/docs/api/apiaccesscontrol/models/oci.apiaccesscontrol.models.ApproverGroupLevel.rst @@ -0,0 +1,11 @@ +ApproverGroupLevel +================== + +.. currentmodule:: oci.apiaccesscontrol.models + +.. autoclass:: ApproverGroupLevel + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/core.rst b/docs/api/core.rst index 50f5da34f5..3b630e5baa 100644 --- a/docs/api/core.rst +++ b/docs/api/core.rst @@ -464,6 +464,7 @@ Core Services oci.core.models.InstanceSourceViaBootVolumeDetails oci.core.models.InstanceSourceViaImageDetails oci.core.models.InstanceSummary + oci.core.models.Instances oci.core.models.IntelIcelakeBmLaunchInstancePlatformConfig oci.core.models.IntelIcelakeBmPlatformConfig oci.core.models.IntelSkylakeBmLaunchInstancePlatformConfig @@ -541,6 +542,7 @@ Core Services oci.core.models.PreemptibleInstanceConfigDetails oci.core.models.PreemptionAction oci.core.models.PrivateIp + oci.core.models.ProviderRemoteRegionName oci.core.models.PublicIp oci.core.models.PublicIpPool oci.core.models.PublicIpPoolCollection @@ -558,6 +560,7 @@ Core Services oci.core.models.RemoveVcnCidrDetails oci.core.models.RemoveVcnIpv6CidrDetails oci.core.models.ResetActionDetails + oci.core.models.RetentionDuration oci.core.models.RouteRule oci.core.models.RouteTable oci.core.models.SecurityList diff --git a/docs/api/core/models/oci.core.models.Instances.rst b/docs/api/core/models/oci.core.models.Instances.rst new file mode 100644 index 0000000000..48e8e170a2 --- /dev/null +++ b/docs/api/core/models/oci.core.models.Instances.rst @@ -0,0 +1,11 @@ +Instances +========= + +.. currentmodule:: oci.core.models + +.. autoclass:: Instances + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/core/models/oci.core.models.ProviderRemoteRegionName.rst b/docs/api/core/models/oci.core.models.ProviderRemoteRegionName.rst new file mode 100644 index 0000000000..0d621e3d9b --- /dev/null +++ b/docs/api/core/models/oci.core.models.ProviderRemoteRegionName.rst @@ -0,0 +1,11 @@ +ProviderRemoteRegionName +======================== + +.. currentmodule:: oci.core.models + +.. autoclass:: ProviderRemoteRegionName + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/core/models/oci.core.models.RetentionDuration.rst b/docs/api/core/models/oci.core.models.RetentionDuration.rst new file mode 100644 index 0000000000..8146cbb6c9 --- /dev/null +++ b/docs/api/core/models/oci.core.models.RetentionDuration.rst @@ -0,0 +1,11 @@ +RetentionDuration +================= + +.. currentmodule:: oci.core.models + +.. autoclass:: RetentionDuration + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/database.rst b/docs/api/database.rst index eaf8ec2e50..8cf4172995 100644 --- a/docs/api/database.rst +++ b/docs/api/database.rst @@ -103,10 +103,18 @@ Database oci.database.models.BackupDestinationProperties oci.database.models.BackupDestinationSummary oci.database.models.BackupSummary + oci.database.models.BaseccVmCluster + oci.database.models.BaseccVmClusterSummary + oci.database.models.BaseccVmClusterUpdate + oci.database.models.BaseccVmClusterUpdateDetails + oci.database.models.BaseccVmClusterUpdateHistoryEntry + oci.database.models.BaseccVmClusterUpdateHistoryEntrySummary + oci.database.models.BaseccVmClusterUpdateSummary oci.database.models.CancelExecutionWindowDetails oci.database.models.ChangeAutonomousDatabaseSoftwareImageCompartmentDetails oci.database.models.ChangeAutonomousDatabaseSubscriptionDetails oci.database.models.ChangeAutonomousVmClusterCompartmentDetails + oci.database.models.ChangeBaseccVmClusterCompartmentDetails oci.database.models.ChangeCloudAutonomousVmClusterCompartmentDetails oci.database.models.ChangeCloudAutonomousVmClusterSubscriptionDetails oci.database.models.ChangeCloudDbSystemSubscriptionDetails @@ -176,6 +184,7 @@ Database oci.database.models.CreateAutonomousVmClusterDetails oci.database.models.CreateBackupDestinationDetails oci.database.models.CreateBackupDetails + oci.database.models.CreateBaseccVmClusterDetails oci.database.models.CreateCloudAutonomousVmClusterDetails oci.database.models.CreateCloudExadataInfrastructureDetails oci.database.models.CreateCloudVmClusterDetails @@ -340,6 +349,7 @@ Database oci.database.models.ExadataInfrastructureUnAllocatedResources oci.database.models.ExadataIormConfig oci.database.models.ExadataIormConfigUpdateDetails + oci.database.models.ExadataLiveImageVersionDetails oci.database.models.ExadbVmCluster oci.database.models.ExadbVmClusterStorageDetails oci.database.models.ExadbVmClusterSummary @@ -457,6 +467,7 @@ Database oci.database.models.RegisterAutonomousDatabaseDataSafeDetails oci.database.models.RegisterCloudAutonomousVmClusterPkcsDetails oci.database.models.RegisterCloudVmClusterPkcsDetails + oci.database.models.RegisterExadbVmClusterPkcsDetails oci.database.models.ReinstateDataGuardAssociationDetails oci.database.models.ReinstateDataGuardDetails oci.database.models.RemoteClonePluggableDatabaseDetails @@ -512,6 +523,7 @@ Database oci.database.models.UnmountDbnodeSnapshotDetails oci.database.models.UnregisterCloudAutonomousVmClusterPkcsDetails oci.database.models.UnregisterCloudVmClusterPkcsDetails + oci.database.models.UnregisterExadbVmClusterPkcsDetails oci.database.models.Update oci.database.models.UpdateAdvancedClusterFileSystemDetails oci.database.models.UpdateAutonomousContainerDatabaseDataGuardAssociationDetails @@ -524,6 +536,7 @@ Database oci.database.models.UpdateAutonomousVmClusterDetails oci.database.models.UpdateBackupDestinationDetails oci.database.models.UpdateBackupDetails + oci.database.models.UpdateBaseccVmClusterDetails oci.database.models.UpdateCloudAutonomousVmClusterDetails oci.database.models.UpdateCloudExadataInfrastructureDetails oci.database.models.UpdateCloudVmClusterDetails diff --git a/docs/api/database/models/oci.database.models.BaseccVmCluster.rst b/docs/api/database/models/oci.database.models.BaseccVmCluster.rst new file mode 100644 index 0000000000..359955a9a5 --- /dev/null +++ b/docs/api/database/models/oci.database.models.BaseccVmCluster.rst @@ -0,0 +1,11 @@ +BaseccVmCluster +=============== + +.. currentmodule:: oci.database.models + +.. autoclass:: BaseccVmCluster + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/database/models/oci.database.models.BaseccVmClusterSummary.rst b/docs/api/database/models/oci.database.models.BaseccVmClusterSummary.rst new file mode 100644 index 0000000000..024330fff9 --- /dev/null +++ b/docs/api/database/models/oci.database.models.BaseccVmClusterSummary.rst @@ -0,0 +1,11 @@ +BaseccVmClusterSummary +====================== + +.. currentmodule:: oci.database.models + +.. autoclass:: BaseccVmClusterSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/database/models/oci.database.models.BaseccVmClusterUpdate.rst b/docs/api/database/models/oci.database.models.BaseccVmClusterUpdate.rst new file mode 100644 index 0000000000..dfd1081576 --- /dev/null +++ b/docs/api/database/models/oci.database.models.BaseccVmClusterUpdate.rst @@ -0,0 +1,11 @@ +BaseccVmClusterUpdate +===================== + +.. currentmodule:: oci.database.models + +.. autoclass:: BaseccVmClusterUpdate + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/database/models/oci.database.models.BaseccVmClusterUpdateDetails.rst b/docs/api/database/models/oci.database.models.BaseccVmClusterUpdateDetails.rst new file mode 100644 index 0000000000..ed885590f0 --- /dev/null +++ b/docs/api/database/models/oci.database.models.BaseccVmClusterUpdateDetails.rst @@ -0,0 +1,11 @@ +BaseccVmClusterUpdateDetails +============================ + +.. currentmodule:: oci.database.models + +.. autoclass:: BaseccVmClusterUpdateDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/database/models/oci.database.models.BaseccVmClusterUpdateHistoryEntry.rst b/docs/api/database/models/oci.database.models.BaseccVmClusterUpdateHistoryEntry.rst new file mode 100644 index 0000000000..b2e06475ad --- /dev/null +++ b/docs/api/database/models/oci.database.models.BaseccVmClusterUpdateHistoryEntry.rst @@ -0,0 +1,11 @@ +BaseccVmClusterUpdateHistoryEntry +================================= + +.. currentmodule:: oci.database.models + +.. autoclass:: BaseccVmClusterUpdateHistoryEntry + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/database/models/oci.database.models.BaseccVmClusterUpdateHistoryEntrySummary.rst b/docs/api/database/models/oci.database.models.BaseccVmClusterUpdateHistoryEntrySummary.rst new file mode 100644 index 0000000000..4ca47a5650 --- /dev/null +++ b/docs/api/database/models/oci.database.models.BaseccVmClusterUpdateHistoryEntrySummary.rst @@ -0,0 +1,11 @@ +BaseccVmClusterUpdateHistoryEntrySummary +======================================== + +.. currentmodule:: oci.database.models + +.. autoclass:: BaseccVmClusterUpdateHistoryEntrySummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/database/models/oci.database.models.BaseccVmClusterUpdateSummary.rst b/docs/api/database/models/oci.database.models.BaseccVmClusterUpdateSummary.rst new file mode 100644 index 0000000000..8bacff5662 --- /dev/null +++ b/docs/api/database/models/oci.database.models.BaseccVmClusterUpdateSummary.rst @@ -0,0 +1,11 @@ +BaseccVmClusterUpdateSummary +============================ + +.. currentmodule:: oci.database.models + +.. autoclass:: BaseccVmClusterUpdateSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/database/models/oci.database.models.ChangeBaseccVmClusterCompartmentDetails.rst b/docs/api/database/models/oci.database.models.ChangeBaseccVmClusterCompartmentDetails.rst new file mode 100644 index 0000000000..fe03355f5d --- /dev/null +++ b/docs/api/database/models/oci.database.models.ChangeBaseccVmClusterCompartmentDetails.rst @@ -0,0 +1,11 @@ +ChangeBaseccVmClusterCompartmentDetails +======================================= + +.. currentmodule:: oci.database.models + +.. autoclass:: ChangeBaseccVmClusterCompartmentDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/database/models/oci.database.models.CreateBaseccVmClusterDetails.rst b/docs/api/database/models/oci.database.models.CreateBaseccVmClusterDetails.rst new file mode 100644 index 0000000000..e1fb0ec5b8 --- /dev/null +++ b/docs/api/database/models/oci.database.models.CreateBaseccVmClusterDetails.rst @@ -0,0 +1,11 @@ +CreateBaseccVmClusterDetails +============================ + +.. currentmodule:: oci.database.models + +.. autoclass:: CreateBaseccVmClusterDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/database/models/oci.database.models.ExadataLiveImageVersionDetails.rst b/docs/api/database/models/oci.database.models.ExadataLiveImageVersionDetails.rst new file mode 100644 index 0000000000..3d4cd89841 --- /dev/null +++ b/docs/api/database/models/oci.database.models.ExadataLiveImageVersionDetails.rst @@ -0,0 +1,11 @@ +ExadataLiveImageVersionDetails +============================== + +.. currentmodule:: oci.database.models + +.. autoclass:: ExadataLiveImageVersionDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/database/models/oci.database.models.RegisterExadbVmClusterPkcsDetails.rst b/docs/api/database/models/oci.database.models.RegisterExadbVmClusterPkcsDetails.rst new file mode 100644 index 0000000000..904f82adb6 --- /dev/null +++ b/docs/api/database/models/oci.database.models.RegisterExadbVmClusterPkcsDetails.rst @@ -0,0 +1,11 @@ +RegisterExadbVmClusterPkcsDetails +================================= + +.. currentmodule:: oci.database.models + +.. autoclass:: RegisterExadbVmClusterPkcsDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/database/models/oci.database.models.UnregisterExadbVmClusterPkcsDetails.rst b/docs/api/database/models/oci.database.models.UnregisterExadbVmClusterPkcsDetails.rst new file mode 100644 index 0000000000..71be02a9a7 --- /dev/null +++ b/docs/api/database/models/oci.database.models.UnregisterExadbVmClusterPkcsDetails.rst @@ -0,0 +1,11 @@ +UnregisterExadbVmClusterPkcsDetails +=================================== + +.. currentmodule:: oci.database.models + +.. autoclass:: UnregisterExadbVmClusterPkcsDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/database/models/oci.database.models.UpdateBaseccVmClusterDetails.rst b/docs/api/database/models/oci.database.models.UpdateBaseccVmClusterDetails.rst new file mode 100644 index 0000000000..5117bd54c4 --- /dev/null +++ b/docs/api/database/models/oci.database.models.UpdateBaseccVmClusterDetails.rst @@ -0,0 +1,11 @@ +UpdateBaseccVmClusterDetails +============================ + +.. currentmodule:: oci.database.models + +.. autoclass:: UpdateBaseccVmClusterDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/golden_gate.rst b/docs/api/golden_gate.rst index 4cbb8d8044..a83403dd91 100644 --- a/docs/api/golden_gate.rst +++ b/docs/api/golden_gate.rst @@ -20,6 +20,14 @@ Golden Gate oci.golden_gate.models.AddDeploymentLocalPeerDetails oci.golden_gate.models.AddResourceLockDetails + oci.golden_gate.models.AiModelAuthDetails + oci.golden_gate.models.AiModelAuthDetailsSummary + oci.golden_gate.models.AiModelCollection + oci.golden_gate.models.AiModelConnection + oci.golden_gate.models.AiModelConnectionSummary + oci.golden_gate.models.AiModelSummary + oci.golden_gate.models.AiProviderCollection + oci.golden_gate.models.AiProviderSummary oci.golden_gate.models.AmazonKinesisConnection oci.golden_gate.models.AmazonKinesisConnectionSummary oci.golden_gate.models.AmazonRedshiftConnection @@ -28,6 +36,8 @@ Golden Gate oci.golden_gate.models.AmazonS3ConnectionSummary oci.golden_gate.models.AmazonS3IcebergStorage oci.golden_gate.models.AmazonS3IcebergStorageSummary + oci.golden_gate.models.ApiKeyAiModelAuthDetails + oci.golden_gate.models.ApiKeyAiModelAuthDetailsSummary oci.golden_gate.models.AzureDataLakeStorageConnection oci.golden_gate.models.AzureDataLakeStorageConnectionSummary oci.golden_gate.models.AzureDataLakeStorageIcebergStorage @@ -59,10 +69,13 @@ Golden Gate oci.golden_gate.models.ConnectionCollection oci.golden_gate.models.ConnectionSummary oci.golden_gate.models.CopyDeploymentBackupDetails + oci.golden_gate.models.CreateAiModelAuthDetails + oci.golden_gate.models.CreateAiModelConnectionDetails oci.golden_gate.models.CreateAmazonKinesisConnectionDetails oci.golden_gate.models.CreateAmazonRedshiftConnectionDetails oci.golden_gate.models.CreateAmazonS3ConnectionDetails oci.golden_gate.models.CreateAmazonS3IcebergStorageDetails + oci.golden_gate.models.CreateApiKeyAiModelAuthDetails oci.golden_gate.models.CreateAzureDataLakeStorageConnectionDetails oci.golden_gate.models.CreateAzureDataLakeStorageIcebergStorageDetails oci.golden_gate.models.CreateAzureSynapseConnectionDetails @@ -99,7 +112,10 @@ Golden Gate oci.golden_gate.models.CreateMongoDbConnectionDetails oci.golden_gate.models.CreateMysqlConnectionDetails oci.golden_gate.models.CreateNessieIcebergCatalogDetails + oci.golden_gate.models.CreateNoIcebergStorageDetails + oci.golden_gate.models.CreateOciGenAiModelAuthDetails oci.golden_gate.models.CreateOciObjectStorageConnectionDetails + oci.golden_gate.models.CreateOciObjectStorageS3ApiIcebergStorageDetails oci.golden_gate.models.CreateOggDeploymentDetails oci.golden_gate.models.CreateOracleAiDataPlatformConnectionDetails oci.golden_gate.models.CreateOracleConnectionDetails @@ -220,8 +236,14 @@ Golden Gate oci.golden_gate.models.NameValuePair oci.golden_gate.models.NessieIcebergCatalog oci.golden_gate.models.NessieIcebergCatalogSummary + oci.golden_gate.models.NoIcebergStorage + oci.golden_gate.models.NoIcebergStorageSummary + oci.golden_gate.models.OciGenAiModelAuthDetails + oci.golden_gate.models.OciGenAiModelAuthDetailsSummary oci.golden_gate.models.OciObjectStorageConnection oci.golden_gate.models.OciObjectStorageConnectionSummary + oci.golden_gate.models.OciObjectStorageS3ApiIcebergStorage + oci.golden_gate.models.OciObjectStorageS3ApiIcebergStorageSummary oci.golden_gate.models.OggDeployment oci.golden_gate.models.OracleAiDataPlatformConnection oci.golden_gate.models.OracleAiDataPlatformConnectionSummary @@ -284,10 +306,13 @@ Golden Gate oci.golden_gate.models.TrailFileSummary oci.golden_gate.models.TrailSequenceCollection oci.golden_gate.models.TrailSequenceSummary + oci.golden_gate.models.UpdateAiModelAuthDetails + oci.golden_gate.models.UpdateAiModelConnectionDetails oci.golden_gate.models.UpdateAmazonKinesisConnectionDetails oci.golden_gate.models.UpdateAmazonRedshiftConnectionDetails oci.golden_gate.models.UpdateAmazonS3ConnectionDetails oci.golden_gate.models.UpdateAmazonS3IcebergStorageDetails + oci.golden_gate.models.UpdateApiKeyAiModelAuthDetails oci.golden_gate.models.UpdateAzureDataLakeStorageConnectionDetails oci.golden_gate.models.UpdateAzureDataLakeStorageIcebergStorageDetails oci.golden_gate.models.UpdateAzureSynapseConnectionDetails @@ -322,7 +347,10 @@ Golden Gate oci.golden_gate.models.UpdateMongoDbConnectionDetails oci.golden_gate.models.UpdateMysqlConnectionDetails oci.golden_gate.models.UpdateNessieIcebergCatalogDetails + oci.golden_gate.models.UpdateNoIcebergStorageDetails + oci.golden_gate.models.UpdateOciGenAiModelAuthDetails oci.golden_gate.models.UpdateOciObjectStorageConnectionDetails + oci.golden_gate.models.UpdateOciObjectStorageS3ApiIcebergStorageDetails oci.golden_gate.models.UpdateOggDeploymentDetails oci.golden_gate.models.UpdateOracleAiDataPlatformConnectionDetails oci.golden_gate.models.UpdateOracleConnectionDetails diff --git a/docs/api/golden_gate/models/oci.golden_gate.models.AiModelAuthDetails.rst b/docs/api/golden_gate/models/oci.golden_gate.models.AiModelAuthDetails.rst new file mode 100644 index 0000000000..be8eea7177 --- /dev/null +++ b/docs/api/golden_gate/models/oci.golden_gate.models.AiModelAuthDetails.rst @@ -0,0 +1,11 @@ +AiModelAuthDetails +================== + +.. currentmodule:: oci.golden_gate.models + +.. autoclass:: AiModelAuthDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/golden_gate/models/oci.golden_gate.models.AiModelAuthDetailsSummary.rst b/docs/api/golden_gate/models/oci.golden_gate.models.AiModelAuthDetailsSummary.rst new file mode 100644 index 0000000000..ce34707775 --- /dev/null +++ b/docs/api/golden_gate/models/oci.golden_gate.models.AiModelAuthDetailsSummary.rst @@ -0,0 +1,11 @@ +AiModelAuthDetailsSummary +========================= + +.. currentmodule:: oci.golden_gate.models + +.. autoclass:: AiModelAuthDetailsSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/golden_gate/models/oci.golden_gate.models.AiModelCollection.rst b/docs/api/golden_gate/models/oci.golden_gate.models.AiModelCollection.rst new file mode 100644 index 0000000000..1e80c9b891 --- /dev/null +++ b/docs/api/golden_gate/models/oci.golden_gate.models.AiModelCollection.rst @@ -0,0 +1,11 @@ +AiModelCollection +================= + +.. currentmodule:: oci.golden_gate.models + +.. autoclass:: AiModelCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/golden_gate/models/oci.golden_gate.models.AiModelConnection.rst b/docs/api/golden_gate/models/oci.golden_gate.models.AiModelConnection.rst new file mode 100644 index 0000000000..6d6218ca95 --- /dev/null +++ b/docs/api/golden_gate/models/oci.golden_gate.models.AiModelConnection.rst @@ -0,0 +1,11 @@ +AiModelConnection +================= + +.. currentmodule:: oci.golden_gate.models + +.. autoclass:: AiModelConnection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/golden_gate/models/oci.golden_gate.models.AiModelConnectionSummary.rst b/docs/api/golden_gate/models/oci.golden_gate.models.AiModelConnectionSummary.rst new file mode 100644 index 0000000000..9ddd4854eb --- /dev/null +++ b/docs/api/golden_gate/models/oci.golden_gate.models.AiModelConnectionSummary.rst @@ -0,0 +1,11 @@ +AiModelConnectionSummary +======================== + +.. currentmodule:: oci.golden_gate.models + +.. autoclass:: AiModelConnectionSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/golden_gate/models/oci.golden_gate.models.AiModelSummary.rst b/docs/api/golden_gate/models/oci.golden_gate.models.AiModelSummary.rst new file mode 100644 index 0000000000..c34aa9ae4a --- /dev/null +++ b/docs/api/golden_gate/models/oci.golden_gate.models.AiModelSummary.rst @@ -0,0 +1,11 @@ +AiModelSummary +============== + +.. currentmodule:: oci.golden_gate.models + +.. autoclass:: AiModelSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/golden_gate/models/oci.golden_gate.models.AiProviderCollection.rst b/docs/api/golden_gate/models/oci.golden_gate.models.AiProviderCollection.rst new file mode 100644 index 0000000000..d080bb2475 --- /dev/null +++ b/docs/api/golden_gate/models/oci.golden_gate.models.AiProviderCollection.rst @@ -0,0 +1,11 @@ +AiProviderCollection +==================== + +.. currentmodule:: oci.golden_gate.models + +.. autoclass:: AiProviderCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/golden_gate/models/oci.golden_gate.models.AiProviderSummary.rst b/docs/api/golden_gate/models/oci.golden_gate.models.AiProviderSummary.rst new file mode 100644 index 0000000000..1c7747f408 --- /dev/null +++ b/docs/api/golden_gate/models/oci.golden_gate.models.AiProviderSummary.rst @@ -0,0 +1,11 @@ +AiProviderSummary +================= + +.. currentmodule:: oci.golden_gate.models + +.. autoclass:: AiProviderSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/golden_gate/models/oci.golden_gate.models.ApiKeyAiModelAuthDetails.rst b/docs/api/golden_gate/models/oci.golden_gate.models.ApiKeyAiModelAuthDetails.rst new file mode 100644 index 0000000000..141f7d4592 --- /dev/null +++ b/docs/api/golden_gate/models/oci.golden_gate.models.ApiKeyAiModelAuthDetails.rst @@ -0,0 +1,11 @@ +ApiKeyAiModelAuthDetails +======================== + +.. currentmodule:: oci.golden_gate.models + +.. autoclass:: ApiKeyAiModelAuthDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/golden_gate/models/oci.golden_gate.models.ApiKeyAiModelAuthDetailsSummary.rst b/docs/api/golden_gate/models/oci.golden_gate.models.ApiKeyAiModelAuthDetailsSummary.rst new file mode 100644 index 0000000000..a81e9444c9 --- /dev/null +++ b/docs/api/golden_gate/models/oci.golden_gate.models.ApiKeyAiModelAuthDetailsSummary.rst @@ -0,0 +1,11 @@ +ApiKeyAiModelAuthDetailsSummary +=============================== + +.. currentmodule:: oci.golden_gate.models + +.. autoclass:: ApiKeyAiModelAuthDetailsSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/golden_gate/models/oci.golden_gate.models.CreateAiModelAuthDetails.rst b/docs/api/golden_gate/models/oci.golden_gate.models.CreateAiModelAuthDetails.rst new file mode 100644 index 0000000000..0e0fb8e025 --- /dev/null +++ b/docs/api/golden_gate/models/oci.golden_gate.models.CreateAiModelAuthDetails.rst @@ -0,0 +1,11 @@ +CreateAiModelAuthDetails +======================== + +.. currentmodule:: oci.golden_gate.models + +.. autoclass:: CreateAiModelAuthDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/golden_gate/models/oci.golden_gate.models.CreateAiModelConnectionDetails.rst b/docs/api/golden_gate/models/oci.golden_gate.models.CreateAiModelConnectionDetails.rst new file mode 100644 index 0000000000..da5b6b9c6e --- /dev/null +++ b/docs/api/golden_gate/models/oci.golden_gate.models.CreateAiModelConnectionDetails.rst @@ -0,0 +1,11 @@ +CreateAiModelConnectionDetails +============================== + +.. currentmodule:: oci.golden_gate.models + +.. autoclass:: CreateAiModelConnectionDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/golden_gate/models/oci.golden_gate.models.CreateApiKeyAiModelAuthDetails.rst b/docs/api/golden_gate/models/oci.golden_gate.models.CreateApiKeyAiModelAuthDetails.rst new file mode 100644 index 0000000000..6a2081730e --- /dev/null +++ b/docs/api/golden_gate/models/oci.golden_gate.models.CreateApiKeyAiModelAuthDetails.rst @@ -0,0 +1,11 @@ +CreateApiKeyAiModelAuthDetails +============================== + +.. currentmodule:: oci.golden_gate.models + +.. autoclass:: CreateApiKeyAiModelAuthDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/golden_gate/models/oci.golden_gate.models.CreateNoIcebergStorageDetails.rst b/docs/api/golden_gate/models/oci.golden_gate.models.CreateNoIcebergStorageDetails.rst new file mode 100644 index 0000000000..9391d39e78 --- /dev/null +++ b/docs/api/golden_gate/models/oci.golden_gate.models.CreateNoIcebergStorageDetails.rst @@ -0,0 +1,11 @@ +CreateNoIcebergStorageDetails +============================= + +.. currentmodule:: oci.golden_gate.models + +.. autoclass:: CreateNoIcebergStorageDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/golden_gate/models/oci.golden_gate.models.CreateOciGenAiModelAuthDetails.rst b/docs/api/golden_gate/models/oci.golden_gate.models.CreateOciGenAiModelAuthDetails.rst new file mode 100644 index 0000000000..e72b59990e --- /dev/null +++ b/docs/api/golden_gate/models/oci.golden_gate.models.CreateOciGenAiModelAuthDetails.rst @@ -0,0 +1,11 @@ +CreateOciGenAiModelAuthDetails +============================== + +.. currentmodule:: oci.golden_gate.models + +.. autoclass:: CreateOciGenAiModelAuthDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/golden_gate/models/oci.golden_gate.models.CreateOciObjectStorageS3ApiIcebergStorageDetails.rst b/docs/api/golden_gate/models/oci.golden_gate.models.CreateOciObjectStorageS3ApiIcebergStorageDetails.rst new file mode 100644 index 0000000000..526f63f401 --- /dev/null +++ b/docs/api/golden_gate/models/oci.golden_gate.models.CreateOciObjectStorageS3ApiIcebergStorageDetails.rst @@ -0,0 +1,11 @@ +CreateOciObjectStorageS3ApiIcebergStorageDetails +================================================ + +.. currentmodule:: oci.golden_gate.models + +.. autoclass:: CreateOciObjectStorageS3ApiIcebergStorageDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/golden_gate/models/oci.golden_gate.models.NoIcebergStorage.rst b/docs/api/golden_gate/models/oci.golden_gate.models.NoIcebergStorage.rst new file mode 100644 index 0000000000..309a5a85cc --- /dev/null +++ b/docs/api/golden_gate/models/oci.golden_gate.models.NoIcebergStorage.rst @@ -0,0 +1,11 @@ +NoIcebergStorage +================ + +.. currentmodule:: oci.golden_gate.models + +.. autoclass:: NoIcebergStorage + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/golden_gate/models/oci.golden_gate.models.NoIcebergStorageSummary.rst b/docs/api/golden_gate/models/oci.golden_gate.models.NoIcebergStorageSummary.rst new file mode 100644 index 0000000000..e5d062997e --- /dev/null +++ b/docs/api/golden_gate/models/oci.golden_gate.models.NoIcebergStorageSummary.rst @@ -0,0 +1,11 @@ +NoIcebergStorageSummary +======================= + +.. currentmodule:: oci.golden_gate.models + +.. autoclass:: NoIcebergStorageSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/golden_gate/models/oci.golden_gate.models.OciGenAiModelAuthDetails.rst b/docs/api/golden_gate/models/oci.golden_gate.models.OciGenAiModelAuthDetails.rst new file mode 100644 index 0000000000..7d670848e4 --- /dev/null +++ b/docs/api/golden_gate/models/oci.golden_gate.models.OciGenAiModelAuthDetails.rst @@ -0,0 +1,11 @@ +OciGenAiModelAuthDetails +======================== + +.. currentmodule:: oci.golden_gate.models + +.. autoclass:: OciGenAiModelAuthDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/golden_gate/models/oci.golden_gate.models.OciGenAiModelAuthDetailsSummary.rst b/docs/api/golden_gate/models/oci.golden_gate.models.OciGenAiModelAuthDetailsSummary.rst new file mode 100644 index 0000000000..bfd32ea928 --- /dev/null +++ b/docs/api/golden_gate/models/oci.golden_gate.models.OciGenAiModelAuthDetailsSummary.rst @@ -0,0 +1,11 @@ +OciGenAiModelAuthDetailsSummary +=============================== + +.. currentmodule:: oci.golden_gate.models + +.. autoclass:: OciGenAiModelAuthDetailsSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/golden_gate/models/oci.golden_gate.models.OciObjectStorageS3ApiIcebergStorage.rst b/docs/api/golden_gate/models/oci.golden_gate.models.OciObjectStorageS3ApiIcebergStorage.rst new file mode 100644 index 0000000000..0306de6418 --- /dev/null +++ b/docs/api/golden_gate/models/oci.golden_gate.models.OciObjectStorageS3ApiIcebergStorage.rst @@ -0,0 +1,11 @@ +OciObjectStorageS3ApiIcebergStorage +=================================== + +.. currentmodule:: oci.golden_gate.models + +.. autoclass:: OciObjectStorageS3ApiIcebergStorage + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/golden_gate/models/oci.golden_gate.models.OciObjectStorageS3ApiIcebergStorageSummary.rst b/docs/api/golden_gate/models/oci.golden_gate.models.OciObjectStorageS3ApiIcebergStorageSummary.rst new file mode 100644 index 0000000000..d7186226d3 --- /dev/null +++ b/docs/api/golden_gate/models/oci.golden_gate.models.OciObjectStorageS3ApiIcebergStorageSummary.rst @@ -0,0 +1,11 @@ +OciObjectStorageS3ApiIcebergStorageSummary +========================================== + +.. currentmodule:: oci.golden_gate.models + +.. autoclass:: OciObjectStorageS3ApiIcebergStorageSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/golden_gate/models/oci.golden_gate.models.UpdateAiModelAuthDetails.rst b/docs/api/golden_gate/models/oci.golden_gate.models.UpdateAiModelAuthDetails.rst new file mode 100644 index 0000000000..a28e3c6bb5 --- /dev/null +++ b/docs/api/golden_gate/models/oci.golden_gate.models.UpdateAiModelAuthDetails.rst @@ -0,0 +1,11 @@ +UpdateAiModelAuthDetails +======================== + +.. currentmodule:: oci.golden_gate.models + +.. autoclass:: UpdateAiModelAuthDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/golden_gate/models/oci.golden_gate.models.UpdateAiModelConnectionDetails.rst b/docs/api/golden_gate/models/oci.golden_gate.models.UpdateAiModelConnectionDetails.rst new file mode 100644 index 0000000000..e65c42d7f7 --- /dev/null +++ b/docs/api/golden_gate/models/oci.golden_gate.models.UpdateAiModelConnectionDetails.rst @@ -0,0 +1,11 @@ +UpdateAiModelConnectionDetails +============================== + +.. currentmodule:: oci.golden_gate.models + +.. autoclass:: UpdateAiModelConnectionDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/golden_gate/models/oci.golden_gate.models.UpdateApiKeyAiModelAuthDetails.rst b/docs/api/golden_gate/models/oci.golden_gate.models.UpdateApiKeyAiModelAuthDetails.rst new file mode 100644 index 0000000000..84db47852d --- /dev/null +++ b/docs/api/golden_gate/models/oci.golden_gate.models.UpdateApiKeyAiModelAuthDetails.rst @@ -0,0 +1,11 @@ +UpdateApiKeyAiModelAuthDetails +============================== + +.. currentmodule:: oci.golden_gate.models + +.. autoclass:: UpdateApiKeyAiModelAuthDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/golden_gate/models/oci.golden_gate.models.UpdateNoIcebergStorageDetails.rst b/docs/api/golden_gate/models/oci.golden_gate.models.UpdateNoIcebergStorageDetails.rst new file mode 100644 index 0000000000..23f659924e --- /dev/null +++ b/docs/api/golden_gate/models/oci.golden_gate.models.UpdateNoIcebergStorageDetails.rst @@ -0,0 +1,11 @@ +UpdateNoIcebergStorageDetails +============================= + +.. currentmodule:: oci.golden_gate.models + +.. autoclass:: UpdateNoIcebergStorageDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/golden_gate/models/oci.golden_gate.models.UpdateOciGenAiModelAuthDetails.rst b/docs/api/golden_gate/models/oci.golden_gate.models.UpdateOciGenAiModelAuthDetails.rst new file mode 100644 index 0000000000..6827fcee55 --- /dev/null +++ b/docs/api/golden_gate/models/oci.golden_gate.models.UpdateOciGenAiModelAuthDetails.rst @@ -0,0 +1,11 @@ +UpdateOciGenAiModelAuthDetails +============================== + +.. currentmodule:: oci.golden_gate.models + +.. autoclass:: UpdateOciGenAiModelAuthDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/golden_gate/models/oci.golden_gate.models.UpdateOciObjectStorageS3ApiIcebergStorageDetails.rst b/docs/api/golden_gate/models/oci.golden_gate.models.UpdateOciObjectStorageS3ApiIcebergStorageDetails.rst new file mode 100644 index 0000000000..98ea4c3820 --- /dev/null +++ b/docs/api/golden_gate/models/oci.golden_gate.models.UpdateOciObjectStorageS3ApiIcebergStorageDetails.rst @@ -0,0 +1,11 @@ +UpdateOciObjectStorageS3ApiIcebergStorageDetails +================================================ + +.. currentmodule:: oci.golden_gate.models + +.. autoclass:: UpdateOciObjectStorageS3ApiIcebergStorageDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/examples/showoci/CHANGELOG.rst b/examples/showoci/CHANGELOG.rst index 883427ed1c..a54af8a984 100644 --- a/examples/showoci/CHANGELOG.rst +++ b/examples/showoci/CHANGELOG.rst @@ -4,6 +4,15 @@ All notable changes to this project will be documented in this file. The format is based on `Keep a Changelog `_. +===================== +26.07.14 - 26.07.14 +===================== +* Added Log Analytics entities and active storage reporting +* Added Operations Insights database and host insights +* Added Vault Secrets inventory with Vault and encryption key details +* Added IAM domains Dynamic Group full info +* Added KMS Keys additional information + ===================== 26.04.23 - 26.04.23 ===================== diff --git a/examples/showoci/showoci.py b/examples/showoci/showoci.py index c2bf58c5b1..34b0b9de23 100644 --- a/examples/showoci/showoci.py +++ b/examples/showoci/showoci.py @@ -126,7 +126,7 @@ import os import time -version = "26.04.01" +version = "26.07.14" ########################################################################## # check OCI version diff --git a/examples/showoci/showoci_data.py b/examples/showoci/showoci_data.py index 1f14e77c84..68e754bebc 100644 --- a/examples/showoci/showoci_data.py +++ b/examples/showoci/showoci_data.py @@ -20,7 +20,7 @@ class ShowOCIData(object): - version = "26.04.01" + version = "26.07.14" ############################################ # ShowOCIService - Service object to query @@ -4402,6 +4402,8 @@ def __get_monitoring_main(self, region_name, compartment): advisor_recommendations = self.service.search_multi_items(self.service.C_MONITORING, self.service.C_MONITORING_ADVISOR_RECOMMENDATIONS, 'region_name', region_name, 'compartment_id', compartment['id']) advisor_resource_actions = self.service.search_multi_items(self.service.C_MONITORING, self.service.C_MONITORING_ADVISOR_RESOURCE_ACTIONS, 'region_name', region_name, 'compartment_id', compartment['id']) db_managements = self.service.search_multi_items(self.service.C_MONITORING, self.service.C_MONITORING_DB_MANAGEMENT, 'region_name', region_name, 'compartment_id', compartment['id']) + opsi_database_insights = self.service.search_multi_items(self.service.C_MONITORING, self.service.C_MONITORING_OPSI_DATABASE_INSIGHTS, 'region_name', region_name, 'compartment_id', compartment['id']) + opsi_host_insights = self.service.search_multi_items(self.service.C_MONITORING, self.service.C_MONITORING_OPSI_HOST_INSIGHTS, 'region_name', region_name, 'compartment_id', compartment['id']) data = {} # if events add it @@ -4432,6 +4434,14 @@ def __get_monitoring_main(self, region_name, compartment): if db_managements: data['db_managements'] = db_managements + # if opsi database insights add it + if opsi_database_insights: + data['opsi_database_insights'] = opsi_database_insights + + # if opsi host insights add it + if opsi_host_insights: + data['opsi_host_insights'] = opsi_host_insights + # if events add it if alarms: data['alarms'] = [] @@ -4675,9 +4685,19 @@ def __get_security_main(self, region_name, compartment): # logging unified agents logua = self.service.search_multi_items(self.service.C_SECURITY, self.service.C_SECURITY_LOGGING_UA, 'region_name', region_name, 'compartment_id', compartment['id']) - if log: + if logua: security_services['logging_unified_agents'] = logua + # log analytics sources + logan = self.service.search_multi_items(self.service.C_SECURITY, self.service.C_SECURITY_LOG_ANALYTICS_NAMESPACE, 'region_name', region_name, 'compartment_id', self.service.get_tenancy_id()) + if logan: + security_services['log_analytics_namespace'] = logan + + # log analytics entities + loga = self.service.search_multi_items(self.service.C_SECURITY, self.service.C_SECURITY_LOG_ANALYTICS, 'region_name', region_name, 'compartment_id', compartment['id']) + if loga: + security_services['log_analytics'] = loga + # kms_vaults vaults = self.service.search_multi_items(self.service.C_SECURITY, self.service.C_SECURITY_VAULTS, 'region_name', region_name, 'compartment_id', compartment['id']) if vaults: @@ -4686,8 +4706,29 @@ def __get_security_main(self, region_name, compartment): # kms_keys keys = self.service.search_multi_items(self.service.C_SECURITY, self.service.C_SECURITY_KEYS, 'region_name', region_name, 'compartment_id', compartment['id']) if keys: + for key in keys: + vault = self.service.search_unique_item( + self.service.C_SECURITY, + self.service.C_SECURITY_VAULTS, + 'id', + key['vault_id'] + ) + key['vault_name'] = vault['name'] if vault else "" security_services['kms_keys'] = keys + # kms_secrets + secrets = self.service.search_multi_items(self.service.C_SECURITY, self.service.C_SECURITY_SECRETS, 'region_name', region_name, 'compartment_id', compartment['id']) + if secrets: + for secret in secrets: + vault = self.service.search_unique_item( + self.service.C_SECURITY, + self.service.C_SECURITY_VAULTS, + 'id', + secret['vault_id'] + ) + secret['vault_name'] = vault['name'] if vault else "" + security_services['kms_secrets'] = secrets + # certificate certificates = self.service.search_multi_items(self.service.C_CERTIFICATE, self.service.C_CERTIFICATE_CERTIFICATES, 'region_name', region_name, 'compartment_id', compartment['id']) if certificates: diff --git a/examples/showoci/showoci_output.py b/examples/showoci/showoci_output.py index dfa3ff88f0..bbd4ef97e1 100644 --- a/examples/showoci/showoci_output.py +++ b/examples/showoci/showoci_output.py @@ -22,7 +22,7 @@ class ShowOCIOutput(object): - version = "26.04.01" + version = "26.07.14" ########################################################################## # spaces for align @@ -2435,6 +2435,31 @@ def __print_monitoring_main(self, monitorings): for event in agents: print(self.taba + event['name'] + ", " + event['database_type'] + ", " + str(event['database_sub_type']) + ", is_cluster = " + event['is_cluster'] + ", Created : " + event['time_created'][0:16]) + # if opsi database insights + if 'opsi_database_insights' in monitorings: + if monitorings['opsi_database_insights']: + database_insights = monitorings['opsi_database_insights'] + self.print_header("Operations Insights - Databases", 2) + + for db in database_insights: + print(self.taba + db['database_display_name'] + ", " + db['database_type'] + ", Version = " + db['database_version'] + ", Source = " + db['entity_source'] + ", Status = " + db['status']) + if db['database_host_names']: + print(self.tabs + "Hosts : " + str(', '.join(x for x in db['database_host_names']))) + if db['cdb_name']: + print(self.tabs + "CDB : " + db['cdb_name']) + print("") + + # if opsi host insights + if 'opsi_host_insights' in monitorings: + if monitorings['opsi_host_insights']: + host_insights = monitorings['opsi_host_insights'] + self.print_header("Operations Insights - Hosts", 2) + + for host in host_insights: + print(self.taba + host['host_display_name'] + ", " + host['host_type'] + ", Platform = " + host['platform_type'] + " " + host['platform_version'] + ", Source = " + host['entity_source'] + ", Status = " + host['status']) + print(self.tabs + "CPU : " + host['processor_count'] + ", Total CPUs: " + host['total_cpus'] + ", Memory GB: " + host['total_memory_in_gbs']) + print("") + except Exception as e: self.__print_error("__print_monitoring_main", e) @@ -2740,6 +2765,13 @@ def __print_security_main(self, security): print(self.tabs2 + "Replicas : " + rep['status'] + ", " + rep['region'] + ", " + rep['crypto_endpoint']) print("") + # kms_secrets + if 'kms_secrets' in security: + self.print_header("KMS Vault Secrets", 2) + for val in security['kms_secrets']: + print(self.taba + val['name'] + ", Vault: " + val['vault_name'] + ", Created: " + val['time_created'][0:16] + " (" + val['lifecycle_state'] + ")") + print("") + # Logging if 'logging' in security: self.print_header("Logging Groups", 2) @@ -2763,6 +2795,31 @@ def __print_security_main(self, security): print(self.taba + val['display_name'] + ", (" + val['description'] + "), Is Enabled: " + val['is_enabled'] + ", Type: " + val['configuration_type'] + ", Created: " + val['time_created'][0:16]) print("") + # Log Analytics + if 'log_analytics_namespace' in security: + self.print_header("Log Analytics Namespaces", 2) + for val in security['log_analytics_namespace']: + print(self.taba + val['namespace_name'] + ", Active Storage Used GB: " + val['storage_active_data_size_in_gb'] + ", Archiving: " + val['namespace_is_archiving_enabled'] + ", State: " + val['namespace_lifecycle_state']) + print("") + + if 'log_analytics' in security: + self.print_header("Log Analytics Entities", 2) + for val in security['log_analytics']: + print(self.taba + val['display_name'] + ", Type: " + val['type_display_name'] + ", Namespace: " + val['namespace_name'] + ", Sources: " + val['associated_sources_count'] + ", Updated: " + val['time_updated'][0:16] + " (" + val['lifecycle_state'] + ")") + if val['entity_names']: + print(self.tabs2 + "Entity Name : " + str(', '.join(x for x in val['entity_names']))) + if val['entity_type_display_names']: + print(self.tabs2 + "Entity Type : " + str(', '.join(x for x in val['entity_type_display_names']))) + if val['associated_sources_count']: + print(self.tabs2 + "Log Association : " + val['associated_sources_count']) + if val['log_purge']: + print(self.tabs2 + "Log Purge : " + str(', '.join(x['status'] + ":" + x['time_accepted'] for x in val['log_purge']))) + if val['entity_types']: + print(self.tabs2 + "Source Entity Types : " + str(', '.join(x['entity_type_display_name'] for x in val['entity_types']))) + if val['parsers']: + print(self.tabs2 + "Parsers : " + str(', '.join(x['display_name'] for x in val['parsers']))) + print("") + # Certificates if 'certificates' in security: self.print_header("Certificates", 2) @@ -3558,12 +3615,18 @@ def __summary_security(self, security): self.__summary_core_size(security['logging']) if 'logging_unified_agents' in security: self.__summary_core_size(security['logging_unified_agents']) + if 'log_analytics_namespace' in security: + self.__summary_core_size(security['log_analytics_namespace']) + if 'log_analytics' in security: + self.__summary_core_size(security['log_analytics']) if 'bastions' in security: self.__summary_core_size(security['bastions']) if 'kms_vaults' in security: self.__summary_core_size(security['kms_vaults']) self.__summary_core_size(security['kms_vaults'], "sum_info_hsm", 'key_count') self.__summary_core_size(security['kms_vaults'], "sum_info_soft", 'software_key_count') + if 'kms_secrets' in security: + self.__summary_core_size(security['kms_secrets']) if 'certificates' in security: self.__summary_core_size(security['certificates']) if 'certificate_associations' in security: @@ -4523,7 +4586,11 @@ class ShowOCICSV(object): csv_security_bastions = [] csv_security_logging = [] csv_security_log_unified_agents = [] + csv_security_log_analytics_namespace = [] + csv_security_log_analytics = [] csv_security_kms_vault = [] + csv_security_kms_key = [] + csv_security_kms_secret = [] csv_security_cloud_guard = [] csv_container = [] csv_container_nodepool = [] @@ -4554,6 +4621,8 @@ class ShowOCICSV(object): csv_streams_queues = [] csv_monitor_agents = [] csv_monitor_db_management = [] + csv_monitor_opsi_database_insights = [] + csv_monitor_opsi_host_insights = [] csv_monitor_alarms = [] csv_monitor_events = [] csv_notifications = [] @@ -4568,6 +4637,7 @@ class ShowOCICSV(object): ############################################ def __init__(self, start_time): self.start_time = start_time + self.csv_security_log_analytics_namespace_ids = set() ########################################################################## # get errors @@ -4733,8 +4803,12 @@ def generate_csv(self, data, csv_file_header, tenancy, add_date_field=True, csv_ self.__export_to_csv_file("security_bastions", self.csv_security_bastions) self.__export_to_csv_file("security_loggings", self.csv_security_logging) self.__export_to_csv_file("security_log_unified_agents", self.csv_security_log_unified_agents) + self.__export_to_csv_file("security_log_analytics_ns", self.csv_security_log_analytics_namespace) + self.__export_to_csv_file("security_log_analytics", self.csv_security_log_analytics) self.__export_to_csv_file("security_cloud_guards", self.csv_security_cloud_guard) self.__export_to_csv_file("security_kms_vaults", self.csv_security_kms_vault) + self.__export_to_csv_file("security_kms_keys", self.csv_security_kms_key) + self.__export_to_csv_file("security_kms_secrets", self.csv_security_kms_secret) self.__export_to_csv_file("containers", self.csv_container) self.__export_to_csv_file("containers_nodepools", self.csv_container_nodepool) self.__export_to_csv_file("edge_dns_steering_policies", self.csv_edge_dns_steering_policies) @@ -4756,6 +4830,8 @@ def generate_csv(self, data, csv_file_header, tenancy, add_date_field=True, csv_ self.__export_to_csv_file("big_data_service", self.csv_data_ai_bds) self.__export_to_csv_file("monitor_agents", self.csv_monitor_agents) self.__export_to_csv_file("monitor_db_managements", self.csv_monitor_db_management) + self.__export_to_csv_file("monitor_opsi_database_insights", self.csv_monitor_opsi_database_insights) + self.__export_to_csv_file("monitor_opsi_host_insights", self.csv_monitor_opsi_host_insights) self.__export_to_csv_file("monitor_alarms", self.csv_monitor_alarms) self.__export_to_csv_file("monitor_events", self.csv_monitor_events) self.__export_to_csv_file("monitor_topics_subs", self.csv_notifications) @@ -9316,12 +9392,24 @@ def __csv_security_main(self, region_name, data): if 'logging_unified_agents' in data: self.__csv_security_logging_unified_agents(region_name, data['logging_unified_agents']) + if 'log_analytics_namespace' in data: + self.__csv_security_log_analytics_namespace(region_name, data['log_analytics_namespace']) + + if 'log_analytics' in data: + self.__csv_security_log_analytics(region_name, data['log_analytics']) + if 'cloud_guard' in data: self.__csv_security_cloud_guard(region_name, data['cloud_guard']) if 'kms_vaults' in data: self.__csv_security_kms_vaults(region_name, data['kms_vaults']) + if 'kms_keys' in data: + self.__csv_security_kms_keys(region_name, data['kms_keys']) + + if 'kms_secrets' in data: + self.__csv_security_kms_secrets(region_name, data['kms_secrets']) + if 'certificates' in data: self.__csv_certificate_certificates(region_name, data['certificates']) @@ -9634,6 +9722,71 @@ def __csv_security_kms_vaults(self, region_name, kms_vaults): except Exception as e: self.__print_error("__csv_security_kms_vaults", e) + ########################################################################## + # KMS Keys + ########################################################################## + def __csv_security_kms_keys(self, region_name, kms_keys): + try: + + if len(kms_keys) == 0: + return + + for ar in kms_keys: + data = { + 'region_name': region_name, + 'compartment_name': ar['compartment_name'], + 'compartment_path': ar['compartment_path'], + 'compartment_id': ar['compartment_id'], + 'name': ar['name'], + 'current_key_version': ar['current_key_version'], + 'vault_id': ar['vault_id'], + 'vault_name': ar['vault_name'], + 'key_algorithm': ar['key_algorithm'], + 'key_length': ar['key_length'], + 'time_created': ar['time_created'][0:16], + 'key_id': ar['id'], + 'id': ar['id'], + 'freeform_tags': self.__get_freeform_tags(ar['freeform_tags']) + } + + self.csv_security_kms_key.append(data) + self.__csv_add_service(data, "KMS Key") + + except Exception as e: + self.__print_error("__csv_security_kms_keys", e) + + ########################################################################## + # Vault Secrets + ########################################################################## + def __csv_security_kms_secrets(self, region_name, kms_secrets): + try: + + if len(kms_secrets) == 0: + return + + for ar in kms_secrets: + data = { + 'region_name': region_name, + 'compartment_name': ar['compartment_name'], + 'compartment_path': ar['compartment_path'], + 'compartment_id': ar['compartment_id'], + 'name': ar['name'], + 'vault_name': ar['vault_name'], + 'vault_id': ar['vault_id'], + 'time_created': ar['time_created'], + 'lifecycle_state': ar['lifecycle_state'], + 'secret_id': ar['secret_id'], + 'id': ar['id'], + 'freeform_tags': self.__get_freeform_tags(ar['freeform_tags']), + 'defined_tags': self.__get_defined_tags(ar['defined_tags']) + } + + self.csv_security_kms_secret.append(data) + self.__csv_add_service(data, "KMS Vault Secret") + + except Exception as e: + self.__print_error("__csv_security_kms_secrets", e) + ########################################################################## # Logging ########################################################################## @@ -9708,6 +9861,85 @@ def __csv_security_logging_unified_agents(self, region_name, logging_unified_age except Exception as e: self.__print_error("__csv_security_logging_unified_agents", e) + ########################################################################## + # Log Analytics + ########################################################################## + def __csv_security_log_analytics_namespace(self, region_name, log_analytics_namespace): + try: + + if len(log_analytics_namespace) == 0: + return + + if log_analytics_namespace: + for ar in log_analytics_namespace: + namespace_id = ar['id'] + if namespace_id in self.csv_security_log_analytics_namespace_ids: + continue + self.csv_security_log_analytics_namespace_ids.add(namespace_id) + + data = { + 'region_name': region_name, + 'namespace_name': ar['namespace_name'], + 'name': ar['namespace_name'], + 'namespace_lifecycle_state': ar['namespace_lifecycle_state'], + 'namespace_is_onboarded': ar['namespace_is_onboarded'], + 'namespace_is_log_set_enabled': ar['namespace_is_log_set_enabled'], + 'namespace_is_data_ever_ingested': ar['namespace_is_data_ever_ingested'], + 'namespace_is_archiving_enabled': ar['namespace_is_archiving_enabled'], + 'storage_active_data_size_in_bytes': ar['storage_active_data_size_in_bytes'], + 'storage_active_data_size_in_gb': ar['storage_active_data_size_in_gb'], + 'storage_archived_data_size_in_bytes': ar['storage_archived_data_size_in_bytes'], + 'storage_recalled_archived_data_size_in_bytes': ar['storage_recalled_archived_data_size_in_bytes'], + 'id': namespace_id + } + + self.csv_security_log_analytics_namespace.append(data) + self.__csv_add_service(data, "Log Analytics Namespace") + + except Exception as e: + self.__print_error("__csv_security_log_analytics_namespace", e) + + def __csv_security_log_analytics(self, region_name, log_analytics): + try: + + if len(log_analytics) == 0: + return + + if log_analytics: + for ar in log_analytics: + data = { + 'region_name': region_name, + 'compartment_name': ar['compartment_name'], + 'compartment_path': ar['compartment_path'], + 'namespace_name': ar['namespace_name'], + 'entity_name': ar['entity_name'], + 'name': ar['entity_name'], + 'display_name': ar['entity_name'], + 'description': ar['description'], + 'entity_type_name': ar['entity_type_name'], + 'entity_type_internal_name': ar['entity_type_internal_name'], + 'management_agent_id': ar['management_agent_id'], + 'cloud_resource_id': ar['cloud_resource_id'], + 'timezone_region': ar['timezone_region'], + 'are_logs_collected': ar['are_logs_collected'], + 'associated_sources_count': ar['associated_sources_count'], + 'time_created': ar['time_created'][0:16], + 'time_updated': ar['time_updated'][0:16], + 'time_last_discovered': ar['time_last_discovered'][0:16], + 'lifecycle_state': ar['lifecycle_state'], + 'oci_log_analytics_entity_name': self.__csv_list_to_str(ar['entity_names']), + 'oci_log_analytics_entity_type': self.__csv_list_to_str(ar['entity_type_display_names']), + 'entity_type_names': self.__csv_list_to_str(ar['entity_type_names']), + 'source_id': ar['source_id'], + 'id': ar['id'] + } + + self.csv_security_log_analytics.append(data) + self.__csv_add_service(data, "Log Analytics Entity") + + except Exception as e: + self.__print_error("__csv_security_log_analytics", e) + ########################################################################## # Container ########################################################################## @@ -10917,6 +11149,12 @@ def __csv_monitoring(self, region_name, data): if 'db_managements' in data: self.__csv_monitor_db_managements(region_name, data['db_managements']) + if 'opsi_database_insights' in data: + self.__csv_monitor_opsi_database_insights(region_name, data['opsi_database_insights']) + + if 'opsi_host_insights' in data: + self.__csv_monitor_opsi_host_insights(region_name, data['opsi_host_insights']) + if 'alarms' in data: self.__csv_monitor_alarms(region_name, data['alarms']) @@ -11113,6 +11351,99 @@ def __csv_monitor_db_managements(self, region_name, db_managements): except Exception as e: self.__print_error("__csv_monitor_db_managements", e) + ########################################################################## + # Monitor OPSI Database Insights + ########################################################################## + def __csv_monitor_opsi_database_insights(self, region_name, database_insights): + try: + + if len(database_insights) == 0: + return + + if database_insights: + for ar in database_insights: + + data = { + 'region_name': region_name, + 'compartment_name': ar['compartment_name'], + 'compartment_path': ar['compartment_path'], + 'name': ar['database_display_name'], + 'database_name': ar['database_name'], + 'database_type': ar['database_type'], + 'database_version': ar['database_version'], + 'database_host_names': self.__csv_list_to_str(ar['database_host_names']), + 'entity_source': ar['entity_source'], + 'processor_count': ar['processor_count'], + 'status': ar['status'], + 'time_created': ar['time_created'][0:16], + 'time_updated': ar['time_updated'][0:16], + 'lifecycle_state': ar['lifecycle_state'], + 'lifecycle_details': ar['lifecycle_details'], + 'database_connection_status_details': ar['database_connection_status_details'], + 'is_advanced_features_enabled': ar['is_advanced_features_enabled'], + 'cdb_name': ar['cdb_name'], + 'database_id': ar['database_id'], + 'id': ar['id'], + 'freeform_tags': self.__get_freeform_tags(ar['freeform_tags']), + 'defined_tags': self.__get_defined_tags(ar['defined_tags']) + } + + self.csv_monitor_opsi_database_insights.append(data) + self.__csv_add_service(data, "OPSI Database Insight") + + except Exception as e: + self.__print_error("__csv_monitor_opsi_database_insights", e) + + ########################################################################## + # Monitor OPSI Host Insights + ########################################################################## + def __csv_monitor_opsi_host_insights(self, region_name, host_insights): + try: + + if len(host_insights) == 0: + return + + if host_insights: + for ar in host_insights: + + data = { + 'region_name': region_name, + 'compartment_name': ar['compartment_name'], + 'compartment_path': ar['compartment_path'], + 'name': ar['host_display_name'], + 'host_name': ar['host_name'], + 'host_type': ar['host_type'], + 'entity_source': ar['entity_source'], + 'processor_count': ar['processor_count'], + 'platform_type': ar['platform_type'], + 'platform_version': ar['platform_version'], + 'platform_vendor': ar['platform_vendor'], + 'total_cpus': ar['total_cpus'], + 'total_memory_in_gbs': ar['total_memory_in_gbs'], + 'cpu_architecture': ar['cpu_architecture'], + 'cpu_vendor': ar['cpu_vendor'], + 'cpu_frequency_in_mhz': ar['cpu_frequency_in_mhz'], + 'cores_per_socket': ar['cores_per_socket'], + 'total_sockets': ar['total_sockets'], + 'threads_per_socket': ar['threads_per_socket'], + 'is_hyper_threading_enabled': ar['is_hyper_threading_enabled'], + 'opsi_private_endpoint_id': ar['opsi_private_endpoint_id'], + 'status': ar['status'], + 'time_created': ar['time_created'][0:16], + 'time_updated': ar['time_updated'][0:16], + 'lifecycle_state': ar['lifecycle_state'], + 'lifecycle_details': ar['lifecycle_details'], + 'id': ar['id'], + 'freeform_tags': self.__get_freeform_tags(ar['freeform_tags']), + 'defined_tags': self.__get_defined_tags(ar['defined_tags']) + } + + self.csv_monitor_opsi_host_insights.append(data) + self.__csv_add_service(data, "OPSI Host Insight") + + except Exception as e: + self.__print_error("__csv_monitor_opsi_host_insights", e) + ########################################################################## # Monitor Alarms ########################################################################## diff --git a/examples/showoci/showoci_service.py b/examples/showoci/showoci_service.py index 5328c197eb..c25aa75a31 100644 --- a/examples/showoci/showoci_service.py +++ b/examples/showoci/showoci_service.py @@ -39,7 +39,7 @@ # class ShowOCIService ########################################################################## class ShowOCIService(object): - version = "26.04.01" + version = "26.07.14" oci_compatible_version = "2.165.1" thread_lock = threading.Lock() collection_ljust = 40 @@ -199,6 +199,8 @@ class ShowOCIService(object): C_MONITORING_ADVISOR_RESOURCE_ACTIONS = "advisor_resource_actions" C_MONITORING_ADVISOR_RECOMMENDATIONS = "advisor_recommendations" C_MONITORING_DB_MANAGEMENT = "db_management" + C_MONITORING_OPSI_DATABASE_INSIGHTS = "opsi_database_insights" + C_MONITORING_OPSI_HOST_INSIGHTS = "opsi_host_insights" # Notifications C_NOTIFICATIONS = "notifications" @@ -261,8 +263,11 @@ class ShowOCIService(object): C_SECURITY_CLOUD_GUARD = "cloud_guard" C_SECURITY_VAULTS = "vaults" C_SECURITY_KEYS = "keys" + C_SECURITY_SECRETS = "secrets" C_SECURITY_BASTION = "bastion" C_SECURITY_LOGGING = "logging" + C_SECURITY_LOG_ANALYTICS = "log_analytics" + C_SECURITY_LOG_ANALYTICS_NAMESPACE = "log_analytics_namespace" C_SECURITY_LOGGING_UA = "unified_agents" # Security Scores @@ -321,6 +326,7 @@ class ShowOCIService(object): EXCLUDE_GOLDENGATE = 'GOLDENGATE' EXCLUDE_ANNOUNCEMENT = 'ANNOUNCEMENT' EXCLUDE_ADVISOR = 'ADVISOR' + EXCLUDE_OPSI = 'OPSI' EXCLUDE_CLOUDGUARD = 'CLOUDGUARD' EXCLUDE_LOGGING = 'LOGGING' EXCLUDE_BASTION = 'BASTION' @@ -14848,7 +14854,7 @@ def __load_section_monitor_notification_security_quotas_main(self): try: section_start_time = time.time() - print("Monitoring, Notifications, Events, Bastion, Logging, KMS, Limits, Quotas, E-Mail, Budget, Advisors, Certificates...") + print("Monitoring, Notifications, Events, Bastion, Logging, KMS, Limits, Quotas, E-Mail, Budget, Advisors, Operations Insights, Certificates...") db_cloud_advisor_client = self.__create_client(oci.optimizer.OptimizerClient, key=self.EXCLUDE_ADVISOR) monitor_client = self.__create_client(oci.monitoring.MonitoringClient) @@ -14857,9 +14863,11 @@ def __load_section_monitor_notification_security_quotas_main(self): event_client = self.__create_client(oci.events.EventsClient) management_agent_client = self.__create_client(oci.management_agent.ManagementAgentClient) db_management_client = self.__create_client(oci.database_management.DbManagementClient, key=self.EXCLUDE_DBMANAGEMENT) + opsi_client = self.__create_client(oci.opsi.OperationsInsightsClient, key=self.EXCLUDE_OPSI) bs_client = self.__create_client(oci.bastion.BastionClient, key=self.EXCLUDE_BASTION) cg_client = self.__create_client(oci.cloud_guard.CloudGuardClient, key=self.EXCLUDE_CLOUDGUARD) log_client = self.__create_client(oci.logging.LoggingManagementClient, key=self.EXCLUDE_LOGGING) + log_analytics_client = self.__create_client(oci.log_analytics.LogAnalyticsClient, key=self.EXCLUDE_LOGGING) kms_client = self.__create_client(oci.key_management.KmsVaultClient, key=self.EXCLUDE_KMS) limits_client = self.__create_client(oci.limits.LimitsClient, key=self.EXCLUDE_LIMITS) quotas_client = self.__create_client(oci.limits.QuotasClient, key=self.EXCLUDE_QUOTAS) @@ -14879,7 +14887,10 @@ def __load_section_monitor_notification_security_quotas_main(self): self.__initialize_data_key(self.C_SECURITY, self.C_SECURITY_CLOUD_GUARD) self.__initialize_data_key(self.C_SECURITY, self.C_SECURITY_LOGGING_UA) self.__initialize_data_key(self.C_SECURITY, self.C_SECURITY_LOGGING) + self.__initialize_data_key(self.C_SECURITY, self.C_SECURITY_LOG_ANALYTICS) + self.__initialize_data_key(self.C_SECURITY, self.C_SECURITY_LOG_ANALYTICS_NAMESPACE) self.__initialize_data_key(self.C_SECURITY, self.C_SECURITY_KEYS) + self.__initialize_data_key(self.C_SECURITY, self.C_SECURITY_SECRETS) self.__initialize_data_key(self.C_SECURITY, self.C_SECURITY_VAULTS) self.__initialize_data_key(self.C_MONITORING, self.C_MONITORING_ADVISOR_RESOURCE_ACTIONS) self.__initialize_data_key(self.C_MONITORING, self.C_MONITORING_ADVISOR_RECOMMENDATIONS) @@ -14887,6 +14898,8 @@ def __load_section_monitor_notification_security_quotas_main(self): self.__initialize_data_key(self.C_MONITORING, self.C_MONITORING_EVENTS) self.__initialize_data_key(self.C_MONITORING, self.C_MONITORING_AGENTS) self.__initialize_data_key(self.C_MONITORING, self.C_MONITORING_DB_MANAGEMENT) + self.__initialize_data_key(self.C_MONITORING, self.C_MONITORING_OPSI_DATABASE_INSIGHTS) + self.__initialize_data_key(self.C_MONITORING, self.C_MONITORING_OPSI_HOST_INSIGHTS) self.__initialize_data_key(self.C_NOTIFICATIONS, self.C_NOTIFICATIONS_TOPICS) self.__initialize_data_key(self.C_NOTIFICATIONS, self.C_NOTIFICATIONS_SUBSCRIPTIONS) self.__initialize_data_key(self.C_LIMITS, self.C_LIMITS_SERVICES) @@ -14916,6 +14929,8 @@ def __load_section_monitor_notification_security_quotas_main(self): monitor[self.C_MONITORING_EVENTS] += self.__load_monitoring_events(event_client, compartments) monitor[self.C_MONITORING_AGENTS] += self.__load_monitoring_agents(management_agent_client, compartments) monitor[self.C_MONITORING_DB_MANAGEMENT] += self.__load_monitoring_database_management(db_management_client, compartments) + monitor[self.C_MONITORING_OPSI_DATABASE_INSIGHTS] += self.__load_monitoring_opsi_database_insights(opsi_client, compartments) + monitor[self.C_MONITORING_OPSI_HOST_INSIGHTS] += self.__load_monitoring_opsi_host_insights(opsi_client, compartments) monitor[self.C_MONITORING_ADVISOR_RECOMMENDATIONS] += self.__load_monitoring_cloud_advisor_recommendations(db_cloud_advisor_client, tenancy['id'], compartments) monitor[self.C_MONITORING_ADVISOR_RESOURCE_ACTIONS] += self.__load_monitoring_cloud_advisor_resource_actions(db_cloud_advisor_client, compartments) @@ -14925,8 +14940,11 @@ def __load_section_monitor_notification_security_quotas_main(self): sec[self.C_SECURITY_BASTION] += self.__load_security_bastions(bs_client, compartments) sec[self.C_SECURITY_LOGGING_UA] += self.__load_security_log_unified_agents(log_client, compartments) sec[self.C_SECURITY_LOGGING] += self.__load_security_log_groups(log_client, compartments) + sec[self.C_SECURITY_LOG_ANALYTICS_NAMESPACE] += self.__load_security_log_analytics_namespace(log_analytics_client) + sec[self.C_SECURITY_LOG_ANALYTICS] += self.__load_security_log_analytics_entities(log_analytics_client, compartments) sec[self.C_SECURITY_VAULTS] += self.__load_security_kms_vaults(kms_client, compartments) sec[self.C_SECURITY_KEYS] += self.__load_security_kms_keys(search_client) + sec[self.C_SECURITY_SECRETS] += self.__load_security_kms_secrets(search_client) sec[self.C_SECURITY_CLOUD_GUARD] += self.__load_security_cloud_guard(cg_client, compartments) email[self.C_EMAIL_SENDERS] += self.__load_email_senders(email_client, compartments) @@ -14952,13 +14970,18 @@ def __load_section_monitor_notification_security_quotas_main(self): future_MONITORING_EVENTS = executor.submit(self.__load_monitoring_events, event_client, compartments) future_MONITORING_AGENTS = executor.submit(self.__load_monitoring_agents, management_agent_client, compartments) future_MONITORING_DB_MANAGEMENT = executor.submit(self.__load_monitoring_database_management, db_management_client, compartments) + future_MONITORING_OPSI_DATABASE_INSIGHTS = executor.submit(self.__load_monitoring_opsi_database_insights, opsi_client, compartments) + future_MONITORING_OPSI_HOST_INSIGHTS = executor.submit(self.__load_monitoring_opsi_host_insights, opsi_client, compartments) future_NOTIFICATIONS_TOPICS = executor.submit(self.__load_notifications_topics, ons_cp_client, compartments) future_NOTIFICATIONS_SUBSCRIPTIONS = executor.submit(self.__load_notifications_subscriptions, ons_dp_client, compartments) future_SECURITY_BASTION = executor.submit(self.__load_security_bastions, bs_client, compartments) future_SECURITY_LOGGING = executor.submit(self.__load_security_log_groups, log_client, compartments) + future_SECURITY_LOG_ANALYTICS_NAMESPACE = executor.submit(self.__load_security_log_analytics_namespace, log_analytics_client) + future_SECURITY_LOG_ANALYTICS = executor.submit(self.__load_security_log_analytics_entities, log_analytics_client, compartments) future_SECURITY_LOGGING_UA = executor.submit(self.__load_security_log_unified_agents, log_client, compartments) future_SECURITY_VAULTS = executor.submit(self.__load_security_kms_vaults, kms_client, compartments) future_SECURITY_KEYS = executor.submit(self.__load_security_kms_keys, search_client) + future_SECURITY_SECRETS = executor.submit(self.__load_security_kms_secrets, search_client) future_SECURITY_CLOUD_GUARD = executor.submit(self.__load_security_cloud_guard, cg_client, compartments) future_EMAIL_SENDERS = executor.submit(self.__load_email_senders, email_client, compartments) future_EMAIL_SUPPRESSIONS = executor.submit(self.__load_email_suppressions, email_client, compartments) @@ -14976,13 +14999,18 @@ def __load_section_monitor_notification_security_quotas_main(self): monitor[self.C_MONITORING_EVENTS] += next(as_completed([future_MONITORING_EVENTS])).result() monitor[self.C_MONITORING_AGENTS] += next(as_completed([future_MONITORING_AGENTS])).result() monitor[self.C_MONITORING_DB_MANAGEMENT] += next(as_completed([future_MONITORING_DB_MANAGEMENT])).result() + monitor[self.C_MONITORING_OPSI_DATABASE_INSIGHTS] += next(as_completed([future_MONITORING_OPSI_DATABASE_INSIGHTS])).result() + monitor[self.C_MONITORING_OPSI_HOST_INSIGHTS] += next(as_completed([future_MONITORING_OPSI_HOST_INSIGHTS])).result() notifications[self.C_NOTIFICATIONS_TOPICS] += next(as_completed([future_NOTIFICATIONS_TOPICS])).result() notifications[self.C_NOTIFICATIONS_SUBSCRIPTIONS] += next(as_completed([future_NOTIFICATIONS_SUBSCRIPTIONS])).result() sec[self.C_SECURITY_BASTION] += next(as_completed([future_SECURITY_BASTION])).result() + sec[self.C_SECURITY_LOG_ANALYTICS_NAMESPACE] += next(as_completed([future_SECURITY_LOG_ANALYTICS_NAMESPACE])).result() + sec[self.C_SECURITY_LOG_ANALYTICS] += next(as_completed([future_SECURITY_LOG_ANALYTICS])).result() sec[self.C_SECURITY_LOGGING] += next(as_completed([future_SECURITY_LOGGING])).result() sec[self.C_SECURITY_LOGGING_UA] += next(as_completed([future_SECURITY_LOGGING_UA])).result() sec[self.C_SECURITY_VAULTS] += next(as_completed([future_SECURITY_VAULTS])).result() sec[self.C_SECURITY_KEYS] += next(as_completed([future_SECURITY_KEYS])).result() + sec[self.C_SECURITY_SECRETS] += next(as_completed([future_SECURITY_SECRETS])).result() sec[self.C_SECURITY_CLOUD_GUARD] += next(as_completed([future_SECURITY_CLOUD_GUARD])).result() email[self.C_EMAIL_SENDERS] += next(as_completed([future_EMAIL_SENDERS])).result() email[self.C_EMAIL_SUPPRESSIONS] += next(as_completed([future_EMAIL_SUPPRESSIONS])).result() @@ -15512,6 +15540,271 @@ def __load_monitoring_database_management(self, db_management_client, compartmen self.__print_error(e) return data + ########################################################################## + # __load_monitoring_opsi_database_insights + ########################################################################## + def __load_monitoring_opsi_database_insights(self, opsi_client, compartments): + + data = [] + cnt = 0 + start_time = time.time() + + try: + errstr = "" + header = "OPSI Database Insights" + self.__load_print_status_with_threads(header) + + if not opsi_client: + self.__load_print_thread_exclude(header) + return data + + # loop on all compartments + for compartment in compartments: + + # skip managed paas compartment + if self.__if_managed_paas_compartment(compartment['name']): + continue + + database_configs = {} + try: + configs = oci.pagination.list_call_get_all_results( + opsi_client.list_database_configurations, + compartment_id=compartment['id'], + retry_strategy=oci.retry.DEFAULT_RETRY_STRATEGY + ).data + + for config in configs: + database_configs[config.database_insight_id] = config + + except oci.exceptions.ServiceError as e: + if self.__check_service_error(e, compartment): + self.__load_print_auth_warning(to_print=self.flags.skip_threads) + errstr += "a" + else: + self.__load_print_error(e, compartment) + errstr += "e" + except oci.exceptions.ConnectTimeout: + self.__load_print_auth_warning(to_print=self.flags.skip_threads) + errstr += "a" + except Exception as e: + self.__load_print_error(e, compartment) + errstr += "e" + + database_insights = [] + try: + database_insights = oci.pagination.list_call_get_all_results( + opsi_client.list_database_insights, + compartment_id=compartment['id'], + lifecycle_state=["ACTIVE", "NEEDS_ATTENTION"], + retry_strategy=oci.retry.DEFAULT_RETRY_STRATEGY + ).data + + except oci.exceptions.ServiceError as e: + if self.__check_service_error(e, compartment): + self.__load_print_auth_warning(to_print=self.flags.skip_threads) + errstr += "a" + continue + else: + self.__load_print_error(e, compartment) + errstr += "e" + continue + except oci.exceptions.ConnectTimeout: + self.__load_print_auth_warning(to_print=self.flags.skip_threads) + errstr += "a" + continue + except Exception as e: + self.__load_print_error(e, compartment) + errstr += "e" + continue + + if self.flags.skip_threads: + print(".", end="") + + # item = oci.opsi.models.DatabaseInsightSummary + for item in database_insights: + config = database_configs[item.id] if item.id in database_configs else None + val = { + 'id': self.get_value(item.id), + 'database_id': self.get_value(item.database_id), + 'database_name': self.get_value(item.database_name), + 'database_display_name': self.get_value(item.database_display_name), + 'database_type': self.get_value(item.database_type), + 'database_version': self.get_value(item.database_version), + 'database_host_names': self.get_values(item.database_host_names), + 'entity_source': self.get_value(item.entity_source), + 'processor_count': self.get_value(item.processor_count), + 'status': self.get_value(item.status), + 'time_created': self.get_date(item.time_created), + 'time_updated': self.get_date(item.time_updated), + 'lifecycle_state': self.get_value(item.lifecycle_state), + 'lifecycle_details': self.get_value(item.lifecycle_details), + 'database_connection_status_details': self.get_value(item.database_connection_status_details), + 'is_advanced_features_enabled': self.get_value(config.is_advanced_features_enabled) if config else "", + 'cdb_name': self.get_value(config.cdb_name) if config else "", + 'sum_info': "OPSI Database Insights", + 'sum_size_gb': str(1), + 'system_tags': [] if item.system_tags is None else item.system_tags, + 'defined_tags': [] if item.defined_tags is None else item.defined_tags, + 'freeform_tags': [] if item.freeform_tags is None else item.freeform_tags, + 'compartment_name': str(compartment['name']), + 'compartment_path': str(compartment['path']), + 'compartment_id': str(compartment['id']), + 'region_name': str(self.config['region']) + } + + # add the data + cnt += 1 + data.append(val) + + self.__load_print_thread_cnt(header, cnt, start_time, errstr) + return data + + except oci.exceptions.RequestException as e: + if self.__check_request_error(e): + return data + else: + self.__load_print_error(e) + return data + except Exception as e: + self.__print_error(e) + return data + + ########################################################################## + # __load_monitoring_opsi_host_insights + ########################################################################## + def __load_monitoring_opsi_host_insights(self, opsi_client, compartments): + + data = [] + cnt = 0 + start_time = time.time() + + try: + errstr = "" + header = "OPSI Host Insights" + self.__load_print_status_with_threads(header) + + if not opsi_client: + self.__load_print_thread_exclude(header) + return data + + # loop on all compartments + for compartment in compartments: + + # skip managed paas compartment + if self.__if_managed_paas_compartment(compartment['name']): + continue + + host_configs = {} + try: + configs = oci.pagination.list_call_get_all_results( + opsi_client.list_host_configurations, + compartment_id=compartment['id'], + retry_strategy=oci.retry.DEFAULT_RETRY_STRATEGY + ).data + + for config in configs: + host_configs[config.host_insight_id] = config + + except oci.exceptions.ServiceError as e: + if self.__check_service_error(e, compartment): + self.__load_print_auth_warning(to_print=self.flags.skip_threads) + errstr += "a" + else: + self.__load_print_error(e, compartment) + errstr += "e" + except oci.exceptions.ConnectTimeout: + self.__load_print_auth_warning(to_print=self.flags.skip_threads) + errstr += "a" + except Exception as e: + self.__load_print_error(e, compartment) + errstr += "e" + + host_insights = [] + try: + host_insights = oci.pagination.list_call_get_all_results( + opsi_client.list_host_insights, + compartment_id=compartment['id'], + lifecycle_state=["ACTIVE", "NEEDS_ATTENTION"], + retry_strategy=oci.retry.DEFAULT_RETRY_STRATEGY + ).data + + except oci.exceptions.ServiceError as e: + if self.__check_service_error(e, compartment): + self.__load_print_auth_warning(to_print=self.flags.skip_threads) + errstr += "a" + continue + else: + self.__load_print_error(e, compartment) + errstr += "e" + continue + except oci.exceptions.ConnectTimeout: + self.__load_print_auth_warning(to_print=self.flags.skip_threads) + errstr += "a" + continue + except Exception as e: + self.__load_print_error(e, compartment) + errstr += "e" + continue + + if self.flags.skip_threads: + print(".", end="") + + # item = oci.opsi.models.HostInsightSummary + for item in host_insights: + config = host_configs[item.id] if item.id in host_configs else None + val = { + 'id': self.get_value(item.id), + 'host_name': self.get_value(item.host_name), + 'host_display_name': self.get_value(item.host_display_name), + 'host_type': self.get_value(item.host_type), + 'entity_source': self.get_value(item.entity_source), + 'processor_count': self.get_value(item.processor_count), + 'opsi_private_endpoint_id': self.get_value(item.opsi_private_endpoint_id), + 'status': self.get_value(item.status), + 'time_created': self.get_date(item.time_created), + 'time_updated': self.get_date(item.time_updated), + 'lifecycle_state': self.get_value(item.lifecycle_state), + 'lifecycle_details': self.get_value(item.lifecycle_details), + 'platform_type': self.get_value(config.platform_type) if config else "", + 'platform_version': self.get_value(config.platform_version) if config else "", + 'platform_vendor': self.get_value(config.platform_vendor) if config else "", + 'total_cpus': self.get_value(config.total_cpus) if config else "", + 'total_memory_in_gbs': self.get_value(config.total_memory_in_gbs) if config else "", + 'cpu_architecture': self.get_value(config.cpu_architecture) if config else "", + 'cpu_vendor': self.get_value(config.cpu_vendor) if config else "", + 'cpu_frequency_in_mhz': self.get_value(config.cpu_frequency_in_mhz) if config else "", + 'cores_per_socket': self.get_value(config.cores_per_socket) if config else "", + 'total_sockets': self.get_value(config.total_sockets) if config else "", + 'threads_per_socket': self.get_value(config.threads_per_socket) if config else "", + 'is_hyper_threading_enabled': self.get_value(config.is_hyper_threading_enabled) if config else "", + 'sum_info': "OPSI Host Insights", + 'sum_size_gb': str(1), + 'system_tags': [] if item.system_tags is None else item.system_tags, + 'defined_tags': [] if item.defined_tags is None else item.defined_tags, + 'freeform_tags': [] if item.freeform_tags is None else item.freeform_tags, + 'compartment_name': str(compartment['name']), + 'compartment_path': str(compartment['path']), + 'compartment_id': str(compartment['id']), + 'region_name': str(self.config['region']) + } + + # add the data + cnt += 1 + data.append(val) + + self.__load_print_thread_cnt(header, cnt, start_time, errstr) + return data + + except oci.exceptions.RequestException as e: + if self.__check_request_error(e): + return data + else: + self.__load_print_error(e) + return data + except Exception as e: + self.__print_error(e) + return data + ########################################################################## # __load_monitoring_alarms ########################################################################## @@ -18969,7 +19262,7 @@ def __load_security_kms_keys(self, search_client): self.__load_print_status_with_threads(header) key_search_detail = oci.resource_search.models.StructuredSearchDetails( - query="query key resources", + query="query key resources return allAdditionalFields", type='Structured', matching_context_type=oci.resource_search.models.SearchDetails.MATCHING_CONTEXT_TYPE_NONE ) @@ -18985,7 +19278,7 @@ def __load_security_kms_keys(self, search_client): compartment = self.get_compartment_by_id(item.compartment_id) if compartment: - + ad = item.additional_details val = { 'id': self.get_value(item.identifier), 'compartment_id': self.get_value(item.compartment_id), @@ -18994,7 +19287,75 @@ def __load_security_kms_keys(self, search_client): 'freeform_tags': [] if item.freeform_tags is None else item.freeform_tags, 'compartment_name': str(compartment['name']), 'compartment_path': str(compartment['path']), - 'region_name': str(self.config['region']) + 'region_name': str(self.config['region']), + # Added thanks to Herman + 'current_key_version': self.get_value(ad['currentKeyVersion']) if "currentKeyVersion" in ad else "", + 'vault_id': self.get_value(ad['vaultId']) if "vaultId" in ad else "", + 'key_algorithm': self.get_value(ad['keyShape']['algorithm']) if "vaultId" in ad and "algorithm" in ad['keyShape'] else "", + 'key_length': self.get_value(ad['keyShape']['length']) if "vaultId" in ad and "length" in ad['keyShape'] else "" + } + cnt += 1 + data.append(val) + + self.__load_print_thread_cnt(header, cnt, start_time, errstr) + return data + + except oci.exceptions.RequestException as e: + if self.__check_request_error(e): + return data + else: + self.__load_print_error(e) + return data + except Exception as e: + self.__print_error(e) + return data + + ########################################################################## + # __load_security_kms_secrets + ########################################################################## + def __load_security_kms_secrets(self, search_client): + + data = [] + cnt = 0 + start_time = time.time() + + try: + errstr = "" + header = "Vault Secrets" + self.__load_print_status_with_threads(header) + + secret_search_detail = oci.resource_search.models.StructuredSearchDetails( + query="query vaultsecret resources return allAdditionalFields", + type='Structured', + matching_context_type=oci.resource_search.models.SearchDetails.MATCHING_CONTEXT_TYPE_NONE + ) + secrets = oci.pagination.list_call_get_all_results( + search_client.search_resources, + secret_search_detail, + retry_strategy=oci.retry.DEFAULT_RETRY_STRATEGY + ).data + + for item in secrets: + if self.check_lifecycle_state_active(item.lifecycle_state): + + compartment = self.get_compartment_by_id(item.compartment_id) + if compartment: + ad = item.additional_details or {} + val = { + 'id': self.get_value(item.identifier), + 'compartment_id': self.get_value(item.compartment_id), + 'name': self.get_value(ad.get('name')), + 'secret_id': self.get_value(ad.get('secretId')), + 'time_created': self.get_date(item.time_created), + 'lifecycle_state': self.get_value(item.lifecycle_state), + 'freeform_tags': [] if item.freeform_tags is None else item.freeform_tags, + 'defined_tags': [] if item.defined_tags is None else item.defined_tags, + 'compartment_name': str(compartment['name']), + 'compartment_path': str(compartment['path']), + 'region_name': str(self.config['region']), + 'sum_info': "KMS Vault Secrets", + 'sum_size_gb': "1", + 'vault_id': self.get_value(ad.get('vaultId')) } cnt += 1 data.append(val) @@ -19262,6 +19623,267 @@ def __load_security_cloud_guard_security_scores(self, cg_client, root_compartmen self.__print_error(e) return data + ########################################################################## + # __load_security_log_analytics_get_namespaces + ########################################################################## + def __load_security_log_analytics_get_namespaces(self, log_analytics_client, header, start_time): + namespaces = [] + errstr = "" + + try: + namespace_collection = log_analytics_client.list_namespaces( + self.get_tenancy_id(), + retry_strategy=oci.retry.DEFAULT_RETRY_STRATEGY + ).data + namespaces = namespace_collection.items if namespace_collection and namespace_collection.items else [] + + except oci.exceptions.ServiceError as e: + if self.__check_service_error(e): + self.__load_print_auth_warning(to_print=self.flags.skip_threads) + errstr += "a" + else: + self.__load_print_error(e) + errstr += "e" + self.__load_print_thread_cnt(header, 0, start_time, errstr) + except oci.exceptions.ConnectTimeout: + self.__load_print_auth_warning(to_print=self.flags.skip_threads) + errstr += "a" + self.__load_print_thread_cnt(header, 0, start_time, errstr) + except Exception as e: + self.__load_print_error(e) + errstr += "e" + self.__load_print_thread_cnt(header, 0, start_time, errstr) + + return [namespace for namespace in namespaces if namespace.is_onboarded], errstr + + ########################################################################## + # __load_security_log_analytics_namespace + ########################################################################## + def __load_security_log_analytics_namespace(self, log_analytics_client): + data = [] + cnt = 0 + start_time = time.time() + + try: + errstr = "" + header = "Log Analytics Namespaces" + self.__load_print_status_with_threads(header) + + if not log_analytics_client: + self.__load_print_thread_exclude(header) + return data + + namespaces, errstr_ns = self.__load_security_log_analytics_get_namespaces(log_analytics_client, header, start_time) + errstr += errstr_ns + + seen_namespace_ids = set() + for namespace in namespaces: + namespace_name = str(namespace.namespace_name) + namespace_id = namespace_name + ":" + str(self.config['region']) + if namespace_id in seen_namespace_ids: + continue + seen_namespace_ids.add(namespace_id) + + storage_usage = None + storage_active_bytes = "" + storage_active_gb = "" + + try: + storage_usage = log_analytics_client.get_storage_usage( + namespace_name, + retry_strategy=oci.retry.DEFAULT_RETRY_STRATEGY + ).data + storage_active_bytes = self.get_value(storage_usage.active_data_size_in_bytes) + storage_active_gb = str(round(float(storage_usage.active_data_size_in_bytes) / 1024 / 1024 / 1024, 3)) if storage_usage and storage_usage.active_data_size_in_bytes else "0" + + except oci.exceptions.ServiceError as e: + if self.__check_service_error(e): + self.__load_print_auth_warning(to_print=self.flags.skip_threads) + errstr += "a" + else: + self.__load_print_error(e) + errstr += "e" + except Exception: + pass + + data.append({ + 'id': namespace_id, + 'name': namespace_name, + 'namespace_name': namespace_name, + 'namespace_lifecycle_state': self.get_value(namespace.lifecycle_state), + 'namespace_is_onboarded': self.get_value(namespace.is_onboarded), + 'namespace_is_log_set_enabled': self.get_value(namespace.is_log_set_enabled), + 'namespace_is_data_ever_ingested': self.get_value(namespace.is_data_ever_ingested), + 'namespace_is_archiving_enabled': self.get_value(namespace.is_archiving_enabled), + 'storage_active_data_size_in_bytes': storage_active_bytes, + 'storage_active_data_size_in_gb': storage_active_gb, + 'storage_archived_data_size_in_bytes': self.get_value(storage_usage.archived_data_size_in_bytes) if storage_usage else "", + 'storage_recalled_archived_data_size_in_bytes': self.get_value(storage_usage.recalled_archived_data_size_in_bytes) if storage_usage else "", + 'sum_info': "Log Analytics Namespaces", + 'sum_size_gb': str(1), + 'compartment_name': "", + 'compartment_path': "", + 'compartment_id': self.get_tenancy_id(), + 'region_name': str(self.config['region']) + }) + cnt += 1 + + self.__load_print_thread_cnt(header, cnt, start_time, errstr) + return data + + except oci.exceptions.RequestException as e: + if self.__check_request_error(e): + return data + else: + self.__load_print_error(e) + return data + except Exception as e: + self.__print_error(e) + return data + + ########################################################################## + # __load_security_log_analytics_entities + ########################################################################## + def __load_security_log_analytics_entities(self, log_analytics_client, compartments): + data = [] + cnt = 0 + start_time = time.time() + + try: + errstr = "" + header = "Log Analytics Entities" + self.__load_print_status_with_threads(header) + + if not log_analytics_client: + self.__load_print_thread_exclude(header) + return data + + namespaces, errstr_ns = self.__load_security_log_analytics_get_namespaces(log_analytics_client, header, start_time) + errstr += errstr_ns + + for namespace in namespaces: + namespace_name = str(namespace.namespace_name) + + # loop on all compartments + for compartment in compartments: + + # skip managed paas compartment + if self.__if_managed_paas_compartment(compartment['name']): + continue + + array = [] + try: + array = oci.pagination.list_call_get_all_results( + log_analytics_client.list_log_analytics_entities, + namespace_name, + compartment['id'], + lifecycle_state="ACTIVE", + retry_strategy=oci.retry.DEFAULT_RETRY_STRATEGY + ).data + + except oci.exceptions.ServiceError as e: + if self.__check_service_error(e, compartment): + self.__load_print_auth_warning(to_print=self.flags.skip_threads) + errstr += "a" + continue + else: + self.__load_print_error(e, compartment) + errstr += "e" + continue + except oci.exceptions.ConnectTimeout: + self.__load_print_auth_warning(to_print=self.flags.skip_threads) + errstr += "a" + continue + + except Exception as e: + self.__load_print_error(e, compartment) + errstr += "e" + continue + + if self.flags.skip_threads: + print(".", end="") + + # item = oci.log_analytics.models.LogAnalyticsEntitySummary + for item in array: + val = { + 'id': self.get_value(item.id), + 'source_id': self.get_value(item.source_id), + 'name': self.get_value(item.name), + 'display_name': self.get_value(item.name), + 'description': self.get_value(item.lifecycle_details), + 'edit_version': "", + 'type_name': self.get_value(item.entity_type_name), + 'type_display_name': self.get_value(item.entity_type_name), + 'is_system': "", + 'is_for_cloud': "", + 'is_secure_content': "", + 'is_auto_association_enabled': "", + 'is_auto_association_override': "", + 'is_timezone_override': "", + 'association_count': self.get_value(item.associated_sources_count), + 'pattern_count': "", + 'rule_id': "", + 'warning_config': "", + 'time_updated': self.get_date(item.time_updated), + 'lifecycle_state': self.get_value(item.lifecycle_state), + 'namespace_name': namespace_name, + 'namespace_lifecycle_state': self.get_value(namespace.lifecycle_state), + 'namespace_is_log_set_enabled': self.get_value(namespace.is_log_set_enabled), + 'namespace_is_data_ever_ingested': self.get_value(namespace.is_data_ever_ingested), + 'namespace_is_archiving_enabled': self.get_value(namespace.is_archiving_enabled), + 'custom_log_source': "", + 'parsers': [], + 'user_parsers': [], + 'oob_parsers': [], + 'labels': [], + 'entity_types': [], + 'source_properties': [], + 'parameters': [], + 'association_entity': [], + 'log_associations': [], + 'entity_names': [self.get_value(item.name)] if item.name else [], + 'entity_type_names': [self.get_value(item.entity_type_name)] if item.entity_type_name else [], + 'entity_type_display_names': [self.get_value(item.entity_type_name)] if item.entity_type_name else [], + 'log_purge': [], + 'endpoints': [], + 'entity_id': self.get_value(item.id), + 'entity_name': self.get_value(item.name), + 'entity_type_name': self.get_value(item.entity_type_name), + 'entity_type_internal_name': self.get_value(item.entity_type_internal_name), + 'management_agent_id': self.get_value(item.management_agent_id), + 'cloud_resource_id': self.get_value(item.cloud_resource_id), + 'timezone_region': self.get_value(item.timezone_region), + 'time_created': self.get_date(item.time_created), + 'time_last_discovered': self.get_date(item.time_last_discovered), + 'are_logs_collected': self.get_value(item.are_logs_collected), + 'associated_sources_count': self.get_value(item.associated_sources_count), + 'sum_info': "Log Analytics Entities", + 'sum_size_gb': str(1), + 'defined_tags': [] if item.defined_tags is None else item.defined_tags, + 'freeform_tags': [] if item.freeform_tags is None else item.freeform_tags, + 'compartment_name': str(compartment['name']), + 'compartment_path': str(compartment['path']), + 'compartment_id': str(compartment['id']), + 'region_name': str(self.config['region']) + } + + # add the data + cnt += 1 + data.append(val) + + self.__load_print_thread_cnt(header, cnt, start_time, errstr) + return data + + except oci.exceptions.RequestException as e: + if self.__check_request_error(e): + return data + else: + self.__load_print_error(e) + return data + except Exception as e: + self.__print_error(e) + return data + ########################################################################## # __load_security_log_groups ########################################################################## @@ -21710,17 +22332,30 @@ def __load_identity_domain_dynamic_resource_groups(self, identity_domain_client, groups = self.__list_call_get_all_results( identity_domain_client.list_dynamic_resource_groups, attribute_sets=["all"], + # attributes=["id,ocid,schemas,meta,idcs_created_by,idcs_last_modified_by,idcs_prevented_operations,tags,idcs_last_upgraded_in_release,compartment_ocid,matching_rule,display_name,description,grants,dynamic_group_app_roles,freeform_tags,defined_tags"], sort_by="DisplayName", retry_strategy=oci.retry.DEFAULT_RETRY_STRATEGY ).data # oci.identity_domains.models.DynamicResourceGroup - for var in groups: - if var.delete_in_progress: + for var_list in groups: + if var_list.delete_in_progress: continue if self.skip_threads: print(".", end="") + # list does not return all attributes, querying one by one with get_dynamic_resource_group + # Number of dynamic group is not high thererfore this will have small impact on performance + var = None + try: + var = identity_domain_client.get_dynamic_resource_group( + var_list.id, + attribute_sets=["all"], + retry_strategy=oci.retry.DEFAULT_RETRY_STRATEGY + ).data + except Exception: + var = var_list + data.append({ 'id': self.get_value(var.id), 'ocid': self.get_value(var.ocid), diff --git a/src/oci/ai_data_platform/models/create_ai_data_platform_details.py b/src/oci/ai_data_platform/models/create_ai_data_platform_details.py index c245a7e877..1b2f7eb519 100644 --- a/src/oci/ai_data_platform/models/create_ai_data_platform_details.py +++ b/src/oci/ai_data_platform/models/create_ai_data_platform_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20240831 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -91,6 +91,9 @@ def __init__(self, **kwargs): 'defined_tags': 'definedTags', 'system_tags': 'systemTags' } + self._redacted_field_paths = [ + ['vector_db_admin_cred'], + ] self._display_name = None self._ai_data_platform_type = None self._is_enable_ai_feature = None @@ -404,7 +407,9 @@ def system_tags(self, system_tags): self._system_tags = system_tags def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['vector_db_admin_cred']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/ai_data_platform/models/enable_ai_feature_details.py b/src/oci/ai_data_platform/models/enable_ai_feature_details.py index 8b2004a093..12edce4885 100644 --- a/src/oci/ai_data_platform/models/enable_ai_feature_details.py +++ b/src/oci/ai_data_platform/models/enable_ai_feature_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20240831 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -43,6 +43,9 @@ def __init__(self, **kwargs): 'vector_db_admin_cred': 'vectorDbAdminCred', 'vector_db_admin_secret_id': 'vectorDbAdminSecretId' } + self._redacted_field_paths = [ + ['vector_db_admin_cred'], + ] self._vector_db_id = None self._vector_db_admin_cred = None self._vector_db_admin_secret_id = None @@ -128,7 +131,9 @@ def vector_db_admin_secret_id(self, vector_db_admin_secret_id): self._vector_db_admin_secret_id = vector_db_admin_secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['vector_db_admin_cred']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/apiaccesscontrol/api_metadata_client.py b/src/oci/apiaccesscontrol/api_metadata_client.py index 9f3e226321..0f1d4f8e60 100644 --- a/src/oci/apiaccesscontrol/api_metadata_client.py +++ b/src/oci/apiaccesscontrol/api_metadata_client.py @@ -239,12 +239,12 @@ def get_api_metadata(self, api_metadata_id, **kwargs): api_reference_link=api_reference_link, required_arguments=required_arguments) - def list_api_metadata(self, **kwargs): + def list_api_metadata(self, compartment_id, **kwargs): """ Gets a list of ApiMetadata. - :param str compartment_id: (optional) + :param str compartment_id: (required) The `OCID`__ of the compartment in which to list resources. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm @@ -315,7 +315,7 @@ def list_api_metadata(self, **kwargs): Click `here `__ to see an example of how to use list_api_metadata API. """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. - required_arguments = [] + required_arguments = ['compartmentId'] resource_path = "/apiMetadatas" method = "GET" operation_name = "list_api_metadata" @@ -326,7 +326,6 @@ def list_api_metadata(self, **kwargs): "allow_control_chars", "enable_strict_url_encoding", "retry_strategy", - "compartment_id", "lifecycle_state", "resource_type", "display_name", @@ -363,7 +362,7 @@ def list_api_metadata(self, **kwargs): ) query_params = { - "compartmentId": kwargs.get("compartment_id", missing), + "compartmentId": compartment_id, "lifecycleState": kwargs.get("lifecycle_state", missing), "resourceType": kwargs.get("resource_type", missing), "displayName": kwargs.get("display_name", missing), @@ -417,12 +416,12 @@ def list_api_metadata(self, **kwargs): api_reference_link=api_reference_link, required_arguments=required_arguments) - def list_api_metadata_by_entity_types(self, **kwargs): + def list_api_metadata_by_entity_types(self, compartment_id, **kwargs): """ Gets a list of ApiMetadata Grouped By Entity Types. - :param str compartment_id: (optional) + :param str compartment_id: (required) The `OCID`__ of the compartment in which to list resources. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm @@ -493,7 +492,7 @@ def list_api_metadata_by_entity_types(self, **kwargs): Click `here `__ to see an example of how to use list_api_metadata_by_entity_types API. """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. - required_arguments = [] + required_arguments = ['compartmentId'] resource_path = "/apiMetadatas/byEntityType" method = "GET" operation_name = "list_api_metadata_by_entity_types" @@ -504,7 +503,6 @@ def list_api_metadata_by_entity_types(self, **kwargs): "allow_control_chars", "enable_strict_url_encoding", "retry_strategy", - "compartment_id", "lifecycle_state", "resource_type", "display_name", @@ -541,7 +539,7 @@ def list_api_metadata_by_entity_types(self, **kwargs): ) query_params = { - "compartmentId": kwargs.get("compartment_id", missing), + "compartmentId": compartment_id, "lifecycleState": kwargs.get("lifecycle_state", missing), "resourceType": kwargs.get("resource_type", missing), "displayName": kwargs.get("display_name", missing), diff --git a/src/oci/apiaccesscontrol/models/__init__.py b/src/oci/apiaccesscontrol/models/__init__.py index abb81b254e..fcd90825ce 100644 --- a/src/oci/apiaccesscontrol/models/__init__.py +++ b/src/oci/apiaccesscontrol/models/__init__.py @@ -13,6 +13,7 @@ from .api_metadata_summary import ApiMetadataSummary from .approve_privileged_api_request_details import ApprovePrivilegedApiRequestDetails from .approver_detail import ApproverDetail +from .approver_group_level import ApproverGroupLevel from .change_privileged_api_control_compartment_details import ChangePrivilegedApiControlCompartmentDetails from .close_privileged_api_request_details import ClosePrivilegedApiRequestDetails from .create_privileged_api_control_details import CreatePrivilegedApiControlDetails @@ -46,6 +47,7 @@ "ApiMetadataSummary": ApiMetadataSummary, "ApprovePrivilegedApiRequestDetails": ApprovePrivilegedApiRequestDetails, "ApproverDetail": ApproverDetail, + "ApproverGroupLevel": ApproverGroupLevel, "ChangePrivilegedApiControlCompartmentDetails": ChangePrivilegedApiControlCompartmentDetails, "ClosePrivilegedApiRequestDetails": ClosePrivilegedApiRequestDetails, "CreatePrivilegedApiControlDetails": CreatePrivilegedApiControlDetails, diff --git a/src/oci/apiaccesscontrol/models/api_metadata.py b/src/oci/apiaccesscontrol/models/api_metadata.py index e860b64c73..a4cd387c7f 100644 --- a/src/oci/apiaccesscontrol/models/api_metadata.py +++ b/src/oci/apiaccesscontrol/models/api_metadata.py @@ -78,6 +78,10 @@ def __init__(self, **kwargs): The value to assign to the fields property of this ApiMetadata. :type fields: list[str] + :param attributes: + The value to assign to the attributes property of this ApiMetadata. + :type attributes: list[str] + :param time_created: The value to assign to the time_created property of this ApiMetadata. :type time_created: datetime @@ -121,6 +125,7 @@ def __init__(self, **kwargs): 'entity_type': 'str', 'api_name': 'str', 'fields': 'list[str]', + 'attributes': 'list[str]', 'time_created': 'datetime', 'time_updated': 'datetime', 'time_deleted': 'datetime', @@ -138,6 +143,7 @@ def __init__(self, **kwargs): 'entity_type': 'entityType', 'api_name': 'apiName', 'fields': 'fields', + 'attributes': 'attributes', 'time_created': 'timeCreated', 'time_updated': 'timeUpdated', 'time_deleted': 'timeDeleted', @@ -154,6 +160,7 @@ def __init__(self, **kwargs): self._entity_type = None self._api_name = None self._fields = None + self._attributes = None self._time_created = None self._time_updated = None self._time_deleted = None @@ -315,7 +322,7 @@ def api_name(self, api_name): def fields(self): """ Gets the fields of this ApiMetadata. - List of the fields that is use while calling post or put for the data. + deprecated; Use attributes field instead. :return: The fields of this ApiMetadata. @@ -327,7 +334,7 @@ def fields(self): def fields(self, fields): """ Sets the fields of this ApiMetadata. - List of the fields that is use while calling post or put for the data. + deprecated; Use attributes field instead. :param fields: The fields of this ApiMetadata. @@ -335,6 +342,30 @@ def fields(self, fields): """ self._fields = fields + @property + def attributes(self): + """ + Gets the attributes of this ApiMetadata. + List of the fields that is use while calling post or put for the data. + + + :return: The attributes of this ApiMetadata. + :rtype: list[str] + """ + return self._attributes + + @attributes.setter + def attributes(self, attributes): + """ + Sets the attributes of this ApiMetadata. + List of the fields that is use while calling post or put for the data. + + + :param attributes: The attributes of this ApiMetadata. + :type: list[str] + """ + self._attributes = attributes + @property def time_created(self): """ diff --git a/src/oci/apiaccesscontrol/models/api_metadata_by_entity_type_summary.py b/src/oci/apiaccesscontrol/models/api_metadata_by_entity_type_summary.py index 8877427b3b..c444f18a96 100644 --- a/src/oci/apiaccesscontrol/models/api_metadata_by_entity_type_summary.py +++ b/src/oci/apiaccesscontrol/models/api_metadata_by_entity_type_summary.py @@ -20,6 +20,10 @@ def __init__(self, **kwargs): Initializes a new ApiMetadataByEntityTypeSummary object with values from keyword arguments. The following keyword arguments are supported (corresponding to the getters/setters of this class): + :param compartment_id: + The value to assign to the compartment_id property of this ApiMetadataByEntityTypeSummary. + :type compartment_id: str + :param entity_type: The value to assign to the entity_type property of this ApiMetadataByEntityTypeSummary. :type entity_type: str @@ -42,6 +46,7 @@ def __init__(self, **kwargs): """ self.swagger_types = { + 'compartment_id': 'str', 'entity_type': 'str', 'api_metadatas': 'list[ApiMetadataSummary]', 'freeform_tags': 'dict(str, str)', @@ -49,18 +54,44 @@ def __init__(self, **kwargs): 'system_tags': 'dict(str, dict(str, object))' } self.attribute_map = { + 'compartment_id': 'compartmentId', 'entity_type': 'entityType', 'api_metadatas': 'apiMetadatas', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', 'system_tags': 'systemTags' } + self._compartment_id = None self._entity_type = None self._api_metadatas = None self._freeform_tags = None self._defined_tags = None self._system_tags = None + @property + def compartment_id(self): + """ + Gets the compartment_id of this ApiMetadataByEntityTypeSummary. + The OCID of the compartment that contains the Service Provider Action. + + + :return: The compartment_id of this ApiMetadataByEntityTypeSummary. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this ApiMetadataByEntityTypeSummary. + The OCID of the compartment that contains the Service Provider Action. + + + :param compartment_id: The compartment_id of this ApiMetadataByEntityTypeSummary. + :type: str + """ + self._compartment_id = compartment_id + @property def entity_type(self): """ diff --git a/src/oci/apiaccesscontrol/models/approver_detail.py b/src/oci/apiaccesscontrol/models/approver_detail.py index debe166588..30309072cd 100644 --- a/src/oci/apiaccesscontrol/models/approver_detail.py +++ b/src/oci/apiaccesscontrol/models/approver_detail.py @@ -28,6 +28,10 @@ def __init__(self, **kwargs): The value to assign to the approval_action property of this ApproverDetail. :type approval_action: str + :param approver_group_level: + The value to assign to the approver_group_level property of this ApproverDetail. + :type approver_group_level: int + :param approval_comment: The value to assign to the approval_comment property of this ApproverDetail. :type approval_comment: str @@ -44,6 +48,7 @@ def __init__(self, **kwargs): self.swagger_types = { 'approver_id': 'str', 'approval_action': 'str', + 'approver_group_level': 'int', 'approval_comment': 'str', 'time_of_authorization': 'datetime', 'time_approved_for_access': 'datetime' @@ -51,12 +56,14 @@ def __init__(self, **kwargs): self.attribute_map = { 'approver_id': 'approverId', 'approval_action': 'approvalAction', + 'approver_group_level': 'approverGroupLevel', 'approval_comment': 'approvalComment', 'time_of_authorization': 'timeOfAuthorization', 'time_approved_for_access': 'timeApprovedForAccess' } self._approver_id = None self._approval_action = None + self._approver_group_level = None self._approval_comment = None self._time_of_authorization = None self._time_approved_for_access = None @@ -109,6 +116,30 @@ def approval_action(self, approval_action): """ self._approval_action = approval_action + @property + def approver_group_level(self): + """ + Gets the approver_group_level of this ApproverDetail. + The group level at which the approver approved. + + + :return: The approver_group_level of this ApproverDetail. + :rtype: int + """ + return self._approver_group_level + + @approver_group_level.setter + def approver_group_level(self, approver_group_level): + """ + Sets the approver_group_level of this ApproverDetail. + The group level at which the approver approved. + + + :param approver_group_level: The approver_group_level of this ApproverDetail. + :type: int + """ + self._approver_group_level = approver_group_level + @property def approval_comment(self): """ diff --git a/src/oci/apiaccesscontrol/models/approver_group_level.py b/src/oci/apiaccesscontrol/models/approver_group_level.py new file mode 100644 index 0000000000..bed2052a98 --- /dev/null +++ b/src/oci/apiaccesscontrol/models/approver_group_level.py @@ -0,0 +1,101 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20241130 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ApproverGroupLevel(object): + """ + It represents the group level detail for authorization + """ + + def __init__(self, **kwargs): + """ + Initializes a new ApproverGroupLevel object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param group_id: + The value to assign to the group_id property of this ApproverGroupLevel. + :type group_id: list[str] + + :param group_level: + The value to assign to the group_level property of this ApproverGroupLevel. + :type group_level: int + + """ + self.swagger_types = { + 'group_id': 'list[str]', + 'group_level': 'int' + } + self.attribute_map = { + 'group_id': 'groupId', + 'group_level': 'groupLevel' + } + self._group_id = None + self._group_level = None + + @property + def group_id(self): + """ + **[Required]** Gets the group_id of this ApproverGroupLevel. + id of the group. + + + :return: The group_id of this ApproverGroupLevel. + :rtype: list[str] + """ + return self._group_id + + @group_id.setter + def group_id(self, group_id): + """ + Sets the group_id of this ApproverGroupLevel. + id of the group. + + + :param group_id: The group_id of this ApproverGroupLevel. + :type: list[str] + """ + self._group_id = group_id + + @property + def group_level(self): + """ + **[Required]** Gets the group_level of this ApproverGroupLevel. + level of the group. + + + :return: The group_level of this ApproverGroupLevel. + :rtype: int + """ + return self._group_level + + @group_level.setter + def group_level(self, group_level): + """ + Sets the group_level of this ApproverGroupLevel. + level of the group. + + + :param group_level: The group_level of this ApproverGroupLevel. + :type: int + """ + self._group_level = group_level + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/apiaccesscontrol/models/create_privileged_api_control_details.py b/src/oci/apiaccesscontrol/models/create_privileged_api_control_details.py index b8c09b8c77..02e77fdc8b 100644 --- a/src/oci/apiaccesscontrol/models/create_privileged_api_control_details.py +++ b/src/oci/apiaccesscontrol/models/create_privileged_api_control_details.py @@ -40,6 +40,10 @@ def __init__(self, **kwargs): The value to assign to the approver_group_id_list property of this CreatePrivilegedApiControlDetails. :type approver_group_id_list: list[str] + :param approver_group_level_list: + The value to assign to the approver_group_level_list property of this CreatePrivilegedApiControlDetails. + :type approver_group_level_list: list[oci.apiaccesscontrol.models.ApproverGroupLevel] + :param privileged_operation_list: The value to assign to the privileged_operation_list property of this CreatePrivilegedApiControlDetails. :type privileged_operation_list: list[oci.apiaccesscontrol.models.PrivilegedApiDetails] @@ -71,6 +75,7 @@ def __init__(self, **kwargs): 'compartment_id': 'str', 'notification_topic_id': 'str', 'approver_group_id_list': 'list[str]', + 'approver_group_level_list': 'list[ApproverGroupLevel]', 'privileged_operation_list': 'list[PrivilegedApiDetails]', 'resource_type': 'str', 'resources': 'list[str]', @@ -84,6 +89,7 @@ def __init__(self, **kwargs): 'compartment_id': 'compartmentId', 'notification_topic_id': 'notificationTopicId', 'approver_group_id_list': 'approverGroupIdList', + 'approver_group_level_list': 'approverGroupLevelList', 'privileged_operation_list': 'privilegedOperationList', 'resource_type': 'resourceType', 'resources': 'resources', @@ -96,6 +102,7 @@ def __init__(self, **kwargs): self._compartment_id = None self._notification_topic_id = None self._approver_group_id_list = None + self._approver_group_level_list = None self._privileged_operation_list = None self._resource_type = None self._resources = None @@ -183,7 +190,7 @@ def compartment_id(self, compartment_id): def notification_topic_id(self): """ **[Required]** Gets the notification_topic_id of this CreatePrivilegedApiControlDetails. - The OCID of the OCI Notification topic to publish messages related to this Delegation Control. + The OCID of the OCI Notification topic to publish messages related to this Privileged Api Control. :return: The notification_topic_id of this CreatePrivilegedApiControlDetails. @@ -195,7 +202,7 @@ def notification_topic_id(self): def notification_topic_id(self, notification_topic_id): """ Sets the notification_topic_id of this CreatePrivilegedApiControlDetails. - The OCID of the OCI Notification topic to publish messages related to this Delegation Control. + The OCID of the OCI Notification topic to publish messages related to this Privileged Api Control. :param notification_topic_id: The notification_topic_id of this CreatePrivilegedApiControlDetails. @@ -227,6 +234,30 @@ def approver_group_id_list(self, approver_group_id_list): """ self._approver_group_id_list = approver_group_id_list + @property + def approver_group_level_list(self): + """ + Gets the approver_group_level_list of this CreatePrivilegedApiControlDetails. + List of Group containing the levels at which the users belonging to the group can authorize. + + + :return: The approver_group_level_list of this CreatePrivilegedApiControlDetails. + :rtype: list[oci.apiaccesscontrol.models.ApproverGroupLevel] + """ + return self._approver_group_level_list + + @approver_group_level_list.setter + def approver_group_level_list(self, approver_group_level_list): + """ + Sets the approver_group_level_list of this CreatePrivilegedApiControlDetails. + List of Group containing the levels at which the users belonging to the group can authorize. + + + :param approver_group_level_list: The approver_group_level_list of this CreatePrivilegedApiControlDetails. + :type: list[oci.apiaccesscontrol.models.ApproverGroupLevel] + """ + self._approver_group_level_list = approver_group_level_list + @property def privileged_operation_list(self): """ @@ -278,7 +309,7 @@ def resource_type(self, resource_type): @property def resources(self): """ - **[Required]** Gets the resources of this CreatePrivilegedApiControlDetails. + Gets the resources of this CreatePrivilegedApiControlDetails. contains Resource details diff --git a/src/oci/apiaccesscontrol/models/create_privileged_api_request_details.py b/src/oci/apiaccesscontrol/models/create_privileged_api_request_details.py index 7f9f678e40..5d147fabc9 100644 --- a/src/oci/apiaccesscontrol/models/create_privileged_api_request_details.py +++ b/src/oci/apiaccesscontrol/models/create_privileged_api_request_details.py @@ -169,7 +169,7 @@ def reason_summary(self, reason_summary): @property def compartment_id(self): """ - Gets the compartment_id of this CreatePrivilegedApiRequestDetails. + **[Required]** Gets the compartment_id of this CreatePrivilegedApiRequestDetails. The `OCID`__ of the compartment. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm diff --git a/src/oci/apiaccesscontrol/models/privileged_api_control.py b/src/oci/apiaccesscontrol/models/privileged_api_control.py index 7760f8e2c4..a83ac61905 100644 --- a/src/oci/apiaccesscontrol/models/privileged_api_control.py +++ b/src/oci/apiaccesscontrol/models/privileged_api_control.py @@ -78,6 +78,10 @@ def __init__(self, **kwargs): The value to assign to the approver_group_id_list property of this PrivilegedApiControl. :type approver_group_id_list: list[str] + :param approver_group_level_list: + The value to assign to the approver_group_level_list property of this PrivilegedApiControl. + :type approver_group_level_list: list[oci.apiaccesscontrol.models.ApproverGroupLevel] + :param resource_type: The value to assign to the resource_type property of this PrivilegedApiControl. :type resource_type: str @@ -144,6 +148,7 @@ def __init__(self, **kwargs): 'description': 'str', 'notification_topic_id': 'str', 'approver_group_id_list': 'list[str]', + 'approver_group_level_list': 'list[ApproverGroupLevel]', 'resource_type': 'str', 'resources': 'list[str]', 'privileged_operation_list': 'list[PrivilegedApiDetails]', @@ -166,6 +171,7 @@ def __init__(self, **kwargs): 'description': 'description', 'notification_topic_id': 'notificationTopicId', 'approver_group_id_list': 'approverGroupIdList', + 'approver_group_level_list': 'approverGroupLevelList', 'resource_type': 'resourceType', 'resources': 'resources', 'privileged_operation_list': 'privilegedOperationList', @@ -187,6 +193,7 @@ def __init__(self, **kwargs): self._description = None self._notification_topic_id = None self._approver_group_id_list = None + self._approver_group_level_list = None self._resource_type = None self._resources = None self._privileged_operation_list = None @@ -354,6 +361,30 @@ def approver_group_id_list(self, approver_group_id_list): """ self._approver_group_id_list = approver_group_id_list + @property + def approver_group_level_list(self): + """ + Gets the approver_group_level_list of this PrivilegedApiControl. + List of Group containing the levels at which the users belonging to the group can authorize. + + + :return: The approver_group_level_list of this PrivilegedApiControl. + :rtype: list[oci.apiaccesscontrol.models.ApproverGroupLevel] + """ + return self._approver_group_level_list + + @approver_group_level_list.setter + def approver_group_level_list(self, approver_group_level_list): + """ + Sets the approver_group_level_list of this PrivilegedApiControl. + List of Group containing the levels at which the users belonging to the group can authorize. + + + :param approver_group_level_list: The approver_group_level_list of this PrivilegedApiControl. + :type: list[oci.apiaccesscontrol.models.ApproverGroupLevel] + """ + self._approver_group_level_list = approver_group_level_list + @property def resource_type(self): """ @@ -455,7 +486,6 @@ def time_created(self): """ **[Required]** Gets the time_created of this PrivilegedApiControl. The date and time the PrivilegedApiControl was created, in the format defined by `RFC 3339`__. - Example: `2016-08-25T21:10:29.600Z` __ https://tools.ietf.org/html/rfc3339 @@ -471,7 +501,6 @@ def time_created(self, time_created): """ Sets the time_created of this PrivilegedApiControl. The date and time the PrivilegedApiControl was created, in the format defined by `RFC 3339`__. - Example: `2016-08-25T21:10:29.600Z` __ https://tools.ietf.org/html/rfc3339 diff --git a/src/oci/apiaccesscontrol/models/privileged_api_control_summary.py b/src/oci/apiaccesscontrol/models/privileged_api_control_summary.py index 301b7fb0ee..a964e8775c 100644 --- a/src/oci/apiaccesscontrol/models/privileged_api_control_summary.py +++ b/src/oci/apiaccesscontrol/models/privileged_api_control_summary.py @@ -280,7 +280,6 @@ def time_updated(self): """ Gets the time_updated of this PrivilegedApiControlSummary. The date and time the PrivilegedApiControl was updated, in the format defined by `RFC 3339`__. - Example: `2016-08-25T21:10:29.600Z` __ https://tools.ietf.org/html/rfc3339 @@ -296,7 +295,6 @@ def time_updated(self, time_updated): """ Sets the time_updated of this PrivilegedApiControlSummary. The date and time the PrivilegedApiControl was updated, in the format defined by `RFC 3339`__. - Example: `2016-08-25T21:10:29.600Z` __ https://tools.ietf.org/html/rfc3339 diff --git a/src/oci/apiaccesscontrol/models/update_privileged_api_control_details.py b/src/oci/apiaccesscontrol/models/update_privileged_api_control_details.py index c85e612250..b2ae525dbb 100644 --- a/src/oci/apiaccesscontrol/models/update_privileged_api_control_details.py +++ b/src/oci/apiaccesscontrol/models/update_privileged_api_control_details.py @@ -44,6 +44,10 @@ def __init__(self, **kwargs): The value to assign to the approver_group_id_list property of this UpdatePrivilegedApiControlDetails. :type approver_group_id_list: list[str] + :param approver_group_level_list: + The value to assign to the approver_group_level_list property of this UpdatePrivilegedApiControlDetails. + :type approver_group_level_list: list[oci.apiaccesscontrol.models.ApproverGroupLevel] + :param privileged_operation_list: The value to assign to the privileged_operation_list property of this UpdatePrivilegedApiControlDetails. :type privileged_operation_list: list[oci.apiaccesscontrol.models.PrivilegedApiDetails] @@ -68,6 +72,7 @@ def __init__(self, **kwargs): 'resources': 'list[str]', 'notification_topic_id': 'str', 'approver_group_id_list': 'list[str]', + 'approver_group_level_list': 'list[ApproverGroupLevel]', 'privileged_operation_list': 'list[PrivilegedApiDetails]', 'number_of_approvers': 'int', 'freeform_tags': 'dict(str, str)', @@ -80,6 +85,7 @@ def __init__(self, **kwargs): 'resources': 'resources', 'notification_topic_id': 'notificationTopicId', 'approver_group_id_list': 'approverGroupIdList', + 'approver_group_level_list': 'approverGroupLevelList', 'privileged_operation_list': 'privilegedOperationList', 'number_of_approvers': 'numberOfApprovers', 'freeform_tags': 'freeformTags', @@ -91,6 +97,7 @@ def __init__(self, **kwargs): self._resources = None self._notification_topic_id = None self._approver_group_id_list = None + self._approver_group_level_list = None self._privileged_operation_list = None self._number_of_approvers = None self._freeform_tags = None @@ -196,7 +203,7 @@ def resources(self, resources): def notification_topic_id(self): """ Gets the notification_topic_id of this UpdatePrivilegedApiControlDetails. - The OCID of the OCI Notification topic to publish messages related to this Delegation Control. + The OCID of the OCI Notification topic to publish messages related to this Privileged Api Control. :return: The notification_topic_id of this UpdatePrivilegedApiControlDetails. @@ -208,7 +215,7 @@ def notification_topic_id(self): def notification_topic_id(self, notification_topic_id): """ Sets the notification_topic_id of this UpdatePrivilegedApiControlDetails. - The OCID of the OCI Notification topic to publish messages related to this Delegation Control. + The OCID of the OCI Notification topic to publish messages related to this Privileged Api Control. :param notification_topic_id: The notification_topic_id of this UpdatePrivilegedApiControlDetails. @@ -240,6 +247,30 @@ def approver_group_id_list(self, approver_group_id_list): """ self._approver_group_id_list = approver_group_id_list + @property + def approver_group_level_list(self): + """ + Gets the approver_group_level_list of this UpdatePrivilegedApiControlDetails. + List of Group containing the levels at which the users belonging to the group can authorize. + + + :return: The approver_group_level_list of this UpdatePrivilegedApiControlDetails. + :rtype: list[oci.apiaccesscontrol.models.ApproverGroupLevel] + """ + return self._approver_group_level_list + + @approver_group_level_list.setter + def approver_group_level_list(self, approver_group_level_list): + """ + Sets the approver_group_level_list of this UpdatePrivilegedApiControlDetails. + List of Group containing the levels at which the users belonging to the group can authorize. + + + :param approver_group_level_list: The approver_group_level_list of this UpdatePrivilegedApiControlDetails. + :type: list[oci.apiaccesscontrol.models.ApproverGroupLevel] + """ + self._approver_group_level_list = approver_group_level_list + @property def privileged_operation_list(self): """ diff --git a/src/oci/apiaccesscontrol/privileged_api_control_client.py b/src/oci/apiaccesscontrol/privileged_api_control_client.py index e40719eab6..f4896843da 100644 --- a/src/oci/apiaccesscontrol/privileged_api_control_client.py +++ b/src/oci/apiaccesscontrol/privileged_api_control_client.py @@ -608,12 +608,12 @@ def get_privileged_api_control(self, privileged_api_control_id, **kwargs): api_reference_link=api_reference_link, required_arguments=required_arguments) - def list_privileged_api_controls(self, **kwargs): + def list_privileged_api_controls(self, compartment_id, **kwargs): """ Gets a list of PrivilegedApiControls. - :param str compartment_id: (optional) + :param str compartment_id: (required) The `OCID`__ of the compartment in which to list resources. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm @@ -689,7 +689,7 @@ def list_privileged_api_controls(self, **kwargs): Click `here `__ to see an example of how to use list_privileged_api_controls API. """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. - required_arguments = [] + required_arguments = ['compartmentId'] resource_path = "/privilegedApiControls" method = "GET" operation_name = "list_privileged_api_controls" @@ -700,7 +700,6 @@ def list_privileged_api_controls(self, **kwargs): "allow_control_chars", "enable_strict_url_encoding", "retry_strategy", - "compartment_id", "id", "lifecycle_state", "display_name", @@ -738,7 +737,7 @@ def list_privileged_api_controls(self, **kwargs): ) query_params = { - "compartmentId": kwargs.get("compartment_id", missing), + "compartmentId": compartment_id, "id": kwargs.get("id", missing), "lifecycleState": kwargs.get("lifecycle_state", missing), "displayName": kwargs.get("display_name", missing), diff --git a/src/oci/apiaccesscontrol/privileged_api_requests_client.py b/src/oci/apiaccesscontrol/privileged_api_requests_client.py index c5c4158b33..43435b6733 100644 --- a/src/oci/apiaccesscontrol/privileged_api_requests_client.py +++ b/src/oci/apiaccesscontrol/privileged_api_requests_client.py @@ -603,12 +603,12 @@ def get_privileged_api_request(self, privileged_api_request_id, **kwargs): api_reference_link=api_reference_link, required_arguments=required_arguments) - def list_privileged_api_requests(self, **kwargs): + def list_privileged_api_requests(self, compartment_id, **kwargs): """ Lists all privilegedApi requests in the compartment. - :param str compartment_id: (optional) + :param str compartment_id: (required) The `OCID`__ of the compartment in which to list resources. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm @@ -695,7 +695,7 @@ def list_privileged_api_requests(self, **kwargs): Click `here `__ to see an example of how to use list_privileged_api_requests API. """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. - required_arguments = [] + required_arguments = ['compartmentId'] resource_path = "/privilegedApiRequests" method = "GET" operation_name = "list_privileged_api_requests" @@ -706,7 +706,6 @@ def list_privileged_api_requests(self, **kwargs): "allow_control_chars", "enable_strict_url_encoding", "retry_strategy", - "compartment_id", "id", "display_name", "resource_id", @@ -753,7 +752,7 @@ def list_privileged_api_requests(self, **kwargs): ) query_params = { - "compartmentId": kwargs.get("compartment_id", missing), + "compartmentId": compartment_id, "id": kwargs.get("id", missing), "displayName": kwargs.get("display_name", missing), "resourceId": kwargs.get("resource_id", missing), diff --git a/src/oci/apiaccesscontrol/privileged_api_work_request_client.py b/src/oci/apiaccesscontrol/privileged_api_work_request_client.py index a60087fb04..45d28d256e 100644 --- a/src/oci/apiaccesscontrol/privileged_api_work_request_client.py +++ b/src/oci/apiaccesscontrol/privileged_api_work_request_client.py @@ -679,12 +679,12 @@ def list_work_request_logs(self, work_request_id, **kwargs): api_reference_link=api_reference_link, required_arguments=required_arguments) - def list_work_requests(self, **kwargs): + def list_work_requests(self, compartment_id, **kwargs): """ Lists the work requests in a compartment. - :param str compartment_id: (optional) + :param str compartment_id: (required) The `OCID`__ of the compartment in which to list resources. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm @@ -757,7 +757,7 @@ def list_work_requests(self, **kwargs): Click `here `__ to see an example of how to use list_work_requests API. """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. - required_arguments = [] + required_arguments = ['compartmentId'] resource_path = "/workRequests" method = "GET" operation_name = "list_work_requests" @@ -768,7 +768,6 @@ def list_work_requests(self, **kwargs): "allow_control_chars", "enable_strict_url_encoding", "retry_strategy", - "compartment_id", "work_request_id", "status", "resource_id", @@ -805,7 +804,7 @@ def list_work_requests(self, **kwargs): ) query_params = { - "compartmentId": kwargs.get("compartment_id", missing), + "compartmentId": compartment_id, "workRequestId": kwargs.get("work_request_id", missing), "status": kwargs.get("status", missing), "resourceId": kwargs.get("resource_id", missing), diff --git a/src/oci/apm_synthetics/models/password_in_text.py b/src/oci/apm_synthetics/models/password_in_text.py index e6f30eb422..5177e8a569 100644 --- a/src/oci/apm_synthetics/models/password_in_text.py +++ b/src/oci/apm_synthetics/models/password_in_text.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200630 from .password import Password -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -39,6 +39,9 @@ def __init__(self, **kwargs): 'password_type': 'passwordType', 'password': 'password' } + self._redacted_field_paths = [ + ['password'], + ] self._password_type = None self._password = None self._password_type = 'IN_TEXT' @@ -68,7 +71,9 @@ def password(self, password): self._password = password def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/base_client.py b/src/oci/base_client.py index 7b28b7cdc4..c23c9afbbe 100644 --- a/src/oci/base_client.py +++ b/src/oci/base_client.py @@ -87,7 +87,7 @@ def build_user_agent(extra=""): def utc_now(): - return " " + str(datetime.utcnow()) + ": " + return " " + str(datetime.now(timezone.utc)) + ": " def _get_propagation_request_id_file_path(): diff --git a/src/oci/bds/models/activate_bds_metastore_configuration_details.py b/src/oci/bds/models/activate_bds_metastore_configuration_details.py index 031df3ef66..05f53454ce 100644 --- a/src/oci/bds/models/activate_bds_metastore_configuration_details.py +++ b/src/oci/bds/models/activate_bds_metastore_configuration_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -43,6 +43,10 @@ def __init__(self, **kwargs): 'cluster_admin_password': 'clusterAdminPassword', 'secret_id': 'secretId' } + self._redacted_field_paths = [ + ['bds_api_key_passphrase'], + ['cluster_admin_password'], + ] self._bds_api_key_passphrase = None self._cluster_admin_password = None self._secret_id = None @@ -120,7 +124,10 @@ def secret_id(self, secret_id): self._secret_id = secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['bds_api_key_passphrase']) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/activate_iam_user_sync_configuration_details.py b/src/oci/bds/models/activate_iam_user_sync_configuration_details.py index db7611459c..9eadf713cb 100644 --- a/src/oci/bds/models/activate_iam_user_sync_configuration_details.py +++ b/src/oci/bds/models/activate_iam_user_sync_configuration_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -43,6 +43,9 @@ def __init__(self, **kwargs): 'secret_id': 'secretId', 'is_posix_attributes_addition_required': 'isPosixAttributesAdditionRequired' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._cluster_admin_password = None self._secret_id = None self._is_posix_attributes_addition_required = None @@ -120,7 +123,9 @@ def is_posix_attributes_addition_required(self, is_posix_attributes_addition_req self._is_posix_attributes_addition_required = is_posix_attributes_addition_required def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/activate_upst_configuration_details.py b/src/oci/bds/models/activate_upst_configuration_details.py index 8427bba8fb..a11aa2366c 100644 --- a/src/oci/bds/models/activate_upst_configuration_details.py +++ b/src/oci/bds/models/activate_upst_configuration_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -49,6 +49,9 @@ def __init__(self, **kwargs): 'vault_id': 'vaultId', 'master_encryption_key_id': 'masterEncryptionKeyId' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._cluster_admin_password = None self._secret_id = None self._vault_id = None @@ -151,7 +154,9 @@ def master_encryption_key_id(self, master_encryption_key_id): self._master_encryption_key_id = master_encryption_key_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/add_auto_scaling_configuration_details.py b/src/oci/bds/models/add_auto_scaling_configuration_details.py index 353c2d3159..175b8474ad 100644 --- a/src/oci/bds/models/add_auto_scaling_configuration_details.py +++ b/src/oci/bds/models/add_auto_scaling_configuration_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -67,6 +67,9 @@ def __init__(self, **kwargs): 'policy': 'policy', 'policy_details': 'policyDetails' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._display_name = None self._node_type = None self._is_enabled = None @@ -236,7 +239,9 @@ def policy_details(self, policy_details): self._policy_details = policy_details def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/add_block_storage_details.py b/src/oci/bds/models/add_block_storage_details.py index c6ffa5b94d..dd752eceb4 100644 --- a/src/oci/bds/models/add_block_storage_details.py +++ b/src/oci/bds/models/add_block_storage_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -72,6 +72,9 @@ def __init__(self, **kwargs): 'node_type': 'nodeType', 'node_ids': 'nodeIds' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._cluster_admin_password = None self._secret_id = None self._block_volume_size_in_gbs = None @@ -216,7 +219,9 @@ def node_ids(self, node_ids): self._node_ids = node_ids def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/add_cloud_sql_details.py b/src/oci/bds/models/add_cloud_sql_details.py index 72756c1a5a..8ea8b8aef5 100644 --- a/src/oci/bds/models/add_cloud_sql_details.py +++ b/src/oci/bds/models/add_cloud_sql_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -49,6 +49,9 @@ def __init__(self, **kwargs): 'block_volume_size_in_gbs': 'blockVolumeSizeInGBs', 'cluster_admin_password': 'clusterAdminPassword' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._shape = None self._shape_config = None self._block_volume_size_in_gbs = None @@ -147,7 +150,9 @@ def cluster_admin_password(self, cluster_admin_password): self._cluster_admin_password = cluster_admin_password def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/add_kafka_details.py b/src/oci/bds/models/add_kafka_details.py index 27b278df1a..fc63b7f098 100644 --- a/src/oci/bds/models/add_kafka_details.py +++ b/src/oci/bds/models/add_kafka_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -61,6 +61,9 @@ def __init__(self, **kwargs): 'cluster_admin_password': 'clusterAdminPassword', 'secret_id': 'secretId' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._shape = None self._number_of_kafka_nodes = None self._shape_config = None @@ -209,7 +212,9 @@ def secret_id(self, secret_id): self._secret_id = secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/add_master_nodes_details.py b/src/oci/bds/models/add_master_nodes_details.py index 1aef4de603..5f40b5cf97 100644 --- a/src/oci/bds/models/add_master_nodes_details.py +++ b/src/oci/bds/models/add_master_nodes_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -61,6 +61,9 @@ def __init__(self, **kwargs): 'block_volume_size_in_gbs': 'blockVolumeSizeInGBs', 'shape_config': 'shapeConfig' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._cluster_admin_password = None self._secret_id = None self._number_of_master_nodes = None @@ -209,7 +212,9 @@ def shape_config(self, shape_config): self._shape_config = shape_config def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/add_utility_nodes_details.py b/src/oci/bds/models/add_utility_nodes_details.py index f2db1e0485..3e0058fd2a 100644 --- a/src/oci/bds/models/add_utility_nodes_details.py +++ b/src/oci/bds/models/add_utility_nodes_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -61,6 +61,9 @@ def __init__(self, **kwargs): 'block_volume_size_in_gbs': 'blockVolumeSizeInGBs', 'shape_config': 'shapeConfig' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._cluster_admin_password = None self._secret_id = None self._number_of_utility_nodes = None @@ -209,7 +212,9 @@ def shape_config(self, shape_config): self._shape_config = shape_config def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/add_worker_nodes_details.py b/src/oci/bds/models/add_worker_nodes_details.py index 4f2babd04f..93215d7c66 100644 --- a/src/oci/bds/models/add_worker_nodes_details.py +++ b/src/oci/bds/models/add_worker_nodes_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -84,6 +84,9 @@ def __init__(self, **kwargs): 'block_volume_size_in_gbs': 'blockVolumeSizeInGBs', 'shape_config': 'shapeConfig' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._cluster_admin_password = None self._secret_id = None self._number_of_worker_nodes = None @@ -266,7 +269,9 @@ def shape_config(self, shape_config): self._shape_config = shape_config def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/bds_instance_reset_password_details.py b/src/oci/bds/models/bds_instance_reset_password_details.py index a8126e07db..0c0a4206f0 100644 --- a/src/oci/bds/models/bds_instance_reset_password_details.py +++ b/src/oci/bds/models/bds_instance_reset_password_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -60,6 +60,9 @@ def __init__(self, **kwargs): 'secret_id': 'secretId', 'service': 'service' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._cluster_admin_password = None self._secret_id = None self._service = None @@ -144,7 +147,9 @@ def service(self, service): self._service = service def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/change_shape_details.py b/src/oci/bds/models/change_shape_details.py index 6787499a55..b258483675 100644 --- a/src/oci/bds/models/change_shape_details.py +++ b/src/oci/bds/models/change_shape_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -43,6 +43,9 @@ def __init__(self, **kwargs): 'secret_id': 'secretId', 'nodes': 'nodes' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._cluster_admin_password = None self._secret_id = None self._nodes = None @@ -116,7 +119,9 @@ def nodes(self, nodes): self._nodes = nodes def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/create_bds_api_key_details.py b/src/oci/bds/models/create_bds_api_key_details.py index d92c6f5df3..74ca38add7 100644 --- a/src/oci/bds/models/create_bds_api_key_details.py +++ b/src/oci/bds/models/create_bds_api_key_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -55,6 +55,9 @@ def __init__(self, **kwargs): 'key_alias': 'keyAlias', 'domain_ocid': 'domainOcid' } + self._redacted_field_paths = [ + ['passphrase'], + ] self._user_id = None self._passphrase = None self._default_region = None @@ -186,7 +189,9 @@ def domain_ocid(self, domain_ocid): self._domain_ocid = domain_ocid def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['passphrase']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/create_bds_instance_details.py b/src/oci/bds/models/create_bds_instance_details.py index a3b8fcab4c..67b19bdefc 100644 --- a/src/oci/bds/models/create_bds_instance_details.py +++ b/src/oci/bds/models/create_bds_instance_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -133,6 +133,9 @@ def __init__(self, **kwargs): 'cluster_profile': 'clusterProfile', 'bds_cluster_version_summary': 'bdsClusterVersionSummary' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._compartment_id = None self._display_name = None self._cluster_version = None @@ -581,7 +584,9 @@ def bds_cluster_version_summary(self, bds_cluster_version_summary): self._bds_cluster_version_summary = bds_cluster_version_summary def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/create_bds_metastore_configuration_details.py b/src/oci/bds/models/create_bds_metastore_configuration_details.py index 9c477efb54..ccdd1ca660 100644 --- a/src/oci/bds/models/create_bds_metastore_configuration_details.py +++ b/src/oci/bds/models/create_bds_metastore_configuration_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -61,6 +61,10 @@ def __init__(self, **kwargs): 'cluster_admin_password': 'clusterAdminPassword', 'secret_id': 'secretId' } + self._redacted_field_paths = [ + ['bds_api_key_passphrase'], + ['cluster_admin_password'], + ] self._display_name = None self._metastore_id = None self._bds_api_key_id = None @@ -213,7 +217,10 @@ def secret_id(self, secret_id): self._secret_id = secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['bds_api_key_passphrase']) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/create_identity_configuration_details.py b/src/oci/bds/models/create_identity_configuration_details.py index dae59fad45..b3acb986e9 100644 --- a/src/oci/bds/models/create_identity_configuration_details.py +++ b/src/oci/bds/models/create_identity_configuration_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -67,6 +67,9 @@ def __init__(self, **kwargs): 'upst_configuration_details': 'upstConfigurationDetails', 'iam_user_sync_configuration_details': 'iamUserSyncConfigurationDetails' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._cluster_admin_password = None self._secret_id = None self._display_name = None @@ -236,7 +239,9 @@ def iam_user_sync_configuration_details(self, iam_user_sync_configuration_detail self._iam_user_sync_configuration_details = iam_user_sync_configuration_details def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/create_node_replace_configuration_details.py b/src/oci/bds/models/create_node_replace_configuration_details.py index caf6254e31..9e917ad4f1 100644 --- a/src/oci/bds/models/create_node_replace_configuration_details.py +++ b/src/oci/bds/models/create_node_replace_configuration_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -61,6 +61,9 @@ def __init__(self, **kwargs): 'metric_type': 'metricType', 'duration_in_minutes': 'durationInMinutes' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._level_type_details = None self._display_name = None self._cluster_admin_password = None @@ -209,7 +212,9 @@ def duration_in_minutes(self, duration_in_minutes): self._duration_in_minutes = duration_in_minutes def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/create_resource_principal_configuration_details.py b/src/oci/bds/models/create_resource_principal_configuration_details.py index d189f558db..2418c796e8 100644 --- a/src/oci/bds/models/create_resource_principal_configuration_details.py +++ b/src/oci/bds/models/create_resource_principal_configuration_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -49,6 +49,9 @@ def __init__(self, **kwargs): 'secret_id': 'secretId', 'session_token_life_span_duration_in_hours': 'sessionTokenLifeSpanDurationInHours' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._display_name = None self._cluster_admin_password = None self._secret_id = None @@ -151,7 +154,9 @@ def session_token_life_span_duration_in_hours(self, session_token_life_span_dura self._session_token_life_span_duration_in_hours = session_token_life_span_duration_in_hours def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/deactivate_iam_user_sync_configuration_details.py b/src/oci/bds/models/deactivate_iam_user_sync_configuration_details.py index a4bb4a1ff8..65b93f8f08 100644 --- a/src/oci/bds/models/deactivate_iam_user_sync_configuration_details.py +++ b/src/oci/bds/models/deactivate_iam_user_sync_configuration_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -37,6 +37,9 @@ def __init__(self, **kwargs): 'cluster_admin_password': 'clusterAdminPassword', 'secret_id': 'secretId' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._cluster_admin_password = None self._secret_id = None @@ -89,7 +92,9 @@ def secret_id(self, secret_id): self._secret_id = secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/deactivate_upst_configuration_details.py b/src/oci/bds/models/deactivate_upst_configuration_details.py index 73a97a9237..8e32defa9b 100644 --- a/src/oci/bds/models/deactivate_upst_configuration_details.py +++ b/src/oci/bds/models/deactivate_upst_configuration_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -37,6 +37,9 @@ def __init__(self, **kwargs): 'cluster_admin_password': 'clusterAdminPassword', 'secret_id': 'secretId' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._cluster_admin_password = None self._secret_id = None @@ -89,7 +92,9 @@ def secret_id(self, secret_id): self._secret_id = secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/disable_certificate_details.py b/src/oci/bds/models/disable_certificate_details.py index 938655ff63..862949a4dd 100644 --- a/src/oci/bds/models/disable_certificate_details.py +++ b/src/oci/bds/models/disable_certificate_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -43,6 +43,9 @@ def __init__(self, **kwargs): 'secret_id': 'secretId', 'services': 'services' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._cluster_admin_password = None self._secret_id = None self._services = None @@ -120,7 +123,9 @@ def services(self, services): self._services = services def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/enable_certificate_details.py b/src/oci/bds/models/enable_certificate_details.py index c11fcdc11b..b5a4546ab3 100644 --- a/src/oci/bds/models/enable_certificate_details.py +++ b/src/oci/bds/models/enable_certificate_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -61,6 +61,11 @@ def __init__(self, **kwargs): 'host_cert_details': 'hostCertDetails', 'server_key_password': 'serverKeyPassword' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ['host_cert_details', '*', 'private_key'], + ['server_key_password'], + ] self._cluster_admin_password = None self._secret_id = None self._services = None @@ -213,7 +218,11 @@ def server_key_password(self, server_key_password): self._server_key_password = server_key_password def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + redact_password_field(as_dict, ['host_cert_details', '*', 'private_key']) + redact_password_field(as_dict, ['server_key_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/execute_bootstrap_script_details.py b/src/oci/bds/models/execute_bootstrap_script_details.py index ec674a2446..e8f60e3568 100644 --- a/src/oci/bds/models/execute_bootstrap_script_details.py +++ b/src/oci/bds/models/execute_bootstrap_script_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -43,6 +43,9 @@ def __init__(self, **kwargs): 'secret_id': 'secretId', 'bootstrap_script_url': 'bootstrapScriptUrl' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._cluster_admin_password = None self._secret_id = None self._bootstrap_script_url = None @@ -120,7 +123,9 @@ def bootstrap_script_url(self, bootstrap_script_url): self._bootstrap_script_url = bootstrap_script_url def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/force_refresh_resource_principal_details.py b/src/oci/bds/models/force_refresh_resource_principal_details.py index a282cb507c..c5fe224b81 100644 --- a/src/oci/bds/models/force_refresh_resource_principal_details.py +++ b/src/oci/bds/models/force_refresh_resource_principal_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -37,6 +37,9 @@ def __init__(self, **kwargs): 'cluster_admin_password': 'clusterAdminPassword', 'secret_id': 'secretId' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._cluster_admin_password = None self._secret_id = None @@ -89,7 +92,9 @@ def secret_id(self, secret_id): self._secret_id = secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/generate_bds_certificate_details.py b/src/oci/bds/models/generate_bds_certificate_details.py index ee96896d56..6b90354b63 100644 --- a/src/oci/bds/models/generate_bds_certificate_details.py +++ b/src/oci/bds/models/generate_bds_certificate_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -43,6 +43,9 @@ def __init__(self, **kwargs): 'cluster_admin_password': 'clusterAdminPassword', 'secret_id': 'secretId' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._manage_certificate_level_type_details = None self._cluster_admin_password = None self._secret_id = None @@ -116,7 +119,9 @@ def secret_id(self, secret_id): self._secret_id = secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/host_cert_details.py b/src/oci/bds/models/host_cert_details.py index e6a40c7f7b..bf08f58d97 100644 --- a/src/oci/bds/models/host_cert_details.py +++ b/src/oci/bds/models/host_cert_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -43,6 +43,9 @@ def __init__(self, **kwargs): 'certificate': 'certificate', 'private_key': 'privateKey' } + self._redacted_field_paths = [ + ['private_key'], + ] self._host_name = None self._certificate = None self._private_key = None @@ -120,7 +123,9 @@ def private_key(self, private_key): self._private_key = private_key def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['private_key']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/install_os_patch_details.py b/src/oci/bds/models/install_os_patch_details.py index d4d97dbf46..b297b23def 100644 --- a/src/oci/bds/models/install_os_patch_details.py +++ b/src/oci/bds/models/install_os_patch_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -55,6 +55,9 @@ def __init__(self, **kwargs): 'patching_configs': 'patchingConfigs', 'is_dry_run': 'isDryRun' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._os_patch_version = None self._cluster_admin_password = None self._secret_id = None @@ -178,7 +181,9 @@ def is_dry_run(self, is_dry_run): self._is_dry_run = is_dry_run def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/install_patch_details.py b/src/oci/bds/models/install_patch_details.py index b137bac2cf..ddbc04d1e4 100644 --- a/src/oci/bds/models/install_patch_details.py +++ b/src/oci/bds/models/install_patch_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -49,6 +49,9 @@ def __init__(self, **kwargs): 'secret_id': 'secretId', 'patching_config': 'patchingConfig' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._version = None self._cluster_admin_password = None self._secret_id = None @@ -147,7 +150,9 @@ def patching_config(self, patching_config): self._patching_config = patching_config def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/password_summary.py b/src/oci/bds/models/password_summary.py index 4ea21c2b8d..820c7acc87 100644 --- a/src/oci/bds/models/password_summary.py +++ b/src/oci/bds/models/password_summary.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -31,6 +31,9 @@ def __init__(self, **kwargs): self.attribute_map = { 'admin_password': 'adminPassword' } + self._redacted_field_paths = [ + ['admin_password'], + ] self._admin_password = None @property @@ -58,7 +61,9 @@ def admin_password(self, admin_password): self._admin_password = admin_password def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/refresh_confidential_application_details.py b/src/oci/bds/models/refresh_confidential_application_details.py index 2233c76570..5bed6d6279 100644 --- a/src/oci/bds/models/refresh_confidential_application_details.py +++ b/src/oci/bds/models/refresh_confidential_application_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -37,6 +37,9 @@ def __init__(self, **kwargs): 'cluster_admin_password': 'clusterAdminPassword', 'secret_id': 'secretId' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._cluster_admin_password = None self._secret_id = None @@ -89,7 +92,9 @@ def secret_id(self, secret_id): self._secret_id = secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/refresh_upst_token_exchange_keytab_details.py b/src/oci/bds/models/refresh_upst_token_exchange_keytab_details.py index c0a13b6d2f..745b5655c2 100644 --- a/src/oci/bds/models/refresh_upst_token_exchange_keytab_details.py +++ b/src/oci/bds/models/refresh_upst_token_exchange_keytab_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -37,6 +37,9 @@ def __init__(self, **kwargs): 'cluster_admin_password': 'clusterAdminPassword', 'secret_id': 'secretId' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._cluster_admin_password = None self._secret_id = None @@ -89,7 +92,9 @@ def secret_id(self, secret_id): self._secret_id = secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/remove_auto_scaling_configuration_details.py b/src/oci/bds/models/remove_auto_scaling_configuration_details.py index b01a0b963a..e59f7524f7 100644 --- a/src/oci/bds/models/remove_auto_scaling_configuration_details.py +++ b/src/oci/bds/models/remove_auto_scaling_configuration_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -37,6 +37,9 @@ def __init__(self, **kwargs): 'cluster_admin_password': 'clusterAdminPassword', 'secret_id': 'secretId' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._cluster_admin_password = None self._secret_id = None @@ -89,7 +92,9 @@ def secret_id(self, secret_id): self._secret_id = secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/remove_cloud_sql_details.py b/src/oci/bds/models/remove_cloud_sql_details.py index 604451c3ee..e1a271aa9c 100644 --- a/src/oci/bds/models/remove_cloud_sql_details.py +++ b/src/oci/bds/models/remove_cloud_sql_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -31,6 +31,9 @@ def __init__(self, **kwargs): self.attribute_map = { 'cluster_admin_password': 'clusterAdminPassword' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._cluster_admin_password = None @property @@ -58,7 +61,9 @@ def cluster_admin_password(self, cluster_admin_password): self._cluster_admin_password = cluster_admin_password def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/remove_kafka_details.py b/src/oci/bds/models/remove_kafka_details.py index 509e8debd1..1162a70f23 100644 --- a/src/oci/bds/models/remove_kafka_details.py +++ b/src/oci/bds/models/remove_kafka_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -37,6 +37,9 @@ def __init__(self, **kwargs): 'cluster_admin_password': 'clusterAdminPassword', 'secret_id': 'secretId' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._cluster_admin_password = None self._secret_id = None @@ -89,7 +92,9 @@ def secret_id(self, secret_id): self._secret_id = secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/remove_node_details.py b/src/oci/bds/models/remove_node_details.py index be72d1e7d8..7958bc6a7a 100644 --- a/src/oci/bds/models/remove_node_details.py +++ b/src/oci/bds/models/remove_node_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -49,6 +49,9 @@ def __init__(self, **kwargs): 'is_force_remove_enabled': 'isForceRemoveEnabled', 'node_id': 'nodeId' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._cluster_admin_password = None self._secret_id = None self._is_force_remove_enabled = None @@ -153,7 +156,9 @@ def node_id(self, node_id): self._node_id = node_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/remove_node_replace_configuration_details.py b/src/oci/bds/models/remove_node_replace_configuration_details.py index 64acf8b600..4d1bacca0e 100644 --- a/src/oci/bds/models/remove_node_replace_configuration_details.py +++ b/src/oci/bds/models/remove_node_replace_configuration_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -37,6 +37,9 @@ def __init__(self, **kwargs): 'cluster_admin_password': 'clusterAdminPassword', 'secret_id': 'secretId' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._cluster_admin_password = None self._secret_id = None @@ -89,7 +92,9 @@ def secret_id(self, secret_id): self._secret_id = secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/remove_nodes_details.py b/src/oci/bds/models/remove_nodes_details.py index d722895397..9b7848b6b1 100644 --- a/src/oci/bds/models/remove_nodes_details.py +++ b/src/oci/bds/models/remove_nodes_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -49,6 +49,9 @@ def __init__(self, **kwargs): 'is_force_remove_enabled': 'isForceRemoveEnabled', 'instance_ids': 'instanceIds' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._cluster_admin_password = None self._secret_id = None self._is_force_remove_enabled = None @@ -151,7 +154,9 @@ def instance_ids(self, instance_ids): self._instance_ids = instance_ids def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/remove_resource_principal_configuration_details.py b/src/oci/bds/models/remove_resource_principal_configuration_details.py index 616568ee6a..99e19c4f99 100644 --- a/src/oci/bds/models/remove_resource_principal_configuration_details.py +++ b/src/oci/bds/models/remove_resource_principal_configuration_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -37,6 +37,9 @@ def __init__(self, **kwargs): 'cluster_admin_password': 'clusterAdminPassword', 'secret_id': 'secretId' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._cluster_admin_password = None self._secret_id = None @@ -89,7 +92,9 @@ def secret_id(self, secret_id): self._secret_id = secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/renew_bds_certificate_details.py b/src/oci/bds/models/renew_bds_certificate_details.py index a5060588d4..b96ec6f2ed 100644 --- a/src/oci/bds/models/renew_bds_certificate_details.py +++ b/src/oci/bds/models/renew_bds_certificate_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -43,6 +43,9 @@ def __init__(self, **kwargs): 'cluster_admin_password': 'clusterAdminPassword', 'secret_id': 'secretId' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._manage_certificate_level_type_details = None self._cluster_admin_password = None self._secret_id = None @@ -116,7 +119,9 @@ def secret_id(self, secret_id): self._secret_id = secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/renew_certificate_details.py b/src/oci/bds/models/renew_certificate_details.py index 716177293a..b0f7583238 100644 --- a/src/oci/bds/models/renew_certificate_details.py +++ b/src/oci/bds/models/renew_certificate_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -61,6 +61,11 @@ def __init__(self, **kwargs): 'host_cert_details': 'hostCertDetails', 'server_key_password': 'serverKeyPassword' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ['host_cert_details', '*', 'private_key'], + ['server_key_password'], + ] self._cluster_admin_password = None self._secret_id = None self._services = None @@ -213,7 +218,11 @@ def server_key_password(self, server_key_password): self._server_key_password = server_key_password def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + redact_password_field(as_dict, ['host_cert_details', '*', 'private_key']) + redact_password_field(as_dict, ['server_key_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/replace_node_details.py b/src/oci/bds/models/replace_node_details.py index 7b082a0b29..a06f2bc767 100644 --- a/src/oci/bds/models/replace_node_details.py +++ b/src/oci/bds/models/replace_node_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -61,6 +61,9 @@ def __init__(self, **kwargs): 'secret_id': 'secretId', 'shape': 'shape' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._node_host_name = None self._node_backup_id = None self._cluster_admin_password = None @@ -213,7 +216,9 @@ def shape(self, shape): self._shape = shape def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/set_default_bds_certificate_configuration_details.py b/src/oci/bds/models/set_default_bds_certificate_configuration_details.py index d6c8497cd2..3fcb9310b1 100644 --- a/src/oci/bds/models/set_default_bds_certificate_configuration_details.py +++ b/src/oci/bds/models/set_default_bds_certificate_configuration_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -37,6 +37,9 @@ def __init__(self, **kwargs): 'cluster_admin_password': 'clusterAdminPassword', 'secret_id': 'secretId' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._cluster_admin_password = None self._secret_id = None @@ -89,7 +92,9 @@ def secret_id(self, secret_id): self._secret_id = secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/start_bds_instance_details.py b/src/oci/bds/models/start_bds_instance_details.py index cacdf0ad4e..b3cd64fb1b 100644 --- a/src/oci/bds/models/start_bds_instance_details.py +++ b/src/oci/bds/models/start_bds_instance_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -43,6 +43,9 @@ def __init__(self, **kwargs): 'secret_id': 'secretId', 'start_cluster_shape_configs': 'startClusterShapeConfigs' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._cluster_admin_password = None self._secret_id = None self._start_cluster_shape_configs = None @@ -116,7 +119,9 @@ def start_cluster_shape_configs(self, start_cluster_shape_configs): self._start_cluster_shape_configs = start_cluster_shape_configs def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/stop_bds_instance_details.py b/src/oci/bds/models/stop_bds_instance_details.py index d3339c7fdf..ac3da13d94 100644 --- a/src/oci/bds/models/stop_bds_instance_details.py +++ b/src/oci/bds/models/stop_bds_instance_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -43,6 +43,9 @@ def __init__(self, **kwargs): 'cluster_admin_password': 'clusterAdminPassword', 'secret_id': 'secretId' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._is_force_stop_jobs = None self._cluster_admin_password = None self._secret_id = None @@ -120,7 +123,9 @@ def secret_id(self, secret_id): self._secret_id = secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/test_bds_metastore_configuration_details.py b/src/oci/bds/models/test_bds_metastore_configuration_details.py index c7f1b7ac15..e70f710e11 100644 --- a/src/oci/bds/models/test_bds_metastore_configuration_details.py +++ b/src/oci/bds/models/test_bds_metastore_configuration_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -37,6 +37,9 @@ def __init__(self, **kwargs): 'cluster_admin_password': 'clusterAdminPassword', 'secret_id': 'secretId' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._cluster_admin_password = None self._secret_id = None @@ -89,7 +92,9 @@ def secret_id(self, secret_id): self._secret_id = secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/test_bds_object_storage_connection_details.py b/src/oci/bds/models/test_bds_object_storage_connection_details.py index d5bccbc424..7eb54cb60e 100644 --- a/src/oci/bds/models/test_bds_object_storage_connection_details.py +++ b/src/oci/bds/models/test_bds_object_storage_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -43,6 +43,9 @@ def __init__(self, **kwargs): 'passphrase': 'passphrase', 'object_storage_region': 'objectStorageRegion' } + self._redacted_field_paths = [ + ['passphrase'], + ] self._object_storage_uri = None self._passphrase = None self._object_storage_region = None @@ -120,7 +123,9 @@ def object_storage_region(self, object_storage_region): self._object_storage_region = object_storage_region def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['passphrase']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/update_auto_scaling_configuration_details.py b/src/oci/bds/models/update_auto_scaling_configuration_details.py index d0d7ad37ab..c8a1e69627 100644 --- a/src/oci/bds/models/update_auto_scaling_configuration_details.py +++ b/src/oci/bds/models/update_auto_scaling_configuration_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -61,6 +61,9 @@ def __init__(self, **kwargs): 'policy': 'policy', 'policy_details': 'policyDetails' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._display_name = None self._is_enabled = None self._cluster_admin_password = None @@ -205,7 +208,9 @@ def policy_details(self, policy_details): self._policy_details = policy_details def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/update_bds_metastore_configuration_details.py b/src/oci/bds/models/update_bds_metastore_configuration_details.py index 694724d144..827b128a39 100644 --- a/src/oci/bds/models/update_bds_metastore_configuration_details.py +++ b/src/oci/bds/models/update_bds_metastore_configuration_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -55,6 +55,10 @@ def __init__(self, **kwargs): 'cluster_admin_password': 'clusterAdminPassword', 'secret_id': 'secretId' } + self._redacted_field_paths = [ + ['bds_api_key_passphrase'], + ['cluster_admin_password'], + ] self._display_name = None self._bds_api_key_id = None self._bds_api_key_passphrase = None @@ -182,7 +186,10 @@ def secret_id(self, secret_id): self._secret_id = secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['bds_api_key_passphrase']) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/bds/models/update_identity_configuration_details.py b/src/oci/bds/models/update_identity_configuration_details.py index 2721724abe..4527bfd002 100644 --- a/src/oci/bds/models/update_identity_configuration_details.py +++ b/src/oci/bds/models/update_identity_configuration_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190531 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -49,6 +49,9 @@ def __init__(self, **kwargs): 'upst_configuration_details': 'upstConfigurationDetails', 'iam_user_sync_configuration_details': 'iamUserSyncConfigurationDetails' } + self._redacted_field_paths = [ + ['cluster_admin_password'], + ] self._cluster_admin_password = None self._secret_id = None self._upst_configuration_details = None @@ -143,7 +146,9 @@ def iam_user_sync_configuration_details(self, iam_user_sync_configuration_detail self._iam_user_sync_configuration_details = iam_user_sync_configuration_details def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cluster_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/cloud_bridge/models/logical_unit.py b/src/oci/cloud_bridge/models/logical_unit.py index 3522564662..ca2224245e 100644 --- a/src/oci/cloud_bridge/models/logical_unit.py +++ b/src/oci/cloud_bridge/models/logical_unit.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220509 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -152,6 +152,9 @@ def __init__(self, **kwargs): 'vendor_id': 'vendorId', 'volume_group_id': 'volumeGroupId' } + self._redacted_field_paths = [ + ['password'], + ] self._address = None self._discard_max_size_in_bytes = None self._is_discard_zeroes_data = None @@ -636,7 +639,9 @@ def volume_group_id(self, volume_group_id): self._volume_group_id = volume_group_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/cloud_bridge/models/olvm_storage_domain_asset_details.py b/src/oci/cloud_bridge/models/olvm_storage_domain_asset_details.py index 668b739957..65024abdc0 100644 --- a/src/oci/cloud_bridge/models/olvm_storage_domain_asset_details.py +++ b/src/oci/cloud_bridge/models/olvm_storage_domain_asset_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220509 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -31,6 +31,11 @@ def __init__(self, **kwargs): self.attribute_map = { 'olvm_storage_domain': 'olvmStorageDomain' } + self._redacted_field_paths = [ + ['olvm_storage_domain', 'storage', 'logical_units', '*', 'password'], + ['olvm_storage_domain', 'storage', 'password'], + ['olvm_storage_domain', 'storage', 'volume_group', 'logical_units', '*', 'password'], + ] self._olvm_storage_domain = None @property @@ -54,7 +59,11 @@ def olvm_storage_domain(self, olvm_storage_domain): self._olvm_storage_domain = olvm_storage_domain def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['olvm_storage_domain', 'storage', 'logical_units', '*', 'password']) + redact_password_field(as_dict, ['olvm_storage_domain', 'storage', 'password']) + redact_password_field(as_dict, ['olvm_storage_domain', 'storage', 'volume_group', 'logical_units', '*', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/cloud_bridge/models/olvm_storage_domain_properties.py b/src/oci/cloud_bridge/models/olvm_storage_domain_properties.py index 25faa5f7a3..3fdbcc43d9 100644 --- a/src/oci/cloud_bridge/models/olvm_storage_domain_properties.py +++ b/src/oci/cloud_bridge/models/olvm_storage_domain_properties.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220509 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -265,6 +265,11 @@ def __init__(self, **kwargs): 'storage_domain_type': 'storageDomainType', 'data_centers': 'dataCenters' } + self._redacted_field_paths = [ + ['storage', 'logical_units', '*', 'password'], + ['storage', 'password'], + ['storage', 'volume_group', 'logical_units', '*', 'password'], + ] self._storage_domain_name = None self._storage_domain_description = None self._comment = None @@ -841,7 +846,11 @@ def data_centers(self, data_centers): self._data_centers = data_centers def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['storage', 'logical_units', '*', 'password']) + redact_password_field(as_dict, ['storage', 'password']) + redact_password_field(as_dict, ['storage', 'volume_group', 'logical_units', '*', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/cloud_bridge/models/olvm_template_asset_details.py b/src/oci/cloud_bridge/models/olvm_template_asset_details.py index 9c2fe04983..ab20536b85 100644 --- a/src/oci/cloud_bridge/models/olvm_template_asset_details.py +++ b/src/oci/cloud_bridge/models/olvm_template_asset_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220509 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -31,6 +31,14 @@ def __init__(self, **kwargs): self.attribute_map = { 'olvm_template': 'olvmTemplate' } + self._redacted_field_paths = [ + ['olvm_template', 'storage_domain_lease', 'storage', 'logical_units', '*', 'password'], + ['olvm_template', 'storage_domain_lease', 'storage', 'password'], + ['olvm_template', 'storage_domain_lease', 'storage', 'volume_group', 'logical_units', '*', 'password'], + ['olvm_template', 'vm', 'storage_domain_lease', 'storage', 'logical_units', '*', 'password'], + ['olvm_template', 'vm', 'storage_domain_lease', 'storage', 'password'], + ['olvm_template', 'vm', 'storage_domain_lease', 'storage', 'volume_group', 'logical_units', '*', 'password'], + ] self._olvm_template = None @property @@ -54,7 +62,14 @@ def olvm_template(self, olvm_template): self._olvm_template = olvm_template def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['olvm_template', 'storage_domain_lease', 'storage', 'logical_units', '*', 'password']) + redact_password_field(as_dict, ['olvm_template', 'storage_domain_lease', 'storage', 'password']) + redact_password_field(as_dict, ['olvm_template', 'storage_domain_lease', 'storage', 'volume_group', 'logical_units', '*', 'password']) + redact_password_field(as_dict, ['olvm_template', 'vm', 'storage_domain_lease', 'storage', 'logical_units', '*', 'password']) + redact_password_field(as_dict, ['olvm_template', 'vm', 'storage_domain_lease', 'storage', 'password']) + redact_password_field(as_dict, ['olvm_template', 'vm', 'storage_domain_lease', 'storage', 'volume_group', 'logical_units', '*', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/cloud_bridge/models/olvm_template_properties.py b/src/oci/cloud_bridge/models/olvm_template_properties.py index e81c79e755..3e7909a83b 100644 --- a/src/oci/cloud_bridge/models/olvm_template_properties.py +++ b/src/oci/cloud_bridge/models/olvm_template_properties.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220509 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -367,6 +367,14 @@ def __init__(self, **kwargs): 'is_virtio_scsi_multi_queues_enabled': 'isVirtioScsiMultiQueuesEnabled', 'vm': 'vm' } + self._redacted_field_paths = [ + ['storage_domain_lease', 'storage', 'logical_units', '*', 'password'], + ['storage_domain_lease', 'storage', 'password'], + ['storage_domain_lease', 'storage', 'volume_group', 'logical_units', '*', 'password'], + ['vm', 'storage_domain_lease', 'storage', 'logical_units', '*', 'password'], + ['vm', 'storage_domain_lease', 'storage', 'password'], + ['vm', 'storage_domain_lease', 'storage', 'volume_group', 'logical_units', '*', 'password'], + ] self._auto_pinning_policy = None self._bios = None self._comment = None @@ -1492,7 +1500,14 @@ def vm(self, vm): self._vm = vm def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['storage_domain_lease', 'storage', 'logical_units', '*', 'password']) + redact_password_field(as_dict, ['storage_domain_lease', 'storage', 'password']) + redact_password_field(as_dict, ['storage_domain_lease', 'storage', 'volume_group', 'logical_units', '*', 'password']) + redact_password_field(as_dict, ['vm', 'storage_domain_lease', 'storage', 'logical_units', '*', 'password']) + redact_password_field(as_dict, ['vm', 'storage_domain_lease', 'storage', 'password']) + redact_password_field(as_dict, ['vm', 'storage_domain_lease', 'storage', 'volume_group', 'logical_units', '*', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/cloud_bridge/models/olvm_virtual_machine.py b/src/oci/cloud_bridge/models/olvm_virtual_machine.py index 794d099e7c..7375d0a9c7 100644 --- a/src/oci/cloud_bridge/models/olvm_virtual_machine.py +++ b/src/oci/cloud_bridge/models/olvm_virtual_machine.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220509 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -427,6 +427,11 @@ def __init__(self, **kwargs): 'virtio_scsi_multi_queues': 'virtioScsiMultiQueues', 'is_virtio_scsi_multi_queues_enabled': 'isVirtioScsiMultiQueuesEnabled' } + self._redacted_field_paths = [ + ['storage_domain_lease', 'storage', 'logical_units', '*', 'password'], + ['storage_domain_lease', 'storage', 'password'], + ['storage_domain_lease', 'storage', 'volume_group', 'logical_units', '*', 'password'], + ] self._auto_pinning_policy = None self._bios = None self._comment = None @@ -1802,7 +1807,11 @@ def is_virtio_scsi_multi_queues_enabled(self, is_virtio_scsi_multi_queues_enable self._is_virtio_scsi_multi_queues_enabled = is_virtio_scsi_multi_queues_enabled def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['storage_domain_lease', 'storage', 'logical_units', '*', 'password']) + redact_password_field(as_dict, ['storage_domain_lease', 'storage', 'password']) + redact_password_field(as_dict, ['storage_domain_lease', 'storage', 'volume_group', 'logical_units', '*', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/cloud_bridge/models/storage.py b/src/oci/cloud_bridge/models/storage.py index f5b2c83e4f..4ee709b9f6 100644 --- a/src/oci/cloud_bridge/models/storage.py +++ b/src/oci/cloud_bridge/models/storage.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220509 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -213,6 +213,11 @@ def __init__(self, **kwargs): 'vfs_type': 'vfsType', 'volume_group': 'volumeGroup' } + self._redacted_field_paths = [ + ['logical_units', '*', 'password'], + ['password'], + ['volume_group', 'logical_units', '*', 'password'], + ] self._id = None self._address = None self._comment = None @@ -750,7 +755,11 @@ def volume_group(self, volume_group): self._volume_group = volume_group def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['logical_units', '*', 'password']) + redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['volume_group', 'logical_units', '*', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/cloud_bridge/models/volume_group.py b/src/oci/cloud_bridge/models/volume_group.py index 1cd8eb04bd..1b991afc36 100644 --- a/src/oci/cloud_bridge/models/volume_group.py +++ b/src/oci/cloud_bridge/models/volume_group.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220509 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -37,6 +37,9 @@ def __init__(self, **kwargs): 'id': 'id', 'logical_units': 'logicalUnits' } + self._redacted_field_paths = [ + ['logical_units', '*', 'password'], + ] self._id = None self._logical_units = None @@ -89,7 +92,9 @@ def logical_units(self, logical_units): self._logical_units = logical_units def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['logical_units', '*', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/cloud_migrations/models/logical_unit.py b/src/oci/cloud_migrations/models/logical_unit.py index 0a7cca0ca6..161d7dc1fa 100644 --- a/src/oci/cloud_migrations/models/logical_unit.py +++ b/src/oci/cloud_migrations/models/logical_unit.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220919 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -152,6 +152,9 @@ def __init__(self, **kwargs): 'vendor_id': 'vendorId', 'volume_group_id': 'volumeGroupId' } + self._redacted_field_paths = [ + ['password'], + ] self._address = None self._discard_max_size_in_bytes = None self._is_discard_zeroes_data = None @@ -636,7 +639,9 @@ def volume_group_id(self, volume_group_id): self._volume_group_id = volume_group_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/cloud_migrations/models/olvm_storage_domain_asset_details.py b/src/oci/cloud_migrations/models/olvm_storage_domain_asset_details.py index cfd6367d76..67883ad9e0 100644 --- a/src/oci/cloud_migrations/models/olvm_storage_domain_asset_details.py +++ b/src/oci/cloud_migrations/models/olvm_storage_domain_asset_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220919 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -31,6 +31,11 @@ def __init__(self, **kwargs): self.attribute_map = { 'olvm_storage_domain': 'olvmStorageDomain' } + self._redacted_field_paths = [ + ['olvm_storage_domain', 'storage', 'logical_units', '*', 'password'], + ['olvm_storage_domain', 'storage', 'password'], + ['olvm_storage_domain', 'storage', 'volume_group', 'logical_units', '*', 'password'], + ] self._olvm_storage_domain = None @property @@ -54,7 +59,11 @@ def olvm_storage_domain(self, olvm_storage_domain): self._olvm_storage_domain = olvm_storage_domain def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['olvm_storage_domain', 'storage', 'logical_units', '*', 'password']) + redact_password_field(as_dict, ['olvm_storage_domain', 'storage', 'password']) + redact_password_field(as_dict, ['olvm_storage_domain', 'storage', 'volume_group', 'logical_units', '*', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/cloud_migrations/models/olvm_storage_domain_properties.py b/src/oci/cloud_migrations/models/olvm_storage_domain_properties.py index fcd8434482..6488fd7501 100644 --- a/src/oci/cloud_migrations/models/olvm_storage_domain_properties.py +++ b/src/oci/cloud_migrations/models/olvm_storage_domain_properties.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220919 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -265,6 +265,11 @@ def __init__(self, **kwargs): 'storage_domain_type': 'storageDomainType', 'data_centers': 'dataCenters' } + self._redacted_field_paths = [ + ['storage', 'logical_units', '*', 'password'], + ['storage', 'password'], + ['storage', 'volume_group', 'logical_units', '*', 'password'], + ] self._storage_domain_name = None self._storage_domain_description = None self._comment = None @@ -841,7 +846,11 @@ def data_centers(self, data_centers): self._data_centers = data_centers def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['storage', 'logical_units', '*', 'password']) + redact_password_field(as_dict, ['storage', 'password']) + redact_password_field(as_dict, ['storage', 'volume_group', 'logical_units', '*', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/cloud_migrations/models/olvm_template_asset_details.py b/src/oci/cloud_migrations/models/olvm_template_asset_details.py index f8a4c08339..0eb46d99c7 100644 --- a/src/oci/cloud_migrations/models/olvm_template_asset_details.py +++ b/src/oci/cloud_migrations/models/olvm_template_asset_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220919 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -31,6 +31,14 @@ def __init__(self, **kwargs): self.attribute_map = { 'olvm_template': 'olvmTemplate' } + self._redacted_field_paths = [ + ['olvm_template', 'storage_domain_lease', 'storage', 'logical_units', '*', 'password'], + ['olvm_template', 'storage_domain_lease', 'storage', 'password'], + ['olvm_template', 'storage_domain_lease', 'storage', 'volume_group', 'logical_units', '*', 'password'], + ['olvm_template', 'vm', 'storage_domain_lease', 'storage', 'logical_units', '*', 'password'], + ['olvm_template', 'vm', 'storage_domain_lease', 'storage', 'password'], + ['olvm_template', 'vm', 'storage_domain_lease', 'storage', 'volume_group', 'logical_units', '*', 'password'], + ] self._olvm_template = None @property @@ -54,7 +62,14 @@ def olvm_template(self, olvm_template): self._olvm_template = olvm_template def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['olvm_template', 'storage_domain_lease', 'storage', 'logical_units', '*', 'password']) + redact_password_field(as_dict, ['olvm_template', 'storage_domain_lease', 'storage', 'password']) + redact_password_field(as_dict, ['olvm_template', 'storage_domain_lease', 'storage', 'volume_group', 'logical_units', '*', 'password']) + redact_password_field(as_dict, ['olvm_template', 'vm', 'storage_domain_lease', 'storage', 'logical_units', '*', 'password']) + redact_password_field(as_dict, ['olvm_template', 'vm', 'storage_domain_lease', 'storage', 'password']) + redact_password_field(as_dict, ['olvm_template', 'vm', 'storage_domain_lease', 'storage', 'volume_group', 'logical_units', '*', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/cloud_migrations/models/olvm_template_properties.py b/src/oci/cloud_migrations/models/olvm_template_properties.py index 98ef906899..7ea95236e8 100644 --- a/src/oci/cloud_migrations/models/olvm_template_properties.py +++ b/src/oci/cloud_migrations/models/olvm_template_properties.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220919 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -367,6 +367,14 @@ def __init__(self, **kwargs): 'is_virtio_scsi_multi_queues_enabled': 'isVirtioScsiMultiQueuesEnabled', 'vm': 'vm' } + self._redacted_field_paths = [ + ['storage_domain_lease', 'storage', 'logical_units', '*', 'password'], + ['storage_domain_lease', 'storage', 'password'], + ['storage_domain_lease', 'storage', 'volume_group', 'logical_units', '*', 'password'], + ['vm', 'storage_domain_lease', 'storage', 'logical_units', '*', 'password'], + ['vm', 'storage_domain_lease', 'storage', 'password'], + ['vm', 'storage_domain_lease', 'storage', 'volume_group', 'logical_units', '*', 'password'], + ] self._auto_pinning_policy = None self._bios = None self._comment = None @@ -1492,7 +1500,14 @@ def vm(self, vm): self._vm = vm def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['storage_domain_lease', 'storage', 'logical_units', '*', 'password']) + redact_password_field(as_dict, ['storage_domain_lease', 'storage', 'password']) + redact_password_field(as_dict, ['storage_domain_lease', 'storage', 'volume_group', 'logical_units', '*', 'password']) + redact_password_field(as_dict, ['vm', 'storage_domain_lease', 'storage', 'logical_units', '*', 'password']) + redact_password_field(as_dict, ['vm', 'storage_domain_lease', 'storage', 'password']) + redact_password_field(as_dict, ['vm', 'storage_domain_lease', 'storage', 'volume_group', 'logical_units', '*', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/cloud_migrations/models/olvm_virtual_machine.py b/src/oci/cloud_migrations/models/olvm_virtual_machine.py index 17c272eae2..d10134281a 100644 --- a/src/oci/cloud_migrations/models/olvm_virtual_machine.py +++ b/src/oci/cloud_migrations/models/olvm_virtual_machine.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220919 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -427,6 +427,11 @@ def __init__(self, **kwargs): 'virtio_scsi_multi_queues': 'virtioScsiMultiQueues', 'is_virtio_scsi_multi_queues_enabled': 'isVirtioScsiMultiQueuesEnabled' } + self._redacted_field_paths = [ + ['storage_domain_lease', 'storage', 'logical_units', '*', 'password'], + ['storage_domain_lease', 'storage', 'password'], + ['storage_domain_lease', 'storage', 'volume_group', 'logical_units', '*', 'password'], + ] self._auto_pinning_policy = None self._bios = None self._comment = None @@ -1802,7 +1807,11 @@ def is_virtio_scsi_multi_queues_enabled(self, is_virtio_scsi_multi_queues_enable self._is_virtio_scsi_multi_queues_enabled = is_virtio_scsi_multi_queues_enabled def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['storage_domain_lease', 'storage', 'logical_units', '*', 'password']) + redact_password_field(as_dict, ['storage_domain_lease', 'storage', 'password']) + redact_password_field(as_dict, ['storage_domain_lease', 'storage', 'volume_group', 'logical_units', '*', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/cloud_migrations/models/storage.py b/src/oci/cloud_migrations/models/storage.py index ab80e17e70..ab8c692ac3 100644 --- a/src/oci/cloud_migrations/models/storage.py +++ b/src/oci/cloud_migrations/models/storage.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220919 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -213,6 +213,11 @@ def __init__(self, **kwargs): 'vfs_type': 'vfsType', 'volume_group': 'volumeGroup' } + self._redacted_field_paths = [ + ['logical_units', '*', 'password'], + ['password'], + ['volume_group', 'logical_units', '*', 'password'], + ] self._id = None self._address = None self._comment = None @@ -750,7 +755,11 @@ def volume_group(self, volume_group): self._volume_group = volume_group def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['logical_units', '*', 'password']) + redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['volume_group', 'logical_units', '*', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/cloud_migrations/models/volume_group.py b/src/oci/cloud_migrations/models/volume_group.py index e41581eb22..30bf6cecb2 100644 --- a/src/oci/cloud_migrations/models/volume_group.py +++ b/src/oci/cloud_migrations/models/volume_group.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220919 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -37,6 +37,9 @@ def __init__(self, **kwargs): 'id': 'id', 'logical_units': 'logicalUnits' } + self._redacted_field_paths = [ + ['logical_units', '*', 'password'], + ] self._id = None self._logical_units = None @@ -89,7 +92,9 @@ def logical_units(self, logical_units): self._logical_units = logical_units def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['logical_units', '*', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/container_instances/models/create_basic_image_pull_secret_details.py b/src/oci/container_instances/models/create_basic_image_pull_secret_details.py index 18db8652f1..e6beaa8e41 100644 --- a/src/oci/container_instances/models/create_basic_image_pull_secret_details.py +++ b/src/oci/container_instances/models/create_basic_image_pull_secret_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20210415 from .create_image_pull_secret_details import CreateImagePullSecretDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -51,6 +51,9 @@ def __init__(self, **kwargs): 'username': 'username', 'password': 'password' } + self._redacted_field_paths = [ + ['password'], + ] self._secret_type = None self._registry_endpoint = None self._username = None @@ -106,7 +109,9 @@ def password(self, password): self._password = password def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/core/models/__init__.py b/src/oci/core/models/__init__.py index 1600865931..0abeb00f71 100644 --- a/src/oci/core/models/__init__.py +++ b/src/oci/core/models/__init__.py @@ -446,6 +446,7 @@ from .instance_source_via_boot_volume_details import InstanceSourceViaBootVolumeDetails from .instance_source_via_image_details import InstanceSourceViaImageDetails from .instance_summary import InstanceSummary +from .instances import Instances from .intel_icelake_bm_launch_instance_platform_config import IntelIcelakeBmLaunchInstancePlatformConfig from .intel_icelake_bm_platform_config import IntelIcelakeBmPlatformConfig from .intel_skylake_bm_launch_instance_platform_config import IntelSkylakeBmLaunchInstancePlatformConfig @@ -523,6 +524,7 @@ from .preemptible_instance_config_details import PreemptibleInstanceConfigDetails from .preemption_action import PreemptionAction from .private_ip import PrivateIp +from .provider_remote_region_name import ProviderRemoteRegionName from .public_ip import PublicIp from .public_ip_pool import PublicIpPool from .public_ip_pool_collection import PublicIpPoolCollection @@ -540,6 +542,7 @@ from .remove_vcn_cidr_details import RemoveVcnCidrDetails from .remove_vcn_ipv6_cidr_details import RemoveVcnIpv6CidrDetails from .reset_action_details import ResetActionDetails +from .retention_duration import RetentionDuration from .route_rule import RouteRule from .route_table import RouteTable from .security_list import SecurityList @@ -1157,6 +1160,7 @@ "InstanceSourceViaBootVolumeDetails": InstanceSourceViaBootVolumeDetails, "InstanceSourceViaImageDetails": InstanceSourceViaImageDetails, "InstanceSummary": InstanceSummary, + "Instances": Instances, "IntelIcelakeBmLaunchInstancePlatformConfig": IntelIcelakeBmLaunchInstancePlatformConfig, "IntelIcelakeBmPlatformConfig": IntelIcelakeBmPlatformConfig, "IntelSkylakeBmLaunchInstancePlatformConfig": IntelSkylakeBmLaunchInstancePlatformConfig, @@ -1234,6 +1238,7 @@ "PreemptibleInstanceConfigDetails": PreemptibleInstanceConfigDetails, "PreemptionAction": PreemptionAction, "PrivateIp": PrivateIp, + "ProviderRemoteRegionName": ProviderRemoteRegionName, "PublicIp": PublicIp, "PublicIpPool": PublicIpPool, "PublicIpPoolCollection": PublicIpPoolCollection, @@ -1251,6 +1256,7 @@ "RemoveVcnCidrDetails": RemoveVcnCidrDetails, "RemoveVcnIpv6CidrDetails": RemoveVcnIpv6CidrDetails, "ResetActionDetails": ResetActionDetails, + "RetentionDuration": RetentionDuration, "RouteRule": RouteRule, "RouteTable": RouteTable, "SecurityList": SecurityList, diff --git a/src/oci/core/models/boot_volume_backup.py b/src/oci/core/models/boot_volume_backup.py index 88a8f67b02..4ac74a12a5 100644 --- a/src/oci/core/models/boot_volume_backup.py +++ b/src/oci/core/models/boot_volume_backup.py @@ -150,6 +150,30 @@ def __init__(self, **kwargs): The value to assign to the unique_size_in_gbs property of this BootVolumeBackup. :type unique_size_in_gbs: int + :param time_retention_expires_at: + The value to assign to the time_retention_expires_at property of this BootVolumeBackup. + :type time_retention_expires_at: datetime + + :param retention_period: + The value to assign to the retention_period property of this BootVolumeBackup. + :type retention_period: oci.core.models.RetentionDuration + + :param is_prevent_deletion_enabled: + The value to assign to the is_prevent_deletion_enabled property of this BootVolumeBackup. + :type is_prevent_deletion_enabled: bool + + :param is_retention_lock_enabled: + The value to assign to the is_retention_lock_enabled property of this BootVolumeBackup. + :type is_retention_lock_enabled: bool + + :param is_indefinite_retention_enabled: + The value to assign to the is_indefinite_retention_enabled property of this BootVolumeBackup. + :type is_indefinite_retention_enabled: bool + + :param volume_group_backup_id: + The value to assign to the volume_group_backup_id property of this BootVolumeBackup. + :type volume_group_backup_id: str + """ self.swagger_types = { 'boot_volume_id': 'str', @@ -169,7 +193,13 @@ def __init__(self, **kwargs): 'time_created': 'datetime', 'time_request_received': 'datetime', 'type': 'str', - 'unique_size_in_gbs': 'int' + 'unique_size_in_gbs': 'int', + 'time_retention_expires_at': 'datetime', + 'retention_period': 'RetentionDuration', + 'is_prevent_deletion_enabled': 'bool', + 'is_retention_lock_enabled': 'bool', + 'is_indefinite_retention_enabled': 'bool', + 'volume_group_backup_id': 'str' } self.attribute_map = { 'boot_volume_id': 'bootVolumeId', @@ -189,7 +219,13 @@ def __init__(self, **kwargs): 'time_created': 'timeCreated', 'time_request_received': 'timeRequestReceived', 'type': 'type', - 'unique_size_in_gbs': 'uniqueSizeInGBs' + 'unique_size_in_gbs': 'uniqueSizeInGBs', + 'time_retention_expires_at': 'timeRetentionExpiresAt', + 'retention_period': 'retentionPeriod', + 'is_prevent_deletion_enabled': 'isPreventDeletionEnabled', + 'is_retention_lock_enabled': 'isRetentionLockEnabled', + 'is_indefinite_retention_enabled': 'isIndefiniteRetentionEnabled', + 'volume_group_backup_id': 'volumeGroupBackupId' } self._boot_volume_id = None self._compartment_id = None @@ -209,6 +245,12 @@ def __init__(self, **kwargs): self._time_request_received = None self._type = None self._unique_size_in_gbs = None + self._time_retention_expires_at = None + self._retention_period = None + self._is_prevent_deletion_enabled = None + self._is_retention_lock_enabled = None + self._is_indefinite_retention_enabled = None + self._volume_group_backup_id = None @property def boot_volume_id(self): @@ -720,6 +762,146 @@ def unique_size_in_gbs(self, unique_size_in_gbs): """ self._unique_size_in_gbs = unique_size_in_gbs + @property + def time_retention_expires_at(self): + """ + Gets the time_retention_expires_at of this BootVolumeBackup. + The date and time when a backup\u2019s retention period ends and it is set to expire. This is an optional field. If it is not specified, it is set to null, no retention period will be applied to the backups. + + + :return: The time_retention_expires_at of this BootVolumeBackup. + :rtype: datetime + """ + return self._time_retention_expires_at + + @time_retention_expires_at.setter + def time_retention_expires_at(self, time_retention_expires_at): + """ + Sets the time_retention_expires_at of this BootVolumeBackup. + The date and time when a backup\u2019s retention period ends and it is set to expire. This is an optional field. If it is not specified, it is set to null, no retention period will be applied to the backups. + + + :param time_retention_expires_at: The time_retention_expires_at of this BootVolumeBackup. + :type: datetime + """ + self._time_retention_expires_at = time_retention_expires_at + + @property + def retention_period(self): + """ + Gets the retention_period of this BootVolumeBackup. + + :return: The retention_period of this BootVolumeBackup. + :rtype: oci.core.models.RetentionDuration + """ + return self._retention_period + + @retention_period.setter + def retention_period(self, retention_period): + """ + Sets the retention_period of this BootVolumeBackup. + + :param retention_period: The retention_period of this BootVolumeBackup. + :type: oci.core.models.RetentionDuration + """ + self._retention_period = retention_period + + @property + def is_prevent_deletion_enabled(self): + """ + Gets the is_prevent_deletion_enabled of this BootVolumeBackup. + Prevent backups from being deleted during the configured retention period. This is an optional field. If it is not specified, it is set to null, prevent deletion will not be applied to the backups. + + + :return: The is_prevent_deletion_enabled of this BootVolumeBackup. + :rtype: bool + """ + return self._is_prevent_deletion_enabled + + @is_prevent_deletion_enabled.setter + def is_prevent_deletion_enabled(self, is_prevent_deletion_enabled): + """ + Sets the is_prevent_deletion_enabled of this BootVolumeBackup. + Prevent backups from being deleted during the configured retention period. This is an optional field. If it is not specified, it is set to null, prevent deletion will not be applied to the backups. + + + :param is_prevent_deletion_enabled: The is_prevent_deletion_enabled of this BootVolumeBackup. + :type: bool + """ + self._is_prevent_deletion_enabled = is_prevent_deletion_enabled + + @property + def is_retention_lock_enabled(self): + """ + Gets the is_retention_lock_enabled of this BootVolumeBackup. + feature that prevents deletion or alteration of backup data for a specified period to ensure data protection and regulatory compliance. This is an optional field. If it is not specified, it is set to null, no retention lock will be applied to the backups. This feature should be used in conjunction with the retention-period field. + + + :return: The is_retention_lock_enabled of this BootVolumeBackup. + :rtype: bool + """ + return self._is_retention_lock_enabled + + @is_retention_lock_enabled.setter + def is_retention_lock_enabled(self, is_retention_lock_enabled): + """ + Sets the is_retention_lock_enabled of this BootVolumeBackup. + feature that prevents deletion or alteration of backup data for a specified period to ensure data protection and regulatory compliance. This is an optional field. If it is not specified, it is set to null, no retention lock will be applied to the backups. This feature should be used in conjunction with the retention-period field. + + + :param is_retention_lock_enabled: The is_retention_lock_enabled of this BootVolumeBackup. + :type: bool + """ + self._is_retention_lock_enabled = is_retention_lock_enabled + + @property + def is_indefinite_retention_enabled(self): + """ + Gets the is_indefinite_retention_enabled of this BootVolumeBackup. + feature that preserves backup data from modification or deletion to ensure it remains available for legal or regulatory investigations or litigation, regardless of standard retention policies. This is an optional field. If it is not specified, it is set to null, no legal hold will be applied to the backups. + + + :return: The is_indefinite_retention_enabled of this BootVolumeBackup. + :rtype: bool + """ + return self._is_indefinite_retention_enabled + + @is_indefinite_retention_enabled.setter + def is_indefinite_retention_enabled(self, is_indefinite_retention_enabled): + """ + Sets the is_indefinite_retention_enabled of this BootVolumeBackup. + feature that preserves backup data from modification or deletion to ensure it remains available for legal or regulatory investigations or litigation, regardless of standard retention policies. This is an optional field. If it is not specified, it is set to null, no legal hold will be applied to the backups. + + + :param is_indefinite_retention_enabled: The is_indefinite_retention_enabled of this BootVolumeBackup. + :type: bool + """ + self._is_indefinite_retention_enabled = is_indefinite_retention_enabled + + @property + def volume_group_backup_id(self): + """ + Gets the volume_group_backup_id of this BootVolumeBackup. + The OCID of the volume group backup associated with the backup. This is an optional field. If it is not present in the response, the backup does not belong to a volume group. + + + :return: The volume_group_backup_id of this BootVolumeBackup. + :rtype: str + """ + return self._volume_group_backup_id + + @volume_group_backup_id.setter + def volume_group_backup_id(self, volume_group_backup_id): + """ + Sets the volume_group_backup_id of this BootVolumeBackup. + The OCID of the volume group backup associated with the backup. This is an optional field. If it is not present in the response, the backup does not belong to a volume group. + + + :param volume_group_backup_id: The volume_group_backup_id of this BootVolumeBackup. + :type: str + """ + self._volume_group_backup_id = volume_group_backup_id + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/core/models/create_boot_volume_backup_details.py b/src/oci/core/models/create_boot_volume_backup_details.py index 236a63de92..d53d4800b5 100644 --- a/src/oci/core/models/create_boot_volume_backup_details.py +++ b/src/oci/core/models/create_boot_volume_backup_details.py @@ -53,6 +53,22 @@ def __init__(self, **kwargs): The value to assign to the kms_key_id property of this CreateBootVolumeBackupDetails. :type kms_key_id: str + :param retention_period: + The value to assign to the retention_period property of this CreateBootVolumeBackupDetails. + :type retention_period: oci.core.models.RetentionDuration + + :param is_prevent_deletion_enabled: + The value to assign to the is_prevent_deletion_enabled property of this CreateBootVolumeBackupDetails. + :type is_prevent_deletion_enabled: bool + + :param is_retention_lock_enabled: + The value to assign to the is_retention_lock_enabled property of this CreateBootVolumeBackupDetails. + :type is_retention_lock_enabled: bool + + :param is_indefinite_retention_enabled: + The value to assign to the is_indefinite_retention_enabled property of this CreateBootVolumeBackupDetails. + :type is_indefinite_retention_enabled: bool + """ self.swagger_types = { 'boot_volume_id': 'str', @@ -60,7 +76,11 @@ def __init__(self, **kwargs): 'display_name': 'str', 'freeform_tags': 'dict(str, str)', 'type': 'str', - 'kms_key_id': 'str' + 'kms_key_id': 'str', + 'retention_period': 'RetentionDuration', + 'is_prevent_deletion_enabled': 'bool', + 'is_retention_lock_enabled': 'bool', + 'is_indefinite_retention_enabled': 'bool' } self.attribute_map = { 'boot_volume_id': 'bootVolumeId', @@ -68,7 +88,11 @@ def __init__(self, **kwargs): 'display_name': 'displayName', 'freeform_tags': 'freeformTags', 'type': 'type', - 'kms_key_id': 'kmsKeyId' + 'kms_key_id': 'kmsKeyId', + 'retention_period': 'retentionPeriod', + 'is_prevent_deletion_enabled': 'isPreventDeletionEnabled', + 'is_retention_lock_enabled': 'isRetentionLockEnabled', + 'is_indefinite_retention_enabled': 'isIndefiniteRetentionEnabled' } self._boot_volume_id = None self._defined_tags = None @@ -76,6 +100,10 @@ def __init__(self, **kwargs): self._freeform_tags = None self._type = None self._kms_key_id = None + self._retention_period = None + self._is_prevent_deletion_enabled = None + self._is_retention_lock_enabled = None + self._is_indefinite_retention_enabled = None @property def boot_volume_id(self): @@ -262,6 +290,98 @@ def kms_key_id(self, kms_key_id): """ self._kms_key_id = kms_key_id + @property + def retention_period(self): + """ + Gets the retention_period of this CreateBootVolumeBackupDetails. + + :return: The retention_period of this CreateBootVolumeBackupDetails. + :rtype: oci.core.models.RetentionDuration + """ + return self._retention_period + + @retention_period.setter + def retention_period(self, retention_period): + """ + Sets the retention_period of this CreateBootVolumeBackupDetails. + + :param retention_period: The retention_period of this CreateBootVolumeBackupDetails. + :type: oci.core.models.RetentionDuration + """ + self._retention_period = retention_period + + @property + def is_prevent_deletion_enabled(self): + """ + Gets the is_prevent_deletion_enabled of this CreateBootVolumeBackupDetails. + Prevent backups from being deleted during the configured retention period. This is an optional field. If it is not specified, it is set to null, prevent deletion will not be applied to the backups. + + + :return: The is_prevent_deletion_enabled of this CreateBootVolumeBackupDetails. + :rtype: bool + """ + return self._is_prevent_deletion_enabled + + @is_prevent_deletion_enabled.setter + def is_prevent_deletion_enabled(self, is_prevent_deletion_enabled): + """ + Sets the is_prevent_deletion_enabled of this CreateBootVolumeBackupDetails. + Prevent backups from being deleted during the configured retention period. This is an optional field. If it is not specified, it is set to null, prevent deletion will not be applied to the backups. + + + :param is_prevent_deletion_enabled: The is_prevent_deletion_enabled of this CreateBootVolumeBackupDetails. + :type: bool + """ + self._is_prevent_deletion_enabled = is_prevent_deletion_enabled + + @property + def is_retention_lock_enabled(self): + """ + Gets the is_retention_lock_enabled of this CreateBootVolumeBackupDetails. + feature that prevents deletion or alteration of backup data for a specified period to ensure data protection and regulatory compliance. This is an optional field. If it is not specified, it is set to null, no retention lock will be applied to the backups. This feature should be used in conjunction with the retention-period field. + + + :return: The is_retention_lock_enabled of this CreateBootVolumeBackupDetails. + :rtype: bool + """ + return self._is_retention_lock_enabled + + @is_retention_lock_enabled.setter + def is_retention_lock_enabled(self, is_retention_lock_enabled): + """ + Sets the is_retention_lock_enabled of this CreateBootVolumeBackupDetails. + feature that prevents deletion or alteration of backup data for a specified period to ensure data protection and regulatory compliance. This is an optional field. If it is not specified, it is set to null, no retention lock will be applied to the backups. This feature should be used in conjunction with the retention-period field. + + + :param is_retention_lock_enabled: The is_retention_lock_enabled of this CreateBootVolumeBackupDetails. + :type: bool + """ + self._is_retention_lock_enabled = is_retention_lock_enabled + + @property + def is_indefinite_retention_enabled(self): + """ + Gets the is_indefinite_retention_enabled of this CreateBootVolumeBackupDetails. + feature that preserves backup data from modification or deletion to ensure it remains available for legal or regulatory investigations or litigation, regardless of standard retention policies. This is an optional field. If it is not specified, it is set to null, no legal hold will be applied to the backups. + + + :return: The is_indefinite_retention_enabled of this CreateBootVolumeBackupDetails. + :rtype: bool + """ + return self._is_indefinite_retention_enabled + + @is_indefinite_retention_enabled.setter + def is_indefinite_retention_enabled(self, is_indefinite_retention_enabled): + """ + Sets the is_indefinite_retention_enabled of this CreateBootVolumeBackupDetails. + feature that preserves backup data from modification or deletion to ensure it remains available for legal or regulatory investigations or litigation, regardless of standard retention policies. This is an optional field. If it is not specified, it is set to null, no legal hold will be applied to the backups. + + + :param is_indefinite_retention_enabled: The is_indefinite_retention_enabled of this CreateBootVolumeBackupDetails. + :type: bool + """ + self._is_indefinite_retention_enabled = is_indefinite_retention_enabled + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/core/models/create_dedicated_vm_host_details.py b/src/oci/core/models/create_dedicated_vm_host_details.py index 691d58f069..5130ff84ce 100644 --- a/src/oci/core/models/create_dedicated_vm_host_details.py +++ b/src/oci/core/models/create_dedicated_vm_host_details.py @@ -60,6 +60,10 @@ def __init__(self, **kwargs): The value to assign to the is_memory_encryption_enabled property of this CreateDedicatedVmHostDetails. :type is_memory_encryption_enabled: bool + :param is_burstable: + The value to assign to the is_burstable property of this CreateDedicatedVmHostDetails. + :type is_burstable: bool + """ self.swagger_types = { 'availability_domain': 'str', @@ -71,7 +75,8 @@ def __init__(self, **kwargs): 'freeform_tags': 'dict(str, str)', 'placement_constraint_details': 'PlacementConstraintDetails', 'capacity_config': 'str', - 'is_memory_encryption_enabled': 'bool' + 'is_memory_encryption_enabled': 'bool', + 'is_burstable': 'bool' } self.attribute_map = { 'availability_domain': 'availabilityDomain', @@ -83,7 +88,8 @@ def __init__(self, **kwargs): 'freeform_tags': 'freeformTags', 'placement_constraint_details': 'placementConstraintDetails', 'capacity_config': 'capacityConfig', - 'is_memory_encryption_enabled': 'isMemoryEncryptionEnabled' + 'is_memory_encryption_enabled': 'isMemoryEncryptionEnabled', + 'is_burstable': 'isBurstable' } self._availability_domain = None self._compartment_id = None @@ -95,6 +101,7 @@ def __init__(self, **kwargs): self._placement_constraint_details = None self._capacity_config = None self._is_memory_encryption_enabled = None + self._is_burstable = None @property def availability_domain(self): @@ -384,6 +391,30 @@ def is_memory_encryption_enabled(self, is_memory_encryption_enabled): """ self._is_memory_encryption_enabled = is_memory_encryption_enabled + @property + def is_burstable(self): + """ + Gets the is_burstable of this CreateDedicatedVmHostDetails. + Specifies if the Dedicated Virtual Machine Host (DVMH) is restricted to running only Burstable VMs. If `true`, only Burstable VMs can be launched. If `false`, Burstable VMs cannot be launched. + + + :return: The is_burstable of this CreateDedicatedVmHostDetails. + :rtype: bool + """ + return self._is_burstable + + @is_burstable.setter + def is_burstable(self, is_burstable): + """ + Sets the is_burstable of this CreateDedicatedVmHostDetails. + Specifies if the Dedicated Virtual Machine Host (DVMH) is restricted to running only Burstable VMs. If `true`, only Burstable VMs can be launched. If `false`, Burstable VMs cannot be launched. + + + :param is_burstable: The is_burstable of this CreateDedicatedVmHostDetails. + :type: bool + """ + self._is_burstable = is_burstable + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/core/models/create_virtual_circuit_details.py b/src/oci/core/models/create_virtual_circuit_details.py index e8d1f448b7..56444c9d16 100644 --- a/src/oci/core/models/create_virtual_circuit_details.py +++ b/src/oci/core/models/create_virtual_circuit_details.py @@ -156,6 +156,14 @@ def __init__(self, **kwargs): Allowed values for this property are: "MTU_1500", "MTU_9000" :type ip_mtu: str + :param provider_remote_region: + The value to assign to the provider_remote_region property of this CreateVirtualCircuitDetails. + :type provider_remote_region: str + + :param remote_account_id: + The value to assign to the remote_account_id property of this CreateVirtualCircuitDetails. + :type remote_account_id: str + :param traffic_mode: The value to assign to the traffic_mode property of this CreateVirtualCircuitDetails. Allowed values for this property are: "NORMAL", "DRAIN" @@ -184,6 +192,8 @@ def __init__(self, **kwargs): 'region': 'str', 'type': 'str', 'ip_mtu': 'str', + 'provider_remote_region': 'str', + 'remote_account_id': 'str', 'traffic_mode': 'str' } self.attribute_map = { @@ -208,6 +218,8 @@ def __init__(self, **kwargs): 'region': 'region', 'type': 'type', 'ip_mtu': 'ipMtu', + 'provider_remote_region': 'providerRemoteRegion', + 'remote_account_id': 'remoteAccountId', 'traffic_mode': 'trafficMode' } self._bandwidth_shape_name = None @@ -231,6 +243,8 @@ def __init__(self, **kwargs): self._region = None self._type = None self._ip_mtu = None + self._provider_remote_region = None + self._remote_account_id = None self._traffic_mode = None @property @@ -862,6 +876,56 @@ def ip_mtu(self, ip_mtu): ) self._ip_mtu = ip_mtu + @property + def provider_remote_region(self): + """ + Gets the provider_remote_region of this CreateVirtualCircuitDetails. + The OCI's FastConnect MultiCloud Provider/Partner remote region name associated with the OCI region. + To get the list of associated provider remote region use the ListProviderRemoteRegions operation + + + :return: The provider_remote_region of this CreateVirtualCircuitDetails. + :rtype: str + """ + return self._provider_remote_region + + @provider_remote_region.setter + def provider_remote_region(self, provider_remote_region): + """ + Sets the provider_remote_region of this CreateVirtualCircuitDetails. + The OCI's FastConnect MultiCloud Provider/Partner remote region name associated with the OCI region. + To get the list of associated provider remote region use the ListProviderRemoteRegions operation + + + :param provider_remote_region: The provider_remote_region of this CreateVirtualCircuitDetails. + :type: str + """ + self._provider_remote_region = provider_remote_region + + @property + def remote_account_id(self): + """ + Gets the remote_account_id of this CreateVirtualCircuitDetails. + Customer's account on Provider/Partner cloud (AWS, GCP or any other) + + + :return: The remote_account_id of this CreateVirtualCircuitDetails. + :rtype: str + """ + return self._remote_account_id + + @remote_account_id.setter + def remote_account_id(self, remote_account_id): + """ + Sets the remote_account_id of this CreateVirtualCircuitDetails. + Customer's account on Provider/Partner cloud (AWS, GCP or any other) + + + :param remote_account_id: The remote_account_id of this CreateVirtualCircuitDetails. + :type: str + """ + self._remote_account_id = remote_account_id + @property def traffic_mode(self): """ diff --git a/src/oci/core/models/create_volume_backup_details.py b/src/oci/core/models/create_volume_backup_details.py index 51c7e0d893..6e8680805f 100644 --- a/src/oci/core/models/create_volume_backup_details.py +++ b/src/oci/core/models/create_volume_backup_details.py @@ -53,6 +53,22 @@ def __init__(self, **kwargs): The value to assign to the volume_id property of this CreateVolumeBackupDetails. :type volume_id: str + :param retention_period: + The value to assign to the retention_period property of this CreateVolumeBackupDetails. + :type retention_period: oci.core.models.RetentionDuration + + :param is_prevent_deletion_enabled: + The value to assign to the is_prevent_deletion_enabled property of this CreateVolumeBackupDetails. + :type is_prevent_deletion_enabled: bool + + :param is_retention_lock_enabled: + The value to assign to the is_retention_lock_enabled property of this CreateVolumeBackupDetails. + :type is_retention_lock_enabled: bool + + :param is_indefinite_retention_enabled: + The value to assign to the is_indefinite_retention_enabled property of this CreateVolumeBackupDetails. + :type is_indefinite_retention_enabled: bool + """ self.swagger_types = { 'kms_key_id': 'str', @@ -60,7 +76,11 @@ def __init__(self, **kwargs): 'display_name': 'str', 'freeform_tags': 'dict(str, str)', 'type': 'str', - 'volume_id': 'str' + 'volume_id': 'str', + 'retention_period': 'RetentionDuration', + 'is_prevent_deletion_enabled': 'bool', + 'is_retention_lock_enabled': 'bool', + 'is_indefinite_retention_enabled': 'bool' } self.attribute_map = { 'kms_key_id': 'kmsKeyId', @@ -68,7 +88,11 @@ def __init__(self, **kwargs): 'display_name': 'displayName', 'freeform_tags': 'freeformTags', 'type': 'type', - 'volume_id': 'volumeId' + 'volume_id': 'volumeId', + 'retention_period': 'retentionPeriod', + 'is_prevent_deletion_enabled': 'isPreventDeletionEnabled', + 'is_retention_lock_enabled': 'isRetentionLockEnabled', + 'is_indefinite_retention_enabled': 'isIndefiniteRetentionEnabled' } self._kms_key_id = None self._defined_tags = None @@ -76,6 +100,10 @@ def __init__(self, **kwargs): self._freeform_tags = None self._type = None self._volume_id = None + self._retention_period = None + self._is_prevent_deletion_enabled = None + self._is_retention_lock_enabled = None + self._is_indefinite_retention_enabled = None @property def kms_key_id(self): @@ -262,6 +290,98 @@ def volume_id(self, volume_id): """ self._volume_id = volume_id + @property + def retention_period(self): + """ + Gets the retention_period of this CreateVolumeBackupDetails. + + :return: The retention_period of this CreateVolumeBackupDetails. + :rtype: oci.core.models.RetentionDuration + """ + return self._retention_period + + @retention_period.setter + def retention_period(self, retention_period): + """ + Sets the retention_period of this CreateVolumeBackupDetails. + + :param retention_period: The retention_period of this CreateVolumeBackupDetails. + :type: oci.core.models.RetentionDuration + """ + self._retention_period = retention_period + + @property + def is_prevent_deletion_enabled(self): + """ + Gets the is_prevent_deletion_enabled of this CreateVolumeBackupDetails. + Prevent backups from being deleted during the configured retention period. This is an optional field. If it is not specified, it is set to null, prevent deletion will not be applied to the backups. + + + :return: The is_prevent_deletion_enabled of this CreateVolumeBackupDetails. + :rtype: bool + """ + return self._is_prevent_deletion_enabled + + @is_prevent_deletion_enabled.setter + def is_prevent_deletion_enabled(self, is_prevent_deletion_enabled): + """ + Sets the is_prevent_deletion_enabled of this CreateVolumeBackupDetails. + Prevent backups from being deleted during the configured retention period. This is an optional field. If it is not specified, it is set to null, prevent deletion will not be applied to the backups. + + + :param is_prevent_deletion_enabled: The is_prevent_deletion_enabled of this CreateVolumeBackupDetails. + :type: bool + """ + self._is_prevent_deletion_enabled = is_prevent_deletion_enabled + + @property + def is_retention_lock_enabled(self): + """ + Gets the is_retention_lock_enabled of this CreateVolumeBackupDetails. + feature that prevents deletion or alteration of backup data for a specified period to ensure data protection and regulatory compliance. This is an optional field. If it is not specified, it is set to null, no retention lock will be applied to the backups. This feature should be used in conjunction with the retention-period field. + + + :return: The is_retention_lock_enabled of this CreateVolumeBackupDetails. + :rtype: bool + """ + return self._is_retention_lock_enabled + + @is_retention_lock_enabled.setter + def is_retention_lock_enabled(self, is_retention_lock_enabled): + """ + Sets the is_retention_lock_enabled of this CreateVolumeBackupDetails. + feature that prevents deletion or alteration of backup data for a specified period to ensure data protection and regulatory compliance. This is an optional field. If it is not specified, it is set to null, no retention lock will be applied to the backups. This feature should be used in conjunction with the retention-period field. + + + :param is_retention_lock_enabled: The is_retention_lock_enabled of this CreateVolumeBackupDetails. + :type: bool + """ + self._is_retention_lock_enabled = is_retention_lock_enabled + + @property + def is_indefinite_retention_enabled(self): + """ + Gets the is_indefinite_retention_enabled of this CreateVolumeBackupDetails. + feature that preserves backup data from modification or deletion to ensure it remains available for legal or regulatory investigations or litigation, regardless of standard retention policies. This is an optional field. If it is not specified, it is set to null, no legal hold will be applied to the backups. + + + :return: The is_indefinite_retention_enabled of this CreateVolumeBackupDetails. + :rtype: bool + """ + return self._is_indefinite_retention_enabled + + @is_indefinite_retention_enabled.setter + def is_indefinite_retention_enabled(self, is_indefinite_retention_enabled): + """ + Sets the is_indefinite_retention_enabled of this CreateVolumeBackupDetails. + feature that preserves backup data from modification or deletion to ensure it remains available for legal or regulatory investigations or litigation, regardless of standard retention policies. This is an optional field. If it is not specified, it is set to null, no legal hold will be applied to the backups. + + + :param is_indefinite_retention_enabled: The is_indefinite_retention_enabled of this CreateVolumeBackupDetails. + :type: bool + """ + self._is_indefinite_retention_enabled = is_indefinite_retention_enabled + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/core/models/create_volume_group_backup_details.py b/src/oci/core/models/create_volume_group_backup_details.py index 54834e63a4..852a1a978c 100644 --- a/src/oci/core/models/create_volume_group_backup_details.py +++ b/src/oci/core/models/create_volume_group_backup_details.py @@ -53,6 +53,22 @@ def __init__(self, **kwargs): The value to assign to the volume_group_id property of this CreateVolumeGroupBackupDetails. :type volume_group_id: str + :param retention_period: + The value to assign to the retention_period property of this CreateVolumeGroupBackupDetails. + :type retention_period: oci.core.models.RetentionDuration + + :param is_prevent_deletion_enabled: + The value to assign to the is_prevent_deletion_enabled property of this CreateVolumeGroupBackupDetails. + :type is_prevent_deletion_enabled: bool + + :param is_retention_lock_enabled: + The value to assign to the is_retention_lock_enabled property of this CreateVolumeGroupBackupDetails. + :type is_retention_lock_enabled: bool + + :param is_indefinite_retention_enabled: + The value to assign to the is_indefinite_retention_enabled property of this CreateVolumeGroupBackupDetails. + :type is_indefinite_retention_enabled: bool + """ self.swagger_types = { 'compartment_id': 'str', @@ -60,7 +76,11 @@ def __init__(self, **kwargs): 'display_name': 'str', 'freeform_tags': 'dict(str, str)', 'type': 'str', - 'volume_group_id': 'str' + 'volume_group_id': 'str', + 'retention_period': 'RetentionDuration', + 'is_prevent_deletion_enabled': 'bool', + 'is_retention_lock_enabled': 'bool', + 'is_indefinite_retention_enabled': 'bool' } self.attribute_map = { 'compartment_id': 'compartmentId', @@ -68,7 +88,11 @@ def __init__(self, **kwargs): 'display_name': 'displayName', 'freeform_tags': 'freeformTags', 'type': 'type', - 'volume_group_id': 'volumeGroupId' + 'volume_group_id': 'volumeGroupId', + 'retention_period': 'retentionPeriod', + 'is_prevent_deletion_enabled': 'isPreventDeletionEnabled', + 'is_retention_lock_enabled': 'isRetentionLockEnabled', + 'is_indefinite_retention_enabled': 'isIndefiniteRetentionEnabled' } self._compartment_id = None self._defined_tags = None @@ -76,6 +100,10 @@ def __init__(self, **kwargs): self._freeform_tags = None self._type = None self._volume_group_id = None + self._retention_period = None + self._is_prevent_deletion_enabled = None + self._is_retention_lock_enabled = None + self._is_indefinite_retention_enabled = None @property def compartment_id(self): @@ -254,6 +282,98 @@ def volume_group_id(self, volume_group_id): """ self._volume_group_id = volume_group_id + @property + def retention_period(self): + """ + Gets the retention_period of this CreateVolumeGroupBackupDetails. + + :return: The retention_period of this CreateVolumeGroupBackupDetails. + :rtype: oci.core.models.RetentionDuration + """ + return self._retention_period + + @retention_period.setter + def retention_period(self, retention_period): + """ + Sets the retention_period of this CreateVolumeGroupBackupDetails. + + :param retention_period: The retention_period of this CreateVolumeGroupBackupDetails. + :type: oci.core.models.RetentionDuration + """ + self._retention_period = retention_period + + @property + def is_prevent_deletion_enabled(self): + """ + Gets the is_prevent_deletion_enabled of this CreateVolumeGroupBackupDetails. + Prevent backups from being deleted during the configured retention period. This is an optional field. If it is not specified, it is set to null, prevent deletion will not be applied to the backups. + + + :return: The is_prevent_deletion_enabled of this CreateVolumeGroupBackupDetails. + :rtype: bool + """ + return self._is_prevent_deletion_enabled + + @is_prevent_deletion_enabled.setter + def is_prevent_deletion_enabled(self, is_prevent_deletion_enabled): + """ + Sets the is_prevent_deletion_enabled of this CreateVolumeGroupBackupDetails. + Prevent backups from being deleted during the configured retention period. This is an optional field. If it is not specified, it is set to null, prevent deletion will not be applied to the backups. + + + :param is_prevent_deletion_enabled: The is_prevent_deletion_enabled of this CreateVolumeGroupBackupDetails. + :type: bool + """ + self._is_prevent_deletion_enabled = is_prevent_deletion_enabled + + @property + def is_retention_lock_enabled(self): + """ + Gets the is_retention_lock_enabled of this CreateVolumeGroupBackupDetails. + feature that prevents deletion or alteration of backup data for a specified period to ensure data protection and regulatory compliance. This is an optional field. If it is not specified, it is set to null, no retention lock will be applied to the backups. This feature should be used in conjunction with the retention-period field. + + + :return: The is_retention_lock_enabled of this CreateVolumeGroupBackupDetails. + :rtype: bool + """ + return self._is_retention_lock_enabled + + @is_retention_lock_enabled.setter + def is_retention_lock_enabled(self, is_retention_lock_enabled): + """ + Sets the is_retention_lock_enabled of this CreateVolumeGroupBackupDetails. + feature that prevents deletion or alteration of backup data for a specified period to ensure data protection and regulatory compliance. This is an optional field. If it is not specified, it is set to null, no retention lock will be applied to the backups. This feature should be used in conjunction with the retention-period field. + + + :param is_retention_lock_enabled: The is_retention_lock_enabled of this CreateVolumeGroupBackupDetails. + :type: bool + """ + self._is_retention_lock_enabled = is_retention_lock_enabled + + @property + def is_indefinite_retention_enabled(self): + """ + Gets the is_indefinite_retention_enabled of this CreateVolumeGroupBackupDetails. + feature that preserves backup data from modification or deletion to ensure it remains available for legal or regulatory investigations or litigation, regardless of standard retention policies. This is an optional field. If it is not specified, it is set to null, no legal hold will be applied to the backups. + + + :return: The is_indefinite_retention_enabled of this CreateVolumeGroupBackupDetails. + :rtype: bool + """ + return self._is_indefinite_retention_enabled + + @is_indefinite_retention_enabled.setter + def is_indefinite_retention_enabled(self, is_indefinite_retention_enabled): + """ + Sets the is_indefinite_retention_enabled of this CreateVolumeGroupBackupDetails. + feature that preserves backup data from modification or deletion to ensure it remains available for legal or regulatory investigations or litigation, regardless of standard retention policies. This is an optional field. If it is not specified, it is set to null, no legal hold will be applied to the backups. + + + :param is_indefinite_retention_enabled: The is_indefinite_retention_enabled of this CreateVolumeGroupBackupDetails. + :type: bool + """ + self._is_indefinite_retention_enabled = is_indefinite_retention_enabled + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/core/models/dedicated_vm_host.py b/src/oci/core/models/dedicated_vm_host.py index 6b96dbc19c..20a6c3a07e 100644 --- a/src/oci/core/models/dedicated_vm_host.py +++ b/src/oci/core/models/dedicated_vm_host.py @@ -89,6 +89,10 @@ def __init__(self, **kwargs): The value to assign to the is_memory_encryption_enabled property of this DedicatedVmHost. :type is_memory_encryption_enabled: bool + :param is_burstable: + The value to assign to the is_burstable property of this DedicatedVmHost. + :type is_burstable: bool + :param lifecycle_state: The value to assign to the lifecycle_state property of this DedicatedVmHost. Allowed values for this property are: "CREATING", "ACTIVE", "UPDATING", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. @@ -144,6 +148,7 @@ def __init__(self, **kwargs): 'id': 'str', 'capacity_config': 'str', 'is_memory_encryption_enabled': 'bool', + 'is_burstable': 'bool', 'lifecycle_state': 'str', 'time_created': 'datetime', 'total_ocpus': 'float', @@ -167,6 +172,7 @@ def __init__(self, **kwargs): 'id': 'id', 'capacity_config': 'capacityConfig', 'is_memory_encryption_enabled': 'isMemoryEncryptionEnabled', + 'is_burstable': 'isBurstable', 'lifecycle_state': 'lifecycleState', 'time_created': 'timeCreated', 'total_ocpus': 'totalOcpus', @@ -189,6 +195,7 @@ def __init__(self, **kwargs): self._id = None self._capacity_config = None self._is_memory_encryption_enabled = None + self._is_burstable = None self._lifecycle_state = None self._time_created = None self._total_ocpus = None @@ -516,6 +523,30 @@ def is_memory_encryption_enabled(self, is_memory_encryption_enabled): """ self._is_memory_encryption_enabled = is_memory_encryption_enabled + @property + def is_burstable(self): + """ + Gets the is_burstable of this DedicatedVmHost. + Specifies if the Dedicated Virtual Machine Host (DVMH) is to running only Burstable VMs. If `true`, only Burstable VMs can be launched. If `false`, Burstable VMs cannot be launched. + + + :return: The is_burstable of this DedicatedVmHost. + :rtype: bool + """ + return self._is_burstable + + @is_burstable.setter + def is_burstable(self, is_burstable): + """ + Sets the is_burstable of this DedicatedVmHost. + Specifies if the Dedicated Virtual Machine Host (DVMH) is to running only Burstable VMs. If `true`, only Burstable VMs can be launched. If `false`, Burstable VMs cannot be launched. + + + :param is_burstable: The is_burstable of this DedicatedVmHost. + :type: bool + """ + self._is_burstable = is_burstable + @property def lifecycle_state(self): """ diff --git a/src/oci/core/models/dedicated_vm_host_instance_summary.py b/src/oci/core/models/dedicated_vm_host_instance_summary.py index 9f9663949d..e853d0b068 100644 --- a/src/oci/core/models/dedicated_vm_host_instance_summary.py +++ b/src/oci/core/models/dedicated_vm_host_instance_summary.py @@ -36,6 +36,10 @@ def __init__(self, **kwargs): The value to assign to the is_memory_encryption_enabled property of this DedicatedVmHostInstanceSummary. :type is_memory_encryption_enabled: bool + :param is_burstable: + The value to assign to the is_burstable property of this DedicatedVmHostInstanceSummary. + :type is_burstable: bool + :param shape: The value to assign to the shape property of this DedicatedVmHostInstanceSummary. :type shape: str @@ -50,6 +54,7 @@ def __init__(self, **kwargs): 'compartment_id': 'str', 'instance_id': 'str', 'is_memory_encryption_enabled': 'bool', + 'is_burstable': 'bool', 'shape': 'str', 'time_created': 'datetime' } @@ -58,6 +63,7 @@ def __init__(self, **kwargs): 'compartment_id': 'compartmentId', 'instance_id': 'instanceId', 'is_memory_encryption_enabled': 'isMemoryEncryptionEnabled', + 'is_burstable': 'isBurstable', 'shape': 'shape', 'time_created': 'timeCreated' } @@ -65,6 +71,7 @@ def __init__(self, **kwargs): self._compartment_id = None self._instance_id = None self._is_memory_encryption_enabled = None + self._is_burstable = None self._shape = None self._time_created = None @@ -168,6 +175,30 @@ def is_memory_encryption_enabled(self, is_memory_encryption_enabled): """ self._is_memory_encryption_enabled = is_memory_encryption_enabled + @property + def is_burstable(self): + """ + Gets the is_burstable of this DedicatedVmHostInstanceSummary. + Specifies if the Dedicated Virtual Machine Host (DVMH) is to running only Burstable VMs. If `true`, only Burstable VMs can be launched. If `false`, Burstable VMs cannot be launched. + + + :return: The is_burstable of this DedicatedVmHostInstanceSummary. + :rtype: bool + """ + return self._is_burstable + + @is_burstable.setter + def is_burstable(self, is_burstable): + """ + Sets the is_burstable of this DedicatedVmHostInstanceSummary. + Specifies if the Dedicated Virtual Machine Host (DVMH) is to running only Burstable VMs. If `true`, only Burstable VMs can be launched. If `false`, Burstable VMs cannot be launched. + + + :param is_burstable: The is_burstable of this DedicatedVmHostInstanceSummary. + :type: bool + """ + self._is_burstable = is_burstable + @property def shape(self): """ diff --git a/src/oci/core/models/dedicated_vm_host_summary.py b/src/oci/core/models/dedicated_vm_host_summary.py index b6f7ec1915..24e159b1bf 100644 --- a/src/oci/core/models/dedicated_vm_host_summary.py +++ b/src/oci/core/models/dedicated_vm_host_summary.py @@ -72,6 +72,10 @@ def __init__(self, **kwargs): The value to assign to the is_memory_encryption_enabled property of this DedicatedVmHostSummary. :type is_memory_encryption_enabled: bool + :param is_burstable: + The value to assign to the is_burstable property of this DedicatedVmHostSummary. + :type is_burstable: bool + :param lifecycle_state: The value to assign to the lifecycle_state property of this DedicatedVmHostSummary. Allowed values for this property are: "CREATING", "ACTIVE", "UPDATING", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. @@ -115,6 +119,7 @@ def __init__(self, **kwargs): 'fault_domain': 'str', 'id': 'str', 'is_memory_encryption_enabled': 'bool', + 'is_burstable': 'bool', 'lifecycle_state': 'str', 'time_created': 'datetime', 'remaining_ocpus': 'float', @@ -132,6 +137,7 @@ def __init__(self, **kwargs): 'fault_domain': 'faultDomain', 'id': 'id', 'is_memory_encryption_enabled': 'isMemoryEncryptionEnabled', + 'is_burstable': 'isBurstable', 'lifecycle_state': 'lifecycleState', 'time_created': 'timeCreated', 'remaining_ocpus': 'remainingOcpus', @@ -148,6 +154,7 @@ def __init__(self, **kwargs): self._fault_domain = None self._id = None self._is_memory_encryption_enabled = None + self._is_burstable = None self._lifecycle_state = None self._time_created = None self._remaining_ocpus = None @@ -351,6 +358,30 @@ def is_memory_encryption_enabled(self, is_memory_encryption_enabled): """ self._is_memory_encryption_enabled = is_memory_encryption_enabled + @property + def is_burstable(self): + """ + Gets the is_burstable of this DedicatedVmHostSummary. + Specifies if the Dedicated Virtual Machine Host (DVMH) is to running only Burstable VMs. If `true`, only Burstable VMs can be launched. If `false`, Burstable VMs cannot be launched. + + + :return: The is_burstable of this DedicatedVmHostSummary. + :rtype: bool + """ + return self._is_burstable + + @is_burstable.setter + def is_burstable(self, is_burstable): + """ + Sets the is_burstable of this DedicatedVmHostSummary. + Specifies if the Dedicated Virtual Machine Host (DVMH) is to running only Burstable VMs. If `true`, only Burstable VMs can be launched. If `false`, Burstable VMs cannot be launched. + + + :param is_burstable: The is_burstable of this DedicatedVmHostSummary. + :type: bool + """ + self._is_burstable = is_burstable + @property def lifecycle_state(self): """ diff --git a/src/oci/core/models/instances.py b/src/oci/core/models/instances.py new file mode 100644 index 0000000000..f661852b9c --- /dev/null +++ b/src/oci/core/models/instances.py @@ -0,0 +1,39 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class Instances(object): + """ + SPLAT authorization alias for Compute instance operations that use the downstream instances resource kind. + """ + + def __init__(self, **kwargs): + """ + Initializes a new Instances object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + """ + self.swagger_types = { + } + self.attribute_map = { + } + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/core/models/provider_remote_region_name.py b/src/oci/core/models/provider_remote_region_name.py new file mode 100644 index 0000000000..c489b608f1 --- /dev/null +++ b/src/oci/core/models/provider_remote_region_name.py @@ -0,0 +1,105 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ProviderRemoteRegionName(object): + """ + A pair of OCI region and Provider remote region names for FastConnect MultiCloud interconnect. + """ + + def __init__(self, **kwargs): + """ + Initializes a new ProviderRemoteRegionName object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param oci_region_name: + The value to assign to the oci_region_name property of this ProviderRemoteRegionName. + :type oci_region_name: str + + :param provider_region_name: + The value to assign to the provider_region_name property of this ProviderRemoteRegionName. + :type provider_region_name: str + + """ + self.swagger_types = { + 'oci_region_name': 'str', + 'provider_region_name': 'str' + } + self.attribute_map = { + 'oci_region_name': 'ociRegionName', + 'provider_region_name': 'providerRegionName' + } + self._oci_region_name = None + self._provider_region_name = None + + @property + def oci_region_name(self): + """ + **[Required]** Gets the oci_region_name of this ProviderRemoteRegionName. + The OCI region name associated with the provider remote region. + Example: `us-ashburn-1`. + + + :return: The oci_region_name of this ProviderRemoteRegionName. + :rtype: str + """ + return self._oci_region_name + + @oci_region_name.setter + def oci_region_name(self, oci_region_name): + """ + Sets the oci_region_name of this ProviderRemoteRegionName. + The OCI region name associated with the provider remote region. + Example: `us-ashburn-1`. + + + :param oci_region_name: The oci_region_name of this ProviderRemoteRegionName. + :type: str + """ + self._oci_region_name = oci_region_name + + @property + def provider_region_name(self): + """ + **[Required]** Gets the provider_region_name of this ProviderRemoteRegionName. + The provider remote region name associated with the OCI region. + Example: `us-east-1`. + + + :return: The provider_region_name of this ProviderRemoteRegionName. + :rtype: str + """ + return self._provider_region_name + + @provider_region_name.setter + def provider_region_name(self, provider_region_name): + """ + Sets the provider_region_name of this ProviderRemoteRegionName. + The provider remote region name associated with the OCI region. + Example: `us-east-1`. + + + :param provider_region_name: The provider_region_name of this ProviderRemoteRegionName. + :type: str + """ + self._provider_region_name = provider_region_name + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/core/models/retention_duration.py b/src/oci/core/models/retention_duration.py new file mode 100644 index 0000000000..b2e4859b3b --- /dev/null +++ b/src/oci/core/models/retention_duration.py @@ -0,0 +1,117 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class RetentionDuration(object): + """ + This field is used to define the retention period for backups. This is an optional field. If it is not specified, it is set to null, no retention period will be applied to the backups. + """ + + #: A constant which can be used with the retention_time_unit property of a RetentionDuration. + #: This constant has a value of "YEARS" + RETENTION_TIME_UNIT_YEARS = "YEARS" + + #: A constant which can be used with the retention_time_unit property of a RetentionDuration. + #: This constant has a value of "DAYS" + RETENTION_TIME_UNIT_DAYS = "DAYS" + + def __init__(self, **kwargs): + """ + Initializes a new RetentionDuration object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param retention_time_unit: + The value to assign to the retention_time_unit property of this RetentionDuration. + Allowed values for this property are: "YEARS", "DAYS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type retention_time_unit: str + + :param retention_time_amount: + The value to assign to the retention_time_amount property of this RetentionDuration. + :type retention_time_amount: int + + """ + self.swagger_types = { + 'retention_time_unit': 'str', + 'retention_time_amount': 'int' + } + self.attribute_map = { + 'retention_time_unit': 'retentionTimeUnit', + 'retention_time_amount': 'retentionTimeAmount' + } + self._retention_time_unit = None + self._retention_time_amount = None + + @property + def retention_time_unit(self): + """ + **[Required]** Gets the retention_time_unit of this RetentionDuration. + The value you can assign to the Time Unit property for this Duration may be either \"YEARS\" or \"DAYS\". + + Allowed values for this property are: "YEARS", "DAYS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The retention_time_unit of this RetentionDuration. + :rtype: str + """ + return self._retention_time_unit + + @retention_time_unit.setter + def retention_time_unit(self, retention_time_unit): + """ + Sets the retention_time_unit of this RetentionDuration. + The value you can assign to the Time Unit property for this Duration may be either \"YEARS\" or \"DAYS\". + + + :param retention_time_unit: The retention_time_unit of this RetentionDuration. + :type: str + """ + allowed_values = ["YEARS", "DAYS"] + if not value_allowed_none_or_none_sentinel(retention_time_unit, allowed_values): + retention_time_unit = 'UNKNOWN_ENUM_VALUE' + self._retention_time_unit = retention_time_unit + + @property + def retention_time_amount(self): + """ + **[Required]** Gets the retention_time_amount of this RetentionDuration. + The value to enter for the amount of retention time should be a numerical figure (such as 1, 7, 30, etc.) that corresponds to the period specified in the retention time unit property (such as YEARS, DAYS). The combination of these two properties determines the total length of the retention period. + + + :return: The retention_time_amount of this RetentionDuration. + :rtype: int + """ + return self._retention_time_amount + + @retention_time_amount.setter + def retention_time_amount(self, retention_time_amount): + """ + Sets the retention_time_amount of this RetentionDuration. + The value to enter for the amount of retention time should be a numerical figure (such as 1, 7, 30, etc.) that corresponds to the period specified in the retention time unit property (such as YEARS, DAYS). The combination of these two properties determines the total length of the retention period. + + + :param retention_time_amount: The retention_time_amount of this RetentionDuration. + :type: int + """ + self._retention_time_amount = retention_time_amount + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/core/models/supported_capabilities.py b/src/oci/core/models/supported_capabilities.py index cd5d4b8083..ba6d0f1dab 100644 --- a/src/oci/core/models/supported_capabilities.py +++ b/src/oci/core/models/supported_capabilities.py @@ -24,14 +24,21 @@ def __init__(self, **kwargs): The value to assign to the is_memory_encryption_supported property of this SupportedCapabilities. :type is_memory_encryption_supported: bool + :param is_burstable_supported: + The value to assign to the is_burstable_supported property of this SupportedCapabilities. + :type is_burstable_supported: bool + """ self.swagger_types = { - 'is_memory_encryption_supported': 'bool' + 'is_memory_encryption_supported': 'bool', + 'is_burstable_supported': 'bool' } self.attribute_map = { - 'is_memory_encryption_supported': 'isMemoryEncryptionSupported' + 'is_memory_encryption_supported': 'isMemoryEncryptionSupported', + 'is_burstable_supported': 'isBurstableSupported' } self._is_memory_encryption_supported = None + self._is_burstable_supported = None @property def is_memory_encryption_supported(self): @@ -57,6 +64,30 @@ def is_memory_encryption_supported(self, is_memory_encryption_supported): """ self._is_memory_encryption_supported = is_memory_encryption_supported + @property + def is_burstable_supported(self): + """ + Gets the is_burstable_supported of this SupportedCapabilities. + Specifies if the Dedicated Virtual Machine Host (DVMH) is to running only Burstable VMs. If `true`, only Burstable VMs can be launched. If `false`, Burstable VMs cannot be launched. + + + :return: The is_burstable_supported of this SupportedCapabilities. + :rtype: bool + """ + return self._is_burstable_supported + + @is_burstable_supported.setter + def is_burstable_supported(self, is_burstable_supported): + """ + Sets the is_burstable_supported of this SupportedCapabilities. + Specifies if the Dedicated Virtual Machine Host (DVMH) is to running only Burstable VMs. If `true`, only Burstable VMs can be launched. If `false`, Burstable VMs cannot be launched. + + + :param is_burstable_supported: The is_burstable_supported of this SupportedCapabilities. + :type: bool + """ + self._is_burstable_supported = is_burstable_supported + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/core/models/update_boot_volume_backup_details.py b/src/oci/core/models/update_boot_volume_backup_details.py index 14904109d3..ad3b9cc54f 100644 --- a/src/oci/core/models/update_boot_volume_backup_details.py +++ b/src/oci/core/models/update_boot_volume_backup_details.py @@ -36,23 +36,51 @@ def __init__(self, **kwargs): The value to assign to the kms_key_id property of this UpdateBootVolumeBackupDetails. :type kms_key_id: str + :param retention_period: + The value to assign to the retention_period property of this UpdateBootVolumeBackupDetails. + :type retention_period: oci.core.models.RetentionDuration + + :param is_prevent_deletion_enabled: + The value to assign to the is_prevent_deletion_enabled property of this UpdateBootVolumeBackupDetails. + :type is_prevent_deletion_enabled: bool + + :param is_retention_lock_enabled: + The value to assign to the is_retention_lock_enabled property of this UpdateBootVolumeBackupDetails. + :type is_retention_lock_enabled: bool + + :param is_indefinite_retention_enabled: + The value to assign to the is_indefinite_retention_enabled property of this UpdateBootVolumeBackupDetails. + :type is_indefinite_retention_enabled: bool + """ self.swagger_types = { 'defined_tags': 'dict(str, dict(str, object))', 'display_name': 'str', 'freeform_tags': 'dict(str, str)', - 'kms_key_id': 'str' + 'kms_key_id': 'str', + 'retention_period': 'RetentionDuration', + 'is_prevent_deletion_enabled': 'bool', + 'is_retention_lock_enabled': 'bool', + 'is_indefinite_retention_enabled': 'bool' } self.attribute_map = { 'defined_tags': 'definedTags', 'display_name': 'displayName', 'freeform_tags': 'freeformTags', - 'kms_key_id': 'kmsKeyId' + 'kms_key_id': 'kmsKeyId', + 'retention_period': 'retentionPeriod', + 'is_prevent_deletion_enabled': 'isPreventDeletionEnabled', + 'is_retention_lock_enabled': 'isRetentionLockEnabled', + 'is_indefinite_retention_enabled': 'isIndefiniteRetentionEnabled' } self._defined_tags = None self._display_name = None self._freeform_tags = None self._kms_key_id = None + self._retention_period = None + self._is_prevent_deletion_enabled = None + self._is_retention_lock_enabled = None + self._is_indefinite_retention_enabled = None @property def defined_tags(self): @@ -184,6 +212,98 @@ def kms_key_id(self, kms_key_id): """ self._kms_key_id = kms_key_id + @property + def retention_period(self): + """ + Gets the retention_period of this UpdateBootVolumeBackupDetails. + + :return: The retention_period of this UpdateBootVolumeBackupDetails. + :rtype: oci.core.models.RetentionDuration + """ + return self._retention_period + + @retention_period.setter + def retention_period(self, retention_period): + """ + Sets the retention_period of this UpdateBootVolumeBackupDetails. + + :param retention_period: The retention_period of this UpdateBootVolumeBackupDetails. + :type: oci.core.models.RetentionDuration + """ + self._retention_period = retention_period + + @property + def is_prevent_deletion_enabled(self): + """ + Gets the is_prevent_deletion_enabled of this UpdateBootVolumeBackupDetails. + Prevent backups from being deleted during the configured retention period. This is an optional field. If it is not specified, it is set to null, prevent deletion will not be applied to the backups. + + + :return: The is_prevent_deletion_enabled of this UpdateBootVolumeBackupDetails. + :rtype: bool + """ + return self._is_prevent_deletion_enabled + + @is_prevent_deletion_enabled.setter + def is_prevent_deletion_enabled(self, is_prevent_deletion_enabled): + """ + Sets the is_prevent_deletion_enabled of this UpdateBootVolumeBackupDetails. + Prevent backups from being deleted during the configured retention period. This is an optional field. If it is not specified, it is set to null, prevent deletion will not be applied to the backups. + + + :param is_prevent_deletion_enabled: The is_prevent_deletion_enabled of this UpdateBootVolumeBackupDetails. + :type: bool + """ + self._is_prevent_deletion_enabled = is_prevent_deletion_enabled + + @property + def is_retention_lock_enabled(self): + """ + Gets the is_retention_lock_enabled of this UpdateBootVolumeBackupDetails. + feature that prevents deletion or alteration of backup data for a specified period to ensure data protection and regulatory compliance. This is an optional field. If it is not specified, it is set to null, no retention lock will be applied to the backups. This feature should be used in conjunction with the retention-period field. + + + :return: The is_retention_lock_enabled of this UpdateBootVolumeBackupDetails. + :rtype: bool + """ + return self._is_retention_lock_enabled + + @is_retention_lock_enabled.setter + def is_retention_lock_enabled(self, is_retention_lock_enabled): + """ + Sets the is_retention_lock_enabled of this UpdateBootVolumeBackupDetails. + feature that prevents deletion or alteration of backup data for a specified period to ensure data protection and regulatory compliance. This is an optional field. If it is not specified, it is set to null, no retention lock will be applied to the backups. This feature should be used in conjunction with the retention-period field. + + + :param is_retention_lock_enabled: The is_retention_lock_enabled of this UpdateBootVolumeBackupDetails. + :type: bool + """ + self._is_retention_lock_enabled = is_retention_lock_enabled + + @property + def is_indefinite_retention_enabled(self): + """ + Gets the is_indefinite_retention_enabled of this UpdateBootVolumeBackupDetails. + feature that preserves backup data from modification or deletion to ensure it remains available for legal or regulatory investigations or litigation, regardless of standard retention policies. This is an optional field. If it is not specified, it is set to null, no legal hold will be applied to the backups. + + + :return: The is_indefinite_retention_enabled of this UpdateBootVolumeBackupDetails. + :rtype: bool + """ + return self._is_indefinite_retention_enabled + + @is_indefinite_retention_enabled.setter + def is_indefinite_retention_enabled(self, is_indefinite_retention_enabled): + """ + Sets the is_indefinite_retention_enabled of this UpdateBootVolumeBackupDetails. + feature that preserves backup data from modification or deletion to ensure it remains available for legal or regulatory investigations or litigation, regardless of standard retention policies. This is an optional field. If it is not specified, it is set to null, no legal hold will be applied to the backups. + + + :param is_indefinite_retention_enabled: The is_indefinite_retention_enabled of this UpdateBootVolumeBackupDetails. + :type: bool + """ + self._is_indefinite_retention_enabled = is_indefinite_retention_enabled + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/core/models/update_volume_backup_details.py b/src/oci/core/models/update_volume_backup_details.py index ee316d5aa8..d8fc717d81 100644 --- a/src/oci/core/models/update_volume_backup_details.py +++ b/src/oci/core/models/update_volume_backup_details.py @@ -36,23 +36,51 @@ def __init__(self, **kwargs): The value to assign to the kms_key_id property of this UpdateVolumeBackupDetails. :type kms_key_id: str + :param retention_period: + The value to assign to the retention_period property of this UpdateVolumeBackupDetails. + :type retention_period: oci.core.models.RetentionDuration + + :param is_prevent_deletion_enabled: + The value to assign to the is_prevent_deletion_enabled property of this UpdateVolumeBackupDetails. + :type is_prevent_deletion_enabled: bool + + :param is_retention_lock_enabled: + The value to assign to the is_retention_lock_enabled property of this UpdateVolumeBackupDetails. + :type is_retention_lock_enabled: bool + + :param is_indefinite_retention_enabled: + The value to assign to the is_indefinite_retention_enabled property of this UpdateVolumeBackupDetails. + :type is_indefinite_retention_enabled: bool + """ self.swagger_types = { 'defined_tags': 'dict(str, dict(str, object))', 'display_name': 'str', 'freeform_tags': 'dict(str, str)', - 'kms_key_id': 'str' + 'kms_key_id': 'str', + 'retention_period': 'RetentionDuration', + 'is_prevent_deletion_enabled': 'bool', + 'is_retention_lock_enabled': 'bool', + 'is_indefinite_retention_enabled': 'bool' } self.attribute_map = { 'defined_tags': 'definedTags', 'display_name': 'displayName', 'freeform_tags': 'freeformTags', - 'kms_key_id': 'kmsKeyId' + 'kms_key_id': 'kmsKeyId', + 'retention_period': 'retentionPeriod', + 'is_prevent_deletion_enabled': 'isPreventDeletionEnabled', + 'is_retention_lock_enabled': 'isRetentionLockEnabled', + 'is_indefinite_retention_enabled': 'isIndefiniteRetentionEnabled' } self._defined_tags = None self._display_name = None self._freeform_tags = None self._kms_key_id = None + self._retention_period = None + self._is_prevent_deletion_enabled = None + self._is_retention_lock_enabled = None + self._is_indefinite_retention_enabled = None @property def defined_tags(self): @@ -184,6 +212,98 @@ def kms_key_id(self, kms_key_id): """ self._kms_key_id = kms_key_id + @property + def retention_period(self): + """ + Gets the retention_period of this UpdateVolumeBackupDetails. + + :return: The retention_period of this UpdateVolumeBackupDetails. + :rtype: oci.core.models.RetentionDuration + """ + return self._retention_period + + @retention_period.setter + def retention_period(self, retention_period): + """ + Sets the retention_period of this UpdateVolumeBackupDetails. + + :param retention_period: The retention_period of this UpdateVolumeBackupDetails. + :type: oci.core.models.RetentionDuration + """ + self._retention_period = retention_period + + @property + def is_prevent_deletion_enabled(self): + """ + Gets the is_prevent_deletion_enabled of this UpdateVolumeBackupDetails. + Prevent backups from being deleted during the configured retention period. This is an optional field. If it is not specified, it is set to null, prevent deletion will not be applied to the backups. + + + :return: The is_prevent_deletion_enabled of this UpdateVolumeBackupDetails. + :rtype: bool + """ + return self._is_prevent_deletion_enabled + + @is_prevent_deletion_enabled.setter + def is_prevent_deletion_enabled(self, is_prevent_deletion_enabled): + """ + Sets the is_prevent_deletion_enabled of this UpdateVolumeBackupDetails. + Prevent backups from being deleted during the configured retention period. This is an optional field. If it is not specified, it is set to null, prevent deletion will not be applied to the backups. + + + :param is_prevent_deletion_enabled: The is_prevent_deletion_enabled of this UpdateVolumeBackupDetails. + :type: bool + """ + self._is_prevent_deletion_enabled = is_prevent_deletion_enabled + + @property + def is_retention_lock_enabled(self): + """ + Gets the is_retention_lock_enabled of this UpdateVolumeBackupDetails. + feature that prevents deletion or alteration of backup data for a specified period to ensure data protection and regulatory compliance. This is an optional field. If it is not specified, it is set to null, no retention lock will be applied to the backups. This feature should be used in conjunction with the retention-period field. + + + :return: The is_retention_lock_enabled of this UpdateVolumeBackupDetails. + :rtype: bool + """ + return self._is_retention_lock_enabled + + @is_retention_lock_enabled.setter + def is_retention_lock_enabled(self, is_retention_lock_enabled): + """ + Sets the is_retention_lock_enabled of this UpdateVolumeBackupDetails. + feature that prevents deletion or alteration of backup data for a specified period to ensure data protection and regulatory compliance. This is an optional field. If it is not specified, it is set to null, no retention lock will be applied to the backups. This feature should be used in conjunction with the retention-period field. + + + :param is_retention_lock_enabled: The is_retention_lock_enabled of this UpdateVolumeBackupDetails. + :type: bool + """ + self._is_retention_lock_enabled = is_retention_lock_enabled + + @property + def is_indefinite_retention_enabled(self): + """ + Gets the is_indefinite_retention_enabled of this UpdateVolumeBackupDetails. + feature that preserves backup data from modification or deletion to ensure it remains available for legal or regulatory investigations or litigation, regardless of standard retention policies. This is an optional field. If it is not specified, it is set to null, no legal hold will be applied to the backups. + + + :return: The is_indefinite_retention_enabled of this UpdateVolumeBackupDetails. + :rtype: bool + """ + return self._is_indefinite_retention_enabled + + @is_indefinite_retention_enabled.setter + def is_indefinite_retention_enabled(self, is_indefinite_retention_enabled): + """ + Sets the is_indefinite_retention_enabled of this UpdateVolumeBackupDetails. + feature that preserves backup data from modification or deletion to ensure it remains available for legal or regulatory investigations or litigation, regardless of standard retention policies. This is an optional field. If it is not specified, it is set to null, no legal hold will be applied to the backups. + + + :param is_indefinite_retention_enabled: The is_indefinite_retention_enabled of this UpdateVolumeBackupDetails. + :type: bool + """ + self._is_indefinite_retention_enabled = is_indefinite_retention_enabled + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/core/models/update_volume_group_backup_details.py b/src/oci/core/models/update_volume_group_backup_details.py index 3aab502051..16e45e1a38 100644 --- a/src/oci/core/models/update_volume_group_backup_details.py +++ b/src/oci/core/models/update_volume_group_backup_details.py @@ -32,20 +32,48 @@ def __init__(self, **kwargs): The value to assign to the freeform_tags property of this UpdateVolumeGroupBackupDetails. :type freeform_tags: dict(str, str) + :param retention_period: + The value to assign to the retention_period property of this UpdateVolumeGroupBackupDetails. + :type retention_period: oci.core.models.RetentionDuration + + :param is_prevent_deletion_enabled: + The value to assign to the is_prevent_deletion_enabled property of this UpdateVolumeGroupBackupDetails. + :type is_prevent_deletion_enabled: bool + + :param is_retention_lock_enabled: + The value to assign to the is_retention_lock_enabled property of this UpdateVolumeGroupBackupDetails. + :type is_retention_lock_enabled: bool + + :param is_indefinite_retention_enabled: + The value to assign to the is_indefinite_retention_enabled property of this UpdateVolumeGroupBackupDetails. + :type is_indefinite_retention_enabled: bool + """ self.swagger_types = { 'defined_tags': 'dict(str, dict(str, object))', 'display_name': 'str', - 'freeform_tags': 'dict(str, str)' + 'freeform_tags': 'dict(str, str)', + 'retention_period': 'RetentionDuration', + 'is_prevent_deletion_enabled': 'bool', + 'is_retention_lock_enabled': 'bool', + 'is_indefinite_retention_enabled': 'bool' } self.attribute_map = { 'defined_tags': 'definedTags', 'display_name': 'displayName', - 'freeform_tags': 'freeformTags' + 'freeform_tags': 'freeformTags', + 'retention_period': 'retentionPeriod', + 'is_prevent_deletion_enabled': 'isPreventDeletionEnabled', + 'is_retention_lock_enabled': 'isRetentionLockEnabled', + 'is_indefinite_retention_enabled': 'isIndefiniteRetentionEnabled' } self._defined_tags = None self._display_name = None self._freeform_tags = None + self._retention_period = None + self._is_prevent_deletion_enabled = None + self._is_retention_lock_enabled = None + self._is_indefinite_retention_enabled = None @property def defined_tags(self): @@ -141,6 +169,98 @@ def freeform_tags(self, freeform_tags): """ self._freeform_tags = freeform_tags + @property + def retention_period(self): + """ + Gets the retention_period of this UpdateVolumeGroupBackupDetails. + + :return: The retention_period of this UpdateVolumeGroupBackupDetails. + :rtype: oci.core.models.RetentionDuration + """ + return self._retention_period + + @retention_period.setter + def retention_period(self, retention_period): + """ + Sets the retention_period of this UpdateVolumeGroupBackupDetails. + + :param retention_period: The retention_period of this UpdateVolumeGroupBackupDetails. + :type: oci.core.models.RetentionDuration + """ + self._retention_period = retention_period + + @property + def is_prevent_deletion_enabled(self): + """ + Gets the is_prevent_deletion_enabled of this UpdateVolumeGroupBackupDetails. + Prevent backups from being deleted during the configured retention period. This is an optional field. If it is not specified, it is set to null, prevent deletion will not be applied to the backups. + + + :return: The is_prevent_deletion_enabled of this UpdateVolumeGroupBackupDetails. + :rtype: bool + """ + return self._is_prevent_deletion_enabled + + @is_prevent_deletion_enabled.setter + def is_prevent_deletion_enabled(self, is_prevent_deletion_enabled): + """ + Sets the is_prevent_deletion_enabled of this UpdateVolumeGroupBackupDetails. + Prevent backups from being deleted during the configured retention period. This is an optional field. If it is not specified, it is set to null, prevent deletion will not be applied to the backups. + + + :param is_prevent_deletion_enabled: The is_prevent_deletion_enabled of this UpdateVolumeGroupBackupDetails. + :type: bool + """ + self._is_prevent_deletion_enabled = is_prevent_deletion_enabled + + @property + def is_retention_lock_enabled(self): + """ + Gets the is_retention_lock_enabled of this UpdateVolumeGroupBackupDetails. + feature that prevents deletion or alteration of backup data for a specified period to ensure data protection and regulatory compliance. This is an optional field. If it is not specified, it is set to null, no retention lock will be applied to the backups. This feature should be used in conjunction with the retention-period field. + + + :return: The is_retention_lock_enabled of this UpdateVolumeGroupBackupDetails. + :rtype: bool + """ + return self._is_retention_lock_enabled + + @is_retention_lock_enabled.setter + def is_retention_lock_enabled(self, is_retention_lock_enabled): + """ + Sets the is_retention_lock_enabled of this UpdateVolumeGroupBackupDetails. + feature that prevents deletion or alteration of backup data for a specified period to ensure data protection and regulatory compliance. This is an optional field. If it is not specified, it is set to null, no retention lock will be applied to the backups. This feature should be used in conjunction with the retention-period field. + + + :param is_retention_lock_enabled: The is_retention_lock_enabled of this UpdateVolumeGroupBackupDetails. + :type: bool + """ + self._is_retention_lock_enabled = is_retention_lock_enabled + + @property + def is_indefinite_retention_enabled(self): + """ + Gets the is_indefinite_retention_enabled of this UpdateVolumeGroupBackupDetails. + feature that preserves backup data from modification or deletion to ensure it remains available for legal or regulatory investigations or litigation, regardless of standard retention policies. This is an optional field. If it is not specified, it is set to null, no legal hold will be applied to the backups. + + + :return: The is_indefinite_retention_enabled of this UpdateVolumeGroupBackupDetails. + :rtype: bool + """ + return self._is_indefinite_retention_enabled + + @is_indefinite_retention_enabled.setter + def is_indefinite_retention_enabled(self, is_indefinite_retention_enabled): + """ + Sets the is_indefinite_retention_enabled of this UpdateVolumeGroupBackupDetails. + feature that preserves backup data from modification or deletion to ensure it remains available for legal or regulatory investigations or litigation, regardless of standard retention policies. This is an optional field. If it is not specified, it is set to null, no legal hold will be applied to the backups. + + + :param is_indefinite_retention_enabled: The is_indefinite_retention_enabled of this UpdateVolumeGroupBackupDetails. + :type: bool + """ + self._is_indefinite_retention_enabled = is_indefinite_retention_enabled + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/core/models/virtual_circuit.py b/src/oci/core/models/virtual_circuit.py index d9147e8fa3..e7dc2b5d2a 100644 --- a/src/oci/core/models/virtual_circuit.py +++ b/src/oci/core/models/virtual_circuit.py @@ -313,6 +313,18 @@ def __init__(self, **kwargs): Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type ip_mtu: str + :param provider_remote_region: + The value to assign to the provider_remote_region property of this VirtualCircuit. + :type provider_remote_region: str + + :param shared_connection_uuid: + The value to assign to the shared_connection_uuid property of this VirtualCircuit. + :type shared_connection_uuid: str + + :param remote_account_id: + The value to assign to the remote_account_id property of this VirtualCircuit. + :type remote_account_id: str + :param traffic_mode: The value to assign to the traffic_mode property of this VirtualCircuit. Allowed values for this property are: "NORMAL", "DRAIN", 'UNKNOWN_ENUM_VALUE'. @@ -356,6 +368,9 @@ def __init__(self, **kwargs): 'time_created': 'datetime', 'type': 'str', 'ip_mtu': 'str', + 'provider_remote_region': 'str', + 'shared_connection_uuid': 'str', + 'remote_account_id': 'str', 'traffic_mode': 'str', 'virtual_circuit_redundancy_metadata': 'VirtualCircuitRedundancyMetadata' } @@ -391,6 +406,9 @@ def __init__(self, **kwargs): 'time_created': 'timeCreated', 'type': 'type', 'ip_mtu': 'ipMtu', + 'provider_remote_region': 'providerRemoteRegion', + 'shared_connection_uuid': 'sharedConnectionUuid', + 'remote_account_id': 'remoteAccountId', 'traffic_mode': 'trafficMode', 'virtual_circuit_redundancy_metadata': 'virtualCircuitRedundancyMetadata' } @@ -425,6 +443,9 @@ def __init__(self, **kwargs): self._time_created = None self._type = None self._ip_mtu = None + self._provider_remote_region = None + self._shared_connection_uuid = None + self._remote_account_id = None self._traffic_mode = None self._virtual_circuit_redundancy_metadata = None @@ -1346,6 +1367,80 @@ def ip_mtu(self, ip_mtu): ip_mtu = 'UNKNOWN_ENUM_VALUE' self._ip_mtu = ip_mtu + @property + def provider_remote_region(self): + """ + Gets the provider_remote_region of this VirtualCircuit. + The OCI's FastConnect MultiCloud Provider/Partner remote region name associated with the OCI region. + To get the list of associated provider remote region use the ListProviderRemoteRegions operation + + + :return: The provider_remote_region of this VirtualCircuit. + :rtype: str + """ + return self._provider_remote_region + + @provider_remote_region.setter + def provider_remote_region(self, provider_remote_region): + """ + Sets the provider_remote_region of this VirtualCircuit. + The OCI's FastConnect MultiCloud Provider/Partner remote region name associated with the OCI region. + To get the list of associated provider remote region use the ListProviderRemoteRegions operation + + + :param provider_remote_region: The provider_remote_region of this VirtualCircuit. + :type: str + """ + self._provider_remote_region = provider_remote_region + + @property + def shared_connection_uuid(self): + """ + Gets the shared_connection_uuid of this VirtualCircuit. + The Shared unique identifier for the connection between the multicloud interconnect providers + + + :return: The shared_connection_uuid of this VirtualCircuit. + :rtype: str + """ + return self._shared_connection_uuid + + @shared_connection_uuid.setter + def shared_connection_uuid(self, shared_connection_uuid): + """ + Sets the shared_connection_uuid of this VirtualCircuit. + The Shared unique identifier for the connection between the multicloud interconnect providers + + + :param shared_connection_uuid: The shared_connection_uuid of this VirtualCircuit. + :type: str + """ + self._shared_connection_uuid = shared_connection_uuid + + @property + def remote_account_id(self): + """ + Gets the remote_account_id of this VirtualCircuit. + Customer's account on Provider/Partner cloud (AWS, GCP or any other) + + + :return: The remote_account_id of this VirtualCircuit. + :rtype: str + """ + return self._remote_account_id + + @remote_account_id.setter + def remote_account_id(self, remote_account_id): + """ + Sets the remote_account_id of this VirtualCircuit. + Customer's account on Provider/Partner cloud (AWS, GCP or any other) + + + :param remote_account_id: The remote_account_id of this VirtualCircuit. + :type: str + """ + self._remote_account_id = remote_account_id + @property def traffic_mode(self): """ diff --git a/src/oci/core/models/volume_backup.py b/src/oci/core/models/volume_backup.py index a52c6d94a8..0d89b6ef85 100644 --- a/src/oci/core/models/volume_backup.py +++ b/src/oci/core/models/volume_backup.py @@ -154,6 +154,30 @@ def __init__(self, **kwargs): The value to assign to the volume_id property of this VolumeBackup. :type volume_id: str + :param time_retention_expires_at: + The value to assign to the time_retention_expires_at property of this VolumeBackup. + :type time_retention_expires_at: datetime + + :param retention_period: + The value to assign to the retention_period property of this VolumeBackup. + :type retention_period: oci.core.models.RetentionDuration + + :param is_prevent_deletion_enabled: + The value to assign to the is_prevent_deletion_enabled property of this VolumeBackup. + :type is_prevent_deletion_enabled: bool + + :param is_retention_lock_enabled: + The value to assign to the is_retention_lock_enabled property of this VolumeBackup. + :type is_retention_lock_enabled: bool + + :param is_indefinite_retention_enabled: + The value to assign to the is_indefinite_retention_enabled property of this VolumeBackup. + :type is_indefinite_retention_enabled: bool + + :param volume_group_backup_id: + The value to assign to the volume_group_backup_id property of this VolumeBackup. + :type volume_group_backup_id: str + """ self.swagger_types = { 'compartment_id': 'str', @@ -174,7 +198,13 @@ def __init__(self, **kwargs): 'type': 'str', 'unique_size_in_gbs': 'int', 'unique_size_in_mbs': 'int', - 'volume_id': 'str' + 'volume_id': 'str', + 'time_retention_expires_at': 'datetime', + 'retention_period': 'RetentionDuration', + 'is_prevent_deletion_enabled': 'bool', + 'is_retention_lock_enabled': 'bool', + 'is_indefinite_retention_enabled': 'bool', + 'volume_group_backup_id': 'str' } self.attribute_map = { 'compartment_id': 'compartmentId', @@ -195,7 +225,13 @@ def __init__(self, **kwargs): 'type': 'type', 'unique_size_in_gbs': 'uniqueSizeInGBs', 'unique_size_in_mbs': 'uniqueSizeInMbs', - 'volume_id': 'volumeId' + 'volume_id': 'volumeId', + 'time_retention_expires_at': 'timeRetentionExpiresAt', + 'retention_period': 'retentionPeriod', + 'is_prevent_deletion_enabled': 'isPreventDeletionEnabled', + 'is_retention_lock_enabled': 'isRetentionLockEnabled', + 'is_indefinite_retention_enabled': 'isIndefiniteRetentionEnabled', + 'volume_group_backup_id': 'volumeGroupBackupId' } self._compartment_id = None self._defined_tags = None @@ -216,6 +252,12 @@ def __init__(self, **kwargs): self._unique_size_in_gbs = None self._unique_size_in_mbs = None self._volume_id = None + self._time_retention_expires_at = None + self._retention_period = None + self._is_prevent_deletion_enabled = None + self._is_retention_lock_enabled = None + self._is_indefinite_retention_enabled = None + self._volume_group_backup_id = None @property def compartment_id(self): @@ -753,6 +795,146 @@ def volume_id(self, volume_id): """ self._volume_id = volume_id + @property + def time_retention_expires_at(self): + """ + Gets the time_retention_expires_at of this VolumeBackup. + The date and time when a backup\u2019s retention period ends and it is set to expire. This is an optional field. If it is not specified, it is set to null, no retention period will be applied to the backups. + + + :return: The time_retention_expires_at of this VolumeBackup. + :rtype: datetime + """ + return self._time_retention_expires_at + + @time_retention_expires_at.setter + def time_retention_expires_at(self, time_retention_expires_at): + """ + Sets the time_retention_expires_at of this VolumeBackup. + The date and time when a backup\u2019s retention period ends and it is set to expire. This is an optional field. If it is not specified, it is set to null, no retention period will be applied to the backups. + + + :param time_retention_expires_at: The time_retention_expires_at of this VolumeBackup. + :type: datetime + """ + self._time_retention_expires_at = time_retention_expires_at + + @property + def retention_period(self): + """ + Gets the retention_period of this VolumeBackup. + + :return: The retention_period of this VolumeBackup. + :rtype: oci.core.models.RetentionDuration + """ + return self._retention_period + + @retention_period.setter + def retention_period(self, retention_period): + """ + Sets the retention_period of this VolumeBackup. + + :param retention_period: The retention_period of this VolumeBackup. + :type: oci.core.models.RetentionDuration + """ + self._retention_period = retention_period + + @property + def is_prevent_deletion_enabled(self): + """ + Gets the is_prevent_deletion_enabled of this VolumeBackup. + Prevent backups from being deleted during the configured retention period. This is an optional field. If it is not specified, it is set to null, prevent deletion will not be applied to the backups. + + + :return: The is_prevent_deletion_enabled of this VolumeBackup. + :rtype: bool + """ + return self._is_prevent_deletion_enabled + + @is_prevent_deletion_enabled.setter + def is_prevent_deletion_enabled(self, is_prevent_deletion_enabled): + """ + Sets the is_prevent_deletion_enabled of this VolumeBackup. + Prevent backups from being deleted during the configured retention period. This is an optional field. If it is not specified, it is set to null, prevent deletion will not be applied to the backups. + + + :param is_prevent_deletion_enabled: The is_prevent_deletion_enabled of this VolumeBackup. + :type: bool + """ + self._is_prevent_deletion_enabled = is_prevent_deletion_enabled + + @property + def is_retention_lock_enabled(self): + """ + Gets the is_retention_lock_enabled of this VolumeBackup. + feature that prevents deletion or alteration of backup data for a specified period to ensure data protection and regulatory compliance. This is an optional field. If it is not specified, it is set to null, no retention lock will be applied to the backups. This feature should be used in conjunction with the retention-period field. + + + :return: The is_retention_lock_enabled of this VolumeBackup. + :rtype: bool + """ + return self._is_retention_lock_enabled + + @is_retention_lock_enabled.setter + def is_retention_lock_enabled(self, is_retention_lock_enabled): + """ + Sets the is_retention_lock_enabled of this VolumeBackup. + feature that prevents deletion or alteration of backup data for a specified period to ensure data protection and regulatory compliance. This is an optional field. If it is not specified, it is set to null, no retention lock will be applied to the backups. This feature should be used in conjunction with the retention-period field. + + + :param is_retention_lock_enabled: The is_retention_lock_enabled of this VolumeBackup. + :type: bool + """ + self._is_retention_lock_enabled = is_retention_lock_enabled + + @property + def is_indefinite_retention_enabled(self): + """ + Gets the is_indefinite_retention_enabled of this VolumeBackup. + feature that preserves backup data from modification or deletion to ensure it remains available for legal or regulatory investigations or litigation, regardless of standard retention policies. This is an optional field. If it is not specified, it is set to null, no legal hold will be applied to the backups. + + + :return: The is_indefinite_retention_enabled of this VolumeBackup. + :rtype: bool + """ + return self._is_indefinite_retention_enabled + + @is_indefinite_retention_enabled.setter + def is_indefinite_retention_enabled(self, is_indefinite_retention_enabled): + """ + Sets the is_indefinite_retention_enabled of this VolumeBackup. + feature that preserves backup data from modification or deletion to ensure it remains available for legal or regulatory investigations or litigation, regardless of standard retention policies. This is an optional field. If it is not specified, it is set to null, no legal hold will be applied to the backups. + + + :param is_indefinite_retention_enabled: The is_indefinite_retention_enabled of this VolumeBackup. + :type: bool + """ + self._is_indefinite_retention_enabled = is_indefinite_retention_enabled + + @property + def volume_group_backup_id(self): + """ + Gets the volume_group_backup_id of this VolumeBackup. + The OCID of the volume group backup associated with the backup. This is an optional field. If it is not present in the response, the backup does not belong to a volume group. + + + :return: The volume_group_backup_id of this VolumeBackup. + :rtype: str + """ + return self._volume_group_backup_id + + @volume_group_backup_id.setter + def volume_group_backup_id(self, volume_group_backup_id): + """ + Sets the volume_group_backup_id of this VolumeBackup. + The OCID of the volume group backup associated with the backup. This is an optional field. If it is not present in the response, the backup does not belong to a volume group. + + + :param volume_group_backup_id: The volume_group_backup_id of this VolumeBackup. + :type: str + """ + self._volume_group_backup_id = volume_group_backup_id + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/core/models/volume_backup_schedule.py b/src/oci/core/models/volume_backup_schedule.py index cff083abd8..2290aec046 100644 --- a/src/oci/core/models/volume_backup_schedule.py +++ b/src/oci/core/models/volume_backup_schedule.py @@ -195,6 +195,18 @@ def __init__(self, **kwargs): Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type time_zone: str + :param retention_period: + The value to assign to the retention_period property of this VolumeBackupSchedule. + :type retention_period: oci.core.models.RetentionDuration + + :param is_prevent_deletion_enabled: + The value to assign to the is_prevent_deletion_enabled property of this VolumeBackupSchedule. + :type is_prevent_deletion_enabled: bool + + :param is_retention_lock_enabled: + The value to assign to the is_retention_lock_enabled property of this VolumeBackupSchedule. + :type is_retention_lock_enabled: bool + """ self.swagger_types = { 'backup_type': 'str', @@ -206,7 +218,10 @@ def __init__(self, **kwargs): 'day_of_month': 'int', 'month': 'str', 'retention_seconds': 'int', - 'time_zone': 'str' + 'time_zone': 'str', + 'retention_period': 'RetentionDuration', + 'is_prevent_deletion_enabled': 'bool', + 'is_retention_lock_enabled': 'bool' } self.attribute_map = { 'backup_type': 'backupType', @@ -218,7 +233,10 @@ def __init__(self, **kwargs): 'day_of_month': 'dayOfMonth', 'month': 'month', 'retention_seconds': 'retentionSeconds', - 'time_zone': 'timeZone' + 'time_zone': 'timeZone', + 'retention_period': 'retentionPeriod', + 'is_prevent_deletion_enabled': 'isPreventDeletionEnabled', + 'is_retention_lock_enabled': 'isRetentionLockEnabled' } self._backup_type = None self._offset_seconds = None @@ -230,6 +248,9 @@ def __init__(self, **kwargs): self._month = None self._retention_seconds = None self._time_zone = None + self._retention_period = None + self._is_prevent_deletion_enabled = None + self._is_retention_lock_enabled = None @property def backup_type(self): @@ -555,6 +576,74 @@ def time_zone(self, time_zone): time_zone = 'UNKNOWN_ENUM_VALUE' self._time_zone = time_zone + @property + def retention_period(self): + """ + Gets the retention_period of this VolumeBackupSchedule. + + :return: The retention_period of this VolumeBackupSchedule. + :rtype: oci.core.models.RetentionDuration + """ + return self._retention_period + + @retention_period.setter + def retention_period(self, retention_period): + """ + Sets the retention_period of this VolumeBackupSchedule. + + :param retention_period: The retention_period of this VolumeBackupSchedule. + :type: oci.core.models.RetentionDuration + """ + self._retention_period = retention_period + + @property + def is_prevent_deletion_enabled(self): + """ + Gets the is_prevent_deletion_enabled of this VolumeBackupSchedule. + Prevent backups from being deleted during the configured retention period. This is an optional field. If it is not specified, it is set to null, prevent deletion will not be applied to the backups. + + + :return: The is_prevent_deletion_enabled of this VolumeBackupSchedule. + :rtype: bool + """ + return self._is_prevent_deletion_enabled + + @is_prevent_deletion_enabled.setter + def is_prevent_deletion_enabled(self, is_prevent_deletion_enabled): + """ + Sets the is_prevent_deletion_enabled of this VolumeBackupSchedule. + Prevent backups from being deleted during the configured retention period. This is an optional field. If it is not specified, it is set to null, prevent deletion will not be applied to the backups. + + + :param is_prevent_deletion_enabled: The is_prevent_deletion_enabled of this VolumeBackupSchedule. + :type: bool + """ + self._is_prevent_deletion_enabled = is_prevent_deletion_enabled + + @property + def is_retention_lock_enabled(self): + """ + Gets the is_retention_lock_enabled of this VolumeBackupSchedule. + feature that prevents deletion or alteration of backup data for a specified period to ensure data protection and regulatory compliance. This is an optional field. If it is not specified, it is set to null, no retention lock will be applied to the backups. This feature should be used in conjunction with the retention-period field. + + + :return: The is_retention_lock_enabled of this VolumeBackupSchedule. + :rtype: bool + """ + return self._is_retention_lock_enabled + + @is_retention_lock_enabled.setter + def is_retention_lock_enabled(self, is_retention_lock_enabled): + """ + Sets the is_retention_lock_enabled of this VolumeBackupSchedule. + feature that prevents deletion or alteration of backup data for a specified period to ensure data protection and regulatory compliance. This is an optional field. If it is not specified, it is set to null, no retention lock will be applied to the backups. This feature should be used in conjunction with the retention-period field. + + + :param is_retention_lock_enabled: The is_retention_lock_enabled of this VolumeBackupSchedule. + :type: bool + """ + self._is_retention_lock_enabled = is_retention_lock_enabled + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/core/models/volume_group_backup.py b/src/oci/core/models/volume_group_backup.py index 13571bdecf..ffe7026a2b 100644 --- a/src/oci/core/models/volume_group_backup.py +++ b/src/oci/core/models/volume_group_backup.py @@ -153,6 +153,26 @@ def __init__(self, **kwargs): The value to assign to the source_volume_group_backup_id property of this VolumeGroupBackup. :type source_volume_group_backup_id: str + :param time_retention_expires_at: + The value to assign to the time_retention_expires_at property of this VolumeGroupBackup. + :type time_retention_expires_at: datetime + + :param retention_period: + The value to assign to the retention_period property of this VolumeGroupBackup. + :type retention_period: oci.core.models.RetentionDuration + + :param is_prevent_deletion_enabled: + The value to assign to the is_prevent_deletion_enabled property of this VolumeGroupBackup. + :type is_prevent_deletion_enabled: bool + + :param is_retention_lock_enabled: + The value to assign to the is_retention_lock_enabled property of this VolumeGroupBackup. + :type is_retention_lock_enabled: bool + + :param is_indefinite_retention_enabled: + The value to assign to the is_indefinite_retention_enabled property of this VolumeGroupBackup. + :type is_indefinite_retention_enabled: bool + """ self.swagger_types = { 'compartment_id': 'str', @@ -172,7 +192,12 @@ def __init__(self, **kwargs): 'unique_size_in_gbs': 'int', 'volume_backup_ids': 'list[str]', 'volume_group_id': 'str', - 'source_volume_group_backup_id': 'str' + 'source_volume_group_backup_id': 'str', + 'time_retention_expires_at': 'datetime', + 'retention_period': 'RetentionDuration', + 'is_prevent_deletion_enabled': 'bool', + 'is_retention_lock_enabled': 'bool', + 'is_indefinite_retention_enabled': 'bool' } self.attribute_map = { 'compartment_id': 'compartmentId', @@ -192,7 +217,12 @@ def __init__(self, **kwargs): 'unique_size_in_gbs': 'uniqueSizeInGbs', 'volume_backup_ids': 'volumeBackupIds', 'volume_group_id': 'volumeGroupId', - 'source_volume_group_backup_id': 'sourceVolumeGroupBackupId' + 'source_volume_group_backup_id': 'sourceVolumeGroupBackupId', + 'time_retention_expires_at': 'timeRetentionExpiresAt', + 'retention_period': 'retentionPeriod', + 'is_prevent_deletion_enabled': 'isPreventDeletionEnabled', + 'is_retention_lock_enabled': 'isRetentionLockEnabled', + 'is_indefinite_retention_enabled': 'isIndefiniteRetentionEnabled' } self._compartment_id = None self._defined_tags = None @@ -212,6 +242,11 @@ def __init__(self, **kwargs): self._volume_backup_ids = None self._volume_group_id = None self._source_volume_group_backup_id = None + self._time_retention_expires_at = None + self._retention_period = None + self._is_prevent_deletion_enabled = None + self._is_retention_lock_enabled = None + self._is_indefinite_retention_enabled = None @property def compartment_id(self): @@ -721,6 +756,122 @@ def source_volume_group_backup_id(self, source_volume_group_backup_id): """ self._source_volume_group_backup_id = source_volume_group_backup_id + @property + def time_retention_expires_at(self): + """ + Gets the time_retention_expires_at of this VolumeGroupBackup. + The date and time when a backup\u2019s retention period ends and it is set to expire. This is an optional field. If it is not specified, it is set to null, no retention period will be applied to the backups. + + + :return: The time_retention_expires_at of this VolumeGroupBackup. + :rtype: datetime + """ + return self._time_retention_expires_at + + @time_retention_expires_at.setter + def time_retention_expires_at(self, time_retention_expires_at): + """ + Sets the time_retention_expires_at of this VolumeGroupBackup. + The date and time when a backup\u2019s retention period ends and it is set to expire. This is an optional field. If it is not specified, it is set to null, no retention period will be applied to the backups. + + + :param time_retention_expires_at: The time_retention_expires_at of this VolumeGroupBackup. + :type: datetime + """ + self._time_retention_expires_at = time_retention_expires_at + + @property + def retention_period(self): + """ + Gets the retention_period of this VolumeGroupBackup. + + :return: The retention_period of this VolumeGroupBackup. + :rtype: oci.core.models.RetentionDuration + """ + return self._retention_period + + @retention_period.setter + def retention_period(self, retention_period): + """ + Sets the retention_period of this VolumeGroupBackup. + + :param retention_period: The retention_period of this VolumeGroupBackup. + :type: oci.core.models.RetentionDuration + """ + self._retention_period = retention_period + + @property + def is_prevent_deletion_enabled(self): + """ + Gets the is_prevent_deletion_enabled of this VolumeGroupBackup. + Prevent backups from being deleted during the configured retention period. This is an optional field. If it is not specified, it is set to null, prevent deletion will not be applied to the backups. + + + :return: The is_prevent_deletion_enabled of this VolumeGroupBackup. + :rtype: bool + """ + return self._is_prevent_deletion_enabled + + @is_prevent_deletion_enabled.setter + def is_prevent_deletion_enabled(self, is_prevent_deletion_enabled): + """ + Sets the is_prevent_deletion_enabled of this VolumeGroupBackup. + Prevent backups from being deleted during the configured retention period. This is an optional field. If it is not specified, it is set to null, prevent deletion will not be applied to the backups. + + + :param is_prevent_deletion_enabled: The is_prevent_deletion_enabled of this VolumeGroupBackup. + :type: bool + """ + self._is_prevent_deletion_enabled = is_prevent_deletion_enabled + + @property + def is_retention_lock_enabled(self): + """ + Gets the is_retention_lock_enabled of this VolumeGroupBackup. + feature that prevents deletion or alteration of backup data for a specified period to ensure data protection and regulatory compliance. This is an optional field. If it is not specified, it is set to null, no retention lock will be applied to the backups. This feature should be used in conjunction with the retention-period field. + + + :return: The is_retention_lock_enabled of this VolumeGroupBackup. + :rtype: bool + """ + return self._is_retention_lock_enabled + + @is_retention_lock_enabled.setter + def is_retention_lock_enabled(self, is_retention_lock_enabled): + """ + Sets the is_retention_lock_enabled of this VolumeGroupBackup. + feature that prevents deletion or alteration of backup data for a specified period to ensure data protection and regulatory compliance. This is an optional field. If it is not specified, it is set to null, no retention lock will be applied to the backups. This feature should be used in conjunction with the retention-period field. + + + :param is_retention_lock_enabled: The is_retention_lock_enabled of this VolumeGroupBackup. + :type: bool + """ + self._is_retention_lock_enabled = is_retention_lock_enabled + + @property + def is_indefinite_retention_enabled(self): + """ + Gets the is_indefinite_retention_enabled of this VolumeGroupBackup. + feature that preserves backup data from modification or deletion to ensure it remains available for legal or regulatory investigations or litigation, regardless of standard retention policies. This is an optional field. If it is not specified, it is set to null, no legal hold will be applied to the backups. + + + :return: The is_indefinite_retention_enabled of this VolumeGroupBackup. + :rtype: bool + """ + return self._is_indefinite_retention_enabled + + @is_indefinite_retention_enabled.setter + def is_indefinite_retention_enabled(self, is_indefinite_retention_enabled): + """ + Sets the is_indefinite_retention_enabled of this VolumeGroupBackup. + feature that preserves backup data from modification or deletion to ensure it remains available for legal or regulatory investigations or litigation, regardless of standard retention policies. This is an optional field. If it is not specified, it is set to null, no legal hold will be applied to the backups. + + + :param is_indefinite_retention_enabled: The is_indefinite_retention_enabled of this VolumeGroupBackup. + :type: bool + """ + self._is_indefinite_retention_enabled = is_indefinite_retention_enabled + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/core/virtual_network_client.py b/src/oci/core/virtual_network_client.py index 54c9d579d6..3b8d076a96 100644 --- a/src/oci/core/virtual_network_client.py +++ b/src/oci/core/virtual_network_client.py @@ -23559,6 +23559,140 @@ def list_private_ips(self, **kwargs): api_reference_link=api_reference_link, required_arguments=required_arguments) + def list_provider_remote_regions(self, provider_service_id, **kwargs): + """ + The operation lists available OCI's FastConnect MultiCloud Provider/Partner remote region names associated with an OCI region. + + + :param str provider_service_id: (required) + The `OCID`__ of the provider service. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + Unique identifier for the request. + If you need to contact Oracle about a particular request, please provide the request ID. + + :param int limit: (optional) + For list pagination. The maximum number of results per page, or items to return in a paginated + \"List\" call. For important details about how pagination works, see + `List Pagination`__. + + Example: `50` + + __ https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param str page: (optional) + For list pagination. The value of the `opc-next-page` response header from the previous \"List\" + call. For important details about how pagination works, see + `List Pagination`__. + + __ https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.core.models.ProviderRemoteRegionName` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_provider_remote_regions API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['providerServiceId'] + resource_path = "/fastConnectProviderServices/{providerServiceId}/providerRemoteRegions" + method = "GET" + operation_name = "list_provider_remote_regions" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/iaas/20160918/ProviderRemoteRegionName/ListProviderRemoteRegions" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id", + "limit", + "page" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_provider_remote_regions got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "providerServiceId": provider_service_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + query_params = { + "limit": kwargs.get("limit", missing), + "page": kwargs.get("page", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="list[ProviderRemoteRegionName]", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="list[ProviderRemoteRegionName]", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + def list_public_ip_pools(self, compartment_id, **kwargs): """ Lists the public IP pools in the specified compartment. diff --git a/src/oci/data_integration/models/connection_from_adwc.py b/src/oci/data_integration/models/connection_from_adwc.py index d521cd1a4c..eb8d4e5ced 100644 --- a/src/oci/data_integration/models/connection_from_adwc.py +++ b/src/oci/data_integration/models/connection_from_adwc.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .connection import Connection -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -141,6 +141,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -279,7 +282,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/connection_from_adwc_details.py b/src/oci/data_integration/models/connection_from_adwc_details.py index ffe7048394..769db7fcd7 100644 --- a/src/oci/data_integration/models/connection_from_adwc_details.py +++ b/src/oci/data_integration/models/connection_from_adwc_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .connection_details import ConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -136,6 +136,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -273,7 +276,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/connection_from_atp.py b/src/oci/data_integration/models/connection_from_atp.py index 675bc3d3fe..c684b3810e 100644 --- a/src/oci/data_integration/models/connection_from_atp.py +++ b/src/oci/data_integration/models/connection_from_atp.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .connection import Connection -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -141,6 +141,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -279,7 +282,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/connection_from_atp_details.py b/src/oci/data_integration/models/connection_from_atp_details.py index 4e2fc50d92..bdcba4b400 100644 --- a/src/oci/data_integration/models/connection_from_atp_details.py +++ b/src/oci/data_integration/models/connection_from_atp_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .connection_details import ConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -136,6 +136,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -273,7 +276,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/connection_from_my_sql_heat_wave.py b/src/oci/data_integration/models/connection_from_my_sql_heat_wave.py index d5e063eb35..de7287c357 100644 --- a/src/oci/data_integration/models/connection_from_my_sql_heat_wave.py +++ b/src/oci/data_integration/models/connection_from_my_sql_heat_wave.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .connection import Connection -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -129,6 +129,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -217,7 +220,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/connection_from_my_sql_heat_wave_details.py b/src/oci/data_integration/models/connection_from_my_sql_heat_wave_details.py index a205ad0bda..1241059065 100644 --- a/src/oci/data_integration/models/connection_from_my_sql_heat_wave_details.py +++ b/src/oci/data_integration/models/connection_from_my_sql_heat_wave_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .connection_details import ConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -124,6 +124,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -211,7 +214,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/connection_from_oracle.py b/src/oci/data_integration/models/connection_from_oracle.py index 5a0d924e8a..3a4808874b 100644 --- a/src/oci/data_integration/models/connection_from_oracle.py +++ b/src/oci/data_integration/models/connection_from_oracle.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .connection import Connection -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -129,6 +129,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -217,7 +220,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/connection_from_oracle_details.py b/src/oci/data_integration/models/connection_from_oracle_details.py index f97a6c3f0b..a6b8b5ed10 100644 --- a/src/oci/data_integration/models/connection_from_oracle_details.py +++ b/src/oci/data_integration/models/connection_from_oracle_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .connection_details import ConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -124,6 +124,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -211,7 +214,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/connection_from_oracle_ebs.py b/src/oci/data_integration/models/connection_from_oracle_ebs.py index 3fa37427a7..b86641c89e 100644 --- a/src/oci/data_integration/models/connection_from_oracle_ebs.py +++ b/src/oci/data_integration/models/connection_from_oracle_ebs.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .connection import Connection -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -129,6 +129,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -217,7 +220,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/connection_from_oracle_ebs_details.py b/src/oci/data_integration/models/connection_from_oracle_ebs_details.py index 3247fd423a..18b15a5197 100644 --- a/src/oci/data_integration/models/connection_from_oracle_ebs_details.py +++ b/src/oci/data_integration/models/connection_from_oracle_ebs_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .connection_details import ConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -124,6 +124,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -211,7 +214,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/connection_from_oracle_people_soft.py b/src/oci/data_integration/models/connection_from_oracle_people_soft.py index 48f7dc283f..ad33cd92e6 100644 --- a/src/oci/data_integration/models/connection_from_oracle_people_soft.py +++ b/src/oci/data_integration/models/connection_from_oracle_people_soft.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .connection import Connection -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -129,6 +129,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -217,7 +220,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/connection_from_oracle_people_soft_details.py b/src/oci/data_integration/models/connection_from_oracle_people_soft_details.py index b6ef9fe530..fd8a3a6799 100644 --- a/src/oci/data_integration/models/connection_from_oracle_people_soft_details.py +++ b/src/oci/data_integration/models/connection_from_oracle_people_soft_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .connection_details import ConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -124,6 +124,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -211,7 +214,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/connection_from_oracle_siebel.py b/src/oci/data_integration/models/connection_from_oracle_siebel.py index 742ed2977f..c61849927e 100644 --- a/src/oci/data_integration/models/connection_from_oracle_siebel.py +++ b/src/oci/data_integration/models/connection_from_oracle_siebel.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .connection import Connection -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -129,6 +129,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -217,7 +220,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/connection_from_oracle_siebel_details.py b/src/oci/data_integration/models/connection_from_oracle_siebel_details.py index 0178daa6b4..749bbb0c4d 100644 --- a/src/oci/data_integration/models/connection_from_oracle_siebel_details.py +++ b/src/oci/data_integration/models/connection_from_oracle_siebel_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .connection_details import ConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -124,6 +124,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -211,7 +214,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/connection_summary_from_adwc.py b/src/oci/data_integration/models/connection_summary_from_adwc.py index 44edd9f4aa..6ed259d45b 100644 --- a/src/oci/data_integration/models/connection_summary_from_adwc.py +++ b/src/oci/data_integration/models/connection_summary_from_adwc.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .connection_summary import ConnectionSummary -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -142,6 +142,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -280,7 +283,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/connection_summary_from_atp.py b/src/oci/data_integration/models/connection_summary_from_atp.py index f70c04ace7..e84d18d28a 100644 --- a/src/oci/data_integration/models/connection_summary_from_atp.py +++ b/src/oci/data_integration/models/connection_summary_from_atp.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .connection_summary import ConnectionSummary -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -142,6 +142,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -280,7 +283,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/connection_summary_from_my_sql_heat_wave.py b/src/oci/data_integration/models/connection_summary_from_my_sql_heat_wave.py index 0c668965e7..13416579f4 100644 --- a/src/oci/data_integration/models/connection_summary_from_my_sql_heat_wave.py +++ b/src/oci/data_integration/models/connection_summary_from_my_sql_heat_wave.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .connection_summary import ConnectionSummary -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -130,6 +130,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -218,7 +221,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/connection_summary_from_oracle.py b/src/oci/data_integration/models/connection_summary_from_oracle.py index a758a3ec6b..4d3e5534bd 100644 --- a/src/oci/data_integration/models/connection_summary_from_oracle.py +++ b/src/oci/data_integration/models/connection_summary_from_oracle.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .connection_summary import ConnectionSummary -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -130,6 +130,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -218,7 +221,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/connection_summary_from_oracle_ebs.py b/src/oci/data_integration/models/connection_summary_from_oracle_ebs.py index 20810caaf8..f50c9e97e7 100644 --- a/src/oci/data_integration/models/connection_summary_from_oracle_ebs.py +++ b/src/oci/data_integration/models/connection_summary_from_oracle_ebs.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .connection_summary import ConnectionSummary -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -130,6 +130,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -218,7 +221,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/connection_summary_from_oracle_people_soft.py b/src/oci/data_integration/models/connection_summary_from_oracle_people_soft.py index 219a0e60a5..3ad05a733c 100644 --- a/src/oci/data_integration/models/connection_summary_from_oracle_people_soft.py +++ b/src/oci/data_integration/models/connection_summary_from_oracle_people_soft.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .connection_summary import ConnectionSummary -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -130,6 +130,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -218,7 +221,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/connection_summary_from_oracle_siebel.py b/src/oci/data_integration/models/connection_summary_from_oracle_siebel.py index 68afa3f29e..7e6e7e372c 100644 --- a/src/oci/data_integration/models/connection_summary_from_oracle_siebel.py +++ b/src/oci/data_integration/models/connection_summary_from_oracle_siebel.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .connection_summary import ConnectionSummary -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -130,6 +130,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -218,7 +221,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/create_connection_from_adwc.py b/src/oci/data_integration/models/create_connection_from_adwc.py index 785d730ca0..e0078b94f4 100644 --- a/src/oci/data_integration/models/create_connection_from_adwc.py +++ b/src/oci/data_integration/models/create_connection_from_adwc.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -117,6 +117,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -251,7 +254,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/create_connection_from_atp.py b/src/oci/data_integration/models/create_connection_from_atp.py index 786526b847..f36c4c6236 100644 --- a/src/oci/data_integration/models/create_connection_from_atp.py +++ b/src/oci/data_integration/models/create_connection_from_atp.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -117,6 +117,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -251,7 +254,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/create_connection_from_jdbc.py b/src/oci/data_integration/models/create_connection_from_jdbc.py index 70322670c5..c8f1de75f5 100644 --- a/src/oci/data_integration/models/create_connection_from_jdbc.py +++ b/src/oci/data_integration/models/create_connection_from_jdbc.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -105,6 +105,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -189,7 +192,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/create_connection_from_my_sql.py b/src/oci/data_integration/models/create_connection_from_my_sql.py index 0d25e19210..4ac5939540 100644 --- a/src/oci/data_integration/models/create_connection_from_my_sql.py +++ b/src/oci/data_integration/models/create_connection_from_my_sql.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -105,6 +105,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -189,7 +192,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/create_connection_from_my_sql_heat_wave.py b/src/oci/data_integration/models/create_connection_from_my_sql_heat_wave.py index 003d467c27..c1e72de607 100644 --- a/src/oci/data_integration/models/create_connection_from_my_sql_heat_wave.py +++ b/src/oci/data_integration/models/create_connection_from_my_sql_heat_wave.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -105,6 +105,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -189,7 +192,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/create_connection_from_oracle.py b/src/oci/data_integration/models/create_connection_from_oracle.py index 5bfe3e7b02..95a7e32447 100644 --- a/src/oci/data_integration/models/create_connection_from_oracle.py +++ b/src/oci/data_integration/models/create_connection_from_oracle.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -105,6 +105,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -189,7 +192,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/create_connection_from_oracle_ebs.py b/src/oci/data_integration/models/create_connection_from_oracle_ebs.py index e82f959d01..e6b531e49c 100644 --- a/src/oci/data_integration/models/create_connection_from_oracle_ebs.py +++ b/src/oci/data_integration/models/create_connection_from_oracle_ebs.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -105,6 +105,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -189,7 +192,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/create_connection_from_oracle_people_soft.py b/src/oci/data_integration/models/create_connection_from_oracle_people_soft.py index 6936a4d75f..950a2c6545 100644 --- a/src/oci/data_integration/models/create_connection_from_oracle_people_soft.py +++ b/src/oci/data_integration/models/create_connection_from_oracle_people_soft.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -105,6 +105,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -189,7 +192,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/create_connection_from_oracle_siebel.py b/src/oci/data_integration/models/create_connection_from_oracle_siebel.py index afb9bf8ca2..e5593e1f8e 100644 --- a/src/oci/data_integration/models/create_connection_from_oracle_siebel.py +++ b/src/oci/data_integration/models/create_connection_from_oracle_siebel.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -105,6 +105,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -189,7 +192,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/create_data_asset_from_adwc.py b/src/oci/data_integration/models/create_data_asset_from_adwc.py index 5b65016122..9393e62109 100644 --- a/src/oci/data_integration/models/create_data_asset_from_adwc.py +++ b/src/oci/data_integration/models/create_data_asset_from_adwc.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .create_data_asset_details import CreateDataAssetDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -165,6 +165,9 @@ def __init__(self, **kwargs): 'staging_connection': 'stagingConnection', 'bucket_schema': 'bucketSchema' } + self._redacted_field_paths = [ + ['default_connection', 'password'], + ] self._model_type = None self._key = None self._model_version = None @@ -479,7 +482,9 @@ def bucket_schema(self, bucket_schema): self._bucket_schema = bucket_schema def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['default_connection', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/create_data_asset_from_atp.py b/src/oci/data_integration/models/create_data_asset_from_atp.py index 1354de9bdd..2770133baf 100644 --- a/src/oci/data_integration/models/create_data_asset_from_atp.py +++ b/src/oci/data_integration/models/create_data_asset_from_atp.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .create_data_asset_details import CreateDataAssetDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -165,6 +165,9 @@ def __init__(self, **kwargs): 'staging_connection': 'stagingConnection', 'bucket_schema': 'bucketSchema' } + self._redacted_field_paths = [ + ['default_connection', 'password'], + ] self._model_type = None self._key = None self._model_version = None @@ -479,7 +482,9 @@ def bucket_schema(self, bucket_schema): self._bucket_schema = bucket_schema def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['default_connection', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/create_data_asset_from_jdbc.py b/src/oci/data_integration/models/create_data_asset_from_jdbc.py index 607e770c5e..b035e1756d 100644 --- a/src/oci/data_integration/models/create_data_asset_from_jdbc.py +++ b/src/oci/data_integration/models/create_data_asset_from_jdbc.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .create_data_asset_details import CreateDataAssetDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -111,6 +111,9 @@ def __init__(self, **kwargs): 'data_asset_type': 'dataAssetType', 'default_connection': 'defaultConnection' } + self._redacted_field_paths = [ + ['default_connection', 'password'], + ] self._model_type = None self._key = None self._model_version = None @@ -220,7 +223,9 @@ def default_connection(self, default_connection): self._default_connection = default_connection def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['default_connection', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/create_data_asset_from_my_sql.py b/src/oci/data_integration/models/create_data_asset_from_my_sql.py index 81a3a0edc4..822b5ed653 100644 --- a/src/oci/data_integration/models/create_data_asset_from_my_sql.py +++ b/src/oci/data_integration/models/create_data_asset_from_my_sql.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .create_data_asset_details import CreateDataAssetDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -111,6 +111,9 @@ def __init__(self, **kwargs): 'service_name': 'serviceName', 'default_connection': 'defaultConnection' } + self._redacted_field_paths = [ + ['default_connection', 'password'], + ] self._model_type = None self._key = None self._model_version = None @@ -220,7 +223,9 @@ def default_connection(self, default_connection): self._default_connection = default_connection def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['default_connection', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/create_data_asset_from_my_sql_heat_wave.py b/src/oci/data_integration/models/create_data_asset_from_my_sql_heat_wave.py index 8124dfee1f..a971c16800 100644 --- a/src/oci/data_integration/models/create_data_asset_from_my_sql_heat_wave.py +++ b/src/oci/data_integration/models/create_data_asset_from_my_sql_heat_wave.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .create_data_asset_details import CreateDataAssetDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -111,6 +111,9 @@ def __init__(self, **kwargs): 'service_name': 'serviceName', 'default_connection': 'defaultConnection' } + self._redacted_field_paths = [ + ['default_connection', 'password'], + ] self._model_type = None self._key = None self._model_version = None @@ -220,7 +223,9 @@ def default_connection(self, default_connection): self._default_connection = default_connection def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['default_connection', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/create_data_asset_from_oracle.py b/src/oci/data_integration/models/create_data_asset_from_oracle.py index 412e7155f8..dcb9876424 100644 --- a/src/oci/data_integration/models/create_data_asset_from_oracle.py +++ b/src/oci/data_integration/models/create_data_asset_from_oracle.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .create_data_asset_details import CreateDataAssetDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -141,6 +141,9 @@ def __init__(self, **kwargs): 'wallet_password_secret': 'walletPasswordSecret', 'default_connection': 'defaultConnection' } + self._redacted_field_paths = [ + ['default_connection', 'password'], + ] self._model_type = None self._key = None self._model_version = None @@ -367,7 +370,9 @@ def default_connection(self, default_connection): self._default_connection = default_connection def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['default_connection', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/create_data_asset_from_oracle_ebs.py b/src/oci/data_integration/models/create_data_asset_from_oracle_ebs.py index 843d1b2062..febdcecb5f 100644 --- a/src/oci/data_integration/models/create_data_asset_from_oracle_ebs.py +++ b/src/oci/data_integration/models/create_data_asset_from_oracle_ebs.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .create_data_asset_details import CreateDataAssetDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -135,6 +135,9 @@ def __init__(self, **kwargs): 'wallet_password_secret': 'walletPasswordSecret', 'default_connection': 'defaultConnection' } + self._redacted_field_paths = [ + ['default_connection', 'password'], + ] self._model_type = None self._key = None self._model_version = None @@ -336,7 +339,9 @@ def default_connection(self, default_connection): self._default_connection = default_connection def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['default_connection', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/create_data_asset_from_oracle_people_soft.py b/src/oci/data_integration/models/create_data_asset_from_oracle_people_soft.py index f39d019af3..7149b6341f 100644 --- a/src/oci/data_integration/models/create_data_asset_from_oracle_people_soft.py +++ b/src/oci/data_integration/models/create_data_asset_from_oracle_people_soft.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .create_data_asset_details import CreateDataAssetDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -135,6 +135,9 @@ def __init__(self, **kwargs): 'wallet_password_secret': 'walletPasswordSecret', 'default_connection': 'defaultConnection' } + self._redacted_field_paths = [ + ['default_connection', 'password'], + ] self._model_type = None self._key = None self._model_version = None @@ -336,7 +339,9 @@ def default_connection(self, default_connection): self._default_connection = default_connection def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['default_connection', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/create_data_asset_from_oracle_siebel.py b/src/oci/data_integration/models/create_data_asset_from_oracle_siebel.py index 781364f1ef..ec6beb8148 100644 --- a/src/oci/data_integration/models/create_data_asset_from_oracle_siebel.py +++ b/src/oci/data_integration/models/create_data_asset_from_oracle_siebel.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .create_data_asset_details import CreateDataAssetDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -135,6 +135,9 @@ def __init__(self, **kwargs): 'wallet_password_secret': 'walletPasswordSecret', 'default_connection': 'defaultConnection' } + self._redacted_field_paths = [ + ['default_connection', 'password'], + ] self._model_type = None self._key = None self._model_version = None @@ -336,7 +339,9 @@ def default_connection(self, default_connection): self._default_connection = default_connection def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['default_connection', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/data_asset_from_adwc_details.py b/src/oci/data_integration/models/data_asset_from_adwc_details.py index 297e882ee2..f6e8ec17cc 100644 --- a/src/oci/data_integration/models/data_asset_from_adwc_details.py +++ b/src/oci/data_integration/models/data_asset_from_adwc_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .data_asset import DataAsset -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -153,6 +153,9 @@ def __init__(self, **kwargs): 'staging_connection': 'stagingConnection', 'bucket_schema': 'bucketSchema' } + self._redacted_field_paths = [ + ['default_connection', 'password'], + ] self._model_type = None self._key = None self._model_version = None @@ -329,7 +332,9 @@ def bucket_schema(self, bucket_schema): self._bucket_schema = bucket_schema def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['default_connection', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/data_asset_from_atp_details.py b/src/oci/data_integration/models/data_asset_from_atp_details.py index dbec726350..c8ebc3f9ad 100644 --- a/src/oci/data_integration/models/data_asset_from_atp_details.py +++ b/src/oci/data_integration/models/data_asset_from_atp_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .data_asset import DataAsset -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -153,6 +153,9 @@ def __init__(self, **kwargs): 'staging_connection': 'stagingConnection', 'bucket_schema': 'bucketSchema' } + self._redacted_field_paths = [ + ['default_connection', 'password'], + ] self._model_type = None self._key = None self._model_version = None @@ -329,7 +332,9 @@ def bucket_schema(self, bucket_schema): self._bucket_schema = bucket_schema def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['default_connection', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/data_asset_from_my_sql_heat_wave.py b/src/oci/data_integration/models/data_asset_from_my_sql_heat_wave.py index 19c8d2755d..7d962bcd68 100644 --- a/src/oci/data_integration/models/data_asset_from_my_sql_heat_wave.py +++ b/src/oci/data_integration/models/data_asset_from_my_sql_heat_wave.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .data_asset import DataAsset -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -135,6 +135,9 @@ def __init__(self, **kwargs): 'service_name': 'serviceName', 'default_connection': 'defaultConnection' } + self._redacted_field_paths = [ + ['default_connection', 'password'], + ] self._model_type = None self._key = None self._model_version = None @@ -248,7 +251,9 @@ def default_connection(self, default_connection): self._default_connection = default_connection def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['default_connection', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/data_asset_from_oracle_details.py b/src/oci/data_integration/models/data_asset_from_oracle_details.py index a4480f465e..6a46431d83 100644 --- a/src/oci/data_integration/models/data_asset_from_oracle_details.py +++ b/src/oci/data_integration/models/data_asset_from_oracle_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .data_asset import DataAsset -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -165,6 +165,9 @@ def __init__(self, **kwargs): 'wallet_password_secret': 'walletPasswordSecret', 'default_connection': 'defaultConnection' } + self._redacted_field_paths = [ + ['default_connection', 'password'], + ] self._model_type = None self._key = None self._model_version = None @@ -395,7 +398,9 @@ def default_connection(self, default_connection): self._default_connection = default_connection def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['default_connection', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/data_asset_from_oracle_ebs_details.py b/src/oci/data_integration/models/data_asset_from_oracle_ebs_details.py index 2814c75f45..e64ff41ef9 100644 --- a/src/oci/data_integration/models/data_asset_from_oracle_ebs_details.py +++ b/src/oci/data_integration/models/data_asset_from_oracle_ebs_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .data_asset import DataAsset -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -159,6 +159,9 @@ def __init__(self, **kwargs): 'wallet_password_secret': 'walletPasswordSecret', 'default_connection': 'defaultConnection' } + self._redacted_field_paths = [ + ['default_connection', 'password'], + ] self._model_type = None self._key = None self._model_version = None @@ -364,7 +367,9 @@ def default_connection(self, default_connection): self._default_connection = default_connection def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['default_connection', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/data_asset_from_oracle_people_soft_details.py b/src/oci/data_integration/models/data_asset_from_oracle_people_soft_details.py index 906111cc3e..3715202da9 100644 --- a/src/oci/data_integration/models/data_asset_from_oracle_people_soft_details.py +++ b/src/oci/data_integration/models/data_asset_from_oracle_people_soft_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .data_asset import DataAsset -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -159,6 +159,9 @@ def __init__(self, **kwargs): 'wallet_password_secret': 'walletPasswordSecret', 'default_connection': 'defaultConnection' } + self._redacted_field_paths = [ + ['default_connection', 'password'], + ] self._model_type = None self._key = None self._model_version = None @@ -364,7 +367,9 @@ def default_connection(self, default_connection): self._default_connection = default_connection def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['default_connection', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/data_asset_from_oracle_siebel_details.py b/src/oci/data_integration/models/data_asset_from_oracle_siebel_details.py index 33a6040a73..3b0a1ee1c9 100644 --- a/src/oci/data_integration/models/data_asset_from_oracle_siebel_details.py +++ b/src/oci/data_integration/models/data_asset_from_oracle_siebel_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .data_asset import DataAsset -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -159,6 +159,9 @@ def __init__(self, **kwargs): 'wallet_password_secret': 'walletPasswordSecret', 'default_connection': 'defaultConnection' } + self._redacted_field_paths = [ + ['default_connection', 'password'], + ] self._model_type = None self._key = None self._model_version = None @@ -364,7 +367,9 @@ def default_connection(self, default_connection): self._default_connection = default_connection def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['default_connection', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/data_asset_summary_from_adwc.py b/src/oci/data_integration/models/data_asset_summary_from_adwc.py index af2e8e2e61..cd1d7e56bf 100644 --- a/src/oci/data_integration/models/data_asset_summary_from_adwc.py +++ b/src/oci/data_integration/models/data_asset_summary_from_adwc.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .data_asset_summary import DataAssetSummary -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -129,6 +129,9 @@ def __init__(self, **kwargs): 'driver_class': 'driverClass', 'default_connection': 'defaultConnection' } + self._redacted_field_paths = [ + ['default_connection', 'password'], + ] self._model_type = None self._key = None self._model_version = None @@ -241,7 +244,9 @@ def default_connection(self, default_connection): self._default_connection = default_connection def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['default_connection', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/data_asset_summary_from_atp.py b/src/oci/data_integration/models/data_asset_summary_from_atp.py index a90d84fb98..8ce2f9d1f5 100644 --- a/src/oci/data_integration/models/data_asset_summary_from_atp.py +++ b/src/oci/data_integration/models/data_asset_summary_from_atp.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .data_asset_summary import DataAssetSummary -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -129,6 +129,9 @@ def __init__(self, **kwargs): 'driver_class': 'driverClass', 'default_connection': 'defaultConnection' } + self._redacted_field_paths = [ + ['default_connection', 'password'], + ] self._model_type = None self._key = None self._model_version = None @@ -241,7 +244,9 @@ def default_connection(self, default_connection): self._default_connection = default_connection def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['default_connection', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/data_asset_summary_from_my_sql_heat_wave.py b/src/oci/data_integration/models/data_asset_summary_from_my_sql_heat_wave.py index 787f22e297..9aac769004 100644 --- a/src/oci/data_integration/models/data_asset_summary_from_my_sql_heat_wave.py +++ b/src/oci/data_integration/models/data_asset_summary_from_my_sql_heat_wave.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .data_asset_summary import DataAssetSummary -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -129,6 +129,9 @@ def __init__(self, **kwargs): 'service_name': 'serviceName', 'default_connection': 'defaultConnection' } + self._redacted_field_paths = [ + ['default_connection', 'password'], + ] self._model_type = None self._key = None self._model_version = None @@ -241,7 +244,9 @@ def default_connection(self, default_connection): self._default_connection = default_connection def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['default_connection', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/data_asset_summary_from_oracle.py b/src/oci/data_integration/models/data_asset_summary_from_oracle.py index 5bbfe61080..57dde4df52 100644 --- a/src/oci/data_integration/models/data_asset_summary_from_oracle.py +++ b/src/oci/data_integration/models/data_asset_summary_from_oracle.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .data_asset_summary import DataAssetSummary -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -159,6 +159,9 @@ def __init__(self, **kwargs): 'wallet_password_secret': 'walletPasswordSecret', 'default_connection': 'defaultConnection' } + self._redacted_field_paths = [ + ['default_connection', 'password'], + ] self._model_type = None self._key = None self._model_version = None @@ -388,7 +391,9 @@ def default_connection(self, default_connection): self._default_connection = default_connection def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['default_connection', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/data_asset_summary_from_oracle_ebs.py b/src/oci/data_integration/models/data_asset_summary_from_oracle_ebs.py index 7e85dc8c99..90a5320723 100644 --- a/src/oci/data_integration/models/data_asset_summary_from_oracle_ebs.py +++ b/src/oci/data_integration/models/data_asset_summary_from_oracle_ebs.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .data_asset_summary import DataAssetSummary -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -153,6 +153,9 @@ def __init__(self, **kwargs): 'wallet_password_secret': 'walletPasswordSecret', 'default_connection': 'defaultConnection' } + self._redacted_field_paths = [ + ['default_connection', 'password'], + ] self._model_type = None self._key = None self._model_version = None @@ -357,7 +360,9 @@ def default_connection(self, default_connection): self._default_connection = default_connection def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['default_connection', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/data_asset_summary_from_oracle_people_soft.py b/src/oci/data_integration/models/data_asset_summary_from_oracle_people_soft.py index 8c6c1ad38b..3574cfcbdc 100644 --- a/src/oci/data_integration/models/data_asset_summary_from_oracle_people_soft.py +++ b/src/oci/data_integration/models/data_asset_summary_from_oracle_people_soft.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .data_asset_summary import DataAssetSummary -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -153,6 +153,9 @@ def __init__(self, **kwargs): 'wallet_password_secret': 'walletPasswordSecret', 'default_connection': 'defaultConnection' } + self._redacted_field_paths = [ + ['default_connection', 'password'], + ] self._model_type = None self._key = None self._model_version = None @@ -357,7 +360,9 @@ def default_connection(self, default_connection): self._default_connection = default_connection def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['default_connection', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/data_asset_summary_from_oracle_siebel.py b/src/oci/data_integration/models/data_asset_summary_from_oracle_siebel.py index f075822596..1ebad98fc8 100644 --- a/src/oci/data_integration/models/data_asset_summary_from_oracle_siebel.py +++ b/src/oci/data_integration/models/data_asset_summary_from_oracle_siebel.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .data_asset_summary import DataAssetSummary -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -153,6 +153,9 @@ def __init__(self, **kwargs): 'wallet_password_secret': 'walletPasswordSecret', 'default_connection': 'defaultConnection' } + self._redacted_field_paths = [ + ['default_connection', 'password'], + ] self._model_type = None self._key = None self._model_version = None @@ -357,7 +360,9 @@ def default_connection(self, default_connection): self._default_connection = default_connection def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['default_connection', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/update_connection_from_adwc.py b/src/oci/data_integration/models/update_connection_from_adwc.py index 87aa694193..d1f6504db3 100644 --- a/src/oci/data_integration/models/update_connection_from_adwc.py +++ b/src/oci/data_integration/models/update_connection_from_adwc.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -123,6 +123,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -258,7 +261,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/update_connection_from_atp.py b/src/oci/data_integration/models/update_connection_from_atp.py index 66863f453f..bc4918c56f 100644 --- a/src/oci/data_integration/models/update_connection_from_atp.py +++ b/src/oci/data_integration/models/update_connection_from_atp.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -123,6 +123,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -258,7 +261,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/update_connection_from_jdbc.py b/src/oci/data_integration/models/update_connection_from_jdbc.py index 69b46c4cf6..905230a50b 100644 --- a/src/oci/data_integration/models/update_connection_from_jdbc.py +++ b/src/oci/data_integration/models/update_connection_from_jdbc.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -111,6 +111,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -196,7 +199,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/update_connection_from_my_sql.py b/src/oci/data_integration/models/update_connection_from_my_sql.py index 59600186a1..97b26b8096 100644 --- a/src/oci/data_integration/models/update_connection_from_my_sql.py +++ b/src/oci/data_integration/models/update_connection_from_my_sql.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -111,6 +111,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -196,7 +199,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/update_connection_from_my_sql_heat_wave.py b/src/oci/data_integration/models/update_connection_from_my_sql_heat_wave.py index cbe6f77e72..5a98d8986c 100644 --- a/src/oci/data_integration/models/update_connection_from_my_sql_heat_wave.py +++ b/src/oci/data_integration/models/update_connection_from_my_sql_heat_wave.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -111,6 +111,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -196,7 +199,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/update_connection_from_oracle.py b/src/oci/data_integration/models/update_connection_from_oracle.py index 04b32a5894..4ed8eb272b 100644 --- a/src/oci/data_integration/models/update_connection_from_oracle.py +++ b/src/oci/data_integration/models/update_connection_from_oracle.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -111,6 +111,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -196,7 +199,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/update_connection_from_oracle_ebs.py b/src/oci/data_integration/models/update_connection_from_oracle_ebs.py index 76073cee0c..4deedd7ef2 100644 --- a/src/oci/data_integration/models/update_connection_from_oracle_ebs.py +++ b/src/oci/data_integration/models/update_connection_from_oracle_ebs.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -111,6 +111,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -196,7 +199,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/update_connection_from_oracle_people_soft.py b/src/oci/data_integration/models/update_connection_from_oracle_people_soft.py index f947b5e7f8..7edde01ed8 100644 --- a/src/oci/data_integration/models/update_connection_from_oracle_people_soft.py +++ b/src/oci/data_integration/models/update_connection_from_oracle_people_soft.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -111,6 +111,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -196,7 +199,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/update_connection_from_oracle_siebel.py b/src/oci/data_integration/models/update_connection_from_oracle_siebel.py index 6ba9419d75..42aef9f6aa 100644 --- a/src/oci/data_integration/models/update_connection_from_oracle_siebel.py +++ b/src/oci/data_integration/models/update_connection_from_oracle_siebel.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -111,6 +111,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret': 'passwordSecret' } + self._redacted_field_paths = [ + ['password'], + ] self._model_type = None self._key = None self._model_version = None @@ -196,7 +199,9 @@ def password_secret(self, password_secret): self._password_secret = password_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/update_data_asset_from_adwc.py b/src/oci/data_integration/models/update_data_asset_from_adwc.py index cecaddb691..6e0c1f1f8f 100644 --- a/src/oci/data_integration/models/update_data_asset_from_adwc.py +++ b/src/oci/data_integration/models/update_data_asset_from_adwc.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .update_data_asset_details import UpdateDataAssetDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -153,6 +153,9 @@ def __init__(self, **kwargs): 'autonomous_db_id': 'autonomousDbId', 'default_connection': 'defaultConnection' } + self._redacted_field_paths = [ + ['default_connection', 'password'], + ] self._model_type = None self._key = None self._model_version = None @@ -405,7 +408,9 @@ def default_connection(self, default_connection): self._default_connection = default_connection def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['default_connection', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/update_data_asset_from_atp.py b/src/oci/data_integration/models/update_data_asset_from_atp.py index a4603df6d8..f60cefc4d4 100644 --- a/src/oci/data_integration/models/update_data_asset_from_atp.py +++ b/src/oci/data_integration/models/update_data_asset_from_atp.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .update_data_asset_details import UpdateDataAssetDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -153,6 +153,9 @@ def __init__(self, **kwargs): 'autonomous_db_id': 'autonomousDbId', 'default_connection': 'defaultConnection' } + self._redacted_field_paths = [ + ['default_connection', 'password'], + ] self._model_type = None self._key = None self._model_version = None @@ -405,7 +408,9 @@ def default_connection(self, default_connection): self._default_connection = default_connection def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['default_connection', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/update_data_asset_from_jdbc.py b/src/oci/data_integration/models/update_data_asset_from_jdbc.py index 356faf46a9..d628ad2dc6 100644 --- a/src/oci/data_integration/models/update_data_asset_from_jdbc.py +++ b/src/oci/data_integration/models/update_data_asset_from_jdbc.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .update_data_asset_details import UpdateDataAssetDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -117,6 +117,9 @@ def __init__(self, **kwargs): 'data_asset_type': 'dataAssetType', 'default_connection': 'defaultConnection' } + self._redacted_field_paths = [ + ['default_connection', 'password'], + ] self._model_type = None self._key = None self._model_version = None @@ -227,7 +230,9 @@ def default_connection(self, default_connection): self._default_connection = default_connection def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['default_connection', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/update_data_asset_from_my_sql.py b/src/oci/data_integration/models/update_data_asset_from_my_sql.py index 47fbb05a05..17bd47f52a 100644 --- a/src/oci/data_integration/models/update_data_asset_from_my_sql.py +++ b/src/oci/data_integration/models/update_data_asset_from_my_sql.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .update_data_asset_details import UpdateDataAssetDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -117,6 +117,9 @@ def __init__(self, **kwargs): 'service_name': 'serviceName', 'default_connection': 'defaultConnection' } + self._redacted_field_paths = [ + ['default_connection', 'password'], + ] self._model_type = None self._key = None self._model_version = None @@ -227,7 +230,9 @@ def default_connection(self, default_connection): self._default_connection = default_connection def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['default_connection', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/update_data_asset_from_my_sql_heat_wave.py b/src/oci/data_integration/models/update_data_asset_from_my_sql_heat_wave.py index a6819dbf54..0320679645 100644 --- a/src/oci/data_integration/models/update_data_asset_from_my_sql_heat_wave.py +++ b/src/oci/data_integration/models/update_data_asset_from_my_sql_heat_wave.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .update_data_asset_details import UpdateDataAssetDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -117,6 +117,9 @@ def __init__(self, **kwargs): 'service_name': 'serviceName', 'default_connection': 'defaultConnection' } + self._redacted_field_paths = [ + ['default_connection', 'password'], + ] self._model_type = None self._key = None self._model_version = None @@ -227,7 +230,9 @@ def default_connection(self, default_connection): self._default_connection = default_connection def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['default_connection', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/update_data_asset_from_oracle.py b/src/oci/data_integration/models/update_data_asset_from_oracle.py index c039ad94c1..b0ab4e4944 100644 --- a/src/oci/data_integration/models/update_data_asset_from_oracle.py +++ b/src/oci/data_integration/models/update_data_asset_from_oracle.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .update_data_asset_details import UpdateDataAssetDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -147,6 +147,9 @@ def __init__(self, **kwargs): 'wallet_password_secret': 'walletPasswordSecret', 'default_connection': 'defaultConnection' } + self._redacted_field_paths = [ + ['default_connection', 'password'], + ] self._model_type = None self._key = None self._model_version = None @@ -374,7 +377,9 @@ def default_connection(self, default_connection): self._default_connection = default_connection def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['default_connection', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/update_data_asset_from_oracle_ebs.py b/src/oci/data_integration/models/update_data_asset_from_oracle_ebs.py index 29644d4433..14cb9048a1 100644 --- a/src/oci/data_integration/models/update_data_asset_from_oracle_ebs.py +++ b/src/oci/data_integration/models/update_data_asset_from_oracle_ebs.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .update_data_asset_details import UpdateDataAssetDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -141,6 +141,9 @@ def __init__(self, **kwargs): 'wallet_password_secret': 'walletPasswordSecret', 'default_connection': 'defaultConnection' } + self._redacted_field_paths = [ + ['default_connection', 'password'], + ] self._model_type = None self._key = None self._model_version = None @@ -343,7 +346,9 @@ def default_connection(self, default_connection): self._default_connection = default_connection def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['default_connection', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/update_data_asset_from_oracle_people_soft.py b/src/oci/data_integration/models/update_data_asset_from_oracle_people_soft.py index 3d8ba655b1..e6c8f992d5 100644 --- a/src/oci/data_integration/models/update_data_asset_from_oracle_people_soft.py +++ b/src/oci/data_integration/models/update_data_asset_from_oracle_people_soft.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .update_data_asset_details import UpdateDataAssetDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -141,6 +141,9 @@ def __init__(self, **kwargs): 'wallet_password_secret': 'walletPasswordSecret', 'default_connection': 'defaultConnection' } + self._redacted_field_paths = [ + ['default_connection', 'password'], + ] self._model_type = None self._key = None self._model_version = None @@ -343,7 +346,9 @@ def default_connection(self, default_connection): self._default_connection = default_connection def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['default_connection', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_integration/models/update_data_asset_from_oracle_siebel.py b/src/oci/data_integration/models/update_data_asset_from_oracle_siebel.py index f050375749..5efd434077 100644 --- a/src/oci/data_integration/models/update_data_asset_from_oracle_siebel.py +++ b/src/oci/data_integration/models/update_data_asset_from_oracle_siebel.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200430 from .update_data_asset_details import UpdateDataAssetDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -141,6 +141,9 @@ def __init__(self, **kwargs): 'wallet_password_secret': 'walletPasswordSecret', 'default_connection': 'defaultConnection' } + self._redacted_field_paths = [ + ['default_connection', 'password'], + ] self._model_type = None self._key = None self._model_version = None @@ -343,7 +346,9 @@ def default_connection(self, default_connection): self._default_connection = default_connection def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['default_connection', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_safe/models/activate_target_database_details.py b/src/oci/data_safe/models/activate_target_database_details.py index daf5c790ba..dbd144b70b 100644 --- a/src/oci/data_safe/models/activate_target_database_details.py +++ b/src/oci/data_safe/models/activate_target_database_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20181201 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -31,6 +31,9 @@ def __init__(self, **kwargs): self.attribute_map = { 'credentials': 'credentials' } + self._redacted_field_paths = [ + ['credentials', 'password'], + ] self._credentials = None @property @@ -54,7 +57,9 @@ def credentials(self, credentials): self._credentials = credentials def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['credentials', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_safe/models/create_peer_target_database_details.py b/src/oci/data_safe/models/create_peer_target_database_details.py index 0004cdf031..0e880ba29c 100644 --- a/src/oci/data_safe/models/create_peer_target_database_details.py +++ b/src/oci/data_safe/models/create_peer_target_database_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20181201 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -55,6 +55,9 @@ def __init__(self, **kwargs): 'database_details': 'databaseDetails', 'tls_config': 'tlsConfig' } + self._redacted_field_paths = [ + ['tls_config', 'store_password'], + ] self._display_name = None self._description = None self._dataguard_association_id = None @@ -174,7 +177,9 @@ def tls_config(self, tls_config): self._tls_config = tls_config def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['tls_config', 'store_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_safe/models/create_target_database_details.py b/src/oci/data_safe/models/create_target_database_details.py index 204eccd2d6..c4e3399ec1 100644 --- a/src/oci/data_safe/models/create_target_database_details.py +++ b/src/oci/data_safe/models/create_target_database_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20181201 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -85,6 +85,11 @@ def __init__(self, **kwargs): 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags' } + self._redacted_field_paths = [ + ['credentials', 'password'], + ['tls_config', 'store_password'], + ['peer_target_database_details', '*', 'tls_config', 'store_password'], + ] self._compartment_id = None self._display_name = None self._description = None @@ -335,7 +340,11 @@ def defined_tags(self, defined_tags): self._defined_tags = defined_tags def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['credentials', 'password']) + redact_password_field(as_dict, ['tls_config', 'store_password']) + redact_password_field(as_dict, ['peer_target_database_details', '*', 'tls_config', 'store_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_safe/models/credentials.py b/src/oci/data_safe/models/credentials.py index 03b915775e..4f69c29209 100644 --- a/src/oci/data_safe/models/credentials.py +++ b/src/oci/data_safe/models/credentials.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20181201 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -37,6 +37,9 @@ def __init__(self, **kwargs): 'user_name': 'userName', 'password': 'password' } + self._redacted_field_paths = [ + ['password'], + ] self._user_name = None self._password = None @@ -89,7 +92,9 @@ def password(self, password): self._password = password def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_safe/models/generate_health_report_details.py b/src/oci/data_safe/models/generate_health_report_details.py index e9f48b4f22..34d993d270 100644 --- a/src/oci/data_safe/models/generate_health_report_details.py +++ b/src/oci/data_safe/models/generate_health_report_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20181201 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -72,6 +72,9 @@ def __init__(self, **kwargs): 'defined_tags': 'definedTags', 'target_credentials': 'targetCredentials' } + self._redacted_field_paths = [ + ['target_credentials', 'password'], + ] self._check_type = None self._target_id = None self._compartment_id = None @@ -272,7 +275,9 @@ def target_credentials(self, target_credentials): self._target_credentials = target_credentials def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['target_credentials', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_safe/models/mask_data_details.py b/src/oci/data_safe/models/mask_data_details.py index f032f0503d..8dec281483 100644 --- a/src/oci/data_safe/models/mask_data_details.py +++ b/src/oci/data_safe/models/mask_data_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20181201 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -130,6 +130,11 @@ def __init__(self, **kwargs): 'recompile': 'recompile', 'target_credentials': 'targetCredentials' } + self._redacted_field_paths = [ + ['seed'], + ['user_defined_function_seed'], + ['target_credentials', 'password'], + ] self._target_id = None self._is_decrypt = None self._is_rerun = None @@ -605,7 +610,11 @@ def target_credentials(self, target_credentials): self._target_credentials = target_credentials def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['seed']) + redact_password_field(as_dict, ['user_defined_function_seed']) + redact_password_field(as_dict, ['target_credentials', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_safe/models/peer_target_database.py b/src/oci/data_safe/models/peer_target_database.py index 446be6ee48..19b5fac922 100644 --- a/src/oci/data_safe/models/peer_target_database.py +++ b/src/oci/data_safe/models/peer_target_database.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20181201 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -125,6 +125,9 @@ def __init__(self, **kwargs): 'lifecycle_state': 'lifecycleState', 'lifecycle_details': 'lifecycleDetails' } + self._redacted_field_paths = [ + ['tls_config', 'store_password'], + ] self._display_name = None self._description = None self._key = None @@ -400,7 +403,9 @@ def lifecycle_details(self, lifecycle_details): self._lifecycle_details = lifecycle_details def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['tls_config', 'store_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_safe/models/target_database.py b/src/oci/data_safe/models/target_database.py index 61b0dba3cb..6ee3abbf3e 100644 --- a/src/oci/data_safe/models/target_database.py +++ b/src/oci/data_safe/models/target_database.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20181201 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -161,6 +161,11 @@ def __init__(self, **kwargs): 'defined_tags': 'definedTags', 'system_tags': 'systemTags' } + self._redacted_field_paths = [ + ['credentials', 'password'], + ['tls_config', 'store_password'], + ['peer_target_databases', '*', 'tls_config', 'store_password'], + ] self._compartment_id = None self._id = None self._display_name = None @@ -594,7 +599,11 @@ def system_tags(self, system_tags): self._system_tags = system_tags def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['credentials', 'password']) + redact_password_field(as_dict, ['tls_config', 'store_password']) + redact_password_field(as_dict, ['peer_target_databases', '*', 'tls_config', 'store_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_safe/models/tls_config.py b/src/oci/data_safe/models/tls_config.py index 1c795533c3..23d15bdcb9 100644 --- a/src/oci/data_safe/models/tls_config.py +++ b/src/oci/data_safe/models/tls_config.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20181201 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -71,6 +71,9 @@ def __init__(self, **kwargs): 'trust_store_content': 'trustStoreContent', 'key_store_content': 'keyStoreContent' } + self._redacted_field_paths = [ + ['store_password'], + ] self._status = None self._certificate_store_type = None self._store_password = None @@ -210,7 +213,9 @@ def key_store_content(self, key_store_content): self._key_store_content = key_store_content def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['store_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_safe/models/update_peer_target_database_details.py b/src/oci/data_safe/models/update_peer_target_database_details.py index 937c87abd0..d2e38b03f5 100644 --- a/src/oci/data_safe/models/update_peer_target_database_details.py +++ b/src/oci/data_safe/models/update_peer_target_database_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20181201 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -49,6 +49,9 @@ def __init__(self, **kwargs): 'database_details': 'databaseDetails', 'tls_config': 'tlsConfig' } + self._redacted_field_paths = [ + ['tls_config', 'store_password'], + ] self._display_name = None self._description = None self._database_details = None @@ -143,7 +146,9 @@ def tls_config(self, tls_config): self._tls_config = tls_config def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['tls_config', 'store_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/data_safe/models/update_target_database_details.py b/src/oci/data_safe/models/update_target_database_details.py index fcea5bc061..03071f5f17 100644 --- a/src/oci/data_safe/models/update_target_database_details.py +++ b/src/oci/data_safe/models/update_target_database_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20181201 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -73,6 +73,10 @@ def __init__(self, **kwargs): 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags' } + self._redacted_field_paths = [ + ['credentials', 'password'], + ['tls_config', 'store_password'], + ] self._display_name = None self._description = None self._database_details = None @@ -273,7 +277,10 @@ def defined_tags(self, defined_tags): self._defined_tags = defined_tags def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['credentials', 'password']) + redact_password_field(as_dict, ['tls_config', 'store_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/database_client.py b/src/oci/database/database_client.py index b5ff488e8a..49eca7204a 100644 --- a/src/oci/database/database_client.py +++ b/src/oci/database/database_client.py @@ -2404,6 +2404,131 @@ def change_backup_destination_compartment(self, change_compartment_details, back api_reference_link=api_reference_link, required_arguments=required_arguments) + def change_basecc_vm_cluster_compartment(self, change_basecc_vm_cluster_compartment_details, basecc_vm_cluster_id, **kwargs): + """ + Moves a BaseDB-C@C VM cluster and its dependent resources to another compartment. Applies to Base Database Service on Cloud@Customer instances only. + + + :param oci.database.models.ChangeBaseccVmClusterCompartmentDetails change_basecc_vm_cluster_compartment_details: (required) + Request to move the BaseDB-C@C VM cluster to a different compartment. + + :param str basecc_vm_cluster_id: (required) + The BaseDB-C@C VM cluster `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations (for example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + may be rejected). + + :param str opc_request_id: (optional) + Unique identifier for the request. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` + parameter to the value of the etag from a previous GET or POST response for that resource. The resource + will be updated or deleted only if the etag you provide matches the resource's current etag value. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use change_basecc_vm_cluster_compartment API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['baseccVmClusterId'] + resource_path = "/baseccVmClusters/{baseccVmClusterId}/actions/changeCompartment" + method = "POST" + operation_name = "change_basecc_vm_cluster_compartment" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/BaseccVmCluster/ChangeBaseccVmClusterCompartment" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_retry_token", + "opc_request_id", + "if_match" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"change_basecc_vm_cluster_compartment got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "baseccVmClusterId": basecc_vm_cluster_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=change_basecc_vm_cluster_compartment_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=change_basecc_vm_cluster_compartment_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + def change_cloud_autonomous_vm_cluster_compartment(self, change_cloud_autonomous_vm_cluster_compartment_details, cloud_autonomous_vm_cluster_id, **kwargs): """ Moves an Autonomous Exadata VM cluster in the Oracle cloud and its dependent resources to another compartment. For Exadata Cloud@Customer systems, see :func:`change_autonomous_vm_cluster_compartment`. @@ -8263,6 +8388,109 @@ def create_backup_destination(self, create_backup_destination_details, **kwargs) api_reference_link=api_reference_link, required_arguments=required_arguments) + def create_basecc_vm_cluster(self, create_basecc_vm_cluster_details, **kwargs): + """ + Creates a BaseDB-C@C VM cluster. + + + :param oci.database.models.CreateBaseccVmClusterDetails create_basecc_vm_cluster_details: (required) + Request to create a BaseDB-C@C VM cluster. Applies to Base Database Service on Cloud@Customer instances only. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations (for example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + may be rejected). + + :param str opc_request_id: (optional) + Unique identifier for the request. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.database.models.BaseccVmCluster` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use create_basecc_vm_cluster API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = [] + resource_path = "/baseccVmClusters" + method = "POST" + operation_name = "create_basecc_vm_cluster" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/BaseccVmCluster/CreateBaseccVmCluster" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_retry_token", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"create_basecc_vm_cluster got unknown kwargs: {extra_kwargs!r}") + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + header_params=header_params, + body=create_basecc_vm_cluster_details, + response_type="BaseccVmCluster", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + header_params=header_params, + body=create_basecc_vm_cluster_details, + response_type="BaseccVmCluster", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + def create_cloud_autonomous_vm_cluster(self, create_cloud_autonomous_vm_cluster_details, **kwargs): """ Creates an Autonomous Exadata VM cluster in the Oracle cloud. For Exadata Cloud@Customer systems, see :func:`create_autonomous_vm_cluster`. @@ -12511,13 +12739,13 @@ def delete_backup_destination(self, backup_destination_id, **kwargs): api_reference_link=api_reference_link, required_arguments=required_arguments) - def delete_cloud_autonomous_vm_cluster(self, cloud_autonomous_vm_cluster_id, **kwargs): + def delete_basecc_vm_cluster(self, basecc_vm_cluster_id, **kwargs): """ - Deletes the specified Autonomous Exadata VM cluster in the Oracle cloud. For Exadata Cloud@Customer systems, see :func:`delete_autonomous_vm_cluster`. + Deletes the specified BaseDB-C@C VM cluster. Applies to Base Database Service on Cloud@Customer instances only. - :param str cloud_autonomous_vm_cluster_id: (required) - The Cloud VM cluster `OCID`__. + :param str basecc_vm_cluster_id: (required) + The BaseDB-C@C VM cluster `OCID`__. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm @@ -12549,14 +12777,14 @@ def delete_cloud_autonomous_vm_cluster(self, cloud_autonomous_vm_cluster_id, **k :rtype: :class:`~oci.response.Response` :example: - Click `here `__ to see an example of how to use delete_cloud_autonomous_vm_cluster API. + Click `here `__ to see an example of how to use delete_basecc_vm_cluster API. """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. - required_arguments = ['cloudAutonomousVmClusterId'] - resource_path = "/cloudAutonomousVmClusters/{cloudAutonomousVmClusterId}" + required_arguments = ['baseccVmClusterId'] + resource_path = "/baseccVmClusters/{baseccVmClusterId}" method = "DELETE" - operation_name = "delete_cloud_autonomous_vm_cluster" - api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/CloudAutonomousVmCluster/DeleteCloudAutonomousVmCluster" + operation_name = "delete_basecc_vm_cluster" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/BaseccVmCluster/DeleteBaseccVmCluster" # Don't accept unknown kwargs expected_kwargs = [ @@ -12569,10 +12797,10 @@ def delete_cloud_autonomous_vm_cluster(self, cloud_autonomous_vm_cluster_id, **k extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] if extra_kwargs: raise ValueError( - f"delete_cloud_autonomous_vm_cluster got unknown kwargs: {extra_kwargs!r}") + f"delete_basecc_vm_cluster got unknown kwargs: {extra_kwargs!r}") path_params = { - "cloudAutonomousVmClusterId": cloud_autonomous_vm_cluster_id + "baseccVmClusterId": basecc_vm_cluster_id } path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} @@ -12621,13 +12849,13 @@ def delete_cloud_autonomous_vm_cluster(self, cloud_autonomous_vm_cluster_id, **k api_reference_link=api_reference_link, required_arguments=required_arguments) - def delete_cloud_exadata_infrastructure(self, cloud_exadata_infrastructure_id, **kwargs): + def delete_cloud_autonomous_vm_cluster(self, cloud_autonomous_vm_cluster_id, **kwargs): """ - Deletes the cloud Exadata infrastructure resource. Applies to Exadata Cloud Service instances and Autonomous AI Database on dedicated Exadata infrastructure only. + Deletes the specified Autonomous Exadata VM cluster in the Oracle cloud. For Exadata Cloud@Customer systems, see :func:`delete_autonomous_vm_cluster`. - :param str cloud_exadata_infrastructure_id: (required) - The cloud Exadata infrastructure `OCID`__. + :param str cloud_autonomous_vm_cluster_id: (required) + The Cloud VM cluster `OCID`__. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm @@ -12636,9 +12864,6 @@ def delete_cloud_exadata_infrastructure(self, cloud_exadata_infrastructure_id, * parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value. - :param bool is_delete_vm_clusters: (optional) - If `true`, forces the deletion the specified cloud Exadata infrastructure resource as well as all associated VM clusters. If `false`, the cloud Exadata infrastructure resource can be deleted only if it has no associated VM clusters. Default value is `false`. - :param str opc_request_id: (optional) Unique identifier for the request. @@ -12662,14 +12887,14 @@ def delete_cloud_exadata_infrastructure(self, cloud_exadata_infrastructure_id, * :rtype: :class:`~oci.response.Response` :example: - Click `here `__ to see an example of how to use delete_cloud_exadata_infrastructure API. + Click `here `__ to see an example of how to use delete_cloud_autonomous_vm_cluster API. """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. - required_arguments = ['cloudExadataInfrastructureId'] - resource_path = "/cloudExadataInfrastructures/{cloudExadataInfrastructureId}" + required_arguments = ['cloudAutonomousVmClusterId'] + resource_path = "/cloudAutonomousVmClusters/{cloudAutonomousVmClusterId}" method = "DELETE" - operation_name = "delete_cloud_exadata_infrastructure" - api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/CloudExadataInfrastructure/DeleteCloudExadataInfrastructure" + operation_name = "delete_cloud_autonomous_vm_cluster" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/CloudAutonomousVmCluster/DeleteCloudAutonomousVmCluster" # Don't accept unknown kwargs expected_kwargs = [ @@ -12677,16 +12902,15 @@ def delete_cloud_exadata_infrastructure(self, cloud_exadata_infrastructure_id, * "enable_strict_url_encoding", "retry_strategy", "if_match", - "is_delete_vm_clusters", "opc_request_id" ] extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] if extra_kwargs: raise ValueError( - f"delete_cloud_exadata_infrastructure got unknown kwargs: {extra_kwargs!r}") + f"delete_cloud_autonomous_vm_cluster got unknown kwargs: {extra_kwargs!r}") path_params = { - "cloudExadataInfrastructureId": cloud_exadata_infrastructure_id + "cloudAutonomousVmClusterId": cloud_autonomous_vm_cluster_id } path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} @@ -12695,11 +12919,6 @@ def delete_cloud_exadata_infrastructure(self, cloud_exadata_infrastructure_id, * if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') - query_params = { - "isDeleteVmClusters": kwargs.get("is_delete_vm_clusters", missing) - } - query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} - header_params = { "accept": "application/json", "content-type": "application/json", @@ -12722,7 +12941,6 @@ def delete_cloud_exadata_infrastructure(self, cloud_exadata_infrastructure_id, * resource_path=resource_path, method=method, path_params=path_params, - query_params=query_params, header_params=header_params, allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), @@ -12734,7 +12952,6 @@ def delete_cloud_exadata_infrastructure(self, cloud_exadata_infrastructure_id, * resource_path=resource_path, method=method, path_params=path_params, - query_params=query_params, header_params=header_params, allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), @@ -12742,13 +12959,13 @@ def delete_cloud_exadata_infrastructure(self, cloud_exadata_infrastructure_id, * api_reference_link=api_reference_link, required_arguments=required_arguments) - def delete_cloud_vm_cluster(self, cloud_vm_cluster_id, **kwargs): + def delete_cloud_exadata_infrastructure(self, cloud_exadata_infrastructure_id, **kwargs): """ - Deletes the specified cloud VM cluster. Applies to Exadata Cloud Service instances and Autonomous Database on dedicated Exadata infrastructure only. + Deletes the cloud Exadata infrastructure resource. Applies to Exadata Cloud Service instances and Autonomous AI Database on dedicated Exadata infrastructure only. - :param str cloud_vm_cluster_id: (required) - The cloud VM cluster `OCID`__. + :param str cloud_exadata_infrastructure_id: (required) + The cloud Exadata infrastructure `OCID`__. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm @@ -12757,6 +12974,9 @@ def delete_cloud_vm_cluster(self, cloud_vm_cluster_id, **kwargs): parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value. + :param bool is_delete_vm_clusters: (optional) + If `true`, forces the deletion the specified cloud Exadata infrastructure resource as well as all associated VM clusters. If `false`, the cloud Exadata infrastructure resource can be deleted only if it has no associated VM clusters. Default value is `false`. + :param str opc_request_id: (optional) Unique identifier for the request. @@ -12780,14 +13000,14 @@ def delete_cloud_vm_cluster(self, cloud_vm_cluster_id, **kwargs): :rtype: :class:`~oci.response.Response` :example: - Click `here `__ to see an example of how to use delete_cloud_vm_cluster API. + Click `here `__ to see an example of how to use delete_cloud_exadata_infrastructure API. """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. - required_arguments = ['cloudVmClusterId'] - resource_path = "/cloudVmClusters/{cloudVmClusterId}" + required_arguments = ['cloudExadataInfrastructureId'] + resource_path = "/cloudExadataInfrastructures/{cloudExadataInfrastructureId}" method = "DELETE" - operation_name = "delete_cloud_vm_cluster" - api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/CloudVmCluster/DeleteCloudVmCluster" + operation_name = "delete_cloud_exadata_infrastructure" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/CloudExadataInfrastructure/DeleteCloudExadataInfrastructure" # Don't accept unknown kwargs expected_kwargs = [ @@ -12795,15 +13015,133 @@ def delete_cloud_vm_cluster(self, cloud_vm_cluster_id, **kwargs): "enable_strict_url_encoding", "retry_strategy", "if_match", + "is_delete_vm_clusters", "opc_request_id" ] extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] if extra_kwargs: raise ValueError( - f"delete_cloud_vm_cluster got unknown kwargs: {extra_kwargs!r}") + f"delete_cloud_exadata_infrastructure got unknown kwargs: {extra_kwargs!r}") path_params = { - "cloudVmClusterId": cloud_vm_cluster_id + "cloudExadataInfrastructureId": cloud_exadata_infrastructure_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + query_params = { + "isDeleteVmClusters": kwargs.get("is_delete_vm_clusters", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def delete_cloud_vm_cluster(self, cloud_vm_cluster_id, **kwargs): + """ + Deletes the specified cloud VM cluster. Applies to Exadata Cloud Service instances and Autonomous Database on dedicated Exadata infrastructure only. + + + :param str cloud_vm_cluster_id: (required) + The cloud VM cluster `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` + parameter to the value of the etag from a previous GET or POST response for that resource. The resource + will be updated or deleted only if the etag you provide matches the resource's current etag value. + + :param str opc_request_id: (optional) + Unique identifier for the request. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use delete_cloud_vm_cluster API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['cloudVmClusterId'] + resource_path = "/cloudVmClusters/{cloudVmClusterId}" + method = "DELETE" + operation_name = "delete_cloud_vm_cluster" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/CloudVmCluster/DeleteCloudVmCluster" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"delete_cloud_vm_cluster got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "cloudVmClusterId": cloud_vm_cluster_id } path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} @@ -22242,13 +22580,13 @@ def get_backup_destination(self, backup_destination_id, **kwargs): api_reference_link=api_reference_link, required_arguments=required_arguments) - def get_cloud_autonomous_vm_cluster(self, cloud_autonomous_vm_cluster_id, **kwargs): + def get_basecc_vm_cluster(self, basecc_vm_cluster_id, **kwargs): """ - Gets information about the specified Autonomous Exadata VM cluster in the Oracle cloud. For Exadata Cloud@Custustomer systems, see :func:`get_autonomous_vm_cluster`. + Gets information about the BaseDB-C@C VM cluster. Applies to Base Database Service on Cloud@Customer instances only. - :param str cloud_autonomous_vm_cluster_id: (required) - The Cloud VM cluster `OCID`__. + :param str basecc_vm_cluster_id: (required) + The BaseDB-C@C VM cluster `OCID`__. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm @@ -22271,18 +22609,18 @@ def get_cloud_autonomous_vm_cluster(self, cloud_autonomous_vm_cluster_id, **kwar enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. By default, strict url encoding for path params is disabled - :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.database.models.CloudAutonomousVmCluster` + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.database.models.BaseccVmCluster` :rtype: :class:`~oci.response.Response` :example: - Click `here `__ to see an example of how to use get_cloud_autonomous_vm_cluster API. + Click `here `__ to see an example of how to use get_basecc_vm_cluster API. """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. - required_arguments = ['cloudAutonomousVmClusterId'] - resource_path = "/cloudAutonomousVmClusters/{cloudAutonomousVmClusterId}" + required_arguments = ['baseccVmClusterId'] + resource_path = "/baseccVmClusters/{baseccVmClusterId}" method = "GET" - operation_name = "get_cloud_autonomous_vm_cluster" - api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/CloudAutonomousVmCluster/GetCloudAutonomousVmCluster" + operation_name = "get_basecc_vm_cluster" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/BaseccVmCluster/GetBaseccVmCluster" # Don't accept unknown kwargs expected_kwargs = [ @@ -22294,10 +22632,10 @@ def get_cloud_autonomous_vm_cluster(self, cloud_autonomous_vm_cluster_id, **kwar extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] if extra_kwargs: raise ValueError( - f"get_cloud_autonomous_vm_cluster got unknown kwargs: {extra_kwargs!r}") + f"get_basecc_vm_cluster got unknown kwargs: {extra_kwargs!r}") path_params = { - "cloudAutonomousVmClusterId": cloud_autonomous_vm_cluster_id + "baseccVmClusterId": basecc_vm_cluster_id } path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} @@ -22328,7 +22666,7 @@ def get_cloud_autonomous_vm_cluster(self, cloud_autonomous_vm_cluster_id, **kwar method=method, path_params=path_params, header_params=header_params, - response_type="CloudAutonomousVmCluster", + response_type="BaseccVmCluster", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, @@ -22340,20 +22678,25 @@ def get_cloud_autonomous_vm_cluster(self, cloud_autonomous_vm_cluster_id, **kwar method=method, path_params=path_params, header_params=header_params, - response_type="CloudAutonomousVmCluster", + response_type="BaseccVmCluster", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, api_reference_link=api_reference_link, required_arguments=required_arguments) - def get_cloud_autonomous_vm_cluster_resource_usage(self, cloud_autonomous_vm_cluster_id, **kwargs): + def get_basecc_vm_cluster_update(self, basecc_vm_cluster_id, update_id, **kwargs): """ - Get the resource usage details for the specified Cloud Autonomous Exadata VM cluster. + Gets information about a specified maintenance update package for a BaseDB-C@C VM cluster. Applies to Base Database Service on Cloud@Customer instances only. - :param str cloud_autonomous_vm_cluster_id: (required) - The Cloud VM cluster `OCID`__. + :param str basecc_vm_cluster_id: (required) + The BaseDB-C@C VM cluster `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str update_id: (required) + The `OCID`__ of the maintenance update. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm @@ -22376,18 +22719,18 @@ def get_cloud_autonomous_vm_cluster_resource_usage(self, cloud_autonomous_vm_clu enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. By default, strict url encoding for path params is disabled - :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.database.models.CloudAutonomousVmClusterResourceUsage` + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.database.models.BaseccVmClusterUpdate` :rtype: :class:`~oci.response.Response` :example: - Click `here `__ to see an example of how to use get_cloud_autonomous_vm_cluster_resource_usage API. + Click `here `__ to see an example of how to use get_basecc_vm_cluster_update API. """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. - required_arguments = ['cloudAutonomousVmClusterId'] - resource_path = "/cloudAutonomousVmClusters/{cloudAutonomousVmClusterId}/resourceUsage" + required_arguments = ['baseccVmClusterId', 'updateId'] + resource_path = "/baseccVmClusters/{baseccVmClusterId}/updates/{updateId}" method = "GET" - operation_name = "get_cloud_autonomous_vm_cluster_resource_usage" - api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/CloudAutonomousVmCluster/GetCloudAutonomousVmClusterResourceUsage" + operation_name = "get_basecc_vm_cluster_update" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/BaseccVmClusterUpdate/GetBaseccVmClusterUpdate" # Don't accept unknown kwargs expected_kwargs = [ @@ -22399,10 +22742,11 @@ def get_cloud_autonomous_vm_cluster_resource_usage(self, cloud_autonomous_vm_clu extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] if extra_kwargs: raise ValueError( - f"get_cloud_autonomous_vm_cluster_resource_usage got unknown kwargs: {extra_kwargs!r}") + f"get_basecc_vm_cluster_update got unknown kwargs: {extra_kwargs!r}") path_params = { - "cloudAutonomousVmClusterId": cloud_autonomous_vm_cluster_id + "baseccVmClusterId": basecc_vm_cluster_id, + "updateId": update_id } path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} @@ -22433,7 +22777,7 @@ def get_cloud_autonomous_vm_cluster_resource_usage(self, cloud_autonomous_vm_clu method=method, path_params=path_params, header_params=header_params, - response_type="CloudAutonomousVmClusterResourceUsage", + response_type="BaseccVmClusterUpdate", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, @@ -22445,20 +22789,25 @@ def get_cloud_autonomous_vm_cluster_resource_usage(self, cloud_autonomous_vm_clu method=method, path_params=path_params, header_params=header_params, - response_type="CloudAutonomousVmClusterResourceUsage", + response_type="BaseccVmClusterUpdate", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, api_reference_link=api_reference_link, required_arguments=required_arguments) - def get_cloud_exadata_infrastructure(self, cloud_exadata_infrastructure_id, **kwargs): + def get_basecc_vm_cluster_update_history_entry(self, basecc_vm_cluster_id, update_history_entry_id, **kwargs): """ - Gets information about the specified cloud Exadata infrastructure resource. Applies to Exadata Cloud Service instances and Autonomous AI Database on dedicated Exadata infrastructure only. + Gets the maintenance update history details for the specified update history entry. Applies to Base Database Service on Cloud@Customer instances only. - :param str cloud_exadata_infrastructure_id: (required) - The cloud Exadata infrastructure `OCID`__. + :param str basecc_vm_cluster_id: (required) + The BaseDB-C@C VM cluster `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str update_history_entry_id: (required) + The `OCID`__ of the maintenance update history entry. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm @@ -22481,18 +22830,18 @@ def get_cloud_exadata_infrastructure(self, cloud_exadata_infrastructure_id, **kw enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. By default, strict url encoding for path params is disabled - :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.database.models.CloudExadataInfrastructure` + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.database.models.BaseccVmClusterUpdateHistoryEntry` :rtype: :class:`~oci.response.Response` :example: - Click `here `__ to see an example of how to use get_cloud_exadata_infrastructure API. + Click `here `__ to see an example of how to use get_basecc_vm_cluster_update_history_entry API. """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. - required_arguments = ['cloudExadataInfrastructureId'] - resource_path = "/cloudExadataInfrastructures/{cloudExadataInfrastructureId}" + required_arguments = ['baseccVmClusterId', 'updateHistoryEntryId'] + resource_path = "/baseccVmClusters/{baseccVmClusterId}/updateHistoryEntries/{updateHistoryEntryId}" method = "GET" - operation_name = "get_cloud_exadata_infrastructure" - api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/CloudExadataInfrastructure/GetCloudExadataInfrastructure" + operation_name = "get_basecc_vm_cluster_update_history_entry" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/BaseccVmClusterUpdateHistoryEntry/GetBaseccVmClusterUpdateHistoryEntry" # Don't accept unknown kwargs expected_kwargs = [ @@ -22504,10 +22853,11 @@ def get_cloud_exadata_infrastructure(self, cloud_exadata_infrastructure_id, **kw extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] if extra_kwargs: raise ValueError( - f"get_cloud_exadata_infrastructure got unknown kwargs: {extra_kwargs!r}") + f"get_basecc_vm_cluster_update_history_entry got unknown kwargs: {extra_kwargs!r}") path_params = { - "cloudExadataInfrastructureId": cloud_exadata_infrastructure_id + "baseccVmClusterId": basecc_vm_cluster_id, + "updateHistoryEntryId": update_history_entry_id } path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} @@ -22538,7 +22888,7 @@ def get_cloud_exadata_infrastructure(self, cloud_exadata_infrastructure_id, **kw method=method, path_params=path_params, header_params=header_params, - response_type="CloudExadataInfrastructure", + response_type="BaseccVmClusterUpdateHistoryEntry", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, @@ -22550,31 +22900,26 @@ def get_cloud_exadata_infrastructure(self, cloud_exadata_infrastructure_id, **kw method=method, path_params=path_params, header_params=header_params, - response_type="CloudExadataInfrastructure", + response_type="BaseccVmClusterUpdateHistoryEntry", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, api_reference_link=api_reference_link, required_arguments=required_arguments) - def get_cloud_exadata_infrastructure_unallocated_resources(self, cloud_exadata_infrastructure_id, **kwargs): + def get_cloud_autonomous_vm_cluster(self, cloud_autonomous_vm_cluster_id, **kwargs): """ - Gets unallocated resources information for the specified Cloud Exadata infrastructure. + Gets information about the specified Autonomous Exadata VM cluster in the Oracle cloud. For Exadata Cloud@Custustomer systems, see :func:`get_autonomous_vm_cluster`. - :param str cloud_exadata_infrastructure_id: (required) - The cloud Exadata infrastructure `OCID`__. + :param str cloud_autonomous_vm_cluster_id: (required) + The Cloud VM cluster `OCID`__. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm :param str opc_request_id: (optional) Unique identifier for the request. - :param list[str] db_servers: (optional) - The list of `OCIDs`__ of the Db servers. - - __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm - :param obj retry_strategy: (optional) A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. @@ -22591,34 +22936,33 @@ def get_cloud_exadata_infrastructure_unallocated_resources(self, cloud_exadata_i enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. By default, strict url encoding for path params is disabled - :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.database.models.CloudExadataInfrastructureUnallocatedResources` + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.database.models.CloudAutonomousVmCluster` :rtype: :class:`~oci.response.Response` :example: - Click `here `__ to see an example of how to use get_cloud_exadata_infrastructure_unallocated_resources API. + Click `here `__ to see an example of how to use get_cloud_autonomous_vm_cluster API. """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. - required_arguments = ['cloudExadataInfrastructureId'] - resource_path = "/cloudExadataInfrastructures/{cloudExadataInfrastructureId}/unAllocatedResources" + required_arguments = ['cloudAutonomousVmClusterId'] + resource_path = "/cloudAutonomousVmClusters/{cloudAutonomousVmClusterId}" method = "GET" - operation_name = "get_cloud_exadata_infrastructure_unallocated_resources" - api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/CloudExadataInfrastructure/GetCloudExadataInfrastructureUnallocatedResources" + operation_name = "get_cloud_autonomous_vm_cluster" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/CloudAutonomousVmCluster/GetCloudAutonomousVmCluster" # Don't accept unknown kwargs expected_kwargs = [ "allow_control_chars", "enable_strict_url_encoding", "retry_strategy", - "opc_request_id", - "db_servers" + "opc_request_id" ] extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] if extra_kwargs: raise ValueError( - f"get_cloud_exadata_infrastructure_unallocated_resources got unknown kwargs: {extra_kwargs!r}") + f"get_cloud_autonomous_vm_cluster got unknown kwargs: {extra_kwargs!r}") path_params = { - "cloudExadataInfrastructureId": cloud_exadata_infrastructure_id + "cloudAutonomousVmClusterId": cloud_autonomous_vm_cluster_id } path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} @@ -22627,11 +22971,6 @@ def get_cloud_exadata_infrastructure_unallocated_resources(self, cloud_exadata_i if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') - query_params = { - "dbServers": self.base_client.generate_collection_format_param(kwargs.get("db_servers", missing), 'multi') - } - query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} - header_params = { "accept": "application/json", "content-type": "application/json", @@ -22653,9 +22992,8 @@ def get_cloud_exadata_infrastructure_unallocated_resources(self, cloud_exadata_i resource_path=resource_path, method=method, path_params=path_params, - query_params=query_params, header_params=header_params, - response_type="CloudExadataInfrastructureUnallocatedResources", + response_type="CloudAutonomousVmCluster", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, @@ -22666,22 +23004,21 @@ def get_cloud_exadata_infrastructure_unallocated_resources(self, cloud_exadata_i resource_path=resource_path, method=method, path_params=path_params, - query_params=query_params, header_params=header_params, - response_type="CloudExadataInfrastructureUnallocatedResources", + response_type="CloudAutonomousVmCluster", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, api_reference_link=api_reference_link, required_arguments=required_arguments) - def get_cloud_vm_cluster(self, cloud_vm_cluster_id, **kwargs): + def get_cloud_autonomous_vm_cluster_resource_usage(self, cloud_autonomous_vm_cluster_id, **kwargs): """ - Gets information about the specified cloud VM cluster. Applies to Exadata Cloud Service instances and Autonomous Database on dedicated Exadata infrastructure only. + Get the resource usage details for the specified Cloud Autonomous Exadata VM cluster. - :param str cloud_vm_cluster_id: (required) - The cloud VM cluster `OCID`__. + :param str cloud_autonomous_vm_cluster_id: (required) + The Cloud VM cluster `OCID`__. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm @@ -22704,18 +23041,18 @@ def get_cloud_vm_cluster(self, cloud_vm_cluster_id, **kwargs): enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. By default, strict url encoding for path params is disabled - :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.database.models.CloudVmCluster` + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.database.models.CloudAutonomousVmClusterResourceUsage` :rtype: :class:`~oci.response.Response` :example: - Click `here `__ to see an example of how to use get_cloud_vm_cluster API. + Click `here `__ to see an example of how to use get_cloud_autonomous_vm_cluster_resource_usage API. """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. - required_arguments = ['cloudVmClusterId'] - resource_path = "/cloudVmClusters/{cloudVmClusterId}" + required_arguments = ['cloudAutonomousVmClusterId'] + resource_path = "/cloudAutonomousVmClusters/{cloudAutonomousVmClusterId}/resourceUsage" method = "GET" - operation_name = "get_cloud_vm_cluster" - api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/CloudVmCluster/GetCloudVmCluster" + operation_name = "get_cloud_autonomous_vm_cluster_resource_usage" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/CloudAutonomousVmCluster/GetCloudAutonomousVmClusterResourceUsage" # Don't accept unknown kwargs expected_kwargs = [ @@ -22727,10 +23064,10 @@ def get_cloud_vm_cluster(self, cloud_vm_cluster_id, **kwargs): extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] if extra_kwargs: raise ValueError( - f"get_cloud_vm_cluster got unknown kwargs: {extra_kwargs!r}") + f"get_cloud_autonomous_vm_cluster_resource_usage got unknown kwargs: {extra_kwargs!r}") path_params = { - "cloudVmClusterId": cloud_vm_cluster_id + "cloudAutonomousVmClusterId": cloud_autonomous_vm_cluster_id } path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} @@ -22761,7 +23098,7 @@ def get_cloud_vm_cluster(self, cloud_vm_cluster_id, **kwargs): method=method, path_params=path_params, header_params=header_params, - response_type="CloudVmCluster", + response_type="CloudAutonomousVmClusterResourceUsage", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, @@ -22773,21 +23110,20 @@ def get_cloud_vm_cluster(self, cloud_vm_cluster_id, **kwargs): method=method, path_params=path_params, header_params=header_params, - response_type="CloudVmCluster", + response_type="CloudAutonomousVmClusterResourceUsage", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, api_reference_link=api_reference_link, required_arguments=required_arguments) - def get_cloud_vm_cluster_iorm_config(self, cloud_vm_cluster_id, **kwargs): + def get_cloud_exadata_infrastructure(self, cloud_exadata_infrastructure_id, **kwargs): """ - Gets the IORM configuration for the specified cloud VM cluster in an Exadata Cloud Service instance. - If you have not specified an IORM configuration, the default configuration is returned. + Gets information about the specified cloud Exadata infrastructure resource. Applies to Exadata Cloud Service instances and Autonomous AI Database on dedicated Exadata infrastructure only. - :param str cloud_vm_cluster_id: (required) - The cloud VM cluster `OCID`__. + :param str cloud_exadata_infrastructure_id: (required) + The cloud Exadata infrastructure `OCID`__. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm @@ -22810,18 +23146,18 @@ def get_cloud_vm_cluster_iorm_config(self, cloud_vm_cluster_id, **kwargs): enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. By default, strict url encoding for path params is disabled - :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.database.models.ExadataIormConfig` + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.database.models.CloudExadataInfrastructure` :rtype: :class:`~oci.response.Response` :example: - Click `here `__ to see an example of how to use get_cloud_vm_cluster_iorm_config API. + Click `here `__ to see an example of how to use get_cloud_exadata_infrastructure API. """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. - required_arguments = ['cloudVmClusterId'] - resource_path = "/cloudVmClusters/{cloudVmClusterId}/CloudVmClusterIormConfig" + required_arguments = ['cloudExadataInfrastructureId'] + resource_path = "/cloudExadataInfrastructures/{cloudExadataInfrastructureId}" method = "GET" - operation_name = "get_cloud_vm_cluster_iorm_config" - api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/CloudVmCluster/GetCloudVmClusterIormConfig" + operation_name = "get_cloud_exadata_infrastructure" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/CloudExadataInfrastructure/GetCloudExadataInfrastructure" # Don't accept unknown kwargs expected_kwargs = [ @@ -22833,10 +23169,339 @@ def get_cloud_vm_cluster_iorm_config(self, cloud_vm_cluster_id, **kwargs): extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] if extra_kwargs: raise ValueError( - f"get_cloud_vm_cluster_iorm_config got unknown kwargs: {extra_kwargs!r}") + f"get_cloud_exadata_infrastructure got unknown kwargs: {extra_kwargs!r}") path_params = { - "cloudVmClusterId": cloud_vm_cluster_id + "cloudExadataInfrastructureId": cloud_exadata_infrastructure_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="CloudExadataInfrastructure", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="CloudExadataInfrastructure", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def get_cloud_exadata_infrastructure_unallocated_resources(self, cloud_exadata_infrastructure_id, **kwargs): + """ + Gets unallocated resources information for the specified Cloud Exadata infrastructure. + + + :param str cloud_exadata_infrastructure_id: (required) + The cloud Exadata infrastructure `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + Unique identifier for the request. + + :param list[str] db_servers: (optional) + The list of `OCIDs`__ of the Db servers. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.database.models.CloudExadataInfrastructureUnallocatedResources` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_cloud_exadata_infrastructure_unallocated_resources API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['cloudExadataInfrastructureId'] + resource_path = "/cloudExadataInfrastructures/{cloudExadataInfrastructureId}/unAllocatedResources" + method = "GET" + operation_name = "get_cloud_exadata_infrastructure_unallocated_resources" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/CloudExadataInfrastructure/GetCloudExadataInfrastructureUnallocatedResources" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id", + "db_servers" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"get_cloud_exadata_infrastructure_unallocated_resources got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "cloudExadataInfrastructureId": cloud_exadata_infrastructure_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + query_params = { + "dbServers": self.base_client.generate_collection_format_param(kwargs.get("db_servers", missing), 'multi') + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="CloudExadataInfrastructureUnallocatedResources", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="CloudExadataInfrastructureUnallocatedResources", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def get_cloud_vm_cluster(self, cloud_vm_cluster_id, **kwargs): + """ + Gets information about the specified cloud VM cluster. Applies to Exadata Cloud Service instances and Autonomous Database on dedicated Exadata infrastructure only. + + + :param str cloud_vm_cluster_id: (required) + The cloud VM cluster `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + Unique identifier for the request. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.database.models.CloudVmCluster` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_cloud_vm_cluster API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['cloudVmClusterId'] + resource_path = "/cloudVmClusters/{cloudVmClusterId}" + method = "GET" + operation_name = "get_cloud_vm_cluster" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/CloudVmCluster/GetCloudVmCluster" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"get_cloud_vm_cluster got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "cloudVmClusterId": cloud_vm_cluster_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="CloudVmCluster", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="CloudVmCluster", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def get_cloud_vm_cluster_iorm_config(self, cloud_vm_cluster_id, **kwargs): + """ + Gets the IORM configuration for the specified cloud VM cluster in an Exadata Cloud Service instance. + If you have not specified an IORM configuration, the default configuration is returned. + + + :param str cloud_vm_cluster_id: (required) + The cloud VM cluster `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + Unique identifier for the request. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.database.models.ExadataIormConfig` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_cloud_vm_cluster_iorm_config API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['cloudVmClusterId'] + resource_path = "/cloudVmClusters/{cloudVmClusterId}/CloudVmClusterIormConfig" + method = "GET" + operation_name = "get_cloud_vm_cluster_iorm_config" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/CloudVmCluster/GetCloudVmClusterIormConfig" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"get_cloud_vm_cluster_iorm_config got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "cloudVmClusterId": cloud_vm_cluster_id } path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} @@ -32418,24 +33083,25 @@ def list_backups(self, **kwargs): api_reference_link=api_reference_link, required_arguments=required_arguments) - def list_cloud_autonomous_vm_cluster_acd_resource_usage(self, cloud_autonomous_vm_cluster_id, **kwargs): + def list_basecc_vm_cluster_update_history_entries(self, basecc_vm_cluster_id, **kwargs): """ - Gets the list of resource usage details for all the Cloud Autonomous Container Database - in the specified Cloud Autonomous Exadata VM cluster. + Gets the history of the maintenance update actions performed on the specified BaseDB-C@C VM cluster. Applies to Base Database Service on Cloud@Customer instances only. - :param str cloud_autonomous_vm_cluster_id: (required) - The Cloud VM cluster `OCID`__. + :param str basecc_vm_cluster_id: (required) + The BaseDB-C@C VM cluster `OCID`__. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm - :param str compartment_id: (optional) - The compartment `OCID`__. + :param str update_type: (optional) + A filter to return only resources that match the given update type exactly. - __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + Allowed values are: "GI_UPGRADE", "GI_PATCH", "OS_UPDATE" - :param str opc_request_id: (optional) - Unique identifier for the request. + :param str lifecycle_state: (optional) + A filter to return only resources that match the given lifecycle state exactly. + + Allowed values are: "IN_PROGRESS", "SUCCEEDED", "FAILED" :param int limit: (optional) The maximum number of items to return per page. @@ -32443,6 +33109,9 @@ def list_cloud_autonomous_vm_cluster_acd_resource_usage(self, cloud_autonomous_v :param str page: (optional) The pagination token to continue listing from. + :param str opc_request_id: (optional) + Unique identifier for the request. + :param obj retry_strategy: (optional) A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. @@ -32459,36 +33128,37 @@ def list_cloud_autonomous_vm_cluster_acd_resource_usage(self, cloud_autonomous_v enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. By default, strict url encoding for path params is disabled - :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.database.models.AutonomousContainerDatabaseResourceUsage` + :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.database.models.BaseccVmClusterUpdateHistoryEntrySummary` :rtype: :class:`~oci.response.Response` :example: - Click `here `__ to see an example of how to use list_cloud_autonomous_vm_cluster_acd_resource_usage API. + Click `here `__ to see an example of how to use list_basecc_vm_cluster_update_history_entries API. """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. - required_arguments = ['cloudAutonomousVmClusterId'] - resource_path = "/cloudAutonomousVmClusters/{cloudAutonomousVmClusterId}/acdResourceUsage" + required_arguments = ['baseccVmClusterId'] + resource_path = "/baseccVmClusters/{baseccVmClusterId}/updateHistoryEntries" method = "GET" - operation_name = "list_cloud_autonomous_vm_cluster_acd_resource_usage" - api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/CloudAutonomousVmCluster/ListCloudAutonomousVmClusterAcdResourceUsage" + operation_name = "list_basecc_vm_cluster_update_history_entries" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/BaseccVmClusterUpdateHistoryEntry/ListBaseccVmClusterUpdateHistoryEntries" # Don't accept unknown kwargs expected_kwargs = [ "allow_control_chars", "enable_strict_url_encoding", "retry_strategy", - "compartment_id", - "opc_request_id", + "update_type", + "lifecycle_state", "limit", - "page" + "page", + "opc_request_id" ] extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] if extra_kwargs: raise ValueError( - f"list_cloud_autonomous_vm_cluster_acd_resource_usage got unknown kwargs: {extra_kwargs!r}") + f"list_basecc_vm_cluster_update_history_entries got unknown kwargs: {extra_kwargs!r}") path_params = { - "cloudAutonomousVmClusterId": cloud_autonomous_vm_cluster_id + "baseccVmClusterId": basecc_vm_cluster_id } path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} @@ -32497,8 +33167,23 @@ def list_cloud_autonomous_vm_cluster_acd_resource_usage(self, cloud_autonomous_v if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + if 'update_type' in kwargs: + update_type_allowed_values = ["GI_UPGRADE", "GI_PATCH", "OS_UPDATE"] + if kwargs['update_type'] not in update_type_allowed_values: + raise ValueError( + f"Invalid value for `update_type`, must be one of { update_type_allowed_values }" + ) + + if 'lifecycle_state' in kwargs: + lifecycle_state_allowed_values = ["IN_PROGRESS", "SUCCEEDED", "FAILED"] + if kwargs['lifecycle_state'] not in lifecycle_state_allowed_values: + raise ValueError( + f"Invalid value for `lifecycle_state`, must be one of { lifecycle_state_allowed_values }" + ) + query_params = { - "compartmentId": kwargs.get("compartment_id", missing), + "updateType": kwargs.get("update_type", missing), + "lifecycleState": kwargs.get("lifecycle_state", missing), "limit": kwargs.get("limit", missing), "page": kwargs.get("page", missing) } @@ -32527,7 +33212,7 @@ def list_cloud_autonomous_vm_cluster_acd_resource_usage(self, cloud_autonomous_v path_params=path_params, query_params=query_params, header_params=header_params, - response_type="list[AutonomousContainerDatabaseResourceUsage]", + response_type="list[BaseccVmClusterUpdateHistoryEntrySummary]", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, @@ -32540,52 +33225,38 @@ def list_cloud_autonomous_vm_cluster_acd_resource_usage(self, cloud_autonomous_v path_params=path_params, query_params=query_params, header_params=header_params, - response_type="list[AutonomousContainerDatabaseResourceUsage]", + response_type="list[BaseccVmClusterUpdateHistoryEntrySummary]", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, api_reference_link=api_reference_link, required_arguments=required_arguments) - def list_cloud_autonomous_vm_clusters(self, compartment_id, **kwargs): + def list_basecc_vm_cluster_updates(self, basecc_vm_cluster_id, **kwargs): """ - Lists Autonomous Exadata VM clusters in the Oracle cloud. For Exadata Cloud@Customer systems, see :func:`list_autonomous_vm_clusters`. + Lists the maintenance updates that can be applied to the specified BaseDB-C@C VM cluster. Applies to Base Database Service on Cloud@Customer instances only. - :param str compartment_id: (required) - The compartment `OCID`__. + :param str basecc_vm_cluster_id: (required) + The BaseDB-C@C VM cluster `OCID`__. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm - :param str cloud_exadata_infrastructure_id: (optional) - If provided, filters the results for the specified cloud Exadata infrastructure. - - :param int limit: (optional) - The maximum number of items to return per page. - - :param str page: (optional) - The pagination token to continue listing from. - - :param str sort_by: (optional) - The field to sort by. You can provide one sort order (`sortOrder`). Default order for TIMECREATED is descending. Default order for DISPLAYNAME is ascending. The DISPLAYNAME sort order is case sensitive. - - Allowed values are: "TIMECREATED", "DISPLAYNAME" - - :param str sort_order: (optional) - The sort order to use, either ascending (`ASC`) or descending (`DESC`). + :param str update_type: (optional) + A filter to return only resources that match the given update type exactly. - Allowed values are: "ASC", "DESC" + Allowed values are: "GI_UPGRADE", "GI_PATCH", "OS_UPDATE" :param str lifecycle_state: (optional) A filter to return only resources that match the given lifecycle state exactly. - Allowed values are: "PROVISIONING", "AVAILABLE", "UPDATING", "TERMINATING", "TERMINATED", "FAILED", "MAINTENANCE_IN_PROGRESS" + Allowed values are: "AVAILABLE", "SUCCESS", "IN_PROGRESS", "FAILED" - :param str availability_domain: (optional) - A filter to return only resources that match the given availability domain exactly. + :param int limit: (optional) + The maximum number of items to return per page. - :param str display_name: (optional) - A filter to return only resources that match the entire display name given. The match is not case sensitive. + :param str page: (optional) + The pagination token to continue listing from. :param str opc_request_id: (optional) Unique identifier for the request. @@ -32606,70 +33277,64 @@ def list_cloud_autonomous_vm_clusters(self, compartment_id, **kwargs): enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. By default, strict url encoding for path params is disabled - :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.database.models.CloudAutonomousVmClusterSummary` + :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.database.models.BaseccVmClusterUpdateSummary` :rtype: :class:`~oci.response.Response` :example: - Click `here `__ to see an example of how to use list_cloud_autonomous_vm_clusters API. + Click `here `__ to see an example of how to use list_basecc_vm_cluster_updates API. """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. - required_arguments = ['compartmentId'] - resource_path = "/cloudAutonomousVmClusters" + required_arguments = ['baseccVmClusterId'] + resource_path = "/baseccVmClusters/{baseccVmClusterId}/updates" method = "GET" - operation_name = "list_cloud_autonomous_vm_clusters" - api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/CloudAutonomousVmCluster/ListCloudAutonomousVmClusters" + operation_name = "list_basecc_vm_cluster_updates" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/BaseccVmClusterUpdate/ListBaseccVmClusterUpdates" # Don't accept unknown kwargs expected_kwargs = [ "allow_control_chars", "enable_strict_url_encoding", "retry_strategy", - "cloud_exadata_infrastructure_id", + "update_type", + "lifecycle_state", "limit", "page", - "sort_by", - "sort_order", - "lifecycle_state", - "availability_domain", - "display_name", "opc_request_id" ] extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] if extra_kwargs: raise ValueError( - f"list_cloud_autonomous_vm_clusters got unknown kwargs: {extra_kwargs!r}") + f"list_basecc_vm_cluster_updates got unknown kwargs: {extra_kwargs!r}") - if 'sort_by' in kwargs: - sort_by_allowed_values = ["TIMECREATED", "DISPLAYNAME"] - if kwargs['sort_by'] not in sort_by_allowed_values: - raise ValueError( - f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" - ) + path_params = { + "baseccVmClusterId": basecc_vm_cluster_id + } - if 'sort_order' in kwargs: - sort_order_allowed_values = ["ASC", "DESC"] - if kwargs['sort_order'] not in sort_order_allowed_values: + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + if 'update_type' in kwargs: + update_type_allowed_values = ["GI_UPGRADE", "GI_PATCH", "OS_UPDATE"] + if kwargs['update_type'] not in update_type_allowed_values: raise ValueError( - f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + f"Invalid value for `update_type`, must be one of { update_type_allowed_values }" ) if 'lifecycle_state' in kwargs: - lifecycle_state_allowed_values = ["PROVISIONING", "AVAILABLE", "UPDATING", "TERMINATING", "TERMINATED", "FAILED", "MAINTENANCE_IN_PROGRESS"] + lifecycle_state_allowed_values = ["AVAILABLE", "SUCCESS", "IN_PROGRESS", "FAILED"] if kwargs['lifecycle_state'] not in lifecycle_state_allowed_values: raise ValueError( f"Invalid value for `lifecycle_state`, must be one of { lifecycle_state_allowed_values }" ) query_params = { - "compartmentId": compartment_id, - "cloudExadataInfrastructureId": kwargs.get("cloud_exadata_infrastructure_id", missing), - "limit": kwargs.get("limit", missing), - "page": kwargs.get("page", missing), - "sortBy": kwargs.get("sort_by", missing), - "sortOrder": kwargs.get("sort_order", missing), + "updateType": kwargs.get("update_type", missing), "lifecycleState": kwargs.get("lifecycle_state", missing), - "availabilityDomain": kwargs.get("availability_domain", missing), - "displayName": kwargs.get("display_name", missing) + "limit": kwargs.get("limit", missing), + "page": kwargs.get("page", missing) } query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} @@ -32693,9 +33358,10 @@ def list_cloud_autonomous_vm_clusters(self, compartment_id, **kwargs): self.base_client.call_api, resource_path=resource_path, method=method, + path_params=path_params, query_params=query_params, header_params=header_params, - response_type="list[CloudAutonomousVmClusterSummary]", + response_type="list[BaseccVmClusterUpdateSummary]", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, @@ -32705,18 +33371,19 @@ def list_cloud_autonomous_vm_clusters(self, compartment_id, **kwargs): return self.base_client.call_api( resource_path=resource_path, method=method, + path_params=path_params, query_params=query_params, header_params=header_params, - response_type="list[CloudAutonomousVmClusterSummary]", + response_type="list[BaseccVmClusterUpdateSummary]", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, api_reference_link=api_reference_link, required_arguments=required_arguments) - def list_cloud_exadata_infrastructures(self, compartment_id, **kwargs): + def list_basecc_vm_clusters(self, compartment_id, **kwargs): """ - Gets a list of the cloud Exadata infrastructure resources in the specified compartment. Applies to Exadata Cloud Service instances and Autonomous AI Database on dedicated Exadata infrastructure only. + Lists the BaseDB-C@C VM clusters in the specified compartment. Applies to Base Database Service on Cloud@Customer instances only. :param str compartment_id: (required) @@ -32724,17 +33391,17 @@ def list_cloud_exadata_infrastructures(self, compartment_id, **kwargs): __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + :param str base_infrastructure_id: (optional) + If provided, filters the results for the given Oracle Data Cloud@Customer Infrastructure. + :param int limit: (optional) The maximum number of items to return per page. :param str page: (optional) The pagination token to continue listing from. - :param str opc_request_id: (optional) - Unique identifier for the request. - :param str sort_by: (optional) - The field to sort by. You can provide one sort order (`sortOrder`). Default order for TIMECREATED is descending. Default order for DISPLAYNAME is ascending. The DISPLAYNAME sort order is case sensitive. + The field to sort by. You can provide one sort order (`sortOrder`). Default order for TIMECREATED is descending. Default order for DISPLAYNAME is ascending. The DISPLAYNAME sort order is case sensitive. Allowed values are: "TIMECREATED", "DISPLAYNAME" @@ -32748,11 +33415,19 @@ def list_cloud_exadata_infrastructures(self, compartment_id, **kwargs): Allowed values are: "PROVISIONING", "AVAILABLE", "UPDATING", "TERMINATING", "TERMINATED", "FAILED", "MAINTENANCE_IN_PROGRESS" + :param str availability_domain: (optional) + A filter to return only resources that match the given availability domain exactly. + :param str display_name: (optional) A filter to return only resources that match the entire display name given. The match is not case sensitive. - :param str cluster_placement_group_id: (optional) - A filter to return only resources that match the given cluster placement group ID exactly. + :param str opc_request_id: (optional) + Unique identifier for the request. + + :param str vm_cluster_type: (optional) + A filter to return only BaseDB-C@C VM clusters that match the given VM Cluster type exactly. + + Allowed values are: "REGULAR", "DEVELOPER" :param obj retry_strategy: (optional) A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. @@ -32770,37 +33445,39 @@ def list_cloud_exadata_infrastructures(self, compartment_id, **kwargs): enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. By default, strict url encoding for path params is disabled - :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.database.models.CloudExadataInfrastructureSummary` + :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.database.models.BaseccVmClusterSummary` :rtype: :class:`~oci.response.Response` :example: - Click `here `__ to see an example of how to use list_cloud_exadata_infrastructures API. + Click `here `__ to see an example of how to use list_basecc_vm_clusters API. """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. required_arguments = ['compartmentId'] - resource_path = "/cloudExadataInfrastructures" + resource_path = "/baseccVmClusters" method = "GET" - operation_name = "list_cloud_exadata_infrastructures" - api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/CloudExadataInfrastructure/ListCloudExadataInfrastructures" + operation_name = "list_basecc_vm_clusters" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/BaseccVmCluster/ListBaseccVmClusters" # Don't accept unknown kwargs expected_kwargs = [ "allow_control_chars", "enable_strict_url_encoding", "retry_strategy", + "base_infrastructure_id", "limit", "page", - "opc_request_id", "sort_by", "sort_order", "lifecycle_state", + "availability_domain", "display_name", - "cluster_placement_group_id" + "opc_request_id", + "vm_cluster_type" ] extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] if extra_kwargs: raise ValueError( - f"list_cloud_exadata_infrastructures got unknown kwargs: {extra_kwargs!r}") + f"list_basecc_vm_clusters got unknown kwargs: {extra_kwargs!r}") if 'sort_by' in kwargs: sort_by_allowed_values = ["TIMECREATED", "DISPLAYNAME"] @@ -32823,15 +33500,24 @@ def list_cloud_exadata_infrastructures(self, compartment_id, **kwargs): f"Invalid value for `lifecycle_state`, must be one of { lifecycle_state_allowed_values }" ) + if 'vm_cluster_type' in kwargs: + vm_cluster_type_allowed_values = ["REGULAR", "DEVELOPER"] + if kwargs['vm_cluster_type'] not in vm_cluster_type_allowed_values: + raise ValueError( + f"Invalid value for `vm_cluster_type`, must be one of { vm_cluster_type_allowed_values }" + ) + query_params = { "compartmentId": compartment_id, + "baseInfrastructureId": kwargs.get("base_infrastructure_id", missing), "limit": kwargs.get("limit", missing), "page": kwargs.get("page", missing), "sortBy": kwargs.get("sort_by", missing), "sortOrder": kwargs.get("sort_order", missing), "lifecycleState": kwargs.get("lifecycle_state", missing), + "availabilityDomain": kwargs.get("availability_domain", missing), "displayName": kwargs.get("display_name", missing), - "clusterPlacementGroupId": kwargs.get("cluster_placement_group_id", missing) + "vmClusterType": kwargs.get("vm_cluster_type", missing) } query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} @@ -32857,7 +33543,7 @@ def list_cloud_exadata_infrastructures(self, compartment_id, **kwargs): method=method, query_params=query_params, header_params=header_params, - response_type="list[CloudExadataInfrastructureSummary]", + response_type="list[BaseccVmClusterSummary]", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, @@ -32869,27 +33555,31 @@ def list_cloud_exadata_infrastructures(self, compartment_id, **kwargs): method=method, query_params=query_params, header_params=header_params, - response_type="list[CloudExadataInfrastructureSummary]", + response_type="list[BaseccVmClusterSummary]", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, api_reference_link=api_reference_link, required_arguments=required_arguments) - def list_cloud_vm_cluster_update_history_entries(self, cloud_vm_cluster_id, **kwargs): + def list_cloud_autonomous_vm_cluster_acd_resource_usage(self, cloud_autonomous_vm_cluster_id, **kwargs): """ - Gets the history of the maintenance update actions performed on the specified cloud VM cluster. Applies to Exadata Cloud Service instances only. + Gets the list of resource usage details for all the Cloud Autonomous Container Database + in the specified Cloud Autonomous Exadata VM cluster. - :param str cloud_vm_cluster_id: (required) - The cloud VM cluster `OCID`__. + :param str cloud_autonomous_vm_cluster_id: (required) + The Cloud VM cluster `OCID`__. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm - :param str update_type: (optional) - A filter to return only resources that match the given update type exactly. + :param str compartment_id: (optional) + The compartment `OCID`__. - Allowed values are: "GI_UPGRADE", "GI_PATCH", "OS_UPDATE" + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + Unique identifier for the request. :param int limit: (optional) The maximum number of items to return per page. @@ -32897,9 +33587,6 @@ def list_cloud_vm_cluster_update_history_entries(self, cloud_vm_cluster_id, **kw :param str page: (optional) The pagination token to continue listing from. - :param str opc_request_id: (optional) - Unique identifier for the request. - :param obj retry_strategy: (optional) A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. @@ -32916,36 +33603,36 @@ def list_cloud_vm_cluster_update_history_entries(self, cloud_vm_cluster_id, **kw enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. By default, strict url encoding for path params is disabled - :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.database.models.UpdateHistoryEntrySummary` + :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.database.models.AutonomousContainerDatabaseResourceUsage` :rtype: :class:`~oci.response.Response` :example: - Click `here `__ to see an example of how to use list_cloud_vm_cluster_update_history_entries API. + Click `here `__ to see an example of how to use list_cloud_autonomous_vm_cluster_acd_resource_usage API. """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. - required_arguments = ['cloudVmClusterId'] - resource_path = "/cloudVmClusters/{cloudVmClusterId}/updateHistoryEntries" + required_arguments = ['cloudAutonomousVmClusterId'] + resource_path = "/cloudAutonomousVmClusters/{cloudAutonomousVmClusterId}/acdResourceUsage" method = "GET" - operation_name = "list_cloud_vm_cluster_update_history_entries" - api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/UpdateHistoryEntry/ListCloudVmClusterUpdateHistoryEntries" + operation_name = "list_cloud_autonomous_vm_cluster_acd_resource_usage" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/CloudAutonomousVmCluster/ListCloudAutonomousVmClusterAcdResourceUsage" # Don't accept unknown kwargs expected_kwargs = [ "allow_control_chars", "enable_strict_url_encoding", "retry_strategy", - "update_type", + "compartment_id", + "opc_request_id", "limit", - "page", - "opc_request_id" + "page" ] extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] if extra_kwargs: raise ValueError( - f"list_cloud_vm_cluster_update_history_entries got unknown kwargs: {extra_kwargs!r}") + f"list_cloud_autonomous_vm_cluster_acd_resource_usage got unknown kwargs: {extra_kwargs!r}") path_params = { - "cloudVmClusterId": cloud_vm_cluster_id + "cloudAutonomousVmClusterId": cloud_autonomous_vm_cluster_id } path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} @@ -32954,15 +33641,8 @@ def list_cloud_vm_cluster_update_history_entries(self, cloud_vm_cluster_id, **kw if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') - if 'update_type' in kwargs: - update_type_allowed_values = ["GI_UPGRADE", "GI_PATCH", "OS_UPDATE"] - if kwargs['update_type'] not in update_type_allowed_values: - raise ValueError( - f"Invalid value for `update_type`, must be one of { update_type_allowed_values }" - ) - query_params = { - "updateType": kwargs.get("update_type", missing), + "compartmentId": kwargs.get("compartment_id", missing), "limit": kwargs.get("limit", missing), "page": kwargs.get("page", missing) } @@ -32991,7 +33671,7 @@ def list_cloud_vm_cluster_update_history_entries(self, cloud_vm_cluster_id, **kw path_params=path_params, query_params=query_params, header_params=header_params, - response_type="list[UpdateHistoryEntrySummary]", + response_type="list[AutonomousContainerDatabaseResourceUsage]", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, @@ -33004,27 +33684,25 @@ def list_cloud_vm_cluster_update_history_entries(self, cloud_vm_cluster_id, **kw path_params=path_params, query_params=query_params, header_params=header_params, - response_type="list[UpdateHistoryEntrySummary]", + response_type="list[AutonomousContainerDatabaseResourceUsage]", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, api_reference_link=api_reference_link, required_arguments=required_arguments) - def list_cloud_vm_cluster_updates(self, cloud_vm_cluster_id, **kwargs): + def list_cloud_autonomous_vm_clusters(self, compartment_id, **kwargs): """ - Lists the maintenance updates that can be applied to the specified cloud VM cluster. Applies to Exadata Cloud Service instances only. + Lists Autonomous Exadata VM clusters in the Oracle cloud. For Exadata Cloud@Customer systems, see :func:`list_autonomous_vm_clusters`. - :param str cloud_vm_cluster_id: (required) - The cloud VM cluster `OCID`__. + :param str compartment_id: (required) + The compartment `OCID`__. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm - :param str update_type: (optional) - A filter to return only resources that match the given update type exactly. - - Allowed values are: "GI_UPGRADE", "GI_PATCH", "OS_UPDATE" + :param str cloud_exadata_infrastructure_id: (optional) + If provided, filters the results for the specified cloud Exadata infrastructure. :param int limit: (optional) The maximum number of items to return per page. @@ -33032,6 +33710,27 @@ def list_cloud_vm_cluster_updates(self, cloud_vm_cluster_id, **kwargs): :param str page: (optional) The pagination token to continue listing from. + :param str sort_by: (optional) + The field to sort by. You can provide one sort order (`sortOrder`). Default order for TIMECREATED is descending. Default order for DISPLAYNAME is ascending. The DISPLAYNAME sort order is case sensitive. + + Allowed values are: "TIMECREATED", "DISPLAYNAME" + + :param str sort_order: (optional) + The sort order to use, either ascending (`ASC`) or descending (`DESC`). + + Allowed values are: "ASC", "DESC" + + :param str lifecycle_state: (optional) + A filter to return only resources that match the given lifecycle state exactly. + + Allowed values are: "PROVISIONING", "AVAILABLE", "UPDATING", "TERMINATING", "TERMINATED", "FAILED", "MAINTENANCE_IN_PROGRESS" + + :param str availability_domain: (optional) + A filter to return only resources that match the given availability domain exactly. + + :param str display_name: (optional) + A filter to return only resources that match the entire display name given. The match is not case sensitive. + :param str opc_request_id: (optional) Unique identifier for the request. @@ -33051,55 +33750,500 @@ def list_cloud_vm_cluster_updates(self, cloud_vm_cluster_id, **kwargs): enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. By default, strict url encoding for path params is disabled - :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.database.models.UpdateSummary` + :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.database.models.CloudAutonomousVmClusterSummary` :rtype: :class:`~oci.response.Response` :example: - Click `here `__ to see an example of how to use list_cloud_vm_cluster_updates API. + Click `here `__ to see an example of how to use list_cloud_autonomous_vm_clusters API. """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. - required_arguments = ['cloudVmClusterId'] - resource_path = "/cloudVmClusters/{cloudVmClusterId}/updates" + required_arguments = ['compartmentId'] + resource_path = "/cloudAutonomousVmClusters" method = "GET" - operation_name = "list_cloud_vm_cluster_updates" - api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/Update/ListCloudVmClusterUpdates" + operation_name = "list_cloud_autonomous_vm_clusters" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/CloudAutonomousVmCluster/ListCloudAutonomousVmClusters" # Don't accept unknown kwargs expected_kwargs = [ "allow_control_chars", "enable_strict_url_encoding", "retry_strategy", - "update_type", + "cloud_exadata_infrastructure_id", "limit", "page", + "sort_by", + "sort_order", + "lifecycle_state", + "availability_domain", + "display_name", "opc_request_id" ] extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] if extra_kwargs: raise ValueError( - f"list_cloud_vm_cluster_updates got unknown kwargs: {extra_kwargs!r}") - - path_params = { - "cloudVmClusterId": cloud_vm_cluster_id - } + f"list_cloud_autonomous_vm_clusters got unknown kwargs: {extra_kwargs!r}") - path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + if 'sort_by' in kwargs: + sort_by_allowed_values = ["TIMECREATED", "DISPLAYNAME"] + if kwargs['sort_by'] not in sort_by_allowed_values: + raise ValueError( + f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" + ) - for (k, v) in six.iteritems(path_params): - if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): - raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + if 'sort_order' in kwargs: + sort_order_allowed_values = ["ASC", "DESC"] + if kwargs['sort_order'] not in sort_order_allowed_values: + raise ValueError( + f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + ) - if 'update_type' in kwargs: - update_type_allowed_values = ["GI_UPGRADE", "GI_PATCH", "OS_UPDATE"] - if kwargs['update_type'] not in update_type_allowed_values: + if 'lifecycle_state' in kwargs: + lifecycle_state_allowed_values = ["PROVISIONING", "AVAILABLE", "UPDATING", "TERMINATING", "TERMINATED", "FAILED", "MAINTENANCE_IN_PROGRESS"] + if kwargs['lifecycle_state'] not in lifecycle_state_allowed_values: raise ValueError( - f"Invalid value for `update_type`, must be one of { update_type_allowed_values }" + f"Invalid value for `lifecycle_state`, must be one of { lifecycle_state_allowed_values }" ) query_params = { - "updateType": kwargs.get("update_type", missing), + "compartmentId": compartment_id, + "cloudExadataInfrastructureId": kwargs.get("cloud_exadata_infrastructure_id", missing), "limit": kwargs.get("limit", missing), - "page": kwargs.get("page", missing) + "page": kwargs.get("page", missing), + "sortBy": kwargs.get("sort_by", missing), + "sortOrder": kwargs.get("sort_order", missing), + "lifecycleState": kwargs.get("lifecycle_state", missing), + "availabilityDomain": kwargs.get("availability_domain", missing), + "displayName": kwargs.get("display_name", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="list[CloudAutonomousVmClusterSummary]", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="list[CloudAutonomousVmClusterSummary]", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_cloud_exadata_infrastructures(self, compartment_id, **kwargs): + """ + Gets a list of the cloud Exadata infrastructure resources in the specified compartment. Applies to Exadata Cloud Service instances and Autonomous AI Database on dedicated Exadata infrastructure only. + + + :param str compartment_id: (required) + The compartment `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param int limit: (optional) + The maximum number of items to return per page. + + :param str page: (optional) + The pagination token to continue listing from. + + :param str opc_request_id: (optional) + Unique identifier for the request. + + :param str sort_by: (optional) + The field to sort by. You can provide one sort order (`sortOrder`). Default order for TIMECREATED is descending. Default order for DISPLAYNAME is ascending. The DISPLAYNAME sort order is case sensitive. + + Allowed values are: "TIMECREATED", "DISPLAYNAME" + + :param str sort_order: (optional) + The sort order to use, either ascending (`ASC`) or descending (`DESC`). + + Allowed values are: "ASC", "DESC" + + :param str lifecycle_state: (optional) + A filter to return only resources that match the given lifecycle state exactly. + + Allowed values are: "PROVISIONING", "AVAILABLE", "UPDATING", "TERMINATING", "TERMINATED", "FAILED", "MAINTENANCE_IN_PROGRESS" + + :param str display_name: (optional) + A filter to return only resources that match the entire display name given. The match is not case sensitive. + + :param str cluster_placement_group_id: (optional) + A filter to return only resources that match the given cluster placement group ID exactly. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.database.models.CloudExadataInfrastructureSummary` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_cloud_exadata_infrastructures API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['compartmentId'] + resource_path = "/cloudExadataInfrastructures" + method = "GET" + operation_name = "list_cloud_exadata_infrastructures" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/CloudExadataInfrastructure/ListCloudExadataInfrastructures" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "limit", + "page", + "opc_request_id", + "sort_by", + "sort_order", + "lifecycle_state", + "display_name", + "cluster_placement_group_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_cloud_exadata_infrastructures got unknown kwargs: {extra_kwargs!r}") + + if 'sort_by' in kwargs: + sort_by_allowed_values = ["TIMECREATED", "DISPLAYNAME"] + if kwargs['sort_by'] not in sort_by_allowed_values: + raise ValueError( + f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" + ) + + if 'sort_order' in kwargs: + sort_order_allowed_values = ["ASC", "DESC"] + if kwargs['sort_order'] not in sort_order_allowed_values: + raise ValueError( + f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + ) + + if 'lifecycle_state' in kwargs: + lifecycle_state_allowed_values = ["PROVISIONING", "AVAILABLE", "UPDATING", "TERMINATING", "TERMINATED", "FAILED", "MAINTENANCE_IN_PROGRESS"] + if kwargs['lifecycle_state'] not in lifecycle_state_allowed_values: + raise ValueError( + f"Invalid value for `lifecycle_state`, must be one of { lifecycle_state_allowed_values }" + ) + + query_params = { + "compartmentId": compartment_id, + "limit": kwargs.get("limit", missing), + "page": kwargs.get("page", missing), + "sortBy": kwargs.get("sort_by", missing), + "sortOrder": kwargs.get("sort_order", missing), + "lifecycleState": kwargs.get("lifecycle_state", missing), + "displayName": kwargs.get("display_name", missing), + "clusterPlacementGroupId": kwargs.get("cluster_placement_group_id", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="list[CloudExadataInfrastructureSummary]", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="list[CloudExadataInfrastructureSummary]", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_cloud_vm_cluster_update_history_entries(self, cloud_vm_cluster_id, **kwargs): + """ + Gets the history of the maintenance update actions performed on the specified cloud VM cluster. Applies to Exadata Cloud Service instances only. + + + :param str cloud_vm_cluster_id: (required) + The cloud VM cluster `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str update_type: (optional) + A filter to return only resources that match the given update type exactly. + + Allowed values are: "GI_UPGRADE", "GI_PATCH", "OS_UPDATE" + + :param int limit: (optional) + The maximum number of items to return per page. + + :param str page: (optional) + The pagination token to continue listing from. + + :param str opc_request_id: (optional) + Unique identifier for the request. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.database.models.UpdateHistoryEntrySummary` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_cloud_vm_cluster_update_history_entries API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['cloudVmClusterId'] + resource_path = "/cloudVmClusters/{cloudVmClusterId}/updateHistoryEntries" + method = "GET" + operation_name = "list_cloud_vm_cluster_update_history_entries" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/UpdateHistoryEntry/ListCloudVmClusterUpdateHistoryEntries" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "update_type", + "limit", + "page", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_cloud_vm_cluster_update_history_entries got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "cloudVmClusterId": cloud_vm_cluster_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + if 'update_type' in kwargs: + update_type_allowed_values = ["GI_UPGRADE", "GI_PATCH", "OS_UPDATE"] + if kwargs['update_type'] not in update_type_allowed_values: + raise ValueError( + f"Invalid value for `update_type`, must be one of { update_type_allowed_values }" + ) + + query_params = { + "updateType": kwargs.get("update_type", missing), + "limit": kwargs.get("limit", missing), + "page": kwargs.get("page", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="list[UpdateHistoryEntrySummary]", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="list[UpdateHistoryEntrySummary]", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_cloud_vm_cluster_updates(self, cloud_vm_cluster_id, **kwargs): + """ + Lists the maintenance updates that can be applied to the specified cloud VM cluster. Applies to Exadata Cloud Service instances only. + + + :param str cloud_vm_cluster_id: (required) + The cloud VM cluster `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str update_type: (optional) + A filter to return only resources that match the given update type exactly. + + Allowed values are: "GI_UPGRADE", "GI_PATCH", "OS_UPDATE" + + :param int limit: (optional) + The maximum number of items to return per page. + + :param str page: (optional) + The pagination token to continue listing from. + + :param str opc_request_id: (optional) + Unique identifier for the request. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type list of :class:`~oci.database.models.UpdateSummary` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_cloud_vm_cluster_updates API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['cloudVmClusterId'] + resource_path = "/cloudVmClusters/{cloudVmClusterId}/updates" + method = "GET" + operation_name = "list_cloud_vm_cluster_updates" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/Update/ListCloudVmClusterUpdates" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "update_type", + "limit", + "page", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_cloud_vm_cluster_updates got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "cloudVmClusterId": cloud_vm_cluster_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + if 'update_type' in kwargs: + update_type_allowed_values = ["GI_UPGRADE", "GI_PATCH", "OS_UPDATE"] + if kwargs['update_type'] not in update_type_allowed_values: + raise ValueError( + f"Invalid value for `update_type`, must be one of { update_type_allowed_values }" + ) + + query_params = { + "updateType": kwargs.get("update_type", missing), + "limit": kwargs.get("limit", missing), + "page": kwargs.get("page", missing) } query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} @@ -33877,7 +35021,7 @@ def list_database_software_images(self, compartment_id, **kwargs): :param str image_shape_family: (optional) A filter to return only resources that match the given image shape family exactly. - Allowed values are: "VM_BM_SHAPE", "EXADATA_SHAPE", "EXACC_SHAPE", "EXADBXS_SHAPE" + Allowed values are: "VM_BM_SHAPE", "EXADATA_SHAPE", "EXACC_SHAPE", "EXADBXS_SHAPE", "BDBCC_SHAPE" :param str patch_set_greater_than_or_equal_to: (optional) A filter to return only resources with `patchSet` greater than or equal to given value. @@ -33970,7 +35114,7 @@ def list_database_software_images(self, compartment_id, **kwargs): ) if 'image_shape_family' in kwargs: - image_shape_family_allowed_values = ["VM_BM_SHAPE", "EXADATA_SHAPE", "EXACC_SHAPE", "EXADBXS_SHAPE"] + image_shape_family_allowed_values = ["VM_BM_SHAPE", "EXADATA_SHAPE", "EXACC_SHAPE", "EXADBXS_SHAPE", "BDBCC_SHAPE"] if kwargs['image_shape_family'] not in image_shape_family_allowed_values: raise ValueError( f"Invalid value for `image_shape_family`, must be one of { image_shape_family_allowed_values }" @@ -38893,6 +40037,9 @@ def list_gi_version_minor_versions(self, version, **kwargs): :param str opc_request_id: (optional) Unique identifier for the request. + :param str exadata_infrastructure_id: (optional) + If provided, filters the results for the given Exadata Infrastructure. + :param str shape_family: (optional) If provided, filters the results to the set of database versions which are supported for the given shape family. @@ -38957,6 +40104,7 @@ def list_gi_version_minor_versions(self, version, **kwargs): "availability_domain", "compartment_id", "opc_request_id", + "exadata_infrastructure_id", "shape_family", "is_gi_version_for_provisioning", "shape", @@ -39004,6 +40152,7 @@ def list_gi_version_minor_versions(self, version, **kwargs): query_params = { "availabilityDomain": kwargs.get("availability_domain", missing), "compartmentId": kwargs.get("compartment_id", missing), + "exadataInfrastructureId": kwargs.get("exadata_infrastructure_id", missing), "shapeFamily": kwargs.get("shape_family", missing), "isGiVersionForProvisioning": kwargs.get("is_gi_version_for_provisioning", missing), "shape": kwargs.get("shape", missing), @@ -44516,6 +45665,131 @@ def register_cloud_vm_cluster_pkcs(self, cloud_vm_cluster_id, register_cloud_vm_ api_reference_link=api_reference_link, required_arguments=required_arguments) + def register_exadb_vm_cluster_pkcs(self, exadb_vm_cluster_id, register_exadb_vm_cluster_pkcs_details, **kwargs): + """ + Install the PKCS11 driver for given keystore type + + + :param str exadb_vm_cluster_id: (required) + The Exadata VM cluster `OCID`__ on Exascale Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param oci.database.models.RegisterExadbVmClusterPkcsDetails register_exadb_vm_cluster_pkcs_details: (required) + Details of registering PKCS11 driver. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations (for example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + may be rejected). + + :param str opc_request_id: (optional) + Unique identifier for the request. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` + parameter to the value of the etag from a previous GET or POST response for that resource. The resource + will be updated or deleted only if the etag you provide matches the resource's current etag value. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use register_exadb_vm_cluster_pkcs API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['exadbVmClusterId'] + resource_path = "/exadbVmClusters/{exadbVmClusterId}/actions/registerPkcs" + method = "POST" + operation_name = "register_exadb_vm_cluster_pkcs" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/ExadbVmCluster/RegisterExadbVmClusterPkcs" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_retry_token", + "opc_request_id", + "if_match" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"register_exadb_vm_cluster_pkcs got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "exadbVmClusterId": exadb_vm_cluster_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=register_exadb_vm_cluster_pkcs_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=register_exadb_vm_cluster_pkcs_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + def reinstate_autonomous_container_database_dataguard(self, autonomous_container_database_id, **kwargs): """ Reinstates a disabled standby Autonomous Container Database (ACD), identified by the autonomousContainerDatabaseId parameter to an active standby ACD. For more information, see @@ -50145,22 +51419,137 @@ def terminate_autonomous_exadata_infrastructure(self, autonomous_exadata_infrast api_reference_link=api_reference_link, required_arguments=required_arguments) - def terminate_db_system(self, db_system_id, **kwargs): + def terminate_db_system(self, db_system_id, **kwargs): + """ + Terminates a DB system and permanently deletes it and any databases running on it, and any storage volumes attached to it. The database data is local to the DB system and will be lost when the system is terminated. Oracle recommends that you back up any data in the DB system prior to terminating it. + + **Note:** Deprecated for Exadata Cloud Service systems. Use the `new resource model APIs`__ instead. + + For Exadata Cloud Service instances, support for this API will end on May 15th, 2021. See `Switching an Exadata DB System to the New Resource Model and APIs`__ for details on converting existing Exadata DB systems to the new resource model. + + __ https://docs.oracle.com/iaas/Content/Database/Concepts/exaflexsystem.htm#exaflexsystem_topic-resource_model + __ https://docs.oracle.com/iaas/Content/Database/Concepts/exaflexsystem_topic-resource_model_conversion.htm + + + :param str db_system_id: (required) + The DB system `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` + parameter to the value of the etag from a previous GET or POST response for that resource. The resource + will be updated or deleted only if the etag you provide matches the resource's current etag value. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use terminate_db_system API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['dbSystemId'] + resource_path = "/dbSystems/{dbSystemId}" + method = "DELETE" + operation_name = "terminate_db_system" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/DbSystem/TerminateDbSystem" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"terminate_db_system got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "dbSystemId": db_system_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def unmount_advanced_cluster_file_system(self, advanced_cluster_file_system_id, **kwargs): """ - Terminates a DB system and permanently deletes it and any databases running on it, and any storage volumes attached to it. The database data is local to the DB system and will be lost when the system is terminated. Oracle recommends that you back up any data in the DB system prior to terminating it. - - **Note:** Deprecated for Exadata Cloud Service systems. Use the `new resource model APIs`__ instead. + Unmounts the advanced cluster file system from all the virtual machines within a vmcluster. - For Exadata Cloud Service instances, support for this API will end on May 15th, 2021. See `Switching an Exadata DB System to the New Resource Model and APIs`__ for details on converting existing Exadata DB systems to the new resource model. - __ https://docs.oracle.com/iaas/Content/Database/Concepts/exaflexsystem.htm#exaflexsystem_topic-resource_model - __ https://docs.oracle.com/iaas/Content/Database/Concepts/exaflexsystem_topic-resource_model_conversion.htm + :param str advanced_cluster_file_system_id: (required) + The advanced cluster file system Id `OCID`__. + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm - :param str db_system_id: (required) - The DB system `OCID`__. + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations (for example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + may be rejected). - __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + :param str opc_request_id: (optional) + Unique identifier for the request. :param str if_match: (optional) For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` @@ -50183,33 +51572,35 @@ def terminate_db_system(self, db_system_id, **kwargs): enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. By default, strict url encoding for path params is disabled - :return: A :class:`~oci.response.Response` object with data of type None + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.database.models.AdvancedClusterFileSystem` :rtype: :class:`~oci.response.Response` :example: - Click `here `__ to see an example of how to use terminate_db_system API. + Click `here `__ to see an example of how to use unmount_advanced_cluster_file_system API. """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. - required_arguments = ['dbSystemId'] - resource_path = "/dbSystems/{dbSystemId}" - method = "DELETE" - operation_name = "terminate_db_system" - api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/DbSystem/TerminateDbSystem" + required_arguments = ['advancedClusterFileSystemId'] + resource_path = "/advancedClusterFileSystems/{advancedClusterFileSystemId}/actions/unmount" + method = "POST" + operation_name = "unmount_advanced_cluster_file_system" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/AdvancedClusterFileSystem/UnmountAdvancedClusterFileSystem" # Don't accept unknown kwargs expected_kwargs = [ "allow_control_chars", "enable_strict_url_encoding", "retry_strategy", + "opc_retry_token", + "opc_request_id", "if_match" ] extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] if extra_kwargs: raise ValueError( - f"terminate_db_system got unknown kwargs: {extra_kwargs!r}") + f"unmount_advanced_cluster_file_system got unknown kwargs: {extra_kwargs!r}") path_params = { - "dbSystemId": db_system_id + "advancedClusterFileSystemId": advanced_cluster_file_system_id } path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} @@ -50221,6 +51612,8 @@ def terminate_db_system(self, db_system_id, **kwargs): header_params = { "accept": "application/json", "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), "if-match": kwargs.get("if_match", missing) } header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} @@ -50232,6 +51625,7 @@ def terminate_db_system(self, db_system_id, **kwargs): if retry_strategy: if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) self.base_client.add_opc_client_retries_header(header_params) retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) return retry_strategy.make_retrying_call( @@ -50240,6 +51634,7 @@ def terminate_db_system(self, db_system_id, **kwargs): method=method, path_params=path_params, header_params=header_params, + response_type="AdvancedClusterFileSystem", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, @@ -50251,19 +51646,23 @@ def terminate_db_system(self, db_system_id, **kwargs): method=method, path_params=path_params, header_params=header_params, + response_type="AdvancedClusterFileSystem", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, api_reference_link=api_reference_link, required_arguments=required_arguments) - def unmount_advanced_cluster_file_system(self, advanced_cluster_file_system_id, **kwargs): + def unmount_dbnode_snapshot(self, unmount_dbnode_snapshot_details, dbnode_snapshot_id, **kwargs): """ - Unmounts the advanced cluster file system from all the virtual machines within a vmcluster. + Unmounts the snapshot for the provided dbNode. - :param str advanced_cluster_file_system_id: (required) - The advanced cluster file system Id `OCID`__. + :param oci.database.models.UnmountDbnodeSnapshotDetails unmount_dbnode_snapshot_details: (required) + Request to unmount the snapshot for the provided Exadata Database Node. + + :param str dbnode_snapshot_id: (required) + The Exadata Database Node Snapshot `OCID`__. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm @@ -50298,18 +51697,18 @@ def unmount_advanced_cluster_file_system(self, advanced_cluster_file_system_id, enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. By default, strict url encoding for path params is disabled - :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.database.models.AdvancedClusterFileSystem` + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.database.models.DbnodeSnapshot` :rtype: :class:`~oci.response.Response` :example: - Click `here `__ to see an example of how to use unmount_advanced_cluster_file_system API. + Click `here `__ to see an example of how to use unmount_dbnode_snapshot API. """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. - required_arguments = ['advancedClusterFileSystemId'] - resource_path = "/advancedClusterFileSystems/{advancedClusterFileSystemId}/actions/unmount" + required_arguments = ['dbnodeSnapshotId'] + resource_path = "/dbnodeSnapshots/{dbnodeSnapshotId}/actions/unmount" method = "POST" - operation_name = "unmount_advanced_cluster_file_system" - api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/AdvancedClusterFileSystem/UnmountAdvancedClusterFileSystem" + operation_name = "unmount_dbnode_snapshot" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/DbnodeSnapshot/UnmountDbnodeSnapshot" # Don't accept unknown kwargs expected_kwargs = [ @@ -50323,10 +51722,10 @@ def unmount_advanced_cluster_file_system(self, advanced_cluster_file_system_id, extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] if extra_kwargs: raise ValueError( - f"unmount_advanced_cluster_file_system got unknown kwargs: {extra_kwargs!r}") + f"unmount_dbnode_snapshot got unknown kwargs: {extra_kwargs!r}") path_params = { - "advancedClusterFileSystemId": advanced_cluster_file_system_id + "dbnodeSnapshotId": dbnode_snapshot_id } path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} @@ -50360,7 +51759,8 @@ def unmount_advanced_cluster_file_system(self, advanced_cluster_file_system_id, method=method, path_params=path_params, header_params=header_params, - response_type="AdvancedClusterFileSystem", + body=unmount_dbnode_snapshot_details, + response_type="DbnodeSnapshot", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, @@ -50372,26 +51772,27 @@ def unmount_advanced_cluster_file_system(self, advanced_cluster_file_system_id, method=method, path_params=path_params, header_params=header_params, - response_type="AdvancedClusterFileSystem", + body=unmount_dbnode_snapshot_details, + response_type="DbnodeSnapshot", allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, api_reference_link=api_reference_link, required_arguments=required_arguments) - def unmount_dbnode_snapshot(self, unmount_dbnode_snapshot_details, dbnode_snapshot_id, **kwargs): + def unregister_cloud_autonomous_vm_cluster_pkcs(self, cloud_autonomous_vm_cluster_id, unregister_cloud_autonomous_vm_cluster_pkcs_details, **kwargs): """ - Unmounts the snapshot for the provided dbNode. - + Uninstall the PKCS11 driver for given keystore type - :param oci.database.models.UnmountDbnodeSnapshotDetails unmount_dbnode_snapshot_details: (required) - Request to unmount the snapshot for the provided Exadata Database Node. - :param str dbnode_snapshot_id: (required) - The Exadata Database Node Snapshot `OCID`__. + :param str cloud_autonomous_vm_cluster_id: (required) + The Cloud VM cluster `OCID`__. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + :param oci.database.models.UnregisterCloudAutonomousVmClusterPkcsDetails unregister_cloud_autonomous_vm_cluster_pkcs_details: (required) + Details of unregistering PKCS11 driver. + :param str opc_retry_token: (optional) A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of executing that same action again. Retry tokens expire after 24 @@ -50423,18 +51824,18 @@ def unmount_dbnode_snapshot(self, unmount_dbnode_snapshot_details, dbnode_snapsh enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. By default, strict url encoding for path params is disabled - :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.database.models.DbnodeSnapshot` + :return: A :class:`~oci.response.Response` object with data of type None :rtype: :class:`~oci.response.Response` :example: - Click `here `__ to see an example of how to use unmount_dbnode_snapshot API. + Click `here `__ to see an example of how to use unregister_cloud_autonomous_vm_cluster_pkcs API. """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. - required_arguments = ['dbnodeSnapshotId'] - resource_path = "/dbnodeSnapshots/{dbnodeSnapshotId}/actions/unmount" + required_arguments = ['cloudAutonomousVmClusterId'] + resource_path = "/cloudAutonomousVmClusters/{cloudAutonomousVmClusterId}/actions/unregisterPkcs" method = "POST" - operation_name = "unmount_dbnode_snapshot" - api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/DbnodeSnapshot/UnmountDbnodeSnapshot" + operation_name = "unregister_cloud_autonomous_vm_cluster_pkcs" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/CloudAutonomousVmCluster/UnregisterCloudAutonomousVmClusterPkcs" # Don't accept unknown kwargs expected_kwargs = [ @@ -50448,10 +51849,10 @@ def unmount_dbnode_snapshot(self, unmount_dbnode_snapshot_details, dbnode_snapsh extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] if extra_kwargs: raise ValueError( - f"unmount_dbnode_snapshot got unknown kwargs: {extra_kwargs!r}") + f"unregister_cloud_autonomous_vm_cluster_pkcs got unknown kwargs: {extra_kwargs!r}") path_params = { - "dbnodeSnapshotId": dbnode_snapshot_id + "cloudAutonomousVmClusterId": cloud_autonomous_vm_cluster_id } path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} @@ -50485,8 +51886,7 @@ def unmount_dbnode_snapshot(self, unmount_dbnode_snapshot_details, dbnode_snapsh method=method, path_params=path_params, header_params=header_params, - body=unmount_dbnode_snapshot_details, - response_type="DbnodeSnapshot", + body=unregister_cloud_autonomous_vm_cluster_pkcs_details, allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, @@ -50498,26 +51898,25 @@ def unmount_dbnode_snapshot(self, unmount_dbnode_snapshot_details, dbnode_snapsh method=method, path_params=path_params, header_params=header_params, - body=unmount_dbnode_snapshot_details, - response_type="DbnodeSnapshot", + body=unregister_cloud_autonomous_vm_cluster_pkcs_details, allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, api_reference_link=api_reference_link, required_arguments=required_arguments) - def unregister_cloud_autonomous_vm_cluster_pkcs(self, cloud_autonomous_vm_cluster_id, unregister_cloud_autonomous_vm_cluster_pkcs_details, **kwargs): + def unregister_cloud_vm_cluster_pkcs(self, cloud_vm_cluster_id, unregister_cloud_vm_cluster_pkcs_details, **kwargs): """ Uninstall the PKCS11 driver for given keystore type - :param str cloud_autonomous_vm_cluster_id: (required) - The Cloud VM cluster `OCID`__. + :param str cloud_vm_cluster_id: (required) + The cloud VM cluster `OCID`__. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm - :param oci.database.models.UnregisterCloudAutonomousVmClusterPkcsDetails unregister_cloud_autonomous_vm_cluster_pkcs_details: (required) - Details of unregistering PKCS11 driver. + :param oci.database.models.UnregisterCloudVmClusterPkcsDetails unregister_cloud_vm_cluster_pkcs_details: (required) + Details of registering PKCS11 driver. :param str opc_retry_token: (optional) A token that uniquely identifies a request so it can be retried in case of a timeout or @@ -50554,14 +51953,14 @@ def unregister_cloud_autonomous_vm_cluster_pkcs(self, cloud_autonomous_vm_cluste :rtype: :class:`~oci.response.Response` :example: - Click `here `__ to see an example of how to use unregister_cloud_autonomous_vm_cluster_pkcs API. + Click `here `__ to see an example of how to use unregister_cloud_vm_cluster_pkcs API. """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. - required_arguments = ['cloudAutonomousVmClusterId'] - resource_path = "/cloudAutonomousVmClusters/{cloudAutonomousVmClusterId}/actions/unregisterPkcs" + required_arguments = ['cloudVmClusterId'] + resource_path = "/cloudVmClusters/{cloudVmClusterId}/actions/unregisterPkcs" method = "POST" - operation_name = "unregister_cloud_autonomous_vm_cluster_pkcs" - api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/CloudAutonomousVmCluster/UnregisterCloudAutonomousVmClusterPkcs" + operation_name = "unregister_cloud_vm_cluster_pkcs" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/CloudVmCluster/UnregisterCloudVmClusterPkcs" # Don't accept unknown kwargs expected_kwargs = [ @@ -50575,10 +51974,10 @@ def unregister_cloud_autonomous_vm_cluster_pkcs(self, cloud_autonomous_vm_cluste extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] if extra_kwargs: raise ValueError( - f"unregister_cloud_autonomous_vm_cluster_pkcs got unknown kwargs: {extra_kwargs!r}") + f"unregister_cloud_vm_cluster_pkcs got unknown kwargs: {extra_kwargs!r}") path_params = { - "cloudAutonomousVmClusterId": cloud_autonomous_vm_cluster_id + "cloudVmClusterId": cloud_vm_cluster_id } path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} @@ -50612,7 +52011,7 @@ def unregister_cloud_autonomous_vm_cluster_pkcs(self, cloud_autonomous_vm_cluste method=method, path_params=path_params, header_params=header_params, - body=unregister_cloud_autonomous_vm_cluster_pkcs_details, + body=unregister_cloud_vm_cluster_pkcs_details, allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, @@ -50624,25 +52023,25 @@ def unregister_cloud_autonomous_vm_cluster_pkcs(self, cloud_autonomous_vm_cluste method=method, path_params=path_params, header_params=header_params, - body=unregister_cloud_autonomous_vm_cluster_pkcs_details, + body=unregister_cloud_vm_cluster_pkcs_details, allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, api_reference_link=api_reference_link, required_arguments=required_arguments) - def unregister_cloud_vm_cluster_pkcs(self, cloud_vm_cluster_id, unregister_cloud_vm_cluster_pkcs_details, **kwargs): + def unregister_exadb_vm_cluster_pkcs(self, exadb_vm_cluster_id, unregister_exadb_vm_cluster_pkcs_details, **kwargs): """ Uninstall the PKCS11 driver for given keystore type - :param str cloud_vm_cluster_id: (required) - The cloud VM cluster `OCID`__. + :param str exadb_vm_cluster_id: (required) + The Exadata VM cluster `OCID`__ on Exascale Infrastructure. __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm - :param oci.database.models.UnregisterCloudVmClusterPkcsDetails unregister_cloud_vm_cluster_pkcs_details: (required) - Details of registering PKCS11 driver. + :param oci.database.models.UnregisterExadbVmClusterPkcsDetails unregister_exadb_vm_cluster_pkcs_details: (required) + Details of unregistering PKCS11 driver. :param str opc_retry_token: (optional) A token that uniquely identifies a request so it can be retried in case of a timeout or @@ -50679,14 +52078,14 @@ def unregister_cloud_vm_cluster_pkcs(self, cloud_vm_cluster_id, unregister_cloud :rtype: :class:`~oci.response.Response` :example: - Click `here `__ to see an example of how to use unregister_cloud_vm_cluster_pkcs API. + Click `here `__ to see an example of how to use unregister_exadb_vm_cluster_pkcs API. """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. - required_arguments = ['cloudVmClusterId'] - resource_path = "/cloudVmClusters/{cloudVmClusterId}/actions/unregisterPkcs" + required_arguments = ['exadbVmClusterId'] + resource_path = "/exadbVmClusters/{exadbVmClusterId}/actions/unregisterPkcs" method = "POST" - operation_name = "unregister_cloud_vm_cluster_pkcs" - api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/CloudVmCluster/UnregisterCloudVmClusterPkcs" + operation_name = "unregister_exadb_vm_cluster_pkcs" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/ExadbVmCluster/UnregisterExadbVmClusterPkcs" # Don't accept unknown kwargs expected_kwargs = [ @@ -50700,10 +52099,10 @@ def unregister_cloud_vm_cluster_pkcs(self, cloud_vm_cluster_id, unregister_cloud extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] if extra_kwargs: raise ValueError( - f"unregister_cloud_vm_cluster_pkcs got unknown kwargs: {extra_kwargs!r}") + f"unregister_exadb_vm_cluster_pkcs got unknown kwargs: {extra_kwargs!r}") path_params = { - "cloudVmClusterId": cloud_vm_cluster_id + "exadbVmClusterId": exadb_vm_cluster_id } path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} @@ -50737,7 +52136,7 @@ def unregister_cloud_vm_cluster_pkcs(self, cloud_vm_cluster_id, unregister_cloud method=method, path_params=path_params, header_params=header_params, - body=unregister_cloud_vm_cluster_pkcs_details, + body=unregister_exadb_vm_cluster_pkcs_details, allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, @@ -50749,7 +52148,7 @@ def unregister_cloud_vm_cluster_pkcs(self, cloud_vm_cluster_id, unregister_cloud method=method, path_params=path_params, header_params=header_params, - body=unregister_cloud_vm_cluster_pkcs_details, + body=unregister_exadb_vm_cluster_pkcs_details, allow_control_chars=kwargs.get('allow_control_chars'), enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), operation_name=operation_name, @@ -52148,6 +53547,123 @@ def update_backup_destination(self, backup_destination_id, update_backup_destina api_reference_link=api_reference_link, required_arguments=required_arguments) + def update_basecc_vm_cluster(self, basecc_vm_cluster_id, update_basecc_vm_cluster_details, **kwargs): + """ + Updates the specified BaseDB-C@C VM cluster. Applies to Base Database Service on Cloud@Customer instances only. + + + :param str basecc_vm_cluster_id: (required) + The BaseDB-C@C VM cluster `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param oci.database.models.UpdateBaseccVmClusterDetails update_basecc_vm_cluster_details: (required) + Request to update the attributes of a BaseDB-C@C VM cluster. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` + parameter to the value of the etag from a previous GET or POST response for that resource. The resource + will be updated or deleted only if the etag you provide matches the resource's current etag value. + + :param str opc_request_id: (optional) + Unique identifier for the request. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.database.models.BaseccVmCluster` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use update_basecc_vm_cluster API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['baseccVmClusterId'] + resource_path = "/baseccVmClusters/{baseccVmClusterId}" + method = "PUT" + operation_name = "update_basecc_vm_cluster" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/BaseccVmCluster/UpdateBaseccVmCluster" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"update_basecc_vm_cluster got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "baseccVmClusterId": basecc_vm_cluster_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=update_basecc_vm_cluster_details, + response_type="BaseccVmCluster", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=update_basecc_vm_cluster_details, + response_type="BaseccVmCluster", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + def update_cloud_autonomous_vm_cluster(self, cloud_autonomous_vm_cluster_id, update_cloud_autonomous_vm_cluster_details, **kwargs): """ Updates the specified Autonomous Exadata VM cluster in the Oracle cloud. For Exadata Cloud@Customer systems, see :func:`update_autonomous_vm_cluster`. diff --git a/src/oci/database/database_client_composite_operations.py b/src/oci/database/database_client_composite_operations.py index 438670f2bd..7b7401e62e 100644 --- a/src/oci/database/database_client_composite_operations.py +++ b/src/oci/database/database_client_composite_operations.py @@ -1125,6 +1125,47 @@ def change_backup_destination_compartment_and_wait_for_work_request(self, change except Exception as e: raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def change_basecc_vm_cluster_compartment_and_wait_for_work_request(self, change_basecc_vm_cluster_compartment_details, basecc_vm_cluster_id, work_request_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.database.DatabaseClient.change_basecc_vm_cluster_compartment` and waits for the oci.work_requests.models.WorkRequest + to enter the given state(s). + + :param oci.database.models.ChangeBaseccVmClusterCompartmentDetails change_basecc_vm_cluster_compartment_details: (required) + Request to move the BaseDB-C@C VM cluster to a different compartment. + + :param str basecc_vm_cluster_id: (required) + The BaseDB-C@C VM cluster `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param list[str] work_request_states: (optional) + An array of work requests states to wait on. These should be valid values for :py:attr:`~oci.work_requests.models.WorkRequest.status` + Default values are termination states: [STATUS_SUCCEEDED, STATUS_FAILED, STATUS_CANCELED] + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.database.DatabaseClient.change_basecc_vm_cluster_compartment` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.change_basecc_vm_cluster_compartment(change_basecc_vm_cluster_compartment_details, basecc_vm_cluster_id, **operation_kwargs) + work_request_states = work_request_states if work_request_states else oci.waiter._WORK_REQUEST_TERMINATION_STATES + lowered_work_request_states = [w.lower() for w in work_request_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + work_request_id = operation_result.headers['opc-work-request-id'] + try: + waiter_result = oci.wait_until( + self._work_request_client, + self._work_request_client.get_work_request(work_request_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_work_request_states, + **waiter_kwargs + ) + return waiter_result + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def change_cloud_autonomous_vm_cluster_compartment_and_wait_for_work_request(self, change_cloud_autonomous_vm_cluster_compartment_details, cloud_autonomous_vm_cluster_id, work_request_states=[], operation_kwargs={}, waiter_kwargs={}): """ Calls :py:func:`~oci.database.DatabaseClient.change_cloud_autonomous_vm_cluster_compartment` and waits for the oci.work_requests.models.WorkRequest @@ -3913,6 +3954,84 @@ def create_backup_destination_and_wait_for_state(self, create_backup_destination except Exception as e: raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def create_basecc_vm_cluster_and_wait_for_work_request(self, create_basecc_vm_cluster_details, work_request_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.database.DatabaseClient.create_basecc_vm_cluster` and waits for the oci.work_requests.models.WorkRequest + to enter the given state(s). + + :param oci.database.models.CreateBaseccVmClusterDetails create_basecc_vm_cluster_details: (required) + Request to create a BaseDB-C@C VM cluster. Applies to Base Database Service on Cloud@Customer instances only. + + :param list[str] work_request_states: (optional) + An array of work requests states to wait on. These should be valid values for :py:attr:`~oci.work_requests.models.WorkRequest.status` + Default values are termination states: [STATUS_SUCCEEDED, STATUS_FAILED, STATUS_CANCELED] + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.database.DatabaseClient.create_basecc_vm_cluster` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.create_basecc_vm_cluster(create_basecc_vm_cluster_details, **operation_kwargs) + work_request_states = work_request_states if work_request_states else oci.waiter._WORK_REQUEST_TERMINATION_STATES + lowered_work_request_states = [w.lower() for w in work_request_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + work_request_id = operation_result.headers['opc-work-request-id'] + try: + waiter_result = oci.wait_until( + self._work_request_client, + self._work_request_client.get_work_request(work_request_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_work_request_states, + **waiter_kwargs + ) + return waiter_result + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def create_basecc_vm_cluster_and_wait_for_state(self, create_basecc_vm_cluster_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.database.DatabaseClient.create_basecc_vm_cluster` and waits for the :py:class:`~oci.database.models.BaseccVmCluster` acted upon + to enter the given state(s). + + :param oci.database.models.CreateBaseccVmClusterDetails create_basecc_vm_cluster_details: (required) + Request to create a BaseDB-C@C VM cluster. Applies to Base Database Service on Cloud@Customer instances only. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.database.models.BaseccVmCluster.lifecycle_state` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.database.DatabaseClient.create_basecc_vm_cluster` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.create_basecc_vm_cluster(create_basecc_vm_cluster_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + basecc_vm_cluster_id = operation_result.data.id + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_basecc_vm_cluster(basecc_vm_cluster_id), # noqa: F821 + evaluate_response=lambda r: getattr(r.data, 'lifecycle_state') and getattr(r.data, 'lifecycle_state').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except (NameError, TypeError) as e: + if not e.args: + e.args = ('',) + e.args = e.args + ('This composite operation is currently not supported in the SDK. Please use the operation from the service client and use waiters as an alternative. For more information on waiters, visit: "https://docs.oracle.com/en-us/iaas/tools/python/latest/api/waiters.html"', ) + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def create_cloud_autonomous_vm_cluster_and_wait_for_work_request(self, create_cloud_autonomous_vm_cluster_details, work_request_states=[], operation_kwargs={}, waiter_kwargs={}): """ Calls :py:func:`~oci.database.DatabaseClient.create_cloud_autonomous_vm_cluster` and waits for the oci.work_requests.models.WorkRequest @@ -6622,6 +6741,44 @@ def delete_backup_destination_and_wait_for_state(self, backup_destination_id, wa except Exception as e: raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def delete_basecc_vm_cluster_and_wait_for_work_request(self, basecc_vm_cluster_id, work_request_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.database.DatabaseClient.delete_basecc_vm_cluster` and waits for the oci.work_requests.models.WorkRequest + to enter the given state(s). + + :param str basecc_vm_cluster_id: (required) + The BaseDB-C@C VM cluster `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param list[str] work_request_states: (optional) + An array of work requests states to wait on. These should be valid values for :py:attr:`~oci.work_requests.models.WorkRequest.status` + Default values are termination states: [STATUS_SUCCEEDED, STATUS_FAILED, STATUS_CANCELED] + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.database.DatabaseClient.delete_basecc_vm_cluster` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.delete_basecc_vm_cluster(basecc_vm_cluster_id, **operation_kwargs) + work_request_states = work_request_states if work_request_states else oci.waiter._WORK_REQUEST_TERMINATION_STATES + lowered_work_request_states = [w.lower() for w in work_request_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + work_request_id = operation_result.headers['opc-work-request-id'] + try: + waiter_result = oci.wait_until( + self._work_request_client, + self._work_request_client.get_work_request(work_request_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_work_request_states, + **waiter_kwargs + ) + return waiter_result + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def delete_cloud_autonomous_vm_cluster_and_wait_for_work_request(self, cloud_autonomous_vm_cluster_id, work_request_states=[], operation_kwargs={}, waiter_kwargs={}): """ Calls :py:func:`~oci.database.DatabaseClient.delete_cloud_autonomous_vm_cluster` and waits for the oci.work_requests.models.WorkRequest @@ -10836,6 +10993,47 @@ def register_cloud_vm_cluster_pkcs_and_wait_for_work_request(self, cloud_vm_clus except Exception as e: raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def register_exadb_vm_cluster_pkcs_and_wait_for_work_request(self, exadb_vm_cluster_id, register_exadb_vm_cluster_pkcs_details, work_request_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.database.DatabaseClient.register_exadb_vm_cluster_pkcs` and waits for the oci.work_requests.models.WorkRequest + to enter the given state(s). + + :param str exadb_vm_cluster_id: (required) + The Exadata VM cluster `OCID`__ on Exascale Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param oci.database.models.RegisterExadbVmClusterPkcsDetails register_exadb_vm_cluster_pkcs_details: (required) + Details of registering PKCS11 driver. + + :param list[str] work_request_states: (optional) + An array of work requests states to wait on. These should be valid values for :py:attr:`~oci.work_requests.models.WorkRequest.status` + Default values are termination states: [STATUS_SUCCEEDED, STATUS_FAILED, STATUS_CANCELED] + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.database.DatabaseClient.register_exadb_vm_cluster_pkcs` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.register_exadb_vm_cluster_pkcs(exadb_vm_cluster_id, register_exadb_vm_cluster_pkcs_details, **operation_kwargs) + work_request_states = work_request_states if work_request_states else oci.waiter._WORK_REQUEST_TERMINATION_STATES + lowered_work_request_states = [w.lower() for w in work_request_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + work_request_id = operation_result.headers['opc-work-request-id'] + try: + waiter_result = oci.wait_until( + self._work_request_client, + self._work_request_client.get_work_request(work_request_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_work_request_states, + **waiter_kwargs + ) + return waiter_result + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def reinstate_autonomous_container_database_dataguard_and_wait_for_work_request(self, autonomous_container_database_id, work_request_states=[], operation_kwargs={}, waiter_kwargs={}): """ Calls :py:func:`~oci.database.DatabaseClient.reinstate_autonomous_container_database_dataguard` and waits for the oci.work_requests.models.WorkRequest @@ -14358,6 +14556,47 @@ def unregister_cloud_vm_cluster_pkcs_and_wait_for_work_request(self, cloud_vm_cl except Exception as e: raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def unregister_exadb_vm_cluster_pkcs_and_wait_for_work_request(self, exadb_vm_cluster_id, unregister_exadb_vm_cluster_pkcs_details, work_request_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.database.DatabaseClient.unregister_exadb_vm_cluster_pkcs` and waits for the oci.work_requests.models.WorkRequest + to enter the given state(s). + + :param str exadb_vm_cluster_id: (required) + The Exadata VM cluster `OCID`__ on Exascale Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param oci.database.models.UnregisterExadbVmClusterPkcsDetails unregister_exadb_vm_cluster_pkcs_details: (required) + Details of unregistering PKCS11 driver. + + :param list[str] work_request_states: (optional) + An array of work requests states to wait on. These should be valid values for :py:attr:`~oci.work_requests.models.WorkRequest.status` + Default values are termination states: [STATUS_SUCCEEDED, STATUS_FAILED, STATUS_CANCELED] + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.database.DatabaseClient.unregister_exadb_vm_cluster_pkcs` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.unregister_exadb_vm_cluster_pkcs(exadb_vm_cluster_id, unregister_exadb_vm_cluster_pkcs_details, **operation_kwargs) + work_request_states = work_request_states if work_request_states else oci.waiter._WORK_REQUEST_TERMINATION_STATES + lowered_work_request_states = [w.lower() for w in work_request_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + work_request_id = operation_result.headers['opc-work-request-id'] + try: + waiter_result = oci.wait_until( + self._work_request_client, + self._work_request_client.get_work_request(work_request_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_work_request_states, + **waiter_kwargs + ) + return waiter_result + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def update_advanced_cluster_file_system_and_wait_for_work_request(self, advanced_cluster_file_system_id, update_advanced_cluster_file_system_details, work_request_states=[], operation_kwargs={}, waiter_kwargs={}): """ Calls :py:func:`~oci.database.DatabaseClient.update_advanced_cluster_file_system` and waits for the oci.work_requests.models.WorkRequest @@ -15244,6 +15483,94 @@ def update_backup_destination_and_wait_for_state(self, backup_destination_id, up except Exception as e: raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def update_basecc_vm_cluster_and_wait_for_work_request(self, basecc_vm_cluster_id, update_basecc_vm_cluster_details, work_request_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.database.DatabaseClient.update_basecc_vm_cluster` and waits for the oci.work_requests.models.WorkRequest + to enter the given state(s). + + :param str basecc_vm_cluster_id: (required) + The BaseDB-C@C VM cluster `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param oci.database.models.UpdateBaseccVmClusterDetails update_basecc_vm_cluster_details: (required) + Request to update the attributes of a BaseDB-C@C VM cluster. + + :param list[str] work_request_states: (optional) + An array of work requests states to wait on. These should be valid values for :py:attr:`~oci.work_requests.models.WorkRequest.status` + Default values are termination states: [STATUS_SUCCEEDED, STATUS_FAILED, STATUS_CANCELED] + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.database.DatabaseClient.update_basecc_vm_cluster` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.update_basecc_vm_cluster(basecc_vm_cluster_id, update_basecc_vm_cluster_details, **operation_kwargs) + work_request_states = work_request_states if work_request_states else oci.waiter._WORK_REQUEST_TERMINATION_STATES + lowered_work_request_states = [w.lower() for w in work_request_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + work_request_id = operation_result.headers['opc-work-request-id'] + try: + waiter_result = oci.wait_until( + self._work_request_client, + self._work_request_client.get_work_request(work_request_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_work_request_states, + **waiter_kwargs + ) + return waiter_result + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def update_basecc_vm_cluster_and_wait_for_state(self, basecc_vm_cluster_id, update_basecc_vm_cluster_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.database.DatabaseClient.update_basecc_vm_cluster` and waits for the :py:class:`~oci.database.models.BaseccVmCluster` acted upon + to enter the given state(s). + + :param str basecc_vm_cluster_id: (required) + The BaseDB-C@C VM cluster `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param oci.database.models.UpdateBaseccVmClusterDetails update_basecc_vm_cluster_details: (required) + Request to update the attributes of a BaseDB-C@C VM cluster. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.database.models.BaseccVmCluster.lifecycle_state` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.database.DatabaseClient.update_basecc_vm_cluster` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.update_basecc_vm_cluster(basecc_vm_cluster_id, update_basecc_vm_cluster_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + basecc_vm_cluster_id = operation_result.data.id + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_basecc_vm_cluster(basecc_vm_cluster_id), # noqa: F821 + evaluate_response=lambda r: getattr(r.data, 'lifecycle_state') and getattr(r.data, 'lifecycle_state').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except (NameError, TypeError) as e: + if not e.args: + e.args = ('',) + e.args = e.args + ('This composite operation is currently not supported in the SDK. Please use the operation from the service client and use waiters as an alternative. For more information on waiters, visit: "https://docs.oracle.com/en-us/iaas/tools/python/latest/api/waiters.html"', ) + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def update_cloud_autonomous_vm_cluster_and_wait_for_work_request(self, cloud_autonomous_vm_cluster_id, update_cloud_autonomous_vm_cluster_details, work_request_states=[], operation_kwargs={}, waiter_kwargs={}): """ Calls :py:func:`~oci.database.DatabaseClient.update_cloud_autonomous_vm_cluster` and waits for the oci.work_requests.models.WorkRequest diff --git a/src/oci/database/models/__init__.py b/src/oci/database/models/__init__.py index 71e63bef72..2dbd2d76ba 100644 --- a/src/oci/database/models/__init__.py +++ b/src/oci/database/models/__init__.py @@ -91,10 +91,18 @@ from .backup_destination_properties import BackupDestinationProperties from .backup_destination_summary import BackupDestinationSummary from .backup_summary import BackupSummary +from .basecc_vm_cluster import BaseccVmCluster +from .basecc_vm_cluster_summary import BaseccVmClusterSummary +from .basecc_vm_cluster_update import BaseccVmClusterUpdate +from .basecc_vm_cluster_update_details import BaseccVmClusterUpdateDetails +from .basecc_vm_cluster_update_history_entry import BaseccVmClusterUpdateHistoryEntry +from .basecc_vm_cluster_update_history_entry_summary import BaseccVmClusterUpdateHistoryEntrySummary +from .basecc_vm_cluster_update_summary import BaseccVmClusterUpdateSummary from .cancel_execution_window_details import CancelExecutionWindowDetails from .change_autonomous_database_software_image_compartment_details import ChangeAutonomousDatabaseSoftwareImageCompartmentDetails from .change_autonomous_database_subscription_details import ChangeAutonomousDatabaseSubscriptionDetails from .change_autonomous_vm_cluster_compartment_details import ChangeAutonomousVmClusterCompartmentDetails +from .change_basecc_vm_cluster_compartment_details import ChangeBaseccVmClusterCompartmentDetails from .change_cloud_autonomous_vm_cluster_compartment_details import ChangeCloudAutonomousVmClusterCompartmentDetails from .change_cloud_autonomous_vm_cluster_subscription_details import ChangeCloudAutonomousVmClusterSubscriptionDetails from .change_cloud_db_system_subscription_details import ChangeCloudDbSystemSubscriptionDetails @@ -164,6 +172,7 @@ from .create_autonomous_vm_cluster_details import CreateAutonomousVmClusterDetails from .create_backup_destination_details import CreateBackupDestinationDetails from .create_backup_details import CreateBackupDetails +from .create_basecc_vm_cluster_details import CreateBaseccVmClusterDetails from .create_cloud_autonomous_vm_cluster_details import CreateCloudAutonomousVmClusterDetails from .create_cloud_exadata_infrastructure_details import CreateCloudExadataInfrastructureDetails from .create_cloud_vm_cluster_details import CreateCloudVmClusterDetails @@ -328,6 +337,7 @@ from .exadata_infrastructure_un_allocated_resources import ExadataInfrastructureUnAllocatedResources from .exadata_iorm_config import ExadataIormConfig from .exadata_iorm_config_update_details import ExadataIormConfigUpdateDetails +from .exadata_live_image_version_details import ExadataLiveImageVersionDetails from .exadb_vm_cluster import ExadbVmCluster from .exadb_vm_cluster_storage_details import ExadbVmClusterStorageDetails from .exadb_vm_cluster_summary import ExadbVmClusterSummary @@ -445,6 +455,7 @@ from .register_autonomous_database_data_safe_details import RegisterAutonomousDatabaseDataSafeDetails from .register_cloud_autonomous_vm_cluster_pkcs_details import RegisterCloudAutonomousVmClusterPkcsDetails from .register_cloud_vm_cluster_pkcs_details import RegisterCloudVmClusterPkcsDetails +from .register_exadb_vm_cluster_pkcs_details import RegisterExadbVmClusterPkcsDetails from .reinstate_data_guard_association_details import ReinstateDataGuardAssociationDetails from .reinstate_data_guard_details import ReinstateDataGuardDetails from .remote_clone_pluggable_database_details import RemoteClonePluggableDatabaseDetails @@ -500,6 +511,7 @@ from .unmount_dbnode_snapshot_details import UnmountDbnodeSnapshotDetails from .unregister_cloud_autonomous_vm_cluster_pkcs_details import UnregisterCloudAutonomousVmClusterPkcsDetails from .unregister_cloud_vm_cluster_pkcs_details import UnregisterCloudVmClusterPkcsDetails +from .unregister_exadb_vm_cluster_pkcs_details import UnregisterExadbVmClusterPkcsDetails from .update import Update from .update_advanced_cluster_file_system_details import UpdateAdvancedClusterFileSystemDetails from .update_autonomous_container_database_data_guard_association_details import UpdateAutonomousContainerDatabaseDataGuardAssociationDetails @@ -512,6 +524,7 @@ from .update_autonomous_vm_cluster_details import UpdateAutonomousVmClusterDetails from .update_backup_destination_details import UpdateBackupDestinationDetails from .update_backup_details import UpdateBackupDetails +from .update_basecc_vm_cluster_details import UpdateBaseccVmClusterDetails from .update_cloud_autonomous_vm_cluster_details import UpdateCloudAutonomousVmClusterDetails from .update_cloud_exadata_infrastructure_details import UpdateCloudExadataInfrastructureDetails from .update_cloud_vm_cluster_details import UpdateCloudVmClusterDetails @@ -657,10 +670,18 @@ "BackupDestinationProperties": BackupDestinationProperties, "BackupDestinationSummary": BackupDestinationSummary, "BackupSummary": BackupSummary, + "BaseccVmCluster": BaseccVmCluster, + "BaseccVmClusterSummary": BaseccVmClusterSummary, + "BaseccVmClusterUpdate": BaseccVmClusterUpdate, + "BaseccVmClusterUpdateDetails": BaseccVmClusterUpdateDetails, + "BaseccVmClusterUpdateHistoryEntry": BaseccVmClusterUpdateHistoryEntry, + "BaseccVmClusterUpdateHistoryEntrySummary": BaseccVmClusterUpdateHistoryEntrySummary, + "BaseccVmClusterUpdateSummary": BaseccVmClusterUpdateSummary, "CancelExecutionWindowDetails": CancelExecutionWindowDetails, "ChangeAutonomousDatabaseSoftwareImageCompartmentDetails": ChangeAutonomousDatabaseSoftwareImageCompartmentDetails, "ChangeAutonomousDatabaseSubscriptionDetails": ChangeAutonomousDatabaseSubscriptionDetails, "ChangeAutonomousVmClusterCompartmentDetails": ChangeAutonomousVmClusterCompartmentDetails, + "ChangeBaseccVmClusterCompartmentDetails": ChangeBaseccVmClusterCompartmentDetails, "ChangeCloudAutonomousVmClusterCompartmentDetails": ChangeCloudAutonomousVmClusterCompartmentDetails, "ChangeCloudAutonomousVmClusterSubscriptionDetails": ChangeCloudAutonomousVmClusterSubscriptionDetails, "ChangeCloudDbSystemSubscriptionDetails": ChangeCloudDbSystemSubscriptionDetails, @@ -730,6 +751,7 @@ "CreateAutonomousVmClusterDetails": CreateAutonomousVmClusterDetails, "CreateBackupDestinationDetails": CreateBackupDestinationDetails, "CreateBackupDetails": CreateBackupDetails, + "CreateBaseccVmClusterDetails": CreateBaseccVmClusterDetails, "CreateCloudAutonomousVmClusterDetails": CreateCloudAutonomousVmClusterDetails, "CreateCloudExadataInfrastructureDetails": CreateCloudExadataInfrastructureDetails, "CreateCloudVmClusterDetails": CreateCloudVmClusterDetails, @@ -894,6 +916,7 @@ "ExadataInfrastructureUnAllocatedResources": ExadataInfrastructureUnAllocatedResources, "ExadataIormConfig": ExadataIormConfig, "ExadataIormConfigUpdateDetails": ExadataIormConfigUpdateDetails, + "ExadataLiveImageVersionDetails": ExadataLiveImageVersionDetails, "ExadbVmCluster": ExadbVmCluster, "ExadbVmClusterStorageDetails": ExadbVmClusterStorageDetails, "ExadbVmClusterSummary": ExadbVmClusterSummary, @@ -1011,6 +1034,7 @@ "RegisterAutonomousDatabaseDataSafeDetails": RegisterAutonomousDatabaseDataSafeDetails, "RegisterCloudAutonomousVmClusterPkcsDetails": RegisterCloudAutonomousVmClusterPkcsDetails, "RegisterCloudVmClusterPkcsDetails": RegisterCloudVmClusterPkcsDetails, + "RegisterExadbVmClusterPkcsDetails": RegisterExadbVmClusterPkcsDetails, "ReinstateDataGuardAssociationDetails": ReinstateDataGuardAssociationDetails, "ReinstateDataGuardDetails": ReinstateDataGuardDetails, "RemoteClonePluggableDatabaseDetails": RemoteClonePluggableDatabaseDetails, @@ -1066,6 +1090,7 @@ "UnmountDbnodeSnapshotDetails": UnmountDbnodeSnapshotDetails, "UnregisterCloudAutonomousVmClusterPkcsDetails": UnregisterCloudAutonomousVmClusterPkcsDetails, "UnregisterCloudVmClusterPkcsDetails": UnregisterCloudVmClusterPkcsDetails, + "UnregisterExadbVmClusterPkcsDetails": UnregisterExadbVmClusterPkcsDetails, "Update": Update, "UpdateAdvancedClusterFileSystemDetails": UpdateAdvancedClusterFileSystemDetails, "UpdateAutonomousContainerDatabaseDataGuardAssociationDetails": UpdateAutonomousContainerDatabaseDataGuardAssociationDetails, @@ -1078,6 +1103,7 @@ "UpdateAutonomousVmClusterDetails": UpdateAutonomousVmClusterDetails, "UpdateBackupDestinationDetails": UpdateBackupDestinationDetails, "UpdateBackupDetails": UpdateBackupDetails, + "UpdateBaseccVmClusterDetails": UpdateBaseccVmClusterDetails, "UpdateCloudAutonomousVmClusterDetails": UpdateCloudAutonomousVmClusterDetails, "UpdateCloudExadataInfrastructureDetails": UpdateCloudExadataInfrastructureDetails, "UpdateCloudVmClusterDetails": UpdateCloudVmClusterDetails, diff --git a/src/oci/database/models/basecc_vm_cluster.py b/src/oci/database/models/basecc_vm_cluster.py new file mode 100644 index 0000000000..3aebe3325f --- /dev/null +++ b/src/oci/database/models/basecc_vm_cluster.py @@ -0,0 +1,1229 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class BaseccVmCluster(object): + """ + Details of the BaseDB-C@C VM cluster resource. Applies to Base Database Service on Cloud@Customer instances only. + """ + + #: A constant which can be used with the lifecycle_state property of a BaseccVmCluster. + #: This constant has a value of "PROVISIONING" + LIFECYCLE_STATE_PROVISIONING = "PROVISIONING" + + #: A constant which can be used with the lifecycle_state property of a BaseccVmCluster. + #: This constant has a value of "AVAILABLE" + LIFECYCLE_STATE_AVAILABLE = "AVAILABLE" + + #: A constant which can be used with the lifecycle_state property of a BaseccVmCluster. + #: This constant has a value of "UPDATING" + LIFECYCLE_STATE_UPDATING = "UPDATING" + + #: A constant which can be used with the lifecycle_state property of a BaseccVmCluster. + #: This constant has a value of "TERMINATING" + LIFECYCLE_STATE_TERMINATING = "TERMINATING" + + #: A constant which can be used with the lifecycle_state property of a BaseccVmCluster. + #: This constant has a value of "TERMINATED" + LIFECYCLE_STATE_TERMINATED = "TERMINATED" + + #: A constant which can be used with the lifecycle_state property of a BaseccVmCluster. + #: This constant has a value of "FAILED" + LIFECYCLE_STATE_FAILED = "FAILED" + + #: A constant which can be used with the lifecycle_state property of a BaseccVmCluster. + #: This constant has a value of "MAINTENANCE_IN_PROGRESS" + LIFECYCLE_STATE_MAINTENANCE_IN_PROGRESS = "MAINTENANCE_IN_PROGRESS" + + #: A constant which can be used with the database_edition property of a BaseccVmCluster. + #: This constant has a value of "STANDARD_EDITION" + DATABASE_EDITION_STANDARD_EDITION = "STANDARD_EDITION" + + #: A constant which can be used with the database_edition property of a BaseccVmCluster. + #: This constant has a value of "ENTERPRISE_EDITION" + DATABASE_EDITION_ENTERPRISE_EDITION = "ENTERPRISE_EDITION" + + #: A constant which can be used with the database_edition property of a BaseccVmCluster. + #: This constant has a value of "ENTERPRISE_EDITION_HIGH_PERFORMANCE" + DATABASE_EDITION_ENTERPRISE_EDITION_HIGH_PERFORMANCE = "ENTERPRISE_EDITION_HIGH_PERFORMANCE" + + #: A constant which can be used with the database_edition property of a BaseccVmCluster. + #: This constant has a value of "ENTERPRISE_EDITION_EXTREME_PERFORMANCE" + DATABASE_EDITION_ENTERPRISE_EDITION_EXTREME_PERFORMANCE = "ENTERPRISE_EDITION_EXTREME_PERFORMANCE" + + #: A constant which can be used with the database_edition property of a BaseccVmCluster. + #: This constant has a value of "ENTERPRISE_EDITION_DEVELOPER" + DATABASE_EDITION_ENTERPRISE_EDITION_DEVELOPER = "ENTERPRISE_EDITION_DEVELOPER" + + #: A constant which can be used with the license_model property of a BaseccVmCluster. + #: This constant has a value of "LICENSE_INCLUDED" + LICENSE_MODEL_LICENSE_INCLUDED = "LICENSE_INCLUDED" + + #: A constant which can be used with the license_model property of a BaseccVmCluster. + #: This constant has a value of "BRING_YOUR_OWN_LICENSE" + LICENSE_MODEL_BRING_YOUR_OWN_LICENSE = "BRING_YOUR_OWN_LICENSE" + + #: A constant which can be used with the vm_cluster_type property of a BaseccVmCluster. + #: This constant has a value of "REGULAR" + VM_CLUSTER_TYPE_REGULAR = "REGULAR" + + #: A constant which can be used with the vm_cluster_type property of a BaseccVmCluster. + #: This constant has a value of "DEVELOPER" + VM_CLUSTER_TYPE_DEVELOPER = "DEVELOPER" + + def __init__(self, **kwargs): + """ + Initializes a new BaseccVmCluster object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this BaseccVmCluster. + :type id: str + + :param last_patch_history_entry_id: + The value to assign to the last_patch_history_entry_id property of this BaseccVmCluster. + :type last_patch_history_entry_id: str + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this BaseccVmCluster. + Allowed values for this property are: "PROVISIONING", "AVAILABLE", "UPDATING", "TERMINATING", "TERMINATED", "FAILED", "MAINTENANCE_IN_PROGRESS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + :param time_created: + The value to assign to the time_created property of this BaseccVmCluster. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this BaseccVmCluster. + :type time_updated: datetime + + :param lifecycle_details: + The value to assign to the lifecycle_details property of this BaseccVmCluster. + :type lifecycle_details: str + + :param availability_domain: + The value to assign to the availability_domain property of this BaseccVmCluster. + :type availability_domain: str + + :param compartment_id: + The value to assign to the compartment_id property of this BaseccVmCluster. + :type compartment_id: str + + :param database_edition: + The value to assign to the database_edition property of this BaseccVmCluster. + Allowed values for this property are: "STANDARD_EDITION", "ENTERPRISE_EDITION", "ENTERPRISE_EDITION_HIGH_PERFORMANCE", "ENTERPRISE_EDITION_EXTREME_PERFORMANCE", "ENTERPRISE_EDITION_DEVELOPER", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type database_edition: str + + :param node_count: + The value to assign to the node_count property of this BaseccVmCluster. + :type node_count: int + + :param db_servers: + The value to assign to the db_servers property of this BaseccVmCluster. + :type db_servers: list[str] + + :param cpus_enabled: + The value to assign to the cpus_enabled property of this BaseccVmCluster. + :type cpus_enabled: int + + :param base_infrastructure_id: + The value to assign to the base_infrastructure_id property of this BaseccVmCluster. + :type base_infrastructure_id: str + + :param base_vm_cluster_network_id: + The value to assign to the base_vm_cluster_network_id property of this BaseccVmCluster. + :type base_vm_cluster_network_id: str + + :param gi_version: + The value to assign to the gi_version property of this BaseccVmCluster. + :type gi_version: str + + :param data_collection_options: + The value to assign to the data_collection_options property of this BaseccVmCluster. + :type data_collection_options: oci.database.models.DataCollectionOptions + + :param description: + The value to assign to the description property of this BaseccVmCluster. + :type description: str + + :param display_name: + The value to assign to the display_name property of this BaseccVmCluster. + :type display_name: str + + :param ssh_public_keys: + The value to assign to the ssh_public_keys property of this BaseccVmCluster. + :type ssh_public_keys: list[str] + + :param time_zone: + The value to assign to the time_zone property of this BaseccVmCluster. + :type time_zone: str + + :param cluster_name: + The value to assign to the cluster_name property of this BaseccVmCluster. + :type cluster_name: str + + :param boot_storage_size_in_gbs: + The value to assign to the boot_storage_size_in_gbs property of this BaseccVmCluster. + :type boot_storage_size_in_gbs: int + + :param additional_vm_storage_size_in_gbs: + The value to assign to the additional_vm_storage_size_in_gbs property of this BaseccVmCluster. + :type additional_vm_storage_size_in_gbs: int + + :param total_storage_size_in_gbs: + The value to assign to the total_storage_size_in_gbs property of this BaseccVmCluster. + :type total_storage_size_in_gbs: int + + :param data_storage_size_in_gbs: + The value to assign to the data_storage_size_in_gbs property of this BaseccVmCluster. + :type data_storage_size_in_gbs: int + + :param reco_storage_size_in_gbs: + The value to assign to the reco_storage_size_in_gbs property of this BaseccVmCluster. + :type reco_storage_size_in_gbs: int + + :param memory_size_in_gbs: + The value to assign to the memory_size_in_gbs property of this BaseccVmCluster. + :type memory_size_in_gbs: int + + :param license_model: + The value to assign to the license_model property of this BaseccVmCluster. + Allowed values for this property are: "LICENSE_INCLUDED", "BRING_YOUR_OWN_LICENSE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type license_model: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this BaseccVmCluster. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this BaseccVmCluster. + :type defined_tags: dict(str, dict(str, object)) + + :param system_tags: + The value to assign to the system_tags property of this BaseccVmCluster. + :type system_tags: dict(str, dict(str, object)) + + :param system_version: + The value to assign to the system_version property of this BaseccVmCluster. + :type system_version: str + + :param vm_cluster_type: + The value to assign to the vm_cluster_type property of this BaseccVmCluster. + Allowed values for this property are: "REGULAR", "DEVELOPER", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type vm_cluster_type: str + + :param cloud_automation_update_details: + The value to assign to the cloud_automation_update_details property of this BaseccVmCluster. + :type cloud_automation_update_details: oci.database.models.CloudAutomationUpdateDetails + + """ + self.swagger_types = { + 'id': 'str', + 'last_patch_history_entry_id': 'str', + 'lifecycle_state': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'lifecycle_details': 'str', + 'availability_domain': 'str', + 'compartment_id': 'str', + 'database_edition': 'str', + 'node_count': 'int', + 'db_servers': 'list[str]', + 'cpus_enabled': 'int', + 'base_infrastructure_id': 'str', + 'base_vm_cluster_network_id': 'str', + 'gi_version': 'str', + 'data_collection_options': 'DataCollectionOptions', + 'description': 'str', + 'display_name': 'str', + 'ssh_public_keys': 'list[str]', + 'time_zone': 'str', + 'cluster_name': 'str', + 'boot_storage_size_in_gbs': 'int', + 'additional_vm_storage_size_in_gbs': 'int', + 'total_storage_size_in_gbs': 'int', + 'data_storage_size_in_gbs': 'int', + 'reco_storage_size_in_gbs': 'int', + 'memory_size_in_gbs': 'int', + 'license_model': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))', + 'system_version': 'str', + 'vm_cluster_type': 'str', + 'cloud_automation_update_details': 'CloudAutomationUpdateDetails' + } + self.attribute_map = { + 'id': 'id', + 'last_patch_history_entry_id': 'lastPatchHistoryEntryId', + 'lifecycle_state': 'lifecycleState', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'lifecycle_details': 'lifecycleDetails', + 'availability_domain': 'availabilityDomain', + 'compartment_id': 'compartmentId', + 'database_edition': 'databaseEdition', + 'node_count': 'nodeCount', + 'db_servers': 'dbServers', + 'cpus_enabled': 'cpusEnabled', + 'base_infrastructure_id': 'baseInfrastructureId', + 'base_vm_cluster_network_id': 'baseVmClusterNetworkId', + 'gi_version': 'giVersion', + 'data_collection_options': 'dataCollectionOptions', + 'description': 'description', + 'display_name': 'displayName', + 'ssh_public_keys': 'sshPublicKeys', + 'time_zone': 'timeZone', + 'cluster_name': 'clusterName', + 'boot_storage_size_in_gbs': 'bootStorageSizeInGBs', + 'additional_vm_storage_size_in_gbs': 'additionalVmStorageSizeInGBs', + 'total_storage_size_in_gbs': 'totalStorageSizeInGBs', + 'data_storage_size_in_gbs': 'dataStorageSizeInGBs', + 'reco_storage_size_in_gbs': 'recoStorageSizeInGBs', + 'memory_size_in_gbs': 'memorySizeInGBs', + 'license_model': 'licenseModel', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags', + 'system_version': 'systemVersion', + 'vm_cluster_type': 'vmClusterType', + 'cloud_automation_update_details': 'cloudAutomationUpdateDetails' + } + self._id = None + self._last_patch_history_entry_id = None + self._lifecycle_state = None + self._time_created = None + self._time_updated = None + self._lifecycle_details = None + self._availability_domain = None + self._compartment_id = None + self._database_edition = None + self._node_count = None + self._db_servers = None + self._cpus_enabled = None + self._base_infrastructure_id = None + self._base_vm_cluster_network_id = None + self._gi_version = None + self._data_collection_options = None + self._description = None + self._display_name = None + self._ssh_public_keys = None + self._time_zone = None + self._cluster_name = None + self._boot_storage_size_in_gbs = None + self._additional_vm_storage_size_in_gbs = None + self._total_storage_size_in_gbs = None + self._data_storage_size_in_gbs = None + self._reco_storage_size_in_gbs = None + self._memory_size_in_gbs = None + self._license_model = None + self._freeform_tags = None + self._defined_tags = None + self._system_tags = None + self._system_version = None + self._vm_cluster_type = None + self._cloud_automation_update_details = None + + @property + def id(self): + """ + **[Required]** Gets the id of this BaseccVmCluster. + The `OCID`__ of the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this BaseccVmCluster. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this BaseccVmCluster. + The `OCID`__ of the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this BaseccVmCluster. + :type: str + """ + self._id = id + + @property + def last_patch_history_entry_id(self): + """ + Gets the last_patch_history_entry_id of this BaseccVmCluster. + The `OCID`__ of the last patch history. This value is updated as soon as a patch operation starts. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The last_patch_history_entry_id of this BaseccVmCluster. + :rtype: str + """ + return self._last_patch_history_entry_id + + @last_patch_history_entry_id.setter + def last_patch_history_entry_id(self, last_patch_history_entry_id): + """ + Sets the last_patch_history_entry_id of this BaseccVmCluster. + The `OCID`__ of the last patch history. This value is updated as soon as a patch operation starts. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param last_patch_history_entry_id: The last_patch_history_entry_id of this BaseccVmCluster. + :type: str + """ + self._last_patch_history_entry_id = last_patch_history_entry_id + + @property + def lifecycle_state(self): + """ + **[Required]** Gets the lifecycle_state of this BaseccVmCluster. + The current state of the VM Cluster. + + Allowed values for this property are: "PROVISIONING", "AVAILABLE", "UPDATING", "TERMINATING", "TERMINATED", "FAILED", "MAINTENANCE_IN_PROGRESS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this BaseccVmCluster. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this BaseccVmCluster. + The current state of the VM Cluster. + + + :param lifecycle_state: The lifecycle_state of this BaseccVmCluster. + :type: str + """ + allowed_values = ["PROVISIONING", "AVAILABLE", "UPDATING", "TERMINATING", "TERMINATED", "FAILED", "MAINTENANCE_IN_PROGRESS"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + + @property + def time_created(self): + """ + **[Required]** Gets the time_created of this BaseccVmCluster. + The date and time that the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster was created. + + + :return: The time_created of this BaseccVmCluster. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this BaseccVmCluster. + The date and time that the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster was created. + + + :param time_created: The time_created of this BaseccVmCluster. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + Gets the time_updated of this BaseccVmCluster. + The date and time that the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster was updated. + + + :return: The time_updated of this BaseccVmCluster. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this BaseccVmCluster. + The date and time that the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster was updated. + + + :param time_updated: The time_updated of this BaseccVmCluster. + :type: datetime + """ + self._time_updated = time_updated + + @property + def lifecycle_details(self): + """ + Gets the lifecycle_details of this BaseccVmCluster. + Additional information about the current lifecycle state of the the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :return: The lifecycle_details of this BaseccVmCluster. + :rtype: str + """ + return self._lifecycle_details + + @lifecycle_details.setter + def lifecycle_details(self, lifecycle_details): + """ + Sets the lifecycle_details of this BaseccVmCluster. + Additional information about the current lifecycle state of the the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :param lifecycle_details: The lifecycle_details of this BaseccVmCluster. + :type: str + """ + self._lifecycle_details = lifecycle_details + + @property + def availability_domain(self): + """ + **[Required]** Gets the availability_domain of this BaseccVmCluster. + The name of the availability domain in which the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster is located. + + + :return: The availability_domain of this BaseccVmCluster. + :rtype: str + """ + return self._availability_domain + + @availability_domain.setter + def availability_domain(self, availability_domain): + """ + Sets the availability_domain of this BaseccVmCluster. + The name of the availability domain in which the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster is located. + + + :param availability_domain: The availability_domain of this BaseccVmCluster. + :type: str + """ + self._availability_domain = availability_domain + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this BaseccVmCluster. + The `OCID`__ of the compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this BaseccVmCluster. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this BaseccVmCluster. + The `OCID`__ of the compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this BaseccVmCluster. + :type: str + """ + self._compartment_id = compartment_id + + @property + def database_edition(self): + """ + Gets the database_edition of this BaseccVmCluster. + The Oracle Database Edition that applies to all the databases on the DB system. + Exadata DB systems and 2-node RAC DB systems require ENTERPRISE_EDITION_EXTREME_PERFORMANCE. + + Allowed values for this property are: "STANDARD_EDITION", "ENTERPRISE_EDITION", "ENTERPRISE_EDITION_HIGH_PERFORMANCE", "ENTERPRISE_EDITION_EXTREME_PERFORMANCE", "ENTERPRISE_EDITION_DEVELOPER", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The database_edition of this BaseccVmCluster. + :rtype: str + """ + return self._database_edition + + @database_edition.setter + def database_edition(self, database_edition): + """ + Sets the database_edition of this BaseccVmCluster. + The Oracle Database Edition that applies to all the databases on the DB system. + Exadata DB systems and 2-node RAC DB systems require ENTERPRISE_EDITION_EXTREME_PERFORMANCE. + + + :param database_edition: The database_edition of this BaseccVmCluster. + :type: str + """ + allowed_values = ["STANDARD_EDITION", "ENTERPRISE_EDITION", "ENTERPRISE_EDITION_HIGH_PERFORMANCE", "ENTERPRISE_EDITION_EXTREME_PERFORMANCE", "ENTERPRISE_EDITION_DEVELOPER"] + if not value_allowed_none_or_none_sentinel(database_edition, allowed_values): + database_edition = 'UNKNOWN_ENUM_VALUE' + self._database_edition = database_edition + + @property + def node_count(self): + """ + Gets the node_count of this BaseccVmCluster. + The number of nodes in the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :return: The node_count of this BaseccVmCluster. + :rtype: int + """ + return self._node_count + + @node_count.setter + def node_count(self, node_count): + """ + Sets the node_count of this BaseccVmCluster. + The number of nodes in the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :param node_count: The node_count of this BaseccVmCluster. + :type: int + """ + self._node_count = node_count + + @property + def db_servers(self): + """ + Gets the db_servers of this BaseccVmCluster. + List of Base server OCIDs. + + + :return: The db_servers of this BaseccVmCluster. + :rtype: list[str] + """ + return self._db_servers + + @db_servers.setter + def db_servers(self, db_servers): + """ + Sets the db_servers of this BaseccVmCluster. + List of Base server OCIDs. + + + :param db_servers: The db_servers of this BaseccVmCluster. + :type: list[str] + """ + self._db_servers = db_servers + + @property + def cpus_enabled(self): + """ + **[Required]** Gets the cpus_enabled of this BaseccVmCluster. + Total CPU cores for the BaseDB C@C VM cluster. + + + :return: The cpus_enabled of this BaseccVmCluster. + :rtype: int + """ + return self._cpus_enabled + + @cpus_enabled.setter + def cpus_enabled(self, cpus_enabled): + """ + Sets the cpus_enabled of this BaseccVmCluster. + Total CPU cores for the BaseDB C@C VM cluster. + + + :param cpus_enabled: The cpus_enabled of this BaseccVmCluster. + :type: int + """ + self._cpus_enabled = cpus_enabled + + @property + def base_infrastructure_id(self): + """ + **[Required]** Gets the base_infrastructure_id of this BaseccVmCluster. + The `OCID`__ of Oracle Data Cloud@Customer Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The base_infrastructure_id of this BaseccVmCluster. + :rtype: str + """ + return self._base_infrastructure_id + + @base_infrastructure_id.setter + def base_infrastructure_id(self, base_infrastructure_id): + """ + Sets the base_infrastructure_id of this BaseccVmCluster. + The `OCID`__ of Oracle Data Cloud@Customer Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param base_infrastructure_id: The base_infrastructure_id of this BaseccVmCluster. + :type: str + """ + self._base_infrastructure_id = base_infrastructure_id + + @property + def base_vm_cluster_network_id(self): + """ + **[Required]** Gets the base_vm_cluster_network_id of this BaseccVmCluster. + The `OCID`__ of BaseDB-C@C VM Cluster Network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The base_vm_cluster_network_id of this BaseccVmCluster. + :rtype: str + """ + return self._base_vm_cluster_network_id + + @base_vm_cluster_network_id.setter + def base_vm_cluster_network_id(self, base_vm_cluster_network_id): + """ + Sets the base_vm_cluster_network_id of this BaseccVmCluster. + The `OCID`__ of BaseDB-C@C VM Cluster Network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param base_vm_cluster_network_id: The base_vm_cluster_network_id of this BaseccVmCluster. + :type: str + """ + self._base_vm_cluster_network_id = base_vm_cluster_network_id + + @property + def gi_version(self): + """ + **[Required]** Gets the gi_version of this BaseccVmCluster. + A valid Oracle Grid Infrastructure (GI) software version. + + + :return: The gi_version of this BaseccVmCluster. + :rtype: str + """ + return self._gi_version + + @gi_version.setter + def gi_version(self, gi_version): + """ + Sets the gi_version of this BaseccVmCluster. + A valid Oracle Grid Infrastructure (GI) software version. + + + :param gi_version: The gi_version of this BaseccVmCluster. + :type: str + """ + self._gi_version = gi_version + + @property + def data_collection_options(self): + """ + Gets the data_collection_options of this BaseccVmCluster. + + :return: The data_collection_options of this BaseccVmCluster. + :rtype: oci.database.models.DataCollectionOptions + """ + return self._data_collection_options + + @data_collection_options.setter + def data_collection_options(self, data_collection_options): + """ + Sets the data_collection_options of this BaseccVmCluster. + + :param data_collection_options: The data_collection_options of this BaseccVmCluster. + :type: oci.database.models.DataCollectionOptions + """ + self._data_collection_options = data_collection_options + + @property + def description(self): + """ + Gets the description of this BaseccVmCluster. + The description for Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :return: The description of this BaseccVmCluster. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this BaseccVmCluster. + The description for Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :param description: The description of this BaseccVmCluster. + :type: str + """ + self._description = description + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this BaseccVmCluster. + The user-friendly name for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. The name does not need to be unique. + + + :return: The display_name of this BaseccVmCluster. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this BaseccVmCluster. + The user-friendly name for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. The name does not need to be unique. + + + :param display_name: The display_name of this BaseccVmCluster. + :type: str + """ + self._display_name = display_name + + @property + def ssh_public_keys(self): + """ + **[Required]** Gets the ssh_public_keys of this BaseccVmCluster. + The public key portion of one or more key pairs used for SSH access to the VMs of Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :return: The ssh_public_keys of this BaseccVmCluster. + :rtype: list[str] + """ + return self._ssh_public_keys + + @ssh_public_keys.setter + def ssh_public_keys(self, ssh_public_keys): + """ + Sets the ssh_public_keys of this BaseccVmCluster. + The public key portion of one or more key pairs used for SSH access to the VMs of Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :param ssh_public_keys: The ssh_public_keys of this BaseccVmCluster. + :type: list[str] + """ + self._ssh_public_keys = ssh_public_keys + + @property + def time_zone(self): + """ + Gets the time_zone of this BaseccVmCluster. + The time zone to use for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. For details, see `Time Zones`__. + + __ https://docs.oracle.com/iaas/Content/Database/References/timezones.htm + + + :return: The time_zone of this BaseccVmCluster. + :rtype: str + """ + return self._time_zone + + @time_zone.setter + def time_zone(self, time_zone): + """ + Sets the time_zone of this BaseccVmCluster. + The time zone to use for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. For details, see `Time Zones`__. + + __ https://docs.oracle.com/iaas/Content/Database/References/timezones.htm + + + :param time_zone: The time_zone of this BaseccVmCluster. + :type: str + """ + self._time_zone = time_zone + + @property + def cluster_name(self): + """ + Gets the cluster_name of this BaseccVmCluster. + The cluster name for Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :return: The cluster_name of this BaseccVmCluster. + :rtype: str + """ + return self._cluster_name + + @cluster_name.setter + def cluster_name(self, cluster_name): + """ + Sets the cluster_name of this BaseccVmCluster. + The cluster name for Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :param cluster_name: The cluster_name of this BaseccVmCluster. + :type: str + """ + self._cluster_name = cluster_name + + @property + def boot_storage_size_in_gbs(self): + """ + Gets the boot_storage_size_in_gbs of this BaseccVmCluster. + Total boot partition size (GB) for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :return: The boot_storage_size_in_gbs of this BaseccVmCluster. + :rtype: int + """ + return self._boot_storage_size_in_gbs + + @boot_storage_size_in_gbs.setter + def boot_storage_size_in_gbs(self, boot_storage_size_in_gbs): + """ + Sets the boot_storage_size_in_gbs of this BaseccVmCluster. + Total boot partition size (GB) for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :param boot_storage_size_in_gbs: The boot_storage_size_in_gbs of this BaseccVmCluster. + :type: int + """ + self._boot_storage_size_in_gbs = boot_storage_size_in_gbs + + @property + def additional_vm_storage_size_in_gbs(self): + """ + Gets the additional_vm_storage_size_in_gbs of this BaseccVmCluster. + Total /u01 partition size (GB) for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :return: The additional_vm_storage_size_in_gbs of this BaseccVmCluster. + :rtype: int + """ + return self._additional_vm_storage_size_in_gbs + + @additional_vm_storage_size_in_gbs.setter + def additional_vm_storage_size_in_gbs(self, additional_vm_storage_size_in_gbs): + """ + Sets the additional_vm_storage_size_in_gbs of this BaseccVmCluster. + Total /u01 partition size (GB) for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :param additional_vm_storage_size_in_gbs: The additional_vm_storage_size_in_gbs of this BaseccVmCluster. + :type: int + """ + self._additional_vm_storage_size_in_gbs = additional_vm_storage_size_in_gbs + + @property + def total_storage_size_in_gbs(self): + """ + Gets the total_storage_size_in_gbs of this BaseccVmCluster. + The total storage allocated in GBs. + + + :return: The total_storage_size_in_gbs of this BaseccVmCluster. + :rtype: int + """ + return self._total_storage_size_in_gbs + + @total_storage_size_in_gbs.setter + def total_storage_size_in_gbs(self, total_storage_size_in_gbs): + """ + Sets the total_storage_size_in_gbs of this BaseccVmCluster. + The total storage allocated in GBs. + + + :param total_storage_size_in_gbs: The total_storage_size_in_gbs of this BaseccVmCluster. + :type: int + """ + self._total_storage_size_in_gbs = total_storage_size_in_gbs + + @property + def data_storage_size_in_gbs(self): + """ + Gets the data_storage_size_in_gbs of this BaseccVmCluster. + The DATA Disk Group size in GB for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :return: The data_storage_size_in_gbs of this BaseccVmCluster. + :rtype: int + """ + return self._data_storage_size_in_gbs + + @data_storage_size_in_gbs.setter + def data_storage_size_in_gbs(self, data_storage_size_in_gbs): + """ + Sets the data_storage_size_in_gbs of this BaseccVmCluster. + The DATA Disk Group size in GB for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :param data_storage_size_in_gbs: The data_storage_size_in_gbs of this BaseccVmCluster. + :type: int + """ + self._data_storage_size_in_gbs = data_storage_size_in_gbs + + @property + def reco_storage_size_in_gbs(self): + """ + Gets the reco_storage_size_in_gbs of this BaseccVmCluster. + The RECO Disk Group size in GB for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :return: The reco_storage_size_in_gbs of this BaseccVmCluster. + :rtype: int + """ + return self._reco_storage_size_in_gbs + + @reco_storage_size_in_gbs.setter + def reco_storage_size_in_gbs(self, reco_storage_size_in_gbs): + """ + Sets the reco_storage_size_in_gbs of this BaseccVmCluster. + The RECO Disk Group size in GB for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :param reco_storage_size_in_gbs: The reco_storage_size_in_gbs of this BaseccVmCluster. + :type: int + """ + self._reco_storage_size_in_gbs = reco_storage_size_in_gbs + + @property + def memory_size_in_gbs(self): + """ + Gets the memory_size_in_gbs of this BaseccVmCluster. + The total memory to be allocated, in GBs, for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. The minimum is 11GB for every 4 ECPU. + + + :return: The memory_size_in_gbs of this BaseccVmCluster. + :rtype: int + """ + return self._memory_size_in_gbs + + @memory_size_in_gbs.setter + def memory_size_in_gbs(self, memory_size_in_gbs): + """ + Sets the memory_size_in_gbs of this BaseccVmCluster. + The total memory to be allocated, in GBs, for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. The minimum is 11GB for every 4 ECPU. + + + :param memory_size_in_gbs: The memory_size_in_gbs of this BaseccVmCluster. + :type: int + """ + self._memory_size_in_gbs = memory_size_in_gbs + + @property + def license_model(self): + """ + Gets the license_model of this BaseccVmCluster. + The Oracle license model that applies to the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. The default is LICENSE_INCLUDED. + + Allowed values for this property are: "LICENSE_INCLUDED", "BRING_YOUR_OWN_LICENSE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The license_model of this BaseccVmCluster. + :rtype: str + """ + return self._license_model + + @license_model.setter + def license_model(self, license_model): + """ + Sets the license_model of this BaseccVmCluster. + The Oracle license model that applies to the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. The default is LICENSE_INCLUDED. + + + :param license_model: The license_model of this BaseccVmCluster. + :type: str + """ + allowed_values = ["LICENSE_INCLUDED", "BRING_YOUR_OWN_LICENSE"] + if not value_allowed_none_or_none_sentinel(license_model, allowed_values): + license_model = 'UNKNOWN_ENUM_VALUE' + self._license_model = license_model + + @property + def freeform_tags(self): + """ + **[Required]** Gets the freeform_tags of this BaseccVmCluster. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this BaseccVmCluster. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this BaseccVmCluster. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this BaseccVmCluster. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + **[Required]** Gets the defined_tags of this BaseccVmCluster. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this BaseccVmCluster. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this BaseccVmCluster. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this BaseccVmCluster. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def system_tags(self): + """ + **[Required]** Gets the system_tags of this BaseccVmCluster. + System tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The system_tags of this BaseccVmCluster. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this BaseccVmCluster. + System tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param system_tags: The system_tags of this BaseccVmCluster. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + @property + def system_version(self): + """ + Gets the system_version of this BaseccVmCluster. + Operating system version of the image. + + + :return: The system_version of this BaseccVmCluster. + :rtype: str + """ + return self._system_version + + @system_version.setter + def system_version(self, system_version): + """ + Sets the system_version of this BaseccVmCluster. + Operating system version of the image. + + + :param system_version: The system_version of this BaseccVmCluster. + :type: str + """ + self._system_version = system_version + + @property + def vm_cluster_type(self): + """ + Gets the vm_cluster_type of this BaseccVmCluster. + The cluster type for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + Allowed values for this property are: "REGULAR", "DEVELOPER", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The vm_cluster_type of this BaseccVmCluster. + :rtype: str + """ + return self._vm_cluster_type + + @vm_cluster_type.setter + def vm_cluster_type(self, vm_cluster_type): + """ + Sets the vm_cluster_type of this BaseccVmCluster. + The cluster type for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :param vm_cluster_type: The vm_cluster_type of this BaseccVmCluster. + :type: str + """ + allowed_values = ["REGULAR", "DEVELOPER"] + if not value_allowed_none_or_none_sentinel(vm_cluster_type, allowed_values): + vm_cluster_type = 'UNKNOWN_ENUM_VALUE' + self._vm_cluster_type = vm_cluster_type + + @property + def cloud_automation_update_details(self): + """ + Gets the cloud_automation_update_details of this BaseccVmCluster. + + :return: The cloud_automation_update_details of this BaseccVmCluster. + :rtype: oci.database.models.CloudAutomationUpdateDetails + """ + return self._cloud_automation_update_details + + @cloud_automation_update_details.setter + def cloud_automation_update_details(self, cloud_automation_update_details): + """ + Sets the cloud_automation_update_details of this BaseccVmCluster. + + :param cloud_automation_update_details: The cloud_automation_update_details of this BaseccVmCluster. + :type: oci.database.models.CloudAutomationUpdateDetails + """ + self._cloud_automation_update_details = cloud_automation_update_details + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/database/models/basecc_vm_cluster_summary.py b/src/oci/database/models/basecc_vm_cluster_summary.py new file mode 100644 index 0000000000..1215802c01 --- /dev/null +++ b/src/oci/database/models/basecc_vm_cluster_summary.py @@ -0,0 +1,1229 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class BaseccVmClusterSummary(object): + """ + Details of the Base Cloud@Customer VM Cluster. + """ + + #: A constant which can be used with the lifecycle_state property of a BaseccVmClusterSummary. + #: This constant has a value of "PROVISIONING" + LIFECYCLE_STATE_PROVISIONING = "PROVISIONING" + + #: A constant which can be used with the lifecycle_state property of a BaseccVmClusterSummary. + #: This constant has a value of "AVAILABLE" + LIFECYCLE_STATE_AVAILABLE = "AVAILABLE" + + #: A constant which can be used with the lifecycle_state property of a BaseccVmClusterSummary. + #: This constant has a value of "UPDATING" + LIFECYCLE_STATE_UPDATING = "UPDATING" + + #: A constant which can be used with the lifecycle_state property of a BaseccVmClusterSummary. + #: This constant has a value of "TERMINATING" + LIFECYCLE_STATE_TERMINATING = "TERMINATING" + + #: A constant which can be used with the lifecycle_state property of a BaseccVmClusterSummary. + #: This constant has a value of "TERMINATED" + LIFECYCLE_STATE_TERMINATED = "TERMINATED" + + #: A constant which can be used with the lifecycle_state property of a BaseccVmClusterSummary. + #: This constant has a value of "FAILED" + LIFECYCLE_STATE_FAILED = "FAILED" + + #: A constant which can be used with the lifecycle_state property of a BaseccVmClusterSummary. + #: This constant has a value of "MAINTENANCE_IN_PROGRESS" + LIFECYCLE_STATE_MAINTENANCE_IN_PROGRESS = "MAINTENANCE_IN_PROGRESS" + + #: A constant which can be used with the database_edition property of a BaseccVmClusterSummary. + #: This constant has a value of "STANDARD_EDITION" + DATABASE_EDITION_STANDARD_EDITION = "STANDARD_EDITION" + + #: A constant which can be used with the database_edition property of a BaseccVmClusterSummary. + #: This constant has a value of "ENTERPRISE_EDITION" + DATABASE_EDITION_ENTERPRISE_EDITION = "ENTERPRISE_EDITION" + + #: A constant which can be used with the database_edition property of a BaseccVmClusterSummary. + #: This constant has a value of "ENTERPRISE_EDITION_HIGH_PERFORMANCE" + DATABASE_EDITION_ENTERPRISE_EDITION_HIGH_PERFORMANCE = "ENTERPRISE_EDITION_HIGH_PERFORMANCE" + + #: A constant which can be used with the database_edition property of a BaseccVmClusterSummary. + #: This constant has a value of "ENTERPRISE_EDITION_EXTREME_PERFORMANCE" + DATABASE_EDITION_ENTERPRISE_EDITION_EXTREME_PERFORMANCE = "ENTERPRISE_EDITION_EXTREME_PERFORMANCE" + + #: A constant which can be used with the database_edition property of a BaseccVmClusterSummary. + #: This constant has a value of "ENTERPRISE_EDITION_DEVELOPER" + DATABASE_EDITION_ENTERPRISE_EDITION_DEVELOPER = "ENTERPRISE_EDITION_DEVELOPER" + + #: A constant which can be used with the license_model property of a BaseccVmClusterSummary. + #: This constant has a value of "LICENSE_INCLUDED" + LICENSE_MODEL_LICENSE_INCLUDED = "LICENSE_INCLUDED" + + #: A constant which can be used with the license_model property of a BaseccVmClusterSummary. + #: This constant has a value of "BRING_YOUR_OWN_LICENSE" + LICENSE_MODEL_BRING_YOUR_OWN_LICENSE = "BRING_YOUR_OWN_LICENSE" + + #: A constant which can be used with the vm_cluster_type property of a BaseccVmClusterSummary. + #: This constant has a value of "REGULAR" + VM_CLUSTER_TYPE_REGULAR = "REGULAR" + + #: A constant which can be used with the vm_cluster_type property of a BaseccVmClusterSummary. + #: This constant has a value of "DEVELOPER" + VM_CLUSTER_TYPE_DEVELOPER = "DEVELOPER" + + def __init__(self, **kwargs): + """ + Initializes a new BaseccVmClusterSummary object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this BaseccVmClusterSummary. + :type id: str + + :param last_patch_history_entry_id: + The value to assign to the last_patch_history_entry_id property of this BaseccVmClusterSummary. + :type last_patch_history_entry_id: str + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this BaseccVmClusterSummary. + Allowed values for this property are: "PROVISIONING", "AVAILABLE", "UPDATING", "TERMINATING", "TERMINATED", "FAILED", "MAINTENANCE_IN_PROGRESS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + :param time_created: + The value to assign to the time_created property of this BaseccVmClusterSummary. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this BaseccVmClusterSummary. + :type time_updated: datetime + + :param lifecycle_details: + The value to assign to the lifecycle_details property of this BaseccVmClusterSummary. + :type lifecycle_details: str + + :param availability_domain: + The value to assign to the availability_domain property of this BaseccVmClusterSummary. + :type availability_domain: str + + :param compartment_id: + The value to assign to the compartment_id property of this BaseccVmClusterSummary. + :type compartment_id: str + + :param database_edition: + The value to assign to the database_edition property of this BaseccVmClusterSummary. + Allowed values for this property are: "STANDARD_EDITION", "ENTERPRISE_EDITION", "ENTERPRISE_EDITION_HIGH_PERFORMANCE", "ENTERPRISE_EDITION_EXTREME_PERFORMANCE", "ENTERPRISE_EDITION_DEVELOPER", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type database_edition: str + + :param node_count: + The value to assign to the node_count property of this BaseccVmClusterSummary. + :type node_count: int + + :param db_servers: + The value to assign to the db_servers property of this BaseccVmClusterSummary. + :type db_servers: list[str] + + :param cpus_enabled: + The value to assign to the cpus_enabled property of this BaseccVmClusterSummary. + :type cpus_enabled: int + + :param base_infrastructure_id: + The value to assign to the base_infrastructure_id property of this BaseccVmClusterSummary. + :type base_infrastructure_id: str + + :param base_vm_cluster_network_id: + The value to assign to the base_vm_cluster_network_id property of this BaseccVmClusterSummary. + :type base_vm_cluster_network_id: str + + :param gi_version: + The value to assign to the gi_version property of this BaseccVmClusterSummary. + :type gi_version: str + + :param data_collection_options: + The value to assign to the data_collection_options property of this BaseccVmClusterSummary. + :type data_collection_options: oci.database.models.DataCollectionOptions + + :param description: + The value to assign to the description property of this BaseccVmClusterSummary. + :type description: str + + :param display_name: + The value to assign to the display_name property of this BaseccVmClusterSummary. + :type display_name: str + + :param ssh_public_keys: + The value to assign to the ssh_public_keys property of this BaseccVmClusterSummary. + :type ssh_public_keys: list[str] + + :param time_zone: + The value to assign to the time_zone property of this BaseccVmClusterSummary. + :type time_zone: str + + :param cluster_name: + The value to assign to the cluster_name property of this BaseccVmClusterSummary. + :type cluster_name: str + + :param boot_storage_size_in_gbs: + The value to assign to the boot_storage_size_in_gbs property of this BaseccVmClusterSummary. + :type boot_storage_size_in_gbs: int + + :param additional_vm_storage_size_in_gbs: + The value to assign to the additional_vm_storage_size_in_gbs property of this BaseccVmClusterSummary. + :type additional_vm_storage_size_in_gbs: int + + :param total_storage_size_in_gbs: + The value to assign to the total_storage_size_in_gbs property of this BaseccVmClusterSummary. + :type total_storage_size_in_gbs: int + + :param data_storage_size_in_gbs: + The value to assign to the data_storage_size_in_gbs property of this BaseccVmClusterSummary. + :type data_storage_size_in_gbs: int + + :param reco_storage_size_in_gbs: + The value to assign to the reco_storage_size_in_gbs property of this BaseccVmClusterSummary. + :type reco_storage_size_in_gbs: int + + :param memory_size_in_gbs: + The value to assign to the memory_size_in_gbs property of this BaseccVmClusterSummary. + :type memory_size_in_gbs: int + + :param license_model: + The value to assign to the license_model property of this BaseccVmClusterSummary. + Allowed values for this property are: "LICENSE_INCLUDED", "BRING_YOUR_OWN_LICENSE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type license_model: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this BaseccVmClusterSummary. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this BaseccVmClusterSummary. + :type defined_tags: dict(str, dict(str, object)) + + :param system_tags: + The value to assign to the system_tags property of this BaseccVmClusterSummary. + :type system_tags: dict(str, dict(str, object)) + + :param system_version: + The value to assign to the system_version property of this BaseccVmClusterSummary. + :type system_version: str + + :param vm_cluster_type: + The value to assign to the vm_cluster_type property of this BaseccVmClusterSummary. + Allowed values for this property are: "REGULAR", "DEVELOPER", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type vm_cluster_type: str + + :param cloud_automation_update_details: + The value to assign to the cloud_automation_update_details property of this BaseccVmClusterSummary. + :type cloud_automation_update_details: oci.database.models.CloudAutomationUpdateDetails + + """ + self.swagger_types = { + 'id': 'str', + 'last_patch_history_entry_id': 'str', + 'lifecycle_state': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'lifecycle_details': 'str', + 'availability_domain': 'str', + 'compartment_id': 'str', + 'database_edition': 'str', + 'node_count': 'int', + 'db_servers': 'list[str]', + 'cpus_enabled': 'int', + 'base_infrastructure_id': 'str', + 'base_vm_cluster_network_id': 'str', + 'gi_version': 'str', + 'data_collection_options': 'DataCollectionOptions', + 'description': 'str', + 'display_name': 'str', + 'ssh_public_keys': 'list[str]', + 'time_zone': 'str', + 'cluster_name': 'str', + 'boot_storage_size_in_gbs': 'int', + 'additional_vm_storage_size_in_gbs': 'int', + 'total_storage_size_in_gbs': 'int', + 'data_storage_size_in_gbs': 'int', + 'reco_storage_size_in_gbs': 'int', + 'memory_size_in_gbs': 'int', + 'license_model': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))', + 'system_version': 'str', + 'vm_cluster_type': 'str', + 'cloud_automation_update_details': 'CloudAutomationUpdateDetails' + } + self.attribute_map = { + 'id': 'id', + 'last_patch_history_entry_id': 'lastPatchHistoryEntryId', + 'lifecycle_state': 'lifecycleState', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'lifecycle_details': 'lifecycleDetails', + 'availability_domain': 'availabilityDomain', + 'compartment_id': 'compartmentId', + 'database_edition': 'databaseEdition', + 'node_count': 'nodeCount', + 'db_servers': 'dbServers', + 'cpus_enabled': 'cpusEnabled', + 'base_infrastructure_id': 'baseInfrastructureId', + 'base_vm_cluster_network_id': 'baseVmClusterNetworkId', + 'gi_version': 'giVersion', + 'data_collection_options': 'dataCollectionOptions', + 'description': 'description', + 'display_name': 'displayName', + 'ssh_public_keys': 'sshPublicKeys', + 'time_zone': 'timeZone', + 'cluster_name': 'clusterName', + 'boot_storage_size_in_gbs': 'bootStorageSizeInGBs', + 'additional_vm_storage_size_in_gbs': 'additionalVmStorageSizeInGBs', + 'total_storage_size_in_gbs': 'totalStorageSizeInGBs', + 'data_storage_size_in_gbs': 'dataStorageSizeInGBs', + 'reco_storage_size_in_gbs': 'recoStorageSizeInGBs', + 'memory_size_in_gbs': 'memorySizeInGBs', + 'license_model': 'licenseModel', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags', + 'system_version': 'systemVersion', + 'vm_cluster_type': 'vmClusterType', + 'cloud_automation_update_details': 'cloudAutomationUpdateDetails' + } + self._id = None + self._last_patch_history_entry_id = None + self._lifecycle_state = None + self._time_created = None + self._time_updated = None + self._lifecycle_details = None + self._availability_domain = None + self._compartment_id = None + self._database_edition = None + self._node_count = None + self._db_servers = None + self._cpus_enabled = None + self._base_infrastructure_id = None + self._base_vm_cluster_network_id = None + self._gi_version = None + self._data_collection_options = None + self._description = None + self._display_name = None + self._ssh_public_keys = None + self._time_zone = None + self._cluster_name = None + self._boot_storage_size_in_gbs = None + self._additional_vm_storage_size_in_gbs = None + self._total_storage_size_in_gbs = None + self._data_storage_size_in_gbs = None + self._reco_storage_size_in_gbs = None + self._memory_size_in_gbs = None + self._license_model = None + self._freeform_tags = None + self._defined_tags = None + self._system_tags = None + self._system_version = None + self._vm_cluster_type = None + self._cloud_automation_update_details = None + + @property + def id(self): + """ + **[Required]** Gets the id of this BaseccVmClusterSummary. + The `OCID`__ of the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this BaseccVmClusterSummary. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this BaseccVmClusterSummary. + The `OCID`__ of the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this BaseccVmClusterSummary. + :type: str + """ + self._id = id + + @property + def last_patch_history_entry_id(self): + """ + Gets the last_patch_history_entry_id of this BaseccVmClusterSummary. + The `OCID`__ of the last patch history. This value is updated as soon as a patch operation starts. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The last_patch_history_entry_id of this BaseccVmClusterSummary. + :rtype: str + """ + return self._last_patch_history_entry_id + + @last_patch_history_entry_id.setter + def last_patch_history_entry_id(self, last_patch_history_entry_id): + """ + Sets the last_patch_history_entry_id of this BaseccVmClusterSummary. + The `OCID`__ of the last patch history. This value is updated as soon as a patch operation starts. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param last_patch_history_entry_id: The last_patch_history_entry_id of this BaseccVmClusterSummary. + :type: str + """ + self._last_patch_history_entry_id = last_patch_history_entry_id + + @property + def lifecycle_state(self): + """ + **[Required]** Gets the lifecycle_state of this BaseccVmClusterSummary. + The current state of the VM Cluster. + + Allowed values for this property are: "PROVISIONING", "AVAILABLE", "UPDATING", "TERMINATING", "TERMINATED", "FAILED", "MAINTENANCE_IN_PROGRESS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this BaseccVmClusterSummary. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this BaseccVmClusterSummary. + The current state of the VM Cluster. + + + :param lifecycle_state: The lifecycle_state of this BaseccVmClusterSummary. + :type: str + """ + allowed_values = ["PROVISIONING", "AVAILABLE", "UPDATING", "TERMINATING", "TERMINATED", "FAILED", "MAINTENANCE_IN_PROGRESS"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + + @property + def time_created(self): + """ + **[Required]** Gets the time_created of this BaseccVmClusterSummary. + The date and time that the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster was created. + + + :return: The time_created of this BaseccVmClusterSummary. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this BaseccVmClusterSummary. + The date and time that the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster was created. + + + :param time_created: The time_created of this BaseccVmClusterSummary. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + Gets the time_updated of this BaseccVmClusterSummary. + The date and time that the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster was updated. + + + :return: The time_updated of this BaseccVmClusterSummary. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this BaseccVmClusterSummary. + The date and time that the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster was updated. + + + :param time_updated: The time_updated of this BaseccVmClusterSummary. + :type: datetime + """ + self._time_updated = time_updated + + @property + def lifecycle_details(self): + """ + Gets the lifecycle_details of this BaseccVmClusterSummary. + Additional information about the current lifecycle state of the the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :return: The lifecycle_details of this BaseccVmClusterSummary. + :rtype: str + """ + return self._lifecycle_details + + @lifecycle_details.setter + def lifecycle_details(self, lifecycle_details): + """ + Sets the lifecycle_details of this BaseccVmClusterSummary. + Additional information about the current lifecycle state of the the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :param lifecycle_details: The lifecycle_details of this BaseccVmClusterSummary. + :type: str + """ + self._lifecycle_details = lifecycle_details + + @property + def availability_domain(self): + """ + **[Required]** Gets the availability_domain of this BaseccVmClusterSummary. + The name of the availability domain in which the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster is located. + + + :return: The availability_domain of this BaseccVmClusterSummary. + :rtype: str + """ + return self._availability_domain + + @availability_domain.setter + def availability_domain(self, availability_domain): + """ + Sets the availability_domain of this BaseccVmClusterSummary. + The name of the availability domain in which the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster is located. + + + :param availability_domain: The availability_domain of this BaseccVmClusterSummary. + :type: str + """ + self._availability_domain = availability_domain + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this BaseccVmClusterSummary. + The `OCID`__ of the compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this BaseccVmClusterSummary. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this BaseccVmClusterSummary. + The `OCID`__ of the compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this BaseccVmClusterSummary. + :type: str + """ + self._compartment_id = compartment_id + + @property + def database_edition(self): + """ + Gets the database_edition of this BaseccVmClusterSummary. + The Oracle Database Edition that applies to all the databases on the DB system. + Exadata DB systems and 2-node RAC DB systems require ENTERPRISE_EDITION_EXTREME_PERFORMANCE. + + Allowed values for this property are: "STANDARD_EDITION", "ENTERPRISE_EDITION", "ENTERPRISE_EDITION_HIGH_PERFORMANCE", "ENTERPRISE_EDITION_EXTREME_PERFORMANCE", "ENTERPRISE_EDITION_DEVELOPER", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The database_edition of this BaseccVmClusterSummary. + :rtype: str + """ + return self._database_edition + + @database_edition.setter + def database_edition(self, database_edition): + """ + Sets the database_edition of this BaseccVmClusterSummary. + The Oracle Database Edition that applies to all the databases on the DB system. + Exadata DB systems and 2-node RAC DB systems require ENTERPRISE_EDITION_EXTREME_PERFORMANCE. + + + :param database_edition: The database_edition of this BaseccVmClusterSummary. + :type: str + """ + allowed_values = ["STANDARD_EDITION", "ENTERPRISE_EDITION", "ENTERPRISE_EDITION_HIGH_PERFORMANCE", "ENTERPRISE_EDITION_EXTREME_PERFORMANCE", "ENTERPRISE_EDITION_DEVELOPER"] + if not value_allowed_none_or_none_sentinel(database_edition, allowed_values): + database_edition = 'UNKNOWN_ENUM_VALUE' + self._database_edition = database_edition + + @property + def node_count(self): + """ + Gets the node_count of this BaseccVmClusterSummary. + The number of nodes in the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :return: The node_count of this BaseccVmClusterSummary. + :rtype: int + """ + return self._node_count + + @node_count.setter + def node_count(self, node_count): + """ + Sets the node_count of this BaseccVmClusterSummary. + The number of nodes in the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :param node_count: The node_count of this BaseccVmClusterSummary. + :type: int + """ + self._node_count = node_count + + @property + def db_servers(self): + """ + Gets the db_servers of this BaseccVmClusterSummary. + List of Base server OCIDs. + + + :return: The db_servers of this BaseccVmClusterSummary. + :rtype: list[str] + """ + return self._db_servers + + @db_servers.setter + def db_servers(self, db_servers): + """ + Sets the db_servers of this BaseccVmClusterSummary. + List of Base server OCIDs. + + + :param db_servers: The db_servers of this BaseccVmClusterSummary. + :type: list[str] + """ + self._db_servers = db_servers + + @property + def cpus_enabled(self): + """ + **[Required]** Gets the cpus_enabled of this BaseccVmClusterSummary. + Total CPU cores for the BaseDB C@C VM cluster. + + + :return: The cpus_enabled of this BaseccVmClusterSummary. + :rtype: int + """ + return self._cpus_enabled + + @cpus_enabled.setter + def cpus_enabled(self, cpus_enabled): + """ + Sets the cpus_enabled of this BaseccVmClusterSummary. + Total CPU cores for the BaseDB C@C VM cluster. + + + :param cpus_enabled: The cpus_enabled of this BaseccVmClusterSummary. + :type: int + """ + self._cpus_enabled = cpus_enabled + + @property + def base_infrastructure_id(self): + """ + **[Required]** Gets the base_infrastructure_id of this BaseccVmClusterSummary. + The `OCID`__ of Oracle Data Cloud@Customer Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The base_infrastructure_id of this BaseccVmClusterSummary. + :rtype: str + """ + return self._base_infrastructure_id + + @base_infrastructure_id.setter + def base_infrastructure_id(self, base_infrastructure_id): + """ + Sets the base_infrastructure_id of this BaseccVmClusterSummary. + The `OCID`__ of Oracle Data Cloud@Customer Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param base_infrastructure_id: The base_infrastructure_id of this BaseccVmClusterSummary. + :type: str + """ + self._base_infrastructure_id = base_infrastructure_id + + @property + def base_vm_cluster_network_id(self): + """ + **[Required]** Gets the base_vm_cluster_network_id of this BaseccVmClusterSummary. + The `OCID`__ of BaseDB-C@C VM Cluster Network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The base_vm_cluster_network_id of this BaseccVmClusterSummary. + :rtype: str + """ + return self._base_vm_cluster_network_id + + @base_vm_cluster_network_id.setter + def base_vm_cluster_network_id(self, base_vm_cluster_network_id): + """ + Sets the base_vm_cluster_network_id of this BaseccVmClusterSummary. + The `OCID`__ of BaseDB-C@C VM Cluster Network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param base_vm_cluster_network_id: The base_vm_cluster_network_id of this BaseccVmClusterSummary. + :type: str + """ + self._base_vm_cluster_network_id = base_vm_cluster_network_id + + @property + def gi_version(self): + """ + **[Required]** Gets the gi_version of this BaseccVmClusterSummary. + A valid Oracle Grid Infrastructure (GI) software version. + + + :return: The gi_version of this BaseccVmClusterSummary. + :rtype: str + """ + return self._gi_version + + @gi_version.setter + def gi_version(self, gi_version): + """ + Sets the gi_version of this BaseccVmClusterSummary. + A valid Oracle Grid Infrastructure (GI) software version. + + + :param gi_version: The gi_version of this BaseccVmClusterSummary. + :type: str + """ + self._gi_version = gi_version + + @property + def data_collection_options(self): + """ + Gets the data_collection_options of this BaseccVmClusterSummary. + + :return: The data_collection_options of this BaseccVmClusterSummary. + :rtype: oci.database.models.DataCollectionOptions + """ + return self._data_collection_options + + @data_collection_options.setter + def data_collection_options(self, data_collection_options): + """ + Sets the data_collection_options of this BaseccVmClusterSummary. + + :param data_collection_options: The data_collection_options of this BaseccVmClusterSummary. + :type: oci.database.models.DataCollectionOptions + """ + self._data_collection_options = data_collection_options + + @property + def description(self): + """ + Gets the description of this BaseccVmClusterSummary. + The description for Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :return: The description of this BaseccVmClusterSummary. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this BaseccVmClusterSummary. + The description for Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :param description: The description of this BaseccVmClusterSummary. + :type: str + """ + self._description = description + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this BaseccVmClusterSummary. + The user-friendly name for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. The name does not need to be unique. + + + :return: The display_name of this BaseccVmClusterSummary. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this BaseccVmClusterSummary. + The user-friendly name for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. The name does not need to be unique. + + + :param display_name: The display_name of this BaseccVmClusterSummary. + :type: str + """ + self._display_name = display_name + + @property + def ssh_public_keys(self): + """ + **[Required]** Gets the ssh_public_keys of this BaseccVmClusterSummary. + The public key portion of one or more key pairs used for SSH access to the VMs of Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :return: The ssh_public_keys of this BaseccVmClusterSummary. + :rtype: list[str] + """ + return self._ssh_public_keys + + @ssh_public_keys.setter + def ssh_public_keys(self, ssh_public_keys): + """ + Sets the ssh_public_keys of this BaseccVmClusterSummary. + The public key portion of one or more key pairs used for SSH access to the VMs of Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :param ssh_public_keys: The ssh_public_keys of this BaseccVmClusterSummary. + :type: list[str] + """ + self._ssh_public_keys = ssh_public_keys + + @property + def time_zone(self): + """ + Gets the time_zone of this BaseccVmClusterSummary. + The time zone to use for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. For details, see `Time Zones`__. + + __ https://docs.oracle.com/iaas/Content/Database/References/timezones.htm + + + :return: The time_zone of this BaseccVmClusterSummary. + :rtype: str + """ + return self._time_zone + + @time_zone.setter + def time_zone(self, time_zone): + """ + Sets the time_zone of this BaseccVmClusterSummary. + The time zone to use for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. For details, see `Time Zones`__. + + __ https://docs.oracle.com/iaas/Content/Database/References/timezones.htm + + + :param time_zone: The time_zone of this BaseccVmClusterSummary. + :type: str + """ + self._time_zone = time_zone + + @property + def cluster_name(self): + """ + Gets the cluster_name of this BaseccVmClusterSummary. + The cluster name for Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :return: The cluster_name of this BaseccVmClusterSummary. + :rtype: str + """ + return self._cluster_name + + @cluster_name.setter + def cluster_name(self, cluster_name): + """ + Sets the cluster_name of this BaseccVmClusterSummary. + The cluster name for Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :param cluster_name: The cluster_name of this BaseccVmClusterSummary. + :type: str + """ + self._cluster_name = cluster_name + + @property + def boot_storage_size_in_gbs(self): + """ + Gets the boot_storage_size_in_gbs of this BaseccVmClusterSummary. + Total boot partition size (GB) for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :return: The boot_storage_size_in_gbs of this BaseccVmClusterSummary. + :rtype: int + """ + return self._boot_storage_size_in_gbs + + @boot_storage_size_in_gbs.setter + def boot_storage_size_in_gbs(self, boot_storage_size_in_gbs): + """ + Sets the boot_storage_size_in_gbs of this BaseccVmClusterSummary. + Total boot partition size (GB) for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :param boot_storage_size_in_gbs: The boot_storage_size_in_gbs of this BaseccVmClusterSummary. + :type: int + """ + self._boot_storage_size_in_gbs = boot_storage_size_in_gbs + + @property + def additional_vm_storage_size_in_gbs(self): + """ + Gets the additional_vm_storage_size_in_gbs of this BaseccVmClusterSummary. + Total /u01 partition size (GB) for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :return: The additional_vm_storage_size_in_gbs of this BaseccVmClusterSummary. + :rtype: int + """ + return self._additional_vm_storage_size_in_gbs + + @additional_vm_storage_size_in_gbs.setter + def additional_vm_storage_size_in_gbs(self, additional_vm_storage_size_in_gbs): + """ + Sets the additional_vm_storage_size_in_gbs of this BaseccVmClusterSummary. + Total /u01 partition size (GB) for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :param additional_vm_storage_size_in_gbs: The additional_vm_storage_size_in_gbs of this BaseccVmClusterSummary. + :type: int + """ + self._additional_vm_storage_size_in_gbs = additional_vm_storage_size_in_gbs + + @property + def total_storage_size_in_gbs(self): + """ + Gets the total_storage_size_in_gbs of this BaseccVmClusterSummary. + The total storage allocated in GBs. + + + :return: The total_storage_size_in_gbs of this BaseccVmClusterSummary. + :rtype: int + """ + return self._total_storage_size_in_gbs + + @total_storage_size_in_gbs.setter + def total_storage_size_in_gbs(self, total_storage_size_in_gbs): + """ + Sets the total_storage_size_in_gbs of this BaseccVmClusterSummary. + The total storage allocated in GBs. + + + :param total_storage_size_in_gbs: The total_storage_size_in_gbs of this BaseccVmClusterSummary. + :type: int + """ + self._total_storage_size_in_gbs = total_storage_size_in_gbs + + @property + def data_storage_size_in_gbs(self): + """ + Gets the data_storage_size_in_gbs of this BaseccVmClusterSummary. + The DATA Disk Group size in GB for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :return: The data_storage_size_in_gbs of this BaseccVmClusterSummary. + :rtype: int + """ + return self._data_storage_size_in_gbs + + @data_storage_size_in_gbs.setter + def data_storage_size_in_gbs(self, data_storage_size_in_gbs): + """ + Sets the data_storage_size_in_gbs of this BaseccVmClusterSummary. + The DATA Disk Group size in GB for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :param data_storage_size_in_gbs: The data_storage_size_in_gbs of this BaseccVmClusterSummary. + :type: int + """ + self._data_storage_size_in_gbs = data_storage_size_in_gbs + + @property + def reco_storage_size_in_gbs(self): + """ + Gets the reco_storage_size_in_gbs of this BaseccVmClusterSummary. + The RECO Disk Group size in GB for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :return: The reco_storage_size_in_gbs of this BaseccVmClusterSummary. + :rtype: int + """ + return self._reco_storage_size_in_gbs + + @reco_storage_size_in_gbs.setter + def reco_storage_size_in_gbs(self, reco_storage_size_in_gbs): + """ + Sets the reco_storage_size_in_gbs of this BaseccVmClusterSummary. + The RECO Disk Group size in GB for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :param reco_storage_size_in_gbs: The reco_storage_size_in_gbs of this BaseccVmClusterSummary. + :type: int + """ + self._reco_storage_size_in_gbs = reco_storage_size_in_gbs + + @property + def memory_size_in_gbs(self): + """ + Gets the memory_size_in_gbs of this BaseccVmClusterSummary. + The total memory to be allocated, in GBs, for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. The minimum is 11GB for every 4 ECPU. + + + :return: The memory_size_in_gbs of this BaseccVmClusterSummary. + :rtype: int + """ + return self._memory_size_in_gbs + + @memory_size_in_gbs.setter + def memory_size_in_gbs(self, memory_size_in_gbs): + """ + Sets the memory_size_in_gbs of this BaseccVmClusterSummary. + The total memory to be allocated, in GBs, for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. The minimum is 11GB for every 4 ECPU. + + + :param memory_size_in_gbs: The memory_size_in_gbs of this BaseccVmClusterSummary. + :type: int + """ + self._memory_size_in_gbs = memory_size_in_gbs + + @property + def license_model(self): + """ + Gets the license_model of this BaseccVmClusterSummary. + The Oracle license model that applies to the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. The default is LICENSE_INCLUDED. + + Allowed values for this property are: "LICENSE_INCLUDED", "BRING_YOUR_OWN_LICENSE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The license_model of this BaseccVmClusterSummary. + :rtype: str + """ + return self._license_model + + @license_model.setter + def license_model(self, license_model): + """ + Sets the license_model of this BaseccVmClusterSummary. + The Oracle license model that applies to the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. The default is LICENSE_INCLUDED. + + + :param license_model: The license_model of this BaseccVmClusterSummary. + :type: str + """ + allowed_values = ["LICENSE_INCLUDED", "BRING_YOUR_OWN_LICENSE"] + if not value_allowed_none_or_none_sentinel(license_model, allowed_values): + license_model = 'UNKNOWN_ENUM_VALUE' + self._license_model = license_model + + @property + def freeform_tags(self): + """ + **[Required]** Gets the freeform_tags of this BaseccVmClusterSummary. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this BaseccVmClusterSummary. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this BaseccVmClusterSummary. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this BaseccVmClusterSummary. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + **[Required]** Gets the defined_tags of this BaseccVmClusterSummary. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this BaseccVmClusterSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this BaseccVmClusterSummary. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this BaseccVmClusterSummary. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def system_tags(self): + """ + **[Required]** Gets the system_tags of this BaseccVmClusterSummary. + System tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The system_tags of this BaseccVmClusterSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this BaseccVmClusterSummary. + System tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param system_tags: The system_tags of this BaseccVmClusterSummary. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + @property + def system_version(self): + """ + Gets the system_version of this BaseccVmClusterSummary. + Operating system version of the image. + + + :return: The system_version of this BaseccVmClusterSummary. + :rtype: str + """ + return self._system_version + + @system_version.setter + def system_version(self, system_version): + """ + Sets the system_version of this BaseccVmClusterSummary. + Operating system version of the image. + + + :param system_version: The system_version of this BaseccVmClusterSummary. + :type: str + """ + self._system_version = system_version + + @property + def vm_cluster_type(self): + """ + Gets the vm_cluster_type of this BaseccVmClusterSummary. + The cluster type for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + Allowed values for this property are: "REGULAR", "DEVELOPER", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The vm_cluster_type of this BaseccVmClusterSummary. + :rtype: str + """ + return self._vm_cluster_type + + @vm_cluster_type.setter + def vm_cluster_type(self, vm_cluster_type): + """ + Sets the vm_cluster_type of this BaseccVmClusterSummary. + The cluster type for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :param vm_cluster_type: The vm_cluster_type of this BaseccVmClusterSummary. + :type: str + """ + allowed_values = ["REGULAR", "DEVELOPER"] + if not value_allowed_none_or_none_sentinel(vm_cluster_type, allowed_values): + vm_cluster_type = 'UNKNOWN_ENUM_VALUE' + self._vm_cluster_type = vm_cluster_type + + @property + def cloud_automation_update_details(self): + """ + Gets the cloud_automation_update_details of this BaseccVmClusterSummary. + + :return: The cloud_automation_update_details of this BaseccVmClusterSummary. + :rtype: oci.database.models.CloudAutomationUpdateDetails + """ + return self._cloud_automation_update_details + + @cloud_automation_update_details.setter + def cloud_automation_update_details(self, cloud_automation_update_details): + """ + Sets the cloud_automation_update_details of this BaseccVmClusterSummary. + + :param cloud_automation_update_details: The cloud_automation_update_details of this BaseccVmClusterSummary. + :type: oci.database.models.CloudAutomationUpdateDetails + """ + self._cloud_automation_update_details = cloud_automation_update_details + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/database/models/basecc_vm_cluster_update.py b/src/oci/database/models/basecc_vm_cluster_update.py new file mode 100644 index 0000000000..1b8fdee640 --- /dev/null +++ b/src/oci/database/models/basecc_vm_cluster_update.py @@ -0,0 +1,402 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class BaseccVmClusterUpdate(object): + """ + Maintenance update details for a BaseDB-C@C VM cluster. + """ + + #: A constant which can be used with the last_action property of a BaseccVmClusterUpdate. + #: This constant has a value of "ROLLING_APPLY" + LAST_ACTION_ROLLING_APPLY = "ROLLING_APPLY" + + #: A constant which can be used with the last_action property of a BaseccVmClusterUpdate. + #: This constant has a value of "PRECHECK" + LAST_ACTION_PRECHECK = "PRECHECK" + + #: A constant which can be used with the last_action property of a BaseccVmClusterUpdate. + #: This constant has a value of "ROLLBACK" + LAST_ACTION_ROLLBACK = "ROLLBACK" + + #: A constant which can be used with the available_actions property of a BaseccVmClusterUpdate. + #: This constant has a value of "ROLLING_APPLY" + AVAILABLE_ACTIONS_ROLLING_APPLY = "ROLLING_APPLY" + + #: A constant which can be used with the available_actions property of a BaseccVmClusterUpdate. + #: This constant has a value of "PRECHECK" + AVAILABLE_ACTIONS_PRECHECK = "PRECHECK" + + #: A constant which can be used with the available_actions property of a BaseccVmClusterUpdate. + #: This constant has a value of "ROLLBACK" + AVAILABLE_ACTIONS_ROLLBACK = "ROLLBACK" + + #: A constant which can be used with the update_type property of a BaseccVmClusterUpdate. + #: This constant has a value of "GI_UPGRADE" + UPDATE_TYPE_GI_UPGRADE = "GI_UPGRADE" + + #: A constant which can be used with the update_type property of a BaseccVmClusterUpdate. + #: This constant has a value of "GI_PATCH" + UPDATE_TYPE_GI_PATCH = "GI_PATCH" + + #: A constant which can be used with the lifecycle_state property of a BaseccVmClusterUpdate. + #: This constant has a value of "AVAILABLE" + LIFECYCLE_STATE_AVAILABLE = "AVAILABLE" + + #: A constant which can be used with the lifecycle_state property of a BaseccVmClusterUpdate. + #: This constant has a value of "SUCCESS" + LIFECYCLE_STATE_SUCCESS = "SUCCESS" + + #: A constant which can be used with the lifecycle_state property of a BaseccVmClusterUpdate. + #: This constant has a value of "IN_PROGRESS" + LIFECYCLE_STATE_IN_PROGRESS = "IN_PROGRESS" + + #: A constant which can be used with the lifecycle_state property of a BaseccVmClusterUpdate. + #: This constant has a value of "FAILED" + LIFECYCLE_STATE_FAILED = "FAILED" + + def __init__(self, **kwargs): + """ + Initializes a new BaseccVmClusterUpdate object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this BaseccVmClusterUpdate. + :type id: str + + :param description: + The value to assign to the description property of this BaseccVmClusterUpdate. + :type description: str + + :param last_action: + The value to assign to the last_action property of this BaseccVmClusterUpdate. + Allowed values for this property are: "ROLLING_APPLY", "PRECHECK", "ROLLBACK", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type last_action: str + + :param available_actions: + The value to assign to the available_actions property of this BaseccVmClusterUpdate. + Allowed values for items in this list are: "ROLLING_APPLY", "PRECHECK", "ROLLBACK", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type available_actions: list[str] + + :param update_type: + The value to assign to the update_type property of this BaseccVmClusterUpdate. + Allowed values for this property are: "GI_UPGRADE", "GI_PATCH", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type update_type: str + + :param lifecycle_details: + The value to assign to the lifecycle_details property of this BaseccVmClusterUpdate. + :type lifecycle_details: str + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this BaseccVmClusterUpdate. + Allowed values for this property are: "AVAILABLE", "SUCCESS", "IN_PROGRESS", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + :param time_released: + The value to assign to the time_released property of this BaseccVmClusterUpdate. + :type time_released: datetime + + :param version: + The value to assign to the version property of this BaseccVmClusterUpdate. + :type version: str + + """ + self.swagger_types = { + 'id': 'str', + 'description': 'str', + 'last_action': 'str', + 'available_actions': 'list[str]', + 'update_type': 'str', + 'lifecycle_details': 'str', + 'lifecycle_state': 'str', + 'time_released': 'datetime', + 'version': 'str' + } + self.attribute_map = { + 'id': 'id', + 'description': 'description', + 'last_action': 'lastAction', + 'available_actions': 'availableActions', + 'update_type': 'updateType', + 'lifecycle_details': 'lifecycleDetails', + 'lifecycle_state': 'lifecycleState', + 'time_released': 'timeReleased', + 'version': 'version' + } + self._id = None + self._description = None + self._last_action = None + self._available_actions = None + self._update_type = None + self._lifecycle_details = None + self._lifecycle_state = None + self._time_released = None + self._version = None + + @property + def id(self): + """ + **[Required]** Gets the id of this BaseccVmClusterUpdate. + The `OCID`__ of the maintenance update. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this BaseccVmClusterUpdate. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this BaseccVmClusterUpdate. + The `OCID`__ of the maintenance update. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this BaseccVmClusterUpdate. + :type: str + """ + self._id = id + + @property + def description(self): + """ + **[Required]** Gets the description of this BaseccVmClusterUpdate. + Details of the maintenance update package. + + + :return: The description of this BaseccVmClusterUpdate. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this BaseccVmClusterUpdate. + Details of the maintenance update package. + + + :param description: The description of this BaseccVmClusterUpdate. + :type: str + """ + self._description = description + + @property + def last_action(self): + """ + Gets the last_action of this BaseccVmClusterUpdate. + The previous update action performed. + + Allowed values for this property are: "ROLLING_APPLY", "PRECHECK", "ROLLBACK", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The last_action of this BaseccVmClusterUpdate. + :rtype: str + """ + return self._last_action + + @last_action.setter + def last_action(self, last_action): + """ + Sets the last_action of this BaseccVmClusterUpdate. + The previous update action performed. + + + :param last_action: The last_action of this BaseccVmClusterUpdate. + :type: str + """ + allowed_values = ["ROLLING_APPLY", "PRECHECK", "ROLLBACK"] + if not value_allowed_none_or_none_sentinel(last_action, allowed_values): + last_action = 'UNKNOWN_ENUM_VALUE' + self._last_action = last_action + + @property + def available_actions(self): + """ + Gets the available_actions of this BaseccVmClusterUpdate. + The possible actions performed by the update operation on the infrastructure components. + + Allowed values for items in this list are: "ROLLING_APPLY", "PRECHECK", "ROLLBACK", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The available_actions of this BaseccVmClusterUpdate. + :rtype: list[str] + """ + return self._available_actions + + @available_actions.setter + def available_actions(self, available_actions): + """ + Sets the available_actions of this BaseccVmClusterUpdate. + The possible actions performed by the update operation on the infrastructure components. + + + :param available_actions: The available_actions of this BaseccVmClusterUpdate. + :type: list[str] + """ + allowed_values = ["ROLLING_APPLY", "PRECHECK", "ROLLBACK"] + if available_actions: + available_actions[:] = ['UNKNOWN_ENUM_VALUE' if not value_allowed_none_or_none_sentinel(x, allowed_values) else x for x in available_actions] + self._available_actions = available_actions + + @property + def update_type(self): + """ + **[Required]** Gets the update_type of this BaseccVmClusterUpdate. + The type of Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster maintenance update. + + Allowed values for this property are: "GI_UPGRADE", "GI_PATCH", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The update_type of this BaseccVmClusterUpdate. + :rtype: str + """ + return self._update_type + + @update_type.setter + def update_type(self, update_type): + """ + Sets the update_type of this BaseccVmClusterUpdate. + The type of Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster maintenance update. + + + :param update_type: The update_type of this BaseccVmClusterUpdate. + :type: str + """ + allowed_values = ["GI_UPGRADE", "GI_PATCH"] + if not value_allowed_none_or_none_sentinel(update_type, allowed_values): + update_type = 'UNKNOWN_ENUM_VALUE' + self._update_type = update_type + + @property + def lifecycle_details(self): + """ + Gets the lifecycle_details of this BaseccVmClusterUpdate. + Descriptive text providing additional details about the lifecycle state. + + + :return: The lifecycle_details of this BaseccVmClusterUpdate. + :rtype: str + """ + return self._lifecycle_details + + @lifecycle_details.setter + def lifecycle_details(self, lifecycle_details): + """ + Sets the lifecycle_details of this BaseccVmClusterUpdate. + Descriptive text providing additional details about the lifecycle state. + + + :param lifecycle_details: The lifecycle_details of this BaseccVmClusterUpdate. + :type: str + """ + self._lifecycle_details = lifecycle_details + + @property + def lifecycle_state(self): + """ + Gets the lifecycle_state of this BaseccVmClusterUpdate. + The current state of the maintenance update. Dependent on value of `lastAction`. + + Allowed values for this property are: "AVAILABLE", "SUCCESS", "IN_PROGRESS", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this BaseccVmClusterUpdate. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this BaseccVmClusterUpdate. + The current state of the maintenance update. Dependent on value of `lastAction`. + + + :param lifecycle_state: The lifecycle_state of this BaseccVmClusterUpdate. + :type: str + """ + allowed_values = ["AVAILABLE", "SUCCESS", "IN_PROGRESS", "FAILED"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + + @property + def time_released(self): + """ + **[Required]** Gets the time_released of this BaseccVmClusterUpdate. + The date and time the maintenance update was released. + + + :return: The time_released of this BaseccVmClusterUpdate. + :rtype: datetime + """ + return self._time_released + + @time_released.setter + def time_released(self, time_released): + """ + Sets the time_released of this BaseccVmClusterUpdate. + The date and time the maintenance update was released. + + + :param time_released: The time_released of this BaseccVmClusterUpdate. + :type: datetime + """ + self._time_released = time_released + + @property + def version(self): + """ + **[Required]** Gets the version of this BaseccVmClusterUpdate. + The version of the maintenance update package. + + + :return: The version of this BaseccVmClusterUpdate. + :rtype: str + """ + return self._version + + @version.setter + def version(self, version): + """ + Sets the version of this BaseccVmClusterUpdate. + The version of the maintenance update package. + + + :param version: The version of this BaseccVmClusterUpdate. + :type: str + """ + self._version = version + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/database/models/basecc_vm_cluster_update_details.py b/src/oci/database/models/basecc_vm_cluster_update_details.py new file mode 100644 index 0000000000..57f1f002e4 --- /dev/null +++ b/src/oci/database/models/basecc_vm_cluster_update_details.py @@ -0,0 +1,160 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class BaseccVmClusterUpdateDetails(object): + """ + Details specifying which maintenance update to apply to the BaseDB-C@C VM cluster and which action is to be performed by the maintenance update. Applies to Base Database Service on Cloud@Customer instances only. + """ + + #: A constant which can be used with the update_action property of a BaseccVmClusterUpdateDetails. + #: This constant has a value of "ROLLING_APPLY" + UPDATE_ACTION_ROLLING_APPLY = "ROLLING_APPLY" + + #: A constant which can be used with the update_action property of a BaseccVmClusterUpdateDetails. + #: This constant has a value of "PRECHECK" + UPDATE_ACTION_PRECHECK = "PRECHECK" + + #: A constant which can be used with the update_action property of a BaseccVmClusterUpdateDetails. + #: This constant has a value of "ROLLBACK" + UPDATE_ACTION_ROLLBACK = "ROLLBACK" + + def __init__(self, **kwargs): + """ + Initializes a new BaseccVmClusterUpdateDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param update_id: + The value to assign to the update_id property of this BaseccVmClusterUpdateDetails. + :type update_id: str + + :param update_action: + The value to assign to the update_action property of this BaseccVmClusterUpdateDetails. + Allowed values for this property are: "ROLLING_APPLY", "PRECHECK", "ROLLBACK" + :type update_action: str + + :param gi_software_image_id: + The value to assign to the gi_software_image_id property of this BaseccVmClusterUpdateDetails. + :type gi_software_image_id: str + + """ + self.swagger_types = { + 'update_id': 'str', + 'update_action': 'str', + 'gi_software_image_id': 'str' + } + self.attribute_map = { + 'update_id': 'updateId', + 'update_action': 'updateAction', + 'gi_software_image_id': 'giSoftwareImageId' + } + self._update_id = None + self._update_action = None + self._gi_software_image_id = None + + @property + def update_id(self): + """ + Gets the update_id of this BaseccVmClusterUpdateDetails. + The `OCID`__ of the maintenance update. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The update_id of this BaseccVmClusterUpdateDetails. + :rtype: str + """ + return self._update_id + + @update_id.setter + def update_id(self, update_id): + """ + Sets the update_id of this BaseccVmClusterUpdateDetails. + The `OCID`__ of the maintenance update. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param update_id: The update_id of this BaseccVmClusterUpdateDetails. + :type: str + """ + self._update_id = update_id + + @property + def update_action(self): + """ + Gets the update_action of this BaseccVmClusterUpdateDetails. + The update action to perform. + + Allowed values for this property are: "ROLLING_APPLY", "PRECHECK", "ROLLBACK" + + + :return: The update_action of this BaseccVmClusterUpdateDetails. + :rtype: str + """ + return self._update_action + + @update_action.setter + def update_action(self, update_action): + """ + Sets the update_action of this BaseccVmClusterUpdateDetails. + The update action to perform. + + + :param update_action: The update_action of this BaseccVmClusterUpdateDetails. + :type: str + """ + allowed_values = ["ROLLING_APPLY", "PRECHECK", "ROLLBACK"] + if not value_allowed_none_or_none_sentinel(update_action, allowed_values): + raise ValueError( + f"Invalid value for `update_action`, must be None or one of {allowed_values}" + ) + self._update_action = update_action + + @property + def gi_software_image_id(self): + """ + Gets the gi_software_image_id of this BaseccVmClusterUpdateDetails. + The `OCID`__ of a grid infrastructure software image. This is a database software image of the type `GRID_IMAGE`. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The gi_software_image_id of this BaseccVmClusterUpdateDetails. + :rtype: str + """ + return self._gi_software_image_id + + @gi_software_image_id.setter + def gi_software_image_id(self, gi_software_image_id): + """ + Sets the gi_software_image_id of this BaseccVmClusterUpdateDetails. + The `OCID`__ of a grid infrastructure software image. This is a database software image of the type `GRID_IMAGE`. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param gi_software_image_id: The gi_software_image_id of this BaseccVmClusterUpdateDetails. + :type: str + """ + self._gi_software_image_id = gi_software_image_id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/database/models/basecc_vm_cluster_update_history_entry.py b/src/oci/database/models/basecc_vm_cluster_update_history_entry.py new file mode 100644 index 0000000000..d24b39bf4a --- /dev/null +++ b/src/oci/database/models/basecc_vm_cluster_update_history_entry.py @@ -0,0 +1,382 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class BaseccVmClusterUpdateHistoryEntry(object): + """ + The record of a maintenance update action on a specified BaseDB-C@C VM cluster. + """ + + #: A constant which can be used with the update_action property of a BaseccVmClusterUpdateHistoryEntry. + #: This constant has a value of "ROLLING_APPLY" + UPDATE_ACTION_ROLLING_APPLY = "ROLLING_APPLY" + + #: A constant which can be used with the update_action property of a BaseccVmClusterUpdateHistoryEntry. + #: This constant has a value of "PRECHECK" + UPDATE_ACTION_PRECHECK = "PRECHECK" + + #: A constant which can be used with the update_action property of a BaseccVmClusterUpdateHistoryEntry. + #: This constant has a value of "ROLLBACK" + UPDATE_ACTION_ROLLBACK = "ROLLBACK" + + #: A constant which can be used with the update_type property of a BaseccVmClusterUpdateHistoryEntry. + #: This constant has a value of "GI_UPGRADE" + UPDATE_TYPE_GI_UPGRADE = "GI_UPGRADE" + + #: A constant which can be used with the update_type property of a BaseccVmClusterUpdateHistoryEntry. + #: This constant has a value of "GI_PATCH" + UPDATE_TYPE_GI_PATCH = "GI_PATCH" + + #: A constant which can be used with the lifecycle_state property of a BaseccVmClusterUpdateHistoryEntry. + #: This constant has a value of "IN_PROGRESS" + LIFECYCLE_STATE_IN_PROGRESS = "IN_PROGRESS" + + #: A constant which can be used with the lifecycle_state property of a BaseccVmClusterUpdateHistoryEntry. + #: This constant has a value of "SUCCEEDED" + LIFECYCLE_STATE_SUCCEEDED = "SUCCEEDED" + + #: A constant which can be used with the lifecycle_state property of a BaseccVmClusterUpdateHistoryEntry. + #: This constant has a value of "FAILED" + LIFECYCLE_STATE_FAILED = "FAILED" + + def __init__(self, **kwargs): + """ + Initializes a new BaseccVmClusterUpdateHistoryEntry object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this BaseccVmClusterUpdateHistoryEntry. + :type id: str + + :param update_id: + The value to assign to the update_id property of this BaseccVmClusterUpdateHistoryEntry. + :type update_id: str + + :param update_action: + The value to assign to the update_action property of this BaseccVmClusterUpdateHistoryEntry. + Allowed values for this property are: "ROLLING_APPLY", "PRECHECK", "ROLLBACK", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type update_action: str + + :param update_type: + The value to assign to the update_type property of this BaseccVmClusterUpdateHistoryEntry. + Allowed values for this property are: "GI_UPGRADE", "GI_PATCH", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type update_type: str + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this BaseccVmClusterUpdateHistoryEntry. + Allowed values for this property are: "IN_PROGRESS", "SUCCEEDED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + :param lifecycle_details: + The value to assign to the lifecycle_details property of this BaseccVmClusterUpdateHistoryEntry. + :type lifecycle_details: str + + :param time_started: + The value to assign to the time_started property of this BaseccVmClusterUpdateHistoryEntry. + :type time_started: datetime + + :param time_completed: + The value to assign to the time_completed property of this BaseccVmClusterUpdateHistoryEntry. + :type time_completed: datetime + + :param version: + The value to assign to the version property of this BaseccVmClusterUpdateHistoryEntry. + :type version: str + + """ + self.swagger_types = { + 'id': 'str', + 'update_id': 'str', + 'update_action': 'str', + 'update_type': 'str', + 'lifecycle_state': 'str', + 'lifecycle_details': 'str', + 'time_started': 'datetime', + 'time_completed': 'datetime', + 'version': 'str' + } + self.attribute_map = { + 'id': 'id', + 'update_id': 'updateId', + 'update_action': 'updateAction', + 'update_type': 'updateType', + 'lifecycle_state': 'lifecycleState', + 'lifecycle_details': 'lifecycleDetails', + 'time_started': 'timeStarted', + 'time_completed': 'timeCompleted', + 'version': 'version' + } + self._id = None + self._update_id = None + self._update_action = None + self._update_type = None + self._lifecycle_state = None + self._lifecycle_details = None + self._time_started = None + self._time_completed = None + self._version = None + + @property + def id(self): + """ + **[Required]** Gets the id of this BaseccVmClusterUpdateHistoryEntry. + The `OCID`__ of the maintenance update history entry. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this BaseccVmClusterUpdateHistoryEntry. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this BaseccVmClusterUpdateHistoryEntry. + The `OCID`__ of the maintenance update history entry. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this BaseccVmClusterUpdateHistoryEntry. + :type: str + """ + self._id = id + + @property + def update_id(self): + """ + **[Required]** Gets the update_id of this BaseccVmClusterUpdateHistoryEntry. + The `OCID`__ of the maintenance update. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The update_id of this BaseccVmClusterUpdateHistoryEntry. + :rtype: str + """ + return self._update_id + + @update_id.setter + def update_id(self, update_id): + """ + Sets the update_id of this BaseccVmClusterUpdateHistoryEntry. + The `OCID`__ of the maintenance update. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param update_id: The update_id of this BaseccVmClusterUpdateHistoryEntry. + :type: str + """ + self._update_id = update_id + + @property + def update_action(self): + """ + Gets the update_action of this BaseccVmClusterUpdateHistoryEntry. + The update action. + + Allowed values for this property are: "ROLLING_APPLY", "PRECHECK", "ROLLBACK", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The update_action of this BaseccVmClusterUpdateHistoryEntry. + :rtype: str + """ + return self._update_action + + @update_action.setter + def update_action(self, update_action): + """ + Sets the update_action of this BaseccVmClusterUpdateHistoryEntry. + The update action. + + + :param update_action: The update_action of this BaseccVmClusterUpdateHistoryEntry. + :type: str + """ + allowed_values = ["ROLLING_APPLY", "PRECHECK", "ROLLBACK"] + if not value_allowed_none_or_none_sentinel(update_action, allowed_values): + update_action = 'UNKNOWN_ENUM_VALUE' + self._update_action = update_action + + @property + def update_type(self): + """ + **[Required]** Gets the update_type of this BaseccVmClusterUpdateHistoryEntry. + The type of Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster maintenance update. + + Allowed values for this property are: "GI_UPGRADE", "GI_PATCH", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The update_type of this BaseccVmClusterUpdateHistoryEntry. + :rtype: str + """ + return self._update_type + + @update_type.setter + def update_type(self, update_type): + """ + Sets the update_type of this BaseccVmClusterUpdateHistoryEntry. + The type of Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster maintenance update. + + + :param update_type: The update_type of this BaseccVmClusterUpdateHistoryEntry. + :type: str + """ + allowed_values = ["GI_UPGRADE", "GI_PATCH"] + if not value_allowed_none_or_none_sentinel(update_type, allowed_values): + update_type = 'UNKNOWN_ENUM_VALUE' + self._update_type = update_type + + @property + def lifecycle_state(self): + """ + **[Required]** Gets the lifecycle_state of this BaseccVmClusterUpdateHistoryEntry. + The current lifecycle state of the maintenance update operation. + + Allowed values for this property are: "IN_PROGRESS", "SUCCEEDED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this BaseccVmClusterUpdateHistoryEntry. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this BaseccVmClusterUpdateHistoryEntry. + The current lifecycle state of the maintenance update operation. + + + :param lifecycle_state: The lifecycle_state of this BaseccVmClusterUpdateHistoryEntry. + :type: str + """ + allowed_values = ["IN_PROGRESS", "SUCCEEDED", "FAILED"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + + @property + def lifecycle_details(self): + """ + Gets the lifecycle_details of this BaseccVmClusterUpdateHistoryEntry. + Descriptive text providing additional details about the lifecycle state. + + + :return: The lifecycle_details of this BaseccVmClusterUpdateHistoryEntry. + :rtype: str + """ + return self._lifecycle_details + + @lifecycle_details.setter + def lifecycle_details(self, lifecycle_details): + """ + Sets the lifecycle_details of this BaseccVmClusterUpdateHistoryEntry. + Descriptive text providing additional details about the lifecycle state. + + + :param lifecycle_details: The lifecycle_details of this BaseccVmClusterUpdateHistoryEntry. + :type: str + """ + self._lifecycle_details = lifecycle_details + + @property + def time_started(self): + """ + **[Required]** Gets the time_started of this BaseccVmClusterUpdateHistoryEntry. + The date and time when the maintenance update action started. + + + :return: The time_started of this BaseccVmClusterUpdateHistoryEntry. + :rtype: datetime + """ + return self._time_started + + @time_started.setter + def time_started(self, time_started): + """ + Sets the time_started of this BaseccVmClusterUpdateHistoryEntry. + The date and time when the maintenance update action started. + + + :param time_started: The time_started of this BaseccVmClusterUpdateHistoryEntry. + :type: datetime + """ + self._time_started = time_started + + @property + def time_completed(self): + """ + Gets the time_completed of this BaseccVmClusterUpdateHistoryEntry. + The date and time when the maintenance update action completed. + + + :return: The time_completed of this BaseccVmClusterUpdateHistoryEntry. + :rtype: datetime + """ + return self._time_completed + + @time_completed.setter + def time_completed(self, time_completed): + """ + Sets the time_completed of this BaseccVmClusterUpdateHistoryEntry. + The date and time when the maintenance update action completed. + + + :param time_completed: The time_completed of this BaseccVmClusterUpdateHistoryEntry. + :type: datetime + """ + self._time_completed = time_completed + + @property + def version(self): + """ + Gets the version of this BaseccVmClusterUpdateHistoryEntry. + The version of the maintenance update package. + + + :return: The version of this BaseccVmClusterUpdateHistoryEntry. + :rtype: str + """ + return self._version + + @version.setter + def version(self, version): + """ + Sets the version of this BaseccVmClusterUpdateHistoryEntry. + The version of the maintenance update package. + + + :param version: The version of this BaseccVmClusterUpdateHistoryEntry. + :type: str + """ + self._version = version + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/database/models/basecc_vm_cluster_update_history_entry_summary.py b/src/oci/database/models/basecc_vm_cluster_update_history_entry_summary.py new file mode 100644 index 0000000000..a7fde29630 --- /dev/null +++ b/src/oci/database/models/basecc_vm_cluster_update_history_entry_summary.py @@ -0,0 +1,382 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class BaseccVmClusterUpdateHistoryEntrySummary(object): + """ + The record of a maintenance update action on a specified BaseDB-C@C VM cluster. + """ + + #: A constant which can be used with the update_action property of a BaseccVmClusterUpdateHistoryEntrySummary. + #: This constant has a value of "ROLLING_APPLY" + UPDATE_ACTION_ROLLING_APPLY = "ROLLING_APPLY" + + #: A constant which can be used with the update_action property of a BaseccVmClusterUpdateHistoryEntrySummary. + #: This constant has a value of "PRECHECK" + UPDATE_ACTION_PRECHECK = "PRECHECK" + + #: A constant which can be used with the update_action property of a BaseccVmClusterUpdateHistoryEntrySummary. + #: This constant has a value of "ROLLBACK" + UPDATE_ACTION_ROLLBACK = "ROLLBACK" + + #: A constant which can be used with the update_type property of a BaseccVmClusterUpdateHistoryEntrySummary. + #: This constant has a value of "GI_UPGRADE" + UPDATE_TYPE_GI_UPGRADE = "GI_UPGRADE" + + #: A constant which can be used with the update_type property of a BaseccVmClusterUpdateHistoryEntrySummary. + #: This constant has a value of "GI_PATCH" + UPDATE_TYPE_GI_PATCH = "GI_PATCH" + + #: A constant which can be used with the lifecycle_state property of a BaseccVmClusterUpdateHistoryEntrySummary. + #: This constant has a value of "IN_PROGRESS" + LIFECYCLE_STATE_IN_PROGRESS = "IN_PROGRESS" + + #: A constant which can be used with the lifecycle_state property of a BaseccVmClusterUpdateHistoryEntrySummary. + #: This constant has a value of "SUCCEEDED" + LIFECYCLE_STATE_SUCCEEDED = "SUCCEEDED" + + #: A constant which can be used with the lifecycle_state property of a BaseccVmClusterUpdateHistoryEntrySummary. + #: This constant has a value of "FAILED" + LIFECYCLE_STATE_FAILED = "FAILED" + + def __init__(self, **kwargs): + """ + Initializes a new BaseccVmClusterUpdateHistoryEntrySummary object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this BaseccVmClusterUpdateHistoryEntrySummary. + :type id: str + + :param update_id: + The value to assign to the update_id property of this BaseccVmClusterUpdateHistoryEntrySummary. + :type update_id: str + + :param update_action: + The value to assign to the update_action property of this BaseccVmClusterUpdateHistoryEntrySummary. + Allowed values for this property are: "ROLLING_APPLY", "PRECHECK", "ROLLBACK", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type update_action: str + + :param update_type: + The value to assign to the update_type property of this BaseccVmClusterUpdateHistoryEntrySummary. + Allowed values for this property are: "GI_UPGRADE", "GI_PATCH", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type update_type: str + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this BaseccVmClusterUpdateHistoryEntrySummary. + Allowed values for this property are: "IN_PROGRESS", "SUCCEEDED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + :param lifecycle_details: + The value to assign to the lifecycle_details property of this BaseccVmClusterUpdateHistoryEntrySummary. + :type lifecycle_details: str + + :param time_started: + The value to assign to the time_started property of this BaseccVmClusterUpdateHistoryEntrySummary. + :type time_started: datetime + + :param time_completed: + The value to assign to the time_completed property of this BaseccVmClusterUpdateHistoryEntrySummary. + :type time_completed: datetime + + :param version: + The value to assign to the version property of this BaseccVmClusterUpdateHistoryEntrySummary. + :type version: str + + """ + self.swagger_types = { + 'id': 'str', + 'update_id': 'str', + 'update_action': 'str', + 'update_type': 'str', + 'lifecycle_state': 'str', + 'lifecycle_details': 'str', + 'time_started': 'datetime', + 'time_completed': 'datetime', + 'version': 'str' + } + self.attribute_map = { + 'id': 'id', + 'update_id': 'updateId', + 'update_action': 'updateAction', + 'update_type': 'updateType', + 'lifecycle_state': 'lifecycleState', + 'lifecycle_details': 'lifecycleDetails', + 'time_started': 'timeStarted', + 'time_completed': 'timeCompleted', + 'version': 'version' + } + self._id = None + self._update_id = None + self._update_action = None + self._update_type = None + self._lifecycle_state = None + self._lifecycle_details = None + self._time_started = None + self._time_completed = None + self._version = None + + @property + def id(self): + """ + **[Required]** Gets the id of this BaseccVmClusterUpdateHistoryEntrySummary. + The `OCID`__ of the maintenance update history entry. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this BaseccVmClusterUpdateHistoryEntrySummary. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this BaseccVmClusterUpdateHistoryEntrySummary. + The `OCID`__ of the maintenance update history entry. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this BaseccVmClusterUpdateHistoryEntrySummary. + :type: str + """ + self._id = id + + @property + def update_id(self): + """ + **[Required]** Gets the update_id of this BaseccVmClusterUpdateHistoryEntrySummary. + The `OCID`__ of the maintenance update. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The update_id of this BaseccVmClusterUpdateHistoryEntrySummary. + :rtype: str + """ + return self._update_id + + @update_id.setter + def update_id(self, update_id): + """ + Sets the update_id of this BaseccVmClusterUpdateHistoryEntrySummary. + The `OCID`__ of the maintenance update. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param update_id: The update_id of this BaseccVmClusterUpdateHistoryEntrySummary. + :type: str + """ + self._update_id = update_id + + @property + def update_action(self): + """ + Gets the update_action of this BaseccVmClusterUpdateHistoryEntrySummary. + The update action. + + Allowed values for this property are: "ROLLING_APPLY", "PRECHECK", "ROLLBACK", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The update_action of this BaseccVmClusterUpdateHistoryEntrySummary. + :rtype: str + """ + return self._update_action + + @update_action.setter + def update_action(self, update_action): + """ + Sets the update_action of this BaseccVmClusterUpdateHistoryEntrySummary. + The update action. + + + :param update_action: The update_action of this BaseccVmClusterUpdateHistoryEntrySummary. + :type: str + """ + allowed_values = ["ROLLING_APPLY", "PRECHECK", "ROLLBACK"] + if not value_allowed_none_or_none_sentinel(update_action, allowed_values): + update_action = 'UNKNOWN_ENUM_VALUE' + self._update_action = update_action + + @property + def update_type(self): + """ + **[Required]** Gets the update_type of this BaseccVmClusterUpdateHistoryEntrySummary. + The type of Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster maintenance update. + + Allowed values for this property are: "GI_UPGRADE", "GI_PATCH", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The update_type of this BaseccVmClusterUpdateHistoryEntrySummary. + :rtype: str + """ + return self._update_type + + @update_type.setter + def update_type(self, update_type): + """ + Sets the update_type of this BaseccVmClusterUpdateHistoryEntrySummary. + The type of Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster maintenance update. + + + :param update_type: The update_type of this BaseccVmClusterUpdateHistoryEntrySummary. + :type: str + """ + allowed_values = ["GI_UPGRADE", "GI_PATCH"] + if not value_allowed_none_or_none_sentinel(update_type, allowed_values): + update_type = 'UNKNOWN_ENUM_VALUE' + self._update_type = update_type + + @property + def lifecycle_state(self): + """ + **[Required]** Gets the lifecycle_state of this BaseccVmClusterUpdateHistoryEntrySummary. + The current lifecycle state of the maintenance update operation. + + Allowed values for this property are: "IN_PROGRESS", "SUCCEEDED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this BaseccVmClusterUpdateHistoryEntrySummary. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this BaseccVmClusterUpdateHistoryEntrySummary. + The current lifecycle state of the maintenance update operation. + + + :param lifecycle_state: The lifecycle_state of this BaseccVmClusterUpdateHistoryEntrySummary. + :type: str + """ + allowed_values = ["IN_PROGRESS", "SUCCEEDED", "FAILED"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + + @property + def lifecycle_details(self): + """ + Gets the lifecycle_details of this BaseccVmClusterUpdateHistoryEntrySummary. + Descriptive text providing additional details about the lifecycle state. + + + :return: The lifecycle_details of this BaseccVmClusterUpdateHistoryEntrySummary. + :rtype: str + """ + return self._lifecycle_details + + @lifecycle_details.setter + def lifecycle_details(self, lifecycle_details): + """ + Sets the lifecycle_details of this BaseccVmClusterUpdateHistoryEntrySummary. + Descriptive text providing additional details about the lifecycle state. + + + :param lifecycle_details: The lifecycle_details of this BaseccVmClusterUpdateHistoryEntrySummary. + :type: str + """ + self._lifecycle_details = lifecycle_details + + @property + def time_started(self): + """ + **[Required]** Gets the time_started of this BaseccVmClusterUpdateHistoryEntrySummary. + The date and time when the maintenance update action started. + + + :return: The time_started of this BaseccVmClusterUpdateHistoryEntrySummary. + :rtype: datetime + """ + return self._time_started + + @time_started.setter + def time_started(self, time_started): + """ + Sets the time_started of this BaseccVmClusterUpdateHistoryEntrySummary. + The date and time when the maintenance update action started. + + + :param time_started: The time_started of this BaseccVmClusterUpdateHistoryEntrySummary. + :type: datetime + """ + self._time_started = time_started + + @property + def time_completed(self): + """ + Gets the time_completed of this BaseccVmClusterUpdateHistoryEntrySummary. + The date and time when the maintenance update action completed. + + + :return: The time_completed of this BaseccVmClusterUpdateHistoryEntrySummary. + :rtype: datetime + """ + return self._time_completed + + @time_completed.setter + def time_completed(self, time_completed): + """ + Sets the time_completed of this BaseccVmClusterUpdateHistoryEntrySummary. + The date and time when the maintenance update action completed. + + + :param time_completed: The time_completed of this BaseccVmClusterUpdateHistoryEntrySummary. + :type: datetime + """ + self._time_completed = time_completed + + @property + def version(self): + """ + Gets the version of this BaseccVmClusterUpdateHistoryEntrySummary. + The version of the maintenance update package. + + + :return: The version of this BaseccVmClusterUpdateHistoryEntrySummary. + :rtype: str + """ + return self._version + + @version.setter + def version(self, version): + """ + Sets the version of this BaseccVmClusterUpdateHistoryEntrySummary. + The version of the maintenance update package. + + + :param version: The version of this BaseccVmClusterUpdateHistoryEntrySummary. + :type: str + """ + self._version = version + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/database/models/basecc_vm_cluster_update_summary.py b/src/oci/database/models/basecc_vm_cluster_update_summary.py new file mode 100644 index 0000000000..1f376e70d6 --- /dev/null +++ b/src/oci/database/models/basecc_vm_cluster_update_summary.py @@ -0,0 +1,408 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class BaseccVmClusterUpdateSummary(object): + """ + Maintenance update details for a BaseDB-C@C VM cluster. + + To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, + talk to an administrator. If you're an administrator who needs to write policies to give users access, + see `Getting Started with Policies`__. + + __ https://docs.oracle.com/iaas/Content/Identity/Concepts/policygetstarted.htm + """ + + #: A constant which can be used with the last_action property of a BaseccVmClusterUpdateSummary. + #: This constant has a value of "ROLLING_APPLY" + LAST_ACTION_ROLLING_APPLY = "ROLLING_APPLY" + + #: A constant which can be used with the last_action property of a BaseccVmClusterUpdateSummary. + #: This constant has a value of "PRECHECK" + LAST_ACTION_PRECHECK = "PRECHECK" + + #: A constant which can be used with the last_action property of a BaseccVmClusterUpdateSummary. + #: This constant has a value of "ROLLBACK" + LAST_ACTION_ROLLBACK = "ROLLBACK" + + #: A constant which can be used with the available_actions property of a BaseccVmClusterUpdateSummary. + #: This constant has a value of "ROLLING_APPLY" + AVAILABLE_ACTIONS_ROLLING_APPLY = "ROLLING_APPLY" + + #: A constant which can be used with the available_actions property of a BaseccVmClusterUpdateSummary. + #: This constant has a value of "PRECHECK" + AVAILABLE_ACTIONS_PRECHECK = "PRECHECK" + + #: A constant which can be used with the available_actions property of a BaseccVmClusterUpdateSummary. + #: This constant has a value of "ROLLBACK" + AVAILABLE_ACTIONS_ROLLBACK = "ROLLBACK" + + #: A constant which can be used with the update_type property of a BaseccVmClusterUpdateSummary. + #: This constant has a value of "GI_UPGRADE" + UPDATE_TYPE_GI_UPGRADE = "GI_UPGRADE" + + #: A constant which can be used with the update_type property of a BaseccVmClusterUpdateSummary. + #: This constant has a value of "GI_PATCH" + UPDATE_TYPE_GI_PATCH = "GI_PATCH" + + #: A constant which can be used with the lifecycle_state property of a BaseccVmClusterUpdateSummary. + #: This constant has a value of "AVAILABLE" + LIFECYCLE_STATE_AVAILABLE = "AVAILABLE" + + #: A constant which can be used with the lifecycle_state property of a BaseccVmClusterUpdateSummary. + #: This constant has a value of "SUCCESS" + LIFECYCLE_STATE_SUCCESS = "SUCCESS" + + #: A constant which can be used with the lifecycle_state property of a BaseccVmClusterUpdateSummary. + #: This constant has a value of "IN_PROGRESS" + LIFECYCLE_STATE_IN_PROGRESS = "IN_PROGRESS" + + #: A constant which can be used with the lifecycle_state property of a BaseccVmClusterUpdateSummary. + #: This constant has a value of "FAILED" + LIFECYCLE_STATE_FAILED = "FAILED" + + def __init__(self, **kwargs): + """ + Initializes a new BaseccVmClusterUpdateSummary object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this BaseccVmClusterUpdateSummary. + :type id: str + + :param description: + The value to assign to the description property of this BaseccVmClusterUpdateSummary. + :type description: str + + :param last_action: + The value to assign to the last_action property of this BaseccVmClusterUpdateSummary. + Allowed values for this property are: "ROLLING_APPLY", "PRECHECK", "ROLLBACK", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type last_action: str + + :param available_actions: + The value to assign to the available_actions property of this BaseccVmClusterUpdateSummary. + Allowed values for items in this list are: "ROLLING_APPLY", "PRECHECK", "ROLLBACK", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type available_actions: list[str] + + :param update_type: + The value to assign to the update_type property of this BaseccVmClusterUpdateSummary. + Allowed values for this property are: "GI_UPGRADE", "GI_PATCH", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type update_type: str + + :param lifecycle_details: + The value to assign to the lifecycle_details property of this BaseccVmClusterUpdateSummary. + :type lifecycle_details: str + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this BaseccVmClusterUpdateSummary. + Allowed values for this property are: "AVAILABLE", "SUCCESS", "IN_PROGRESS", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + :param time_released: + The value to assign to the time_released property of this BaseccVmClusterUpdateSummary. + :type time_released: datetime + + :param version: + The value to assign to the version property of this BaseccVmClusterUpdateSummary. + :type version: str + + """ + self.swagger_types = { + 'id': 'str', + 'description': 'str', + 'last_action': 'str', + 'available_actions': 'list[str]', + 'update_type': 'str', + 'lifecycle_details': 'str', + 'lifecycle_state': 'str', + 'time_released': 'datetime', + 'version': 'str' + } + self.attribute_map = { + 'id': 'id', + 'description': 'description', + 'last_action': 'lastAction', + 'available_actions': 'availableActions', + 'update_type': 'updateType', + 'lifecycle_details': 'lifecycleDetails', + 'lifecycle_state': 'lifecycleState', + 'time_released': 'timeReleased', + 'version': 'version' + } + self._id = None + self._description = None + self._last_action = None + self._available_actions = None + self._update_type = None + self._lifecycle_details = None + self._lifecycle_state = None + self._time_released = None + self._version = None + + @property + def id(self): + """ + **[Required]** Gets the id of this BaseccVmClusterUpdateSummary. + The `OCID`__ of the maintenance update. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this BaseccVmClusterUpdateSummary. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this BaseccVmClusterUpdateSummary. + The `OCID`__ of the maintenance update. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this BaseccVmClusterUpdateSummary. + :type: str + """ + self._id = id + + @property + def description(self): + """ + **[Required]** Gets the description of this BaseccVmClusterUpdateSummary. + Details of the maintenance update package. + + + :return: The description of this BaseccVmClusterUpdateSummary. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this BaseccVmClusterUpdateSummary. + Details of the maintenance update package. + + + :param description: The description of this BaseccVmClusterUpdateSummary. + :type: str + """ + self._description = description + + @property + def last_action(self): + """ + Gets the last_action of this BaseccVmClusterUpdateSummary. + The previous update action performed. + + Allowed values for this property are: "ROLLING_APPLY", "PRECHECK", "ROLLBACK", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The last_action of this BaseccVmClusterUpdateSummary. + :rtype: str + """ + return self._last_action + + @last_action.setter + def last_action(self, last_action): + """ + Sets the last_action of this BaseccVmClusterUpdateSummary. + The previous update action performed. + + + :param last_action: The last_action of this BaseccVmClusterUpdateSummary. + :type: str + """ + allowed_values = ["ROLLING_APPLY", "PRECHECK", "ROLLBACK"] + if not value_allowed_none_or_none_sentinel(last_action, allowed_values): + last_action = 'UNKNOWN_ENUM_VALUE' + self._last_action = last_action + + @property + def available_actions(self): + """ + Gets the available_actions of this BaseccVmClusterUpdateSummary. + The possible actions performed by the update operation on the infrastructure components. + + Allowed values for items in this list are: "ROLLING_APPLY", "PRECHECK", "ROLLBACK", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The available_actions of this BaseccVmClusterUpdateSummary. + :rtype: list[str] + """ + return self._available_actions + + @available_actions.setter + def available_actions(self, available_actions): + """ + Sets the available_actions of this BaseccVmClusterUpdateSummary. + The possible actions performed by the update operation on the infrastructure components. + + + :param available_actions: The available_actions of this BaseccVmClusterUpdateSummary. + :type: list[str] + """ + allowed_values = ["ROLLING_APPLY", "PRECHECK", "ROLLBACK"] + if available_actions: + available_actions[:] = ['UNKNOWN_ENUM_VALUE' if not value_allowed_none_or_none_sentinel(x, allowed_values) else x for x in available_actions] + self._available_actions = available_actions + + @property + def update_type(self): + """ + **[Required]** Gets the update_type of this BaseccVmClusterUpdateSummary. + The type of Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster maintenance update. + + Allowed values for this property are: "GI_UPGRADE", "GI_PATCH", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The update_type of this BaseccVmClusterUpdateSummary. + :rtype: str + """ + return self._update_type + + @update_type.setter + def update_type(self, update_type): + """ + Sets the update_type of this BaseccVmClusterUpdateSummary. + The type of Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster maintenance update. + + + :param update_type: The update_type of this BaseccVmClusterUpdateSummary. + :type: str + """ + allowed_values = ["GI_UPGRADE", "GI_PATCH"] + if not value_allowed_none_or_none_sentinel(update_type, allowed_values): + update_type = 'UNKNOWN_ENUM_VALUE' + self._update_type = update_type + + @property + def lifecycle_details(self): + """ + Gets the lifecycle_details of this BaseccVmClusterUpdateSummary. + Descriptive text providing additional details about the lifecycle state. + + + :return: The lifecycle_details of this BaseccVmClusterUpdateSummary. + :rtype: str + """ + return self._lifecycle_details + + @lifecycle_details.setter + def lifecycle_details(self, lifecycle_details): + """ + Sets the lifecycle_details of this BaseccVmClusterUpdateSummary. + Descriptive text providing additional details about the lifecycle state. + + + :param lifecycle_details: The lifecycle_details of this BaseccVmClusterUpdateSummary. + :type: str + """ + self._lifecycle_details = lifecycle_details + + @property + def lifecycle_state(self): + """ + Gets the lifecycle_state of this BaseccVmClusterUpdateSummary. + The current state of the maintenance update. Dependent on value of `lastAction`. + + Allowed values for this property are: "AVAILABLE", "SUCCESS", "IN_PROGRESS", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this BaseccVmClusterUpdateSummary. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this BaseccVmClusterUpdateSummary. + The current state of the maintenance update. Dependent on value of `lastAction`. + + + :param lifecycle_state: The lifecycle_state of this BaseccVmClusterUpdateSummary. + :type: str + """ + allowed_values = ["AVAILABLE", "SUCCESS", "IN_PROGRESS", "FAILED"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + + @property + def time_released(self): + """ + **[Required]** Gets the time_released of this BaseccVmClusterUpdateSummary. + The date and time the maintenance update was released. + + + :return: The time_released of this BaseccVmClusterUpdateSummary. + :rtype: datetime + """ + return self._time_released + + @time_released.setter + def time_released(self, time_released): + """ + Sets the time_released of this BaseccVmClusterUpdateSummary. + The date and time the maintenance update was released. + + + :param time_released: The time_released of this BaseccVmClusterUpdateSummary. + :type: datetime + """ + self._time_released = time_released + + @property + def version(self): + """ + **[Required]** Gets the version of this BaseccVmClusterUpdateSummary. + The version of the maintenance update package. + + + :return: The version of this BaseccVmClusterUpdateSummary. + :rtype: str + """ + return self._version + + @version.setter + def version(self, version): + """ + Sets the version of this BaseccVmClusterUpdateSummary. + The version of the maintenance update package. + + + :param version: The version of this BaseccVmClusterUpdateSummary. + :type: str + """ + self._version = version + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/database/models/change_basecc_vm_cluster_compartment_details.py b/src/oci/database/models/change_basecc_vm_cluster_compartment_details.py new file mode 100644 index 0000000000..f1865618a3 --- /dev/null +++ b/src/oci/database/models/change_basecc_vm_cluster_compartment_details.py @@ -0,0 +1,74 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ChangeBaseccVmClusterCompartmentDetails(object): + """ + The configuration details for moving the BaseDB-C@C VM cluster to another compartment. Applies to Base Database Service on Cloud@Customer only. + """ + + def __init__(self, **kwargs): + """ + Initializes a new ChangeBaseccVmClusterCompartmentDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param compartment_id: + The value to assign to the compartment_id property of this ChangeBaseccVmClusterCompartmentDetails. + :type compartment_id: str + + """ + self.swagger_types = { + 'compartment_id': 'str' + } + self.attribute_map = { + 'compartment_id': 'compartmentId' + } + self._compartment_id = None + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this ChangeBaseccVmClusterCompartmentDetails. + The `OCID`__ of the compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this ChangeBaseccVmClusterCompartmentDetails. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this ChangeBaseccVmClusterCompartmentDetails. + The `OCID`__ of the compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this ChangeBaseccVmClusterCompartmentDetails. + :type: str + """ + self._compartment_id = compartment_id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/database/models/cloud_vm_cluster.py b/src/oci/database/models/cloud_vm_cluster.py index 19722fb94d..bcfabfcab9 100644 --- a/src/oci/database/models/cloud_vm_cluster.py +++ b/src/oci/database/models/cloud_vm_cluster.py @@ -168,6 +168,14 @@ def __init__(self, **kwargs): The value to assign to the listener_port property of this CloudVmCluster. :type listener_port: int + :param live_image_version_details: + The value to assign to the live_image_version_details property of this CloudVmCluster. + :type live_image_version_details: oci.database.models.ExadataLiveImageVersionDetails + + :param oracle_linux_version: + The value to assign to the oracle_linux_version property of this CloudVmCluster. + :type oracle_linux_version: str + :param lifecycle_state: The value to assign to the lifecycle_state property of this CloudVmCluster. Allowed values for this property are: "PROVISIONING", "AVAILABLE", "UPDATING", "TERMINATING", "TERMINATED", "FAILED", "MAINTENANCE_IN_PROGRESS", 'UNKNOWN_ENUM_VALUE'. @@ -408,6 +416,8 @@ def __init__(self, **kwargs): 'last_update_history_entry_id': 'str', 'shape': 'str', 'listener_port': 'int', + 'live_image_version_details': 'ExadataLiveImageVersionDetails', + 'oracle_linux_version': 'str', 'lifecycle_state': 'str', 'node_count': 'int', 'storage_size_in_gbs': 'int', @@ -474,6 +484,8 @@ def __init__(self, **kwargs): 'last_update_history_entry_id': 'lastUpdateHistoryEntryId', 'shape': 'shape', 'listener_port': 'listenerPort', + 'live_image_version_details': 'liveImageVersionDetails', + 'oracle_linux_version': 'oracleLinuxVersion', 'lifecycle_state': 'lifecycleState', 'node_count': 'nodeCount', 'storage_size_in_gbs': 'storageSizeInGBs', @@ -539,6 +551,8 @@ def __init__(self, **kwargs): self._last_update_history_entry_id = None self._shape = None self._listener_port = None + self._live_image_version_details = None + self._oracle_linux_version = None self._lifecycle_state = None self._node_count = None self._storage_size_in_gbs = None @@ -934,6 +948,50 @@ def listener_port(self, listener_port): """ self._listener_port = listener_port + @property + def live_image_version_details(self): + """ + Gets the live_image_version_details of this CloudVmCluster. + + :return: The live_image_version_details of this CloudVmCluster. + :rtype: oci.database.models.ExadataLiveImageVersionDetails + """ + return self._live_image_version_details + + @live_image_version_details.setter + def live_image_version_details(self, live_image_version_details): + """ + Sets the live_image_version_details of this CloudVmCluster. + + :param live_image_version_details: The live_image_version_details of this CloudVmCluster. + :type: oci.database.models.ExadataLiveImageVersionDetails + """ + self._live_image_version_details = live_image_version_details + + @property + def oracle_linux_version(self): + """ + Gets the oracle_linux_version of this CloudVmCluster. + Oracle Linux version for the respective Exadata Image. + + + :return: The oracle_linux_version of this CloudVmCluster. + :rtype: str + """ + return self._oracle_linux_version + + @oracle_linux_version.setter + def oracle_linux_version(self, oracle_linux_version): + """ + Sets the oracle_linux_version of this CloudVmCluster. + Oracle Linux version for the respective Exadata Image. + + + :param oracle_linux_version: The oracle_linux_version of this CloudVmCluster. + :type: str + """ + self._oracle_linux_version = oracle_linux_version + @property def lifecycle_state(self): """ diff --git a/src/oci/database/models/cloud_vm_cluster_summary.py b/src/oci/database/models/cloud_vm_cluster_summary.py index 586640e020..83a997cff8 100644 --- a/src/oci/database/models/cloud_vm_cluster_summary.py +++ b/src/oci/database/models/cloud_vm_cluster_summary.py @@ -164,6 +164,14 @@ def __init__(self, **kwargs): The value to assign to the listener_port property of this CloudVmClusterSummary. :type listener_port: int + :param live_image_version_details: + The value to assign to the live_image_version_details property of this CloudVmClusterSummary. + :type live_image_version_details: oci.database.models.ExadataLiveImageVersionDetails + + :param oracle_linux_version: + The value to assign to the oracle_linux_version property of this CloudVmClusterSummary. + :type oracle_linux_version: str + :param lifecycle_state: The value to assign to the lifecycle_state property of this CloudVmClusterSummary. Allowed values for this property are: "PROVISIONING", "AVAILABLE", "UPDATING", "TERMINATING", "TERMINATED", "FAILED", "MAINTENANCE_IN_PROGRESS", 'UNKNOWN_ENUM_VALUE'. @@ -403,6 +411,8 @@ def __init__(self, **kwargs): 'last_update_history_entry_id': 'str', 'shape': 'str', 'listener_port': 'int', + 'live_image_version_details': 'ExadataLiveImageVersionDetails', + 'oracle_linux_version': 'str', 'lifecycle_state': 'str', 'node_count': 'int', 'storage_size_in_gbs': 'int', @@ -468,6 +478,8 @@ def __init__(self, **kwargs): 'last_update_history_entry_id': 'lastUpdateHistoryEntryId', 'shape': 'shape', 'listener_port': 'listenerPort', + 'live_image_version_details': 'liveImageVersionDetails', + 'oracle_linux_version': 'oracleLinuxVersion', 'lifecycle_state': 'lifecycleState', 'node_count': 'nodeCount', 'storage_size_in_gbs': 'storageSizeInGBs', @@ -532,6 +544,8 @@ def __init__(self, **kwargs): self._last_update_history_entry_id = None self._shape = None self._listener_port = None + self._live_image_version_details = None + self._oracle_linux_version = None self._lifecycle_state = None self._node_count = None self._storage_size_in_gbs = None @@ -907,6 +921,50 @@ def listener_port(self, listener_port): """ self._listener_port = listener_port + @property + def live_image_version_details(self): + """ + Gets the live_image_version_details of this CloudVmClusterSummary. + + :return: The live_image_version_details of this CloudVmClusterSummary. + :rtype: oci.database.models.ExadataLiveImageVersionDetails + """ + return self._live_image_version_details + + @live_image_version_details.setter + def live_image_version_details(self, live_image_version_details): + """ + Sets the live_image_version_details of this CloudVmClusterSummary. + + :param live_image_version_details: The live_image_version_details of this CloudVmClusterSummary. + :type: oci.database.models.ExadataLiveImageVersionDetails + """ + self._live_image_version_details = live_image_version_details + + @property + def oracle_linux_version(self): + """ + Gets the oracle_linux_version of this CloudVmClusterSummary. + Oracle Linux version for the respective Exadata Image. + + + :return: The oracle_linux_version of this CloudVmClusterSummary. + :rtype: str + """ + return self._oracle_linux_version + + @oracle_linux_version.setter + def oracle_linux_version(self, oracle_linux_version): + """ + Sets the oracle_linux_version of this CloudVmClusterSummary. + Oracle Linux version for the respective Exadata Image. + + + :param oracle_linux_version: The oracle_linux_version of this CloudVmClusterSummary. + :type: str + """ + self._oracle_linux_version = oracle_linux_version + @property def lifecycle_state(self): """ diff --git a/src/oci/database/models/convert_standby_database_type_details.py b/src/oci/database/models/convert_standby_database_type_details.py index 42fd8cac16..88ec728166 100644 --- a/src/oci/database/models/convert_standby_database_type_details.py +++ b/src/oci/database/models/convert_standby_database_type_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -52,6 +52,9 @@ def __init__(self, **kwargs): 'standby_conversion_type': 'standbyConversionType', 'snapshot_duration_in_days': 'snapshotDurationInDays' } + self._redacted_field_paths = [ + ['database_admin_password'], + ] self._database_admin_password = None self._standby_conversion_type = None self._snapshot_duration_in_days = None @@ -154,7 +157,9 @@ def snapshot_duration_in_days(self, snapshot_duration_in_days): self._snapshot_duration_in_days = snapshot_duration_in_days def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['database_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/convert_to_regular_pluggable_database_details.py b/src/oci/database/models/convert_to_regular_pluggable_database_details.py index 4ea71a6db6..76be3696f8 100644 --- a/src/oci/database/models/convert_to_regular_pluggable_database_details.py +++ b/src/oci/database/models/convert_to_regular_pluggable_database_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -43,6 +43,10 @@ def __init__(self, **kwargs): 'container_database_admin_password': 'containerDatabaseAdminPassword', 'tde_wallet_password': 'tdeWalletPassword' } + self._redacted_field_paths = [ + ['container_database_admin_password'], + ['tde_wallet_password'], + ] self._should_create_pdb_backup = None self._container_database_admin_password = None self._tde_wallet_password = None @@ -120,7 +124,10 @@ def tde_wallet_password(self, tde_wallet_password): self._tde_wallet_password = tde_wallet_password def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['container_database_admin_password']) + redact_password_field(as_dict, ['tde_wallet_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/convert_to_standalone_details.py b/src/oci/database/models/convert_to_standalone_details.py index 906823905f..ca247741a3 100644 --- a/src/oci/database/models/convert_to_standalone_details.py +++ b/src/oci/database/models/convert_to_standalone_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -31,6 +31,9 @@ def __init__(self, **kwargs): self.attribute_map = { 'database_admin_password': 'databaseAdminPassword' } + self._redacted_field_paths = [ + ['database_admin_password'], + ] self._database_admin_password = None @property @@ -62,7 +65,9 @@ def database_admin_password(self, database_admin_password): self._database_admin_password = database_admin_password def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['database_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/create_basecc_vm_cluster_details.py b/src/oci/database/models/create_basecc_vm_cluster_details.py new file mode 100644 index 0000000000..8787cb626c --- /dev/null +++ b/src/oci/database/models/create_basecc_vm_cluster_details.py @@ -0,0 +1,813 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateBaseccVmClusterDetails(object): + """ + Details for creating a BaseDB-C@C VM cluster. Applies to Base Database Service on Cloud@Customer instances only. + """ + + #: A constant which can be used with the database_edition property of a CreateBaseccVmClusterDetails. + #: This constant has a value of "STANDARD_EDITION" + DATABASE_EDITION_STANDARD_EDITION = "STANDARD_EDITION" + + #: A constant which can be used with the database_edition property of a CreateBaseccVmClusterDetails. + #: This constant has a value of "ENTERPRISE_EDITION" + DATABASE_EDITION_ENTERPRISE_EDITION = "ENTERPRISE_EDITION" + + #: A constant which can be used with the database_edition property of a CreateBaseccVmClusterDetails. + #: This constant has a value of "ENTERPRISE_EDITION_HIGH_PERFORMANCE" + DATABASE_EDITION_ENTERPRISE_EDITION_HIGH_PERFORMANCE = "ENTERPRISE_EDITION_HIGH_PERFORMANCE" + + #: A constant which can be used with the database_edition property of a CreateBaseccVmClusterDetails. + #: This constant has a value of "ENTERPRISE_EDITION_EXTREME_PERFORMANCE" + DATABASE_EDITION_ENTERPRISE_EDITION_EXTREME_PERFORMANCE = "ENTERPRISE_EDITION_EXTREME_PERFORMANCE" + + #: A constant which can be used with the database_edition property of a CreateBaseccVmClusterDetails. + #: This constant has a value of "ENTERPRISE_EDITION_DEVELOPER" + DATABASE_EDITION_ENTERPRISE_EDITION_DEVELOPER = "ENTERPRISE_EDITION_DEVELOPER" + + #: A constant which can be used with the license_model property of a CreateBaseccVmClusterDetails. + #: This constant has a value of "LICENSE_INCLUDED" + LICENSE_MODEL_LICENSE_INCLUDED = "LICENSE_INCLUDED" + + #: A constant which can be used with the license_model property of a CreateBaseccVmClusterDetails. + #: This constant has a value of "BRING_YOUR_OWN_LICENSE" + LICENSE_MODEL_BRING_YOUR_OWN_LICENSE = "BRING_YOUR_OWN_LICENSE" + + #: A constant which can be used with the vm_cluster_type property of a CreateBaseccVmClusterDetails. + #: This constant has a value of "REGULAR" + VM_CLUSTER_TYPE_REGULAR = "REGULAR" + + #: A constant which can be used with the vm_cluster_type property of a CreateBaseccVmClusterDetails. + #: This constant has a value of "DEVELOPER" + VM_CLUSTER_TYPE_DEVELOPER = "DEVELOPER" + + def __init__(self, **kwargs): + """ + Initializes a new CreateBaseccVmClusterDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param compartment_id: + The value to assign to the compartment_id property of this CreateBaseccVmClusterDetails. + :type compartment_id: str + + :param database_edition: + The value to assign to the database_edition property of this CreateBaseccVmClusterDetails. + Allowed values for this property are: "STANDARD_EDITION", "ENTERPRISE_EDITION", "ENTERPRISE_EDITION_HIGH_PERFORMANCE", "ENTERPRISE_EDITION_EXTREME_PERFORMANCE", "ENTERPRISE_EDITION_DEVELOPER" + :type database_edition: str + + :param node_count: + The value to assign to the node_count property of this CreateBaseccVmClusterDetails. + :type node_count: int + + :param db_server_id: + The value to assign to the db_server_id property of this CreateBaseccVmClusterDetails. + :type db_server_id: str + + :param cpu_core_count: + The value to assign to the cpu_core_count property of this CreateBaseccVmClusterDetails. + :type cpu_core_count: int + + :param base_infrastructure_id: + The value to assign to the base_infrastructure_id property of this CreateBaseccVmClusterDetails. + :type base_infrastructure_id: str + + :param base_vm_cluster_network_id: + The value to assign to the base_vm_cluster_network_id property of this CreateBaseccVmClusterDetails. + :type base_vm_cluster_network_id: str + + :param gi_version: + The value to assign to the gi_version property of this CreateBaseccVmClusterDetails. + :type gi_version: str + + :param data_collection_options: + The value to assign to the data_collection_options property of this CreateBaseccVmClusterDetails. + :type data_collection_options: oci.database.models.DataCollectionOptions + + :param description: + The value to assign to the description property of this CreateBaseccVmClusterDetails. + :type description: str + + :param display_name: + The value to assign to the display_name property of this CreateBaseccVmClusterDetails. + :type display_name: str + + :param ssh_public_keys: + The value to assign to the ssh_public_keys property of this CreateBaseccVmClusterDetails. + :type ssh_public_keys: list[str] + + :param time_zone: + The value to assign to the time_zone property of this CreateBaseccVmClusterDetails. + :type time_zone: str + + :param additional_vm_storage_size_in_gbs: + The value to assign to the additional_vm_storage_size_in_gbs property of this CreateBaseccVmClusterDetails. + :type additional_vm_storage_size_in_gbs: int + + :param data_storage_size_in_gbs: + The value to assign to the data_storage_size_in_gbs property of this CreateBaseccVmClusterDetails. + :type data_storage_size_in_gbs: int + + :param reco_storage_size_in_gbs: + The value to assign to the reco_storage_size_in_gbs property of this CreateBaseccVmClusterDetails. + :type reco_storage_size_in_gbs: int + + :param memory_size_in_gbs: + The value to assign to the memory_size_in_gbs property of this CreateBaseccVmClusterDetails. + :type memory_size_in_gbs: int + + :param license_model: + The value to assign to the license_model property of this CreateBaseccVmClusterDetails. + Allowed values for this property are: "LICENSE_INCLUDED", "BRING_YOUR_OWN_LICENSE" + :type license_model: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this CreateBaseccVmClusterDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this CreateBaseccVmClusterDetails. + :type defined_tags: dict(str, dict(str, object)) + + :param vm_cluster_type: + The value to assign to the vm_cluster_type property of this CreateBaseccVmClusterDetails. + Allowed values for this property are: "REGULAR", "DEVELOPER" + :type vm_cluster_type: str + + :param cloud_automation_update_details: + The value to assign to the cloud_automation_update_details property of this CreateBaseccVmClusterDetails. + :type cloud_automation_update_details: oci.database.models.CloudAutomationUpdateDetails + + """ + self.swagger_types = { + 'compartment_id': 'str', + 'database_edition': 'str', + 'node_count': 'int', + 'db_server_id': 'str', + 'cpu_core_count': 'int', + 'base_infrastructure_id': 'str', + 'base_vm_cluster_network_id': 'str', + 'gi_version': 'str', + 'data_collection_options': 'DataCollectionOptions', + 'description': 'str', + 'display_name': 'str', + 'ssh_public_keys': 'list[str]', + 'time_zone': 'str', + 'additional_vm_storage_size_in_gbs': 'int', + 'data_storage_size_in_gbs': 'int', + 'reco_storage_size_in_gbs': 'int', + 'memory_size_in_gbs': 'int', + 'license_model': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'vm_cluster_type': 'str', + 'cloud_automation_update_details': 'CloudAutomationUpdateDetails' + } + self.attribute_map = { + 'compartment_id': 'compartmentId', + 'database_edition': 'databaseEdition', + 'node_count': 'nodeCount', + 'db_server_id': 'dbServerId', + 'cpu_core_count': 'cpuCoreCount', + 'base_infrastructure_id': 'baseInfrastructureId', + 'base_vm_cluster_network_id': 'baseVmClusterNetworkId', + 'gi_version': 'giVersion', + 'data_collection_options': 'dataCollectionOptions', + 'description': 'description', + 'display_name': 'displayName', + 'ssh_public_keys': 'sshPublicKeys', + 'time_zone': 'timeZone', + 'additional_vm_storage_size_in_gbs': 'additionalVmStorageSizeInGBs', + 'data_storage_size_in_gbs': 'dataStorageSizeInGBs', + 'reco_storage_size_in_gbs': 'recoStorageSizeInGBs', + 'memory_size_in_gbs': 'memorySizeInGBs', + 'license_model': 'licenseModel', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'vm_cluster_type': 'vmClusterType', + 'cloud_automation_update_details': 'cloudAutomationUpdateDetails' + } + self._compartment_id = None + self._database_edition = None + self._node_count = None + self._db_server_id = None + self._cpu_core_count = None + self._base_infrastructure_id = None + self._base_vm_cluster_network_id = None + self._gi_version = None + self._data_collection_options = None + self._description = None + self._display_name = None + self._ssh_public_keys = None + self._time_zone = None + self._additional_vm_storage_size_in_gbs = None + self._data_storage_size_in_gbs = None + self._reco_storage_size_in_gbs = None + self._memory_size_in_gbs = None + self._license_model = None + self._freeform_tags = None + self._defined_tags = None + self._vm_cluster_type = None + self._cloud_automation_update_details = None + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this CreateBaseccVmClusterDetails. + The `OCID`__ of the compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this CreateBaseccVmClusterDetails. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this CreateBaseccVmClusterDetails. + The `OCID`__ of the compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this CreateBaseccVmClusterDetails. + :type: str + """ + self._compartment_id = compartment_id + + @property + def database_edition(self): + """ + Gets the database_edition of this CreateBaseccVmClusterDetails. + The Oracle Database Edition that applies to all the databases on the DB system. + Exadata DB systems and 2-node RAC DB systems require ENTERPRISE_EDITION_EXTREME_PERFORMANCE. + + Allowed values for this property are: "STANDARD_EDITION", "ENTERPRISE_EDITION", "ENTERPRISE_EDITION_HIGH_PERFORMANCE", "ENTERPRISE_EDITION_EXTREME_PERFORMANCE", "ENTERPRISE_EDITION_DEVELOPER" + + + :return: The database_edition of this CreateBaseccVmClusterDetails. + :rtype: str + """ + return self._database_edition + + @database_edition.setter + def database_edition(self, database_edition): + """ + Sets the database_edition of this CreateBaseccVmClusterDetails. + The Oracle Database Edition that applies to all the databases on the DB system. + Exadata DB systems and 2-node RAC DB systems require ENTERPRISE_EDITION_EXTREME_PERFORMANCE. + + + :param database_edition: The database_edition of this CreateBaseccVmClusterDetails. + :type: str + """ + allowed_values = ["STANDARD_EDITION", "ENTERPRISE_EDITION", "ENTERPRISE_EDITION_HIGH_PERFORMANCE", "ENTERPRISE_EDITION_EXTREME_PERFORMANCE", "ENTERPRISE_EDITION_DEVELOPER"] + if not value_allowed_none_or_none_sentinel(database_edition, allowed_values): + raise ValueError( + f"Invalid value for `database_edition`, must be None or one of {allowed_values}" + ) + self._database_edition = database_edition + + @property + def node_count(self): + """ + Gets the node_count of this CreateBaseccVmClusterDetails. + The number of nodes in the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :return: The node_count of this CreateBaseccVmClusterDetails. + :rtype: int + """ + return self._node_count + + @node_count.setter + def node_count(self, node_count): + """ + Sets the node_count of this CreateBaseccVmClusterDetails. + The number of nodes in the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :param node_count: The node_count of this CreateBaseccVmClusterDetails. + :type: int + """ + self._node_count = node_count + + @property + def db_server_id(self): + """ + Gets the db_server_id of this CreateBaseccVmClusterDetails. + The `OCID`__ of the compute node of the Oracle Data Cloud@Customer Infrastructure, on which the VM should be launched. + Note: Applies to single node Base Database Service on Cloud@Customer (BaseDB-C@C) VM clusters only + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The db_server_id of this CreateBaseccVmClusterDetails. + :rtype: str + """ + return self._db_server_id + + @db_server_id.setter + def db_server_id(self, db_server_id): + """ + Sets the db_server_id of this CreateBaseccVmClusterDetails. + The `OCID`__ of the compute node of the Oracle Data Cloud@Customer Infrastructure, on which the VM should be launched. + Note: Applies to single node Base Database Service on Cloud@Customer (BaseDB-C@C) VM clusters only + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param db_server_id: The db_server_id of this CreateBaseccVmClusterDetails. + :type: str + """ + self._db_server_id = db_server_id + + @property + def cpu_core_count(self): + """ + **[Required]** Gets the cpu_core_count of this CreateBaseccVmClusterDetails. + Total CPU cores for the BaseDB C@C VM cluster. + + + :return: The cpu_core_count of this CreateBaseccVmClusterDetails. + :rtype: int + """ + return self._cpu_core_count + + @cpu_core_count.setter + def cpu_core_count(self, cpu_core_count): + """ + Sets the cpu_core_count of this CreateBaseccVmClusterDetails. + Total CPU cores for the BaseDB C@C VM cluster. + + + :param cpu_core_count: The cpu_core_count of this CreateBaseccVmClusterDetails. + :type: int + """ + self._cpu_core_count = cpu_core_count + + @property + def base_infrastructure_id(self): + """ + **[Required]** Gets the base_infrastructure_id of this CreateBaseccVmClusterDetails. + The `OCID`__ of Oracle Data Cloud@Customer Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The base_infrastructure_id of this CreateBaseccVmClusterDetails. + :rtype: str + """ + return self._base_infrastructure_id + + @base_infrastructure_id.setter + def base_infrastructure_id(self, base_infrastructure_id): + """ + Sets the base_infrastructure_id of this CreateBaseccVmClusterDetails. + The `OCID`__ of Oracle Data Cloud@Customer Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param base_infrastructure_id: The base_infrastructure_id of this CreateBaseccVmClusterDetails. + :type: str + """ + self._base_infrastructure_id = base_infrastructure_id + + @property + def base_vm_cluster_network_id(self): + """ + **[Required]** Gets the base_vm_cluster_network_id of this CreateBaseccVmClusterDetails. + The `OCID`__ of BaseDB-C@C VM Cluster Network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The base_vm_cluster_network_id of this CreateBaseccVmClusterDetails. + :rtype: str + """ + return self._base_vm_cluster_network_id + + @base_vm_cluster_network_id.setter + def base_vm_cluster_network_id(self, base_vm_cluster_network_id): + """ + Sets the base_vm_cluster_network_id of this CreateBaseccVmClusterDetails. + The `OCID`__ of BaseDB-C@C VM Cluster Network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param base_vm_cluster_network_id: The base_vm_cluster_network_id of this CreateBaseccVmClusterDetails. + :type: str + """ + self._base_vm_cluster_network_id = base_vm_cluster_network_id + + @property + def gi_version(self): + """ + **[Required]** Gets the gi_version of this CreateBaseccVmClusterDetails. + A valid Oracle Grid Infrastructure (GI) software version. + + + :return: The gi_version of this CreateBaseccVmClusterDetails. + :rtype: str + """ + return self._gi_version + + @gi_version.setter + def gi_version(self, gi_version): + """ + Sets the gi_version of this CreateBaseccVmClusterDetails. + A valid Oracle Grid Infrastructure (GI) software version. + + + :param gi_version: The gi_version of this CreateBaseccVmClusterDetails. + :type: str + """ + self._gi_version = gi_version + + @property + def data_collection_options(self): + """ + Gets the data_collection_options of this CreateBaseccVmClusterDetails. + + :return: The data_collection_options of this CreateBaseccVmClusterDetails. + :rtype: oci.database.models.DataCollectionOptions + """ + return self._data_collection_options + + @data_collection_options.setter + def data_collection_options(self, data_collection_options): + """ + Sets the data_collection_options of this CreateBaseccVmClusterDetails. + + :param data_collection_options: The data_collection_options of this CreateBaseccVmClusterDetails. + :type: oci.database.models.DataCollectionOptions + """ + self._data_collection_options = data_collection_options + + @property + def description(self): + """ + Gets the description of this CreateBaseccVmClusterDetails. + The description for Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :return: The description of this CreateBaseccVmClusterDetails. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this CreateBaseccVmClusterDetails. + The description for Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :param description: The description of this CreateBaseccVmClusterDetails. + :type: str + """ + self._description = description + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this CreateBaseccVmClusterDetails. + The user-friendly name for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. The name does not need to be unique. + + + :return: The display_name of this CreateBaseccVmClusterDetails. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this CreateBaseccVmClusterDetails. + The user-friendly name for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. The name does not need to be unique. + + + :param display_name: The display_name of this CreateBaseccVmClusterDetails. + :type: str + """ + self._display_name = display_name + + @property + def ssh_public_keys(self): + """ + **[Required]** Gets the ssh_public_keys of this CreateBaseccVmClusterDetails. + The public key portion of one or more key pairs used for SSH access to the VMs of Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :return: The ssh_public_keys of this CreateBaseccVmClusterDetails. + :rtype: list[str] + """ + return self._ssh_public_keys + + @ssh_public_keys.setter + def ssh_public_keys(self, ssh_public_keys): + """ + Sets the ssh_public_keys of this CreateBaseccVmClusterDetails. + The public key portion of one or more key pairs used for SSH access to the VMs of Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :param ssh_public_keys: The ssh_public_keys of this CreateBaseccVmClusterDetails. + :type: list[str] + """ + self._ssh_public_keys = ssh_public_keys + + @property + def time_zone(self): + """ + Gets the time_zone of this CreateBaseccVmClusterDetails. + The time zone to use for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. For details, see `Time Zones`__. + + __ https://docs.oracle.com/iaas/Content/Database/References/timezones.htm + + + :return: The time_zone of this CreateBaseccVmClusterDetails. + :rtype: str + """ + return self._time_zone + + @time_zone.setter + def time_zone(self, time_zone): + """ + Sets the time_zone of this CreateBaseccVmClusterDetails. + The time zone to use for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. For details, see `Time Zones`__. + + __ https://docs.oracle.com/iaas/Content/Database/References/timezones.htm + + + :param time_zone: The time_zone of this CreateBaseccVmClusterDetails. + :type: str + """ + self._time_zone = time_zone + + @property + def additional_vm_storage_size_in_gbs(self): + """ + Gets the additional_vm_storage_size_in_gbs of this CreateBaseccVmClusterDetails. + Total /u01 partition size (GB) for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :return: The additional_vm_storage_size_in_gbs of this CreateBaseccVmClusterDetails. + :rtype: int + """ + return self._additional_vm_storage_size_in_gbs + + @additional_vm_storage_size_in_gbs.setter + def additional_vm_storage_size_in_gbs(self, additional_vm_storage_size_in_gbs): + """ + Sets the additional_vm_storage_size_in_gbs of this CreateBaseccVmClusterDetails. + Total /u01 partition size (GB) for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :param additional_vm_storage_size_in_gbs: The additional_vm_storage_size_in_gbs of this CreateBaseccVmClusterDetails. + :type: int + """ + self._additional_vm_storage_size_in_gbs = additional_vm_storage_size_in_gbs + + @property + def data_storage_size_in_gbs(self): + """ + Gets the data_storage_size_in_gbs of this CreateBaseccVmClusterDetails. + The DATA Disk Group size in GB for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :return: The data_storage_size_in_gbs of this CreateBaseccVmClusterDetails. + :rtype: int + """ + return self._data_storage_size_in_gbs + + @data_storage_size_in_gbs.setter + def data_storage_size_in_gbs(self, data_storage_size_in_gbs): + """ + Sets the data_storage_size_in_gbs of this CreateBaseccVmClusterDetails. + The DATA Disk Group size in GB for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :param data_storage_size_in_gbs: The data_storage_size_in_gbs of this CreateBaseccVmClusterDetails. + :type: int + """ + self._data_storage_size_in_gbs = data_storage_size_in_gbs + + @property + def reco_storage_size_in_gbs(self): + """ + Gets the reco_storage_size_in_gbs of this CreateBaseccVmClusterDetails. + The RECO Disk Group size in GB for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :return: The reco_storage_size_in_gbs of this CreateBaseccVmClusterDetails. + :rtype: int + """ + return self._reco_storage_size_in_gbs + + @reco_storage_size_in_gbs.setter + def reco_storage_size_in_gbs(self, reco_storage_size_in_gbs): + """ + Sets the reco_storage_size_in_gbs of this CreateBaseccVmClusterDetails. + The RECO Disk Group size in GB for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :param reco_storage_size_in_gbs: The reco_storage_size_in_gbs of this CreateBaseccVmClusterDetails. + :type: int + """ + self._reco_storage_size_in_gbs = reco_storage_size_in_gbs + + @property + def memory_size_in_gbs(self): + """ + Gets the memory_size_in_gbs of this CreateBaseccVmClusterDetails. + The total memory to be allocated, in GBs, for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. The minimum is 11GB for every 4 ECPU. + + + :return: The memory_size_in_gbs of this CreateBaseccVmClusterDetails. + :rtype: int + """ + return self._memory_size_in_gbs + + @memory_size_in_gbs.setter + def memory_size_in_gbs(self, memory_size_in_gbs): + """ + Sets the memory_size_in_gbs of this CreateBaseccVmClusterDetails. + The total memory to be allocated, in GBs, for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. The minimum is 11GB for every 4 ECPU. + + + :param memory_size_in_gbs: The memory_size_in_gbs of this CreateBaseccVmClusterDetails. + :type: int + """ + self._memory_size_in_gbs = memory_size_in_gbs + + @property + def license_model(self): + """ + Gets the license_model of this CreateBaseccVmClusterDetails. + The Oracle license model that applies to the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. The default is LICENSE_INCLUDED. + + Allowed values for this property are: "LICENSE_INCLUDED", "BRING_YOUR_OWN_LICENSE" + + + :return: The license_model of this CreateBaseccVmClusterDetails. + :rtype: str + """ + return self._license_model + + @license_model.setter + def license_model(self, license_model): + """ + Sets the license_model of this CreateBaseccVmClusterDetails. + The Oracle license model that applies to the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. The default is LICENSE_INCLUDED. + + + :param license_model: The license_model of this CreateBaseccVmClusterDetails. + :type: str + """ + allowed_values = ["LICENSE_INCLUDED", "BRING_YOUR_OWN_LICENSE"] + if not value_allowed_none_or_none_sentinel(license_model, allowed_values): + raise ValueError( + f"Invalid value for `license_model`, must be None or one of {allowed_values}" + ) + self._license_model = license_model + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this CreateBaseccVmClusterDetails. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this CreateBaseccVmClusterDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this CreateBaseccVmClusterDetails. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this CreateBaseccVmClusterDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this CreateBaseccVmClusterDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this CreateBaseccVmClusterDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this CreateBaseccVmClusterDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this CreateBaseccVmClusterDetails. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def vm_cluster_type(self): + """ + Gets the vm_cluster_type of this CreateBaseccVmClusterDetails. + The cluster type for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + Allowed values for this property are: "REGULAR", "DEVELOPER" + + + :return: The vm_cluster_type of this CreateBaseccVmClusterDetails. + :rtype: str + """ + return self._vm_cluster_type + + @vm_cluster_type.setter + def vm_cluster_type(self, vm_cluster_type): + """ + Sets the vm_cluster_type of this CreateBaseccVmClusterDetails. + The cluster type for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :param vm_cluster_type: The vm_cluster_type of this CreateBaseccVmClusterDetails. + :type: str + """ + allowed_values = ["REGULAR", "DEVELOPER"] + if not value_allowed_none_or_none_sentinel(vm_cluster_type, allowed_values): + raise ValueError( + f"Invalid value for `vm_cluster_type`, must be None or one of {allowed_values}" + ) + self._vm_cluster_type = vm_cluster_type + + @property + def cloud_automation_update_details(self): + """ + Gets the cloud_automation_update_details of this CreateBaseccVmClusterDetails. + + :return: The cloud_automation_update_details of this CreateBaseccVmClusterDetails. + :rtype: oci.database.models.CloudAutomationUpdateDetails + """ + return self._cloud_automation_update_details + + @cloud_automation_update_details.setter + def cloud_automation_update_details(self, cloud_automation_update_details): + """ + Sets the cloud_automation_update_details of this CreateBaseccVmClusterDetails. + + :param cloud_automation_update_details: The cloud_automation_update_details of this CreateBaseccVmClusterDetails. + :type: oci.database.models.CloudAutomationUpdateDetails + """ + self._cloud_automation_update_details = cloud_automation_update_details + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/database/models/create_database_details.py b/src/oci/database/models/create_database_details.py index 8f7291bb98..743986bdd1 100644 --- a/src/oci/database/models/create_database_details.py +++ b/src/oci/database/models/create_database_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -162,6 +162,9 @@ def __init__(self, **kwargs): 'managed_software_update_details': 'managedSoftwareUpdateDetails', 'vm_cluster_id': 'vmClusterId' } + self._redacted_field_paths = [ + ['tde_wallet_password'], + ] self._db_name = None self._db_unique_name = None self._database_software_image_id = None @@ -726,7 +729,9 @@ def vm_cluster_id(self, vm_cluster_id): self._vm_cluster_id = vm_cluster_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['tde_wallet_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/create_database_for_standby_db_system_details.py b/src/oci/database/models/create_database_for_standby_db_system_details.py index 530242c63f..7f18f967a4 100644 --- a/src/oci/database/models/create_database_for_standby_db_system_details.py +++ b/src/oci/database/models/create_database_for_standby_db_system_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -131,6 +131,9 @@ def __init__(self, **kwargs): 'database_freeform_tags': 'databaseFreeformTags', 'database_defined_tags': 'databaseDefinedTags' } + self._redacted_field_paths = [ + ['tde_wallet_password'], + ] self._admin_password = None self._tde_wallet_password = None self._database_software_image_id = None @@ -516,7 +519,9 @@ def database_defined_tags(self, database_defined_tags): self._database_defined_tags = database_defined_tags def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['tde_wallet_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/create_database_software_image_details.py b/src/oci/database/models/create_database_software_image_details.py index 76bca59471..8218143f6a 100644 --- a/src/oci/database/models/create_database_software_image_details.py +++ b/src/oci/database/models/create_database_software_image_details.py @@ -33,6 +33,10 @@ class CreateDatabaseSoftwareImageDetails(object): #: This constant has a value of "EXADBXS_SHAPE" IMAGE_SHAPE_FAMILY_EXADBXS_SHAPE = "EXADBXS_SHAPE" + #: A constant which can be used with the image_shape_family property of a CreateDatabaseSoftwareImageDetails. + #: This constant has a value of "BDBCC_SHAPE" + IMAGE_SHAPE_FAMILY_BDBCC_SHAPE = "BDBCC_SHAPE" + #: A constant which can be used with the image_type property of a CreateDatabaseSoftwareImageDetails. #: This constant has a value of "GRID_IMAGE" IMAGE_TYPE_GRID_IMAGE = "GRID_IMAGE" @@ -60,7 +64,7 @@ def __init__(self, **kwargs): :param image_shape_family: The value to assign to the image_shape_family property of this CreateDatabaseSoftwareImageDetails. - Allowed values for this property are: "VM_BM_SHAPE", "EXADATA_SHAPE", "EXACC_SHAPE", "EXADBXS_SHAPE" + Allowed values for this property are: "VM_BM_SHAPE", "EXADATA_SHAPE", "EXACC_SHAPE", "EXADBXS_SHAPE", "BDBCC_SHAPE" :type image_shape_family: str :param image_type: @@ -213,7 +217,7 @@ def image_shape_family(self): Gets the image_shape_family of this CreateDatabaseSoftwareImageDetails. To what shape the image is meant for. - Allowed values for this property are: "VM_BM_SHAPE", "EXADATA_SHAPE", "EXACC_SHAPE", "EXADBXS_SHAPE" + Allowed values for this property are: "VM_BM_SHAPE", "EXADATA_SHAPE", "EXACC_SHAPE", "EXADBXS_SHAPE", "BDBCC_SHAPE" :return: The image_shape_family of this CreateDatabaseSoftwareImageDetails. @@ -231,7 +235,7 @@ def image_shape_family(self, image_shape_family): :param image_shape_family: The image_shape_family of this CreateDatabaseSoftwareImageDetails. :type: str """ - allowed_values = ["VM_BM_SHAPE", "EXADATA_SHAPE", "EXACC_SHAPE", "EXADBXS_SHAPE"] + allowed_values = ["VM_BM_SHAPE", "EXADATA_SHAPE", "EXACC_SHAPE", "EXADBXS_SHAPE", "BDBCC_SHAPE"] if not value_allowed_none_or_none_sentinel(image_shape_family, allowed_values): raise ValueError( f"Invalid value for `image_shape_family`, must be None or one of {allowed_values}" diff --git a/src/oci/database/models/create_db_home_details.py b/src/oci/database/models/create_db_home_details.py index b4736390be..e94a67b0ee 100644 --- a/src/oci/database/models/create_db_home_details.py +++ b/src/oci/database/models/create_db_home_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -69,6 +69,9 @@ def __init__(self, **kwargs): 'defined_tags': 'definedTags', 'is_unified_auditing_enabled': 'isUnifiedAuditingEnabled' } + self._redacted_field_paths = [ + ['database', 'tde_wallet_password'], + ] self._display_name = None self._db_version = None self._database_software_image_id = None @@ -266,7 +269,9 @@ def is_unified_auditing_enabled(self, is_unified_auditing_enabled): self._is_unified_auditing_enabled = is_unified_auditing_enabled def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['database', 'tde_wallet_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/create_db_home_for_standby_db_system.py b/src/oci/database/models/create_db_home_for_standby_db_system.py index 65a5c85f60..90c45d1063 100644 --- a/src/oci/database/models/create_db_home_for_standby_db_system.py +++ b/src/oci/database/models/create_db_home_for_standby_db_system.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -39,6 +39,9 @@ def __init__(self, **kwargs): 'display_name': 'displayName', 'database': 'database' } + self._redacted_field_paths = [ + ['database', 'tde_wallet_password'], + ] self._display_name = None self._database = None @@ -87,7 +90,9 @@ def database(self, database): self._database = database def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['database', 'tde_wallet_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/create_db_home_with_db_system_id_details.py b/src/oci/database/models/create_db_home_with_db_system_id_details.py index e80d0dc289..c3f7bc17cf 100644 --- a/src/oci/database/models/create_db_home_with_db_system_id_details.py +++ b/src/oci/database/models/create_db_home_with_db_system_id_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 from .create_db_home_base import CreateDbHomeBase -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -99,6 +99,9 @@ def __init__(self, **kwargs): 'db_version': 'dbVersion', 'database': 'database' } + self._redacted_field_paths = [ + ['database', 'tde_wallet_password'], + ] self._display_name = None self._kms_key_id = None self._kms_key_version_id = None @@ -190,7 +193,9 @@ def database(self, database): self._database = database def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['database', 'tde_wallet_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/create_db_home_with_vm_cluster_id_details.py b/src/oci/database/models/create_db_home_with_vm_cluster_id_details.py index b738da09e0..b94cce1e40 100644 --- a/src/oci/database/models/create_db_home_with_vm_cluster_id_details.py +++ b/src/oci/database/models/create_db_home_with_vm_cluster_id_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 from .create_db_home_base import CreateDbHomeBase -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -99,6 +99,9 @@ def __init__(self, **kwargs): 'db_version': 'dbVersion', 'database': 'database' } + self._redacted_field_paths = [ + ['database', 'tde_wallet_password'], + ] self._display_name = None self._kms_key_id = None self._kms_key_version_id = None @@ -190,7 +193,9 @@ def database(self, database): self._database = database def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['database', 'tde_wallet_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/create_new_database_details.py b/src/oci/database/models/create_new_database_details.py index c735ca3b0d..1d9511bba4 100644 --- a/src/oci/database/models/create_new_database_details.py +++ b/src/oci/database/models/create_new_database_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 from .create_database_base import CreateDatabaseBase -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -65,6 +65,9 @@ def __init__(self, **kwargs): 'kms_key_version_id': 'kmsKeyVersionId', 'database': 'database' } + self._redacted_field_paths = [ + ['database', 'tde_wallet_password'], + ] self._db_home_id = None self._db_version = None self._source = None @@ -94,7 +97,9 @@ def database(self, database): self._database = database def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['database', 'tde_wallet_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/create_pluggable_database_details.py b/src/oci/database/models/create_pluggable_database_details.py index f7921eee9f..8107088503 100644 --- a/src/oci/database/models/create_pluggable_database_details.py +++ b/src/oci/database/models/create_pluggable_database_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -87,6 +87,9 @@ def __init__(self, **kwargs): 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags' } + self._redacted_field_paths = [ + ['container_database_admin_password'], + ] self._pdb_name = None self._container_database_id = None self._pdb_admin_password = None @@ -357,7 +360,9 @@ def defined_tags(self, defined_tags): self._defined_tags = defined_tags def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['container_database_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/create_pluggable_database_from_relocate_details.py b/src/oci/database/models/create_pluggable_database_from_relocate_details.py index fa3187795a..8a1c60e26b 100644 --- a/src/oci/database/models/create_pluggable_database_from_relocate_details.py +++ b/src/oci/database/models/create_pluggable_database_from_relocate_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 from .create_pluggable_database_creation_type_details import CreatePluggableDatabaseCreationTypeDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -59,6 +59,10 @@ def __init__(self, **kwargs): 'source_pluggable_database_id': 'sourcePluggableDatabaseId', 'source_container_database_admin_password': 'sourceContainerDatabaseAdminPassword' } + self._redacted_field_paths = [ + ['dblink_user_password'], + ['source_container_database_admin_password'], + ] self._creation_type = None self._dblink_username = None self._dblink_user_password = None @@ -163,7 +167,10 @@ def source_container_database_admin_password(self, source_container_database_adm self._source_container_database_admin_password = source_container_database_admin_password def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['dblink_user_password']) + redact_password_field(as_dict, ['source_container_database_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/create_pluggable_database_from_remote_clone_details.py b/src/oci/database/models/create_pluggable_database_from_remote_clone_details.py index ee16a839ff..c97f492aa9 100644 --- a/src/oci/database/models/create_pluggable_database_from_remote_clone_details.py +++ b/src/oci/database/models/create_pluggable_database_from_remote_clone_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 from .create_pluggable_database_creation_type_details import CreatePluggableDatabaseCreationTypeDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -77,6 +77,10 @@ def __init__(self, **kwargs): 'is_thin_clone': 'isThinClone', 'source_pluggable_database_snapshot_id': 'sourcePluggableDatabaseSnapshotId' } + self._redacted_field_paths = [ + ['dblink_user_password'], + ['source_container_database_admin_password'], + ] self._creation_type = None self._dblink_username = None self._dblink_user_password = None @@ -252,7 +256,10 @@ def source_pluggable_database_snapshot_id(self, source_pluggable_database_snapsh self._source_pluggable_database_snapshot_id = source_pluggable_database_snapshot_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['dblink_user_password']) + redact_password_field(as_dict, ['source_container_database_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/create_stand_by_database_details.py b/src/oci/database/models/create_stand_by_database_details.py index 47b3890613..d80a25fea3 100644 --- a/src/oci/database/models/create_stand_by_database_details.py +++ b/src/oci/database/models/create_stand_by_database_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 from .create_database_base import CreateDatabaseBase -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -65,6 +65,10 @@ def __init__(self, **kwargs): 'kms_key_version_id': 'kmsKeyVersionId', 'database': 'database' } + self._redacted_field_paths = [ + ['database', 'database_admin_password'], + ['database', 'source_tde_wallet_password'], + ] self._db_home_id = None self._db_version = None self._source = None @@ -94,7 +98,10 @@ def database(self, database): self._database = database def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['database', 'database_admin_password']) + redact_password_field(as_dict, ['database', 'source_tde_wallet_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/create_standby_details.py b/src/oci/database/models/create_standby_details.py index 858b56ab5c..f78b6b3c40 100644 --- a/src/oci/database/models/create_standby_details.py +++ b/src/oci/database/models/create_standby_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -123,6 +123,10 @@ def __init__(self, **kwargs): 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags' } + self._redacted_field_paths = [ + ['database_admin_password'], + ['source_tde_wallet_password'], + ] self._source_database_id = None self._database_admin_password = None self._source_tde_wallet_password = None @@ -487,7 +491,10 @@ def defined_tags(self, defined_tags): self._defined_tags = defined_tags def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['database_admin_password']) + redact_password_field(as_dict, ['source_tde_wallet_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/database_connection_credentials_by_details.py b/src/oci/database/models/database_connection_credentials_by_details.py index 2bfcbf62c8..0e3dfd5790 100644 --- a/src/oci/database/models/database_connection_credentials_by_details.py +++ b/src/oci/database/models/database_connection_credentials_by_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 from .database_connection_credentials import DatabaseConnectionCredentials -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -73,6 +73,9 @@ def __init__(self, **kwargs): 'password': 'password', 'role': 'role' } + self._redacted_field_paths = [ + ['password'], + ] self._credential_type = None self._credential_name = None self._username = None @@ -199,7 +202,9 @@ def role(self, role): self._role = role def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/database_software_image.py b/src/oci/database/models/database_software_image.py index 31cd74ec01..24a6537db8 100644 --- a/src/oci/database/models/database_software_image.py +++ b/src/oci/database/models/database_software_image.py @@ -71,6 +71,10 @@ class DatabaseSoftwareImage(object): #: This constant has a value of "EXADBXS_SHAPE" IMAGE_SHAPE_FAMILY_EXADBXS_SHAPE = "EXADBXS_SHAPE" + #: A constant which can be used with the image_shape_family property of a DatabaseSoftwareImage. + #: This constant has a value of "BDBCC_SHAPE" + IMAGE_SHAPE_FAMILY_BDBCC_SHAPE = "BDBCC_SHAPE" + def __init__(self, **kwargs): """ Initializes a new DatabaseSoftwareImage object with values from keyword arguments. @@ -114,7 +118,7 @@ def __init__(self, **kwargs): :param image_shape_family: The value to assign to the image_shape_family property of this DatabaseSoftwareImage. - Allowed values for this property are: "VM_BM_SHAPE", "EXADATA_SHAPE", "EXACC_SHAPE", "EXADBXS_SHAPE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "VM_BM_SHAPE", "EXADATA_SHAPE", "EXACC_SHAPE", "EXADBXS_SHAPE", "BDBCC_SHAPE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type image_shape_family: str @@ -432,7 +436,7 @@ def image_shape_family(self): **[Required]** Gets the image_shape_family of this DatabaseSoftwareImage. To what shape the image is meant for. - Allowed values for this property are: "VM_BM_SHAPE", "EXADATA_SHAPE", "EXACC_SHAPE", "EXADBXS_SHAPE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "VM_BM_SHAPE", "EXADATA_SHAPE", "EXACC_SHAPE", "EXADBXS_SHAPE", "BDBCC_SHAPE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -451,7 +455,7 @@ def image_shape_family(self, image_shape_family): :param image_shape_family: The image_shape_family of this DatabaseSoftwareImage. :type: str """ - allowed_values = ["VM_BM_SHAPE", "EXADATA_SHAPE", "EXACC_SHAPE", "EXADBXS_SHAPE"] + allowed_values = ["VM_BM_SHAPE", "EXADATA_SHAPE", "EXACC_SHAPE", "EXADBXS_SHAPE", "BDBCC_SHAPE"] if not value_allowed_none_or_none_sentinel(image_shape_family, allowed_values): image_shape_family = 'UNKNOWN_ENUM_VALUE' self._image_shape_family = image_shape_family diff --git a/src/oci/database/models/database_software_image_summary.py b/src/oci/database/models/database_software_image_summary.py index c3d9d956d3..4c72b45d3f 100644 --- a/src/oci/database/models/database_software_image_summary.py +++ b/src/oci/database/models/database_software_image_summary.py @@ -80,6 +80,10 @@ class DatabaseSoftwareImageSummary(object): #: This constant has a value of "EXADBXS_SHAPE" IMAGE_SHAPE_FAMILY_EXADBXS_SHAPE = "EXADBXS_SHAPE" + #: A constant which can be used with the image_shape_family property of a DatabaseSoftwareImageSummary. + #: This constant has a value of "BDBCC_SHAPE" + IMAGE_SHAPE_FAMILY_BDBCC_SHAPE = "BDBCC_SHAPE" + def __init__(self, **kwargs): """ Initializes a new DatabaseSoftwareImageSummary object with values from keyword arguments. @@ -123,7 +127,7 @@ def __init__(self, **kwargs): :param image_shape_family: The value to assign to the image_shape_family property of this DatabaseSoftwareImageSummary. - Allowed values for this property are: "VM_BM_SHAPE", "EXADATA_SHAPE", "EXACC_SHAPE", "EXADBXS_SHAPE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "VM_BM_SHAPE", "EXADATA_SHAPE", "EXACC_SHAPE", "EXADBXS_SHAPE", "BDBCC_SHAPE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type image_shape_family: str @@ -441,7 +445,7 @@ def image_shape_family(self): **[Required]** Gets the image_shape_family of this DatabaseSoftwareImageSummary. To what shape the image is meant for. - Allowed values for this property are: "VM_BM_SHAPE", "EXADATA_SHAPE", "EXACC_SHAPE", "EXADBXS_SHAPE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "VM_BM_SHAPE", "EXADATA_SHAPE", "EXACC_SHAPE", "EXADBXS_SHAPE", "BDBCC_SHAPE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -460,7 +464,7 @@ def image_shape_family(self, image_shape_family): :param image_shape_family: The image_shape_family of this DatabaseSoftwareImageSummary. :type: str """ - allowed_values = ["VM_BM_SHAPE", "EXADATA_SHAPE", "EXACC_SHAPE", "EXADBXS_SHAPE"] + allowed_values = ["VM_BM_SHAPE", "EXADATA_SHAPE", "EXACC_SHAPE", "EXADBXS_SHAPE", "BDBCC_SHAPE"] if not value_allowed_none_or_none_sentinel(image_shape_family, allowed_values): image_shape_family = 'UNKNOWN_ENUM_VALUE' self._image_shape_family = image_shape_family diff --git a/src/oci/database/models/database_ssl_connection_credentials.py b/src/oci/database/models/database_ssl_connection_credentials.py index e3ab7bb338..8c9186b312 100644 --- a/src/oci/database/models/database_ssl_connection_credentials.py +++ b/src/oci/database/models/database_ssl_connection_credentials.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 from .database_connection_credentials import DatabaseConnectionCredentials -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -78,6 +78,9 @@ def __init__(self, **kwargs): 'role': 'role', 'ssl_secret_id': 'sslSecretId' } + self._redacted_field_paths = [ + ['password'], + ] self._credential_type = None self._credential_name = None self._username = None @@ -235,7 +238,9 @@ def ssl_secret_id(self, ssl_secret_id): self._ssl_secret_id = ssl_secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/exadata_live_image_version_details.py b/src/oci/database/models/exadata_live_image_version_details.py new file mode 100644 index 0000000000..0e71ca6d69 --- /dev/null +++ b/src/oci/database/models/exadata_live_image_version_details.py @@ -0,0 +1,183 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ExadataLiveImageVersionDetails(object): + """ + Details about the most recent live image version applied on the VM Cluster, if any. If a full OS update was applied, the fields would be blank. + """ + + #: A constant which can be used with the update_mode property of a ExadataLiveImageVersionDetails. + #: This constant has a value of "ONLINE_HIGHCVSS" + UPDATE_MODE_ONLINE_HIGHCVSS = "ONLINE_HIGHCVSS" + + #: A constant which can be used with the update_mode property of a ExadataLiveImageVersionDetails. + #: This constant has a value of "ONLINE_ALLCVSS" + UPDATE_MODE_ONLINE_ALLCVSS = "ONLINE_ALLCVSS" + + #: A constant which can be used with the update_mode property of a ExadataLiveImageVersionDetails. + #: This constant has a value of "ONLINE_ALL_UPDATES" + UPDATE_MODE_ONLINE_ALL_UPDATES = "ONLINE_ALL_UPDATES" + + def __init__(self, **kwargs): + """ + Initializes a new ExadataLiveImageVersionDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param update_mode: + The value to assign to the update_mode property of this ExadataLiveImageVersionDetails. + Allowed values for this property are: "ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type update_mode: str + + :param version: + The value to assign to the version property of this ExadataLiveImageVersionDetails. + :type version: str + + :param has_pending_updates: + The value to assign to the has_pending_updates property of this ExadataLiveImageVersionDetails. + :type has_pending_updates: bool + + :param time_released: + The value to assign to the time_released property of this ExadataLiveImageVersionDetails. + :type time_released: datetime + + """ + self.swagger_types = { + 'update_mode': 'str', + 'version': 'str', + 'has_pending_updates': 'bool', + 'time_released': 'datetime' + } + self.attribute_map = { + 'update_mode': 'updateMode', + 'version': 'version', + 'has_pending_updates': 'hasPendingUpdates', + 'time_released': 'timeReleased' + } + self._update_mode = None + self._version = None + self._has_pending_updates = None + self._time_released = None + + @property + def update_mode(self): + """ + Gets the update_mode of this ExadataLiveImageVersionDetails. + The OS live update mode performed most recently on the VM Cluster. + + Allowed values for this property are: "ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The update_mode of this ExadataLiveImageVersionDetails. + :rtype: str + """ + return self._update_mode + + @update_mode.setter + def update_mode(self, update_mode): + """ + Sets the update_mode of this ExadataLiveImageVersionDetails. + The OS live update mode performed most recently on the VM Cluster. + + + :param update_mode: The update_mode of this ExadataLiveImageVersionDetails. + :type: str + """ + allowed_values = ["ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES"] + if not value_allowed_none_or_none_sentinel(update_mode, allowed_values): + update_mode = 'UNKNOWN_ENUM_VALUE' + self._update_mode = update_mode + + @property + def version(self): + """ + Gets the version of this ExadataLiveImageVersionDetails. + Live Exadata Image Version of the Guest OS Update applied. + + + :return: The version of this ExadataLiveImageVersionDetails. + :rtype: str + """ + return self._version + + @version.setter + def version(self, version): + """ + Sets the version of this ExadataLiveImageVersionDetails. + Live Exadata Image Version of the Guest OS Update applied. + + + :param version: The version of this ExadataLiveImageVersionDetails. + :type: str + """ + self._version = version + + @property + def has_pending_updates(self): + """ + Gets the has_pending_updates of this ExadataLiveImageVersionDetails. + Indicates whether OS updates that require node reboot are pending after the previous online update was applied. + + + :return: The has_pending_updates of this ExadataLiveImageVersionDetails. + :rtype: bool + """ + return self._has_pending_updates + + @has_pending_updates.setter + def has_pending_updates(self, has_pending_updates): + """ + Sets the has_pending_updates of this ExadataLiveImageVersionDetails. + Indicates whether OS updates that require node reboot are pending after the previous online update was applied. + + + :param has_pending_updates: The has_pending_updates of this ExadataLiveImageVersionDetails. + :type: bool + """ + self._has_pending_updates = has_pending_updates + + @property + def time_released(self): + """ + Gets the time_released of this ExadataLiveImageVersionDetails. + The release date and time for the applied Live Exadata Image OS version. + + + :return: The time_released of this ExadataLiveImageVersionDetails. + :rtype: datetime + """ + return self._time_released + + @time_released.setter + def time_released(self, time_released): + """ + Sets the time_released of this ExadataLiveImageVersionDetails. + The release date and time for the applied Live Exadata Image OS version. + + + :param time_released: The time_released of this ExadataLiveImageVersionDetails. + :type: datetime + """ + self._time_released = time_released + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/database/models/exadb_vm_cluster.py b/src/oci/database/models/exadb_vm_cluster.py index 058371ef20..b0d0124c5f 100644 --- a/src/oci/database/models/exadb_vm_cluster.py +++ b/src/oci/database/models/exadb_vm_cluster.py @@ -67,6 +67,22 @@ class ExadbVmCluster(object): #: This constant has a value of "BLOCK_STORAGE" SHAPE_ATTRIBUTE_BLOCK_STORAGE = "BLOCK_STORAGE" + #: A constant which can be used with the tde_key_store_type property of a ExadbVmCluster. + #: This constant has a value of "AZURE" + TDE_KEY_STORE_TYPE_AZURE = "AZURE" + + #: A constant which can be used with the tde_key_store_type property of a ExadbVmCluster. + #: This constant has a value of "OCI" + TDE_KEY_STORE_TYPE_OCI = "OCI" + + #: A constant which can be used with the tde_key_store_type property of a ExadbVmCluster. + #: This constant has a value of "GCP" + TDE_KEY_STORE_TYPE_GCP = "GCP" + + #: A constant which can be used with the tde_key_store_type property of a ExadbVmCluster. + #: This constant has a value of "AWS" + TDE_KEY_STORE_TYPE_AWS = "AWS" + def __init__(self, **kwargs): """ Initializes a new ExadbVmCluster object with values from keyword arguments. @@ -276,6 +292,16 @@ def __init__(self, **kwargs): Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type shape_attribute: str + :param multi_cloud_identity_connector_configs: + The value to assign to the multi_cloud_identity_connector_configs property of this ExadbVmCluster. + :type multi_cloud_identity_connector_configs: list[oci.database.models.IdentityConnectorDetails] + + :param tde_key_store_type: + The value to assign to the tde_key_store_type property of this ExadbVmCluster. + Allowed values for this property are: "AZURE", "OCI", "GCP", "AWS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type tde_key_store_type: str + """ self.swagger_types = { 'iorm_config_cache': 'ExadataIormConfig', @@ -326,7 +352,9 @@ def __init__(self, **kwargs): 'memory_size_in_gbs': 'int', 'cluster_placement_group_id': 'str', 'subscription_id': 'str', - 'shape_attribute': 'str' + 'shape_attribute': 'str', + 'multi_cloud_identity_connector_configs': 'list[IdentityConnectorDetails]', + 'tde_key_store_type': 'str' } self.attribute_map = { 'iorm_config_cache': 'iormConfigCache', @@ -377,7 +405,9 @@ def __init__(self, **kwargs): 'memory_size_in_gbs': 'memorySizeInGBs', 'cluster_placement_group_id': 'clusterPlacementGroupId', 'subscription_id': 'subscriptionId', - 'shape_attribute': 'shapeAttribute' + 'shape_attribute': 'shapeAttribute', + 'multi_cloud_identity_connector_configs': 'multiCloudIdentityConnectorConfigs', + 'tde_key_store_type': 'tdeKeyStoreType' } self._iorm_config_cache = None self._id = None @@ -428,6 +458,8 @@ def __init__(self, **kwargs): self._cluster_placement_group_id = None self._subscription_id = None self._shape_attribute = None + self._multi_cloud_identity_connector_configs = None + self._tde_key_store_type = None @property def iorm_config_cache(self): @@ -1739,6 +1771,60 @@ def shape_attribute(self, shape_attribute): shape_attribute = 'UNKNOWN_ENUM_VALUE' self._shape_attribute = shape_attribute + @property + def multi_cloud_identity_connector_configs(self): + """ + Gets the multi_cloud_identity_connector_configs of this ExadbVmCluster. + Details of the multi cloud identity connectors of the VM cluster. + + + :return: The multi_cloud_identity_connector_configs of this ExadbVmCluster. + :rtype: list[oci.database.models.IdentityConnectorDetails] + """ + return self._multi_cloud_identity_connector_configs + + @multi_cloud_identity_connector_configs.setter + def multi_cloud_identity_connector_configs(self, multi_cloud_identity_connector_configs): + """ + Sets the multi_cloud_identity_connector_configs of this ExadbVmCluster. + Details of the multi cloud identity connectors of the VM cluster. + + + :param multi_cloud_identity_connector_configs: The multi_cloud_identity_connector_configs of this ExadbVmCluster. + :type: list[oci.database.models.IdentityConnectorDetails] + """ + self._multi_cloud_identity_connector_configs = multi_cloud_identity_connector_configs + + @property + def tde_key_store_type(self): + """ + Gets the tde_key_store_type of this ExadbVmCluster. + TDE keystore type + + Allowed values for this property are: "AZURE", "OCI", "GCP", "AWS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The tde_key_store_type of this ExadbVmCluster. + :rtype: str + """ + return self._tde_key_store_type + + @tde_key_store_type.setter + def tde_key_store_type(self, tde_key_store_type): + """ + Sets the tde_key_store_type of this ExadbVmCluster. + TDE keystore type + + + :param tde_key_store_type: The tde_key_store_type of this ExadbVmCluster. + :type: str + """ + allowed_values = ["AZURE", "OCI", "GCP", "AWS"] + if not value_allowed_none_or_none_sentinel(tde_key_store_type, allowed_values): + tde_key_store_type = 'UNKNOWN_ENUM_VALUE' + self._tde_key_store_type = tde_key_store_type + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/database/models/exadb_vm_cluster_summary.py b/src/oci/database/models/exadb_vm_cluster_summary.py index 41e756f512..8ba235b6dd 100644 --- a/src/oci/database/models/exadb_vm_cluster_summary.py +++ b/src/oci/database/models/exadb_vm_cluster_summary.py @@ -67,6 +67,22 @@ class ExadbVmClusterSummary(object): #: This constant has a value of "BLOCK_STORAGE" SHAPE_ATTRIBUTE_BLOCK_STORAGE = "BLOCK_STORAGE" + #: A constant which can be used with the tde_key_store_type property of a ExadbVmClusterSummary. + #: This constant has a value of "AZURE" + TDE_KEY_STORE_TYPE_AZURE = "AZURE" + + #: A constant which can be used with the tde_key_store_type property of a ExadbVmClusterSummary. + #: This constant has a value of "OCI" + TDE_KEY_STORE_TYPE_OCI = "OCI" + + #: A constant which can be used with the tde_key_store_type property of a ExadbVmClusterSummary. + #: This constant has a value of "GCP" + TDE_KEY_STORE_TYPE_GCP = "GCP" + + #: A constant which can be used with the tde_key_store_type property of a ExadbVmClusterSummary. + #: This constant has a value of "AWS" + TDE_KEY_STORE_TYPE_AWS = "AWS" + def __init__(self, **kwargs): """ Initializes a new ExadbVmClusterSummary object with values from keyword arguments. @@ -272,6 +288,16 @@ def __init__(self, **kwargs): Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type shape_attribute: str + :param multi_cloud_identity_connector_configs: + The value to assign to the multi_cloud_identity_connector_configs property of this ExadbVmClusterSummary. + :type multi_cloud_identity_connector_configs: list[oci.database.models.IdentityConnectorDetails] + + :param tde_key_store_type: + The value to assign to the tde_key_store_type property of this ExadbVmClusterSummary. + Allowed values for this property are: "AZURE", "OCI", "GCP", "AWS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type tde_key_store_type: str + """ self.swagger_types = { 'id': 'str', @@ -321,7 +347,9 @@ def __init__(self, **kwargs): 'memory_size_in_gbs': 'int', 'cluster_placement_group_id': 'str', 'subscription_id': 'str', - 'shape_attribute': 'str' + 'shape_attribute': 'str', + 'multi_cloud_identity_connector_configs': 'list[IdentityConnectorDetails]', + 'tde_key_store_type': 'str' } self.attribute_map = { 'id': 'id', @@ -371,7 +399,9 @@ def __init__(self, **kwargs): 'memory_size_in_gbs': 'memorySizeInGBs', 'cluster_placement_group_id': 'clusterPlacementGroupId', 'subscription_id': 'subscriptionId', - 'shape_attribute': 'shapeAttribute' + 'shape_attribute': 'shapeAttribute', + 'multi_cloud_identity_connector_configs': 'multiCloudIdentityConnectorConfigs', + 'tde_key_store_type': 'tdeKeyStoreType' } self._id = None self._compartment_id = None @@ -421,6 +451,8 @@ def __init__(self, **kwargs): self._cluster_placement_group_id = None self._subscription_id = None self._shape_attribute = None + self._multi_cloud_identity_connector_configs = None + self._tde_key_store_type = None @property def id(self): @@ -1712,6 +1744,60 @@ def shape_attribute(self, shape_attribute): shape_attribute = 'UNKNOWN_ENUM_VALUE' self._shape_attribute = shape_attribute + @property + def multi_cloud_identity_connector_configs(self): + """ + Gets the multi_cloud_identity_connector_configs of this ExadbVmClusterSummary. + Details of the multi cloud identity connectors of the VM cluster. + + + :return: The multi_cloud_identity_connector_configs of this ExadbVmClusterSummary. + :rtype: list[oci.database.models.IdentityConnectorDetails] + """ + return self._multi_cloud_identity_connector_configs + + @multi_cloud_identity_connector_configs.setter + def multi_cloud_identity_connector_configs(self, multi_cloud_identity_connector_configs): + """ + Sets the multi_cloud_identity_connector_configs of this ExadbVmClusterSummary. + Details of the multi cloud identity connectors of the VM cluster. + + + :param multi_cloud_identity_connector_configs: The multi_cloud_identity_connector_configs of this ExadbVmClusterSummary. + :type: list[oci.database.models.IdentityConnectorDetails] + """ + self._multi_cloud_identity_connector_configs = multi_cloud_identity_connector_configs + + @property + def tde_key_store_type(self): + """ + Gets the tde_key_store_type of this ExadbVmClusterSummary. + TDE keystore type + + Allowed values for this property are: "AZURE", "OCI", "GCP", "AWS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The tde_key_store_type of this ExadbVmClusterSummary. + :rtype: str + """ + return self._tde_key_store_type + + @tde_key_store_type.setter + def tde_key_store_type(self, tde_key_store_type): + """ + Sets the tde_key_store_type of this ExadbVmClusterSummary. + TDE keystore type + + + :param tde_key_store_type: The tde_key_store_type of this ExadbVmClusterSummary. + :type: str + """ + allowed_values = ["AZURE", "OCI", "GCP", "AWS"] + if not value_allowed_none_or_none_sentinel(tde_key_store_type, allowed_values): + tde_key_store_type = 'UNKNOWN_ENUM_VALUE' + self._tde_key_store_type = tde_key_store_type + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/database/models/external_hsm_encryption_details.py b/src/oci/database/models/external_hsm_encryption_details.py index 0d21e0c613..549431c46e 100644 --- a/src/oci/database/models/external_hsm_encryption_details.py +++ b/src/oci/database/models/external_hsm_encryption_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 from .encryption_key_location_details import EncryptionKeyLocationDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -39,6 +39,9 @@ def __init__(self, **kwargs): 'provider_type': 'providerType', 'hsm_password': 'hsmPassword' } + self._redacted_field_paths = [ + ['hsm_password'], + ] self._provider_type = None self._hsm_password = None self._provider_type = 'EXTERNAL' @@ -68,7 +71,9 @@ def hsm_password(self, hsm_password): self._hsm_password = hsm_password def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['hsm_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/failover_data_guard_details.py b/src/oci/database/models/failover_data_guard_details.py index a0cc62a1d2..fc2d1e6ef3 100644 --- a/src/oci/database/models/failover_data_guard_details.py +++ b/src/oci/database/models/failover_data_guard_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -31,6 +31,9 @@ def __init__(self, **kwargs): self.attribute_map = { 'database_admin_password': 'databaseAdminPassword' } + self._redacted_field_paths = [ + ['database_admin_password'], + ] self._database_admin_password = None @property @@ -62,7 +65,9 @@ def database_admin_password(self, database_admin_password): self._database_admin_password = database_admin_password def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['database_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/launch_db_system_details.py b/src/oci/database/models/launch_db_system_details.py index a5a03bcd47..67c8630816 100644 --- a/src/oci/database/models/launch_db_system_details.py +++ b/src/oci/database/models/launch_db_system_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 from .launch_db_system_base import LaunchDbSystemBase -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -302,6 +302,9 @@ def __init__(self, **kwargs): 'license_model': 'licenseModel', 'maintenance_window_details': 'maintenanceWindowDetails' } + self._redacted_field_paths = [ + ['db_home', 'database', 'tde_wallet_password'], + ] self._compartment_id = None self._fault_domains = None self._display_name = None @@ -483,7 +486,9 @@ def maintenance_window_details(self, maintenance_window_details): self._maintenance_window_details = maintenance_window_details def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['db_home', 'database', 'tde_wallet_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/launch_standby_db_system_details.py b/src/oci/database/models/launch_standby_db_system_details.py index 1a205c38f0..90f0ed5f39 100644 --- a/src/oci/database/models/launch_standby_db_system_details.py +++ b/src/oci/database/models/launch_standby_db_system_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 from .launch_db_system_base import LaunchDbSystemBase -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -260,6 +260,9 @@ def __init__(self, **kwargs): 'db_home': 'dbHome', 'license_model': 'licenseModel' } + self._redacted_field_paths = [ + ['db_home', 'database', 'tde_wallet_password'], + ] self._compartment_id = None self._fault_domains = None self._display_name = None @@ -379,7 +382,9 @@ def license_model(self, license_model): self._license_model = license_model def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['db_home', 'database', 'tde_wallet_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/migrate_vault_key_details.py b/src/oci/database/models/migrate_vault_key_details.py index 04dbb6aa7f..e519efa45c 100644 --- a/src/oci/database/models/migrate_vault_key_details.py +++ b/src/oci/database/models/migrate_vault_key_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -57,6 +57,10 @@ def __init__(self, **kwargs): 'tde_wallet_password': 'tdeWalletPassword', 'admin_password': 'adminPassword' } + self._redacted_field_paths = [ + ['tde_wallet_password'], + ['admin_password'], + ] self._kms_key_id = None self._kms_key_version_id = None self._vault_id = None @@ -190,7 +194,10 @@ def admin_password(self, admin_password): self._admin_password = admin_password def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['tde_wallet_password']) + redact_password_field(as_dict, ['admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/pdb_conversion_to_new_database_details.py b/src/oci/database/models/pdb_conversion_to_new_database_details.py index aa521f7dfa..2e1d370f2c 100644 --- a/src/oci/database/models/pdb_conversion_to_new_database_details.py +++ b/src/oci/database/models/pdb_conversion_to_new_database_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 from .convert_to_pdb_target_base import ConvertToPdbTargetBase -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -69,6 +69,12 @@ def __init__(self, **kwargs): 'non_cdb_tde_wallet_password': 'nonCdbTdeWalletPassword', 'additional_cdb_params': 'additionalCdbParams' } + self._redacted_field_paths = [ + ['cdb_admin_password'], + ['pdb_admin_password'], + ['cdb_tde_wallet_password'], + ['non_cdb_tde_wallet_password'], + ] self._target = None self._cdb_name = None self._cdb_admin_password = None @@ -225,7 +231,12 @@ def additional_cdb_params(self, additional_cdb_params): self._additional_cdb_params = additional_cdb_params def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['cdb_admin_password']) + redact_password_field(as_dict, ['pdb_admin_password']) + redact_password_field(as_dict, ['cdb_tde_wallet_password']) + redact_password_field(as_dict, ['non_cdb_tde_wallet_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/register_exadb_vm_cluster_pkcs_details.py b/src/oci/database/models/register_exadb_vm_cluster_pkcs_details.py new file mode 100644 index 0000000000..d6bd5a5f81 --- /dev/null +++ b/src/oci/database/models/register_exadb_vm_cluster_pkcs_details.py @@ -0,0 +1,94 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class RegisterExadbVmClusterPkcsDetails(object): + """ + Details of registering PKCS11 driver. + """ + + #: A constant which can be used with the tde_key_store_type property of a RegisterExadbVmClusterPkcsDetails. + #: This constant has a value of "AZURE" + TDE_KEY_STORE_TYPE_AZURE = "AZURE" + + #: A constant which can be used with the tde_key_store_type property of a RegisterExadbVmClusterPkcsDetails. + #: This constant has a value of "OCI" + TDE_KEY_STORE_TYPE_OCI = "OCI" + + #: A constant which can be used with the tde_key_store_type property of a RegisterExadbVmClusterPkcsDetails. + #: This constant has a value of "GCP" + TDE_KEY_STORE_TYPE_GCP = "GCP" + + #: A constant which can be used with the tde_key_store_type property of a RegisterExadbVmClusterPkcsDetails. + #: This constant has a value of "AWS" + TDE_KEY_STORE_TYPE_AWS = "AWS" + + def __init__(self, **kwargs): + """ + Initializes a new RegisterExadbVmClusterPkcsDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param tde_key_store_type: + The value to assign to the tde_key_store_type property of this RegisterExadbVmClusterPkcsDetails. + Allowed values for this property are: "AZURE", "OCI", "GCP", "AWS" + :type tde_key_store_type: str + + """ + self.swagger_types = { + 'tde_key_store_type': 'str' + } + self.attribute_map = { + 'tde_key_store_type': 'tdeKeyStoreType' + } + self._tde_key_store_type = None + + @property + def tde_key_store_type(self): + """ + **[Required]** Gets the tde_key_store_type of this RegisterExadbVmClusterPkcsDetails. + TDE keystore type + + Allowed values for this property are: "AZURE", "OCI", "GCP", "AWS" + + + :return: The tde_key_store_type of this RegisterExadbVmClusterPkcsDetails. + :rtype: str + """ + return self._tde_key_store_type + + @tde_key_store_type.setter + def tde_key_store_type(self, tde_key_store_type): + """ + Sets the tde_key_store_type of this RegisterExadbVmClusterPkcsDetails. + TDE keystore type + + + :param tde_key_store_type: The tde_key_store_type of this RegisterExadbVmClusterPkcsDetails. + :type: str + """ + allowed_values = ["AZURE", "OCI", "GCP", "AWS"] + if not value_allowed_none_or_none_sentinel(tde_key_store_type, allowed_values): + raise ValueError( + f"Invalid value for `tde_key_store_type`, must be None or one of {allowed_values}" + ) + self._tde_key_store_type = tde_key_store_type + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/database/models/reinstate_data_guard_details.py b/src/oci/database/models/reinstate_data_guard_details.py index fa1cff113c..0feb615146 100644 --- a/src/oci/database/models/reinstate_data_guard_details.py +++ b/src/oci/database/models/reinstate_data_guard_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -37,6 +37,9 @@ def __init__(self, **kwargs): 'database_admin_password': 'databaseAdminPassword', 'source_database_id': 'sourceDatabaseId' } + self._redacted_field_paths = [ + ['database_admin_password'], + ] self._database_admin_password = None self._source_database_id = None @@ -97,7 +100,9 @@ def source_database_id(self, source_database_id): self._source_database_id = source_database_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['database_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/switch_over_data_guard_details.py b/src/oci/database/models/switch_over_data_guard_details.py index 9556b251b5..8eb83c478b 100644 --- a/src/oci/database/models/switch_over_data_guard_details.py +++ b/src/oci/database/models/switch_over_data_guard_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -31,6 +31,9 @@ def __init__(self, **kwargs): self.attribute_map = { 'database_admin_password': 'databaseAdminPassword' } + self._redacted_field_paths = [ + ['database_admin_password'], + ] self._database_admin_password = None @property @@ -62,7 +65,9 @@ def database_admin_password(self, database_admin_password): self._database_admin_password = database_admin_password def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['database_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/unregister_exadb_vm_cluster_pkcs_details.py b/src/oci/database/models/unregister_exadb_vm_cluster_pkcs_details.py new file mode 100644 index 0000000000..e74a99c0a7 --- /dev/null +++ b/src/oci/database/models/unregister_exadb_vm_cluster_pkcs_details.py @@ -0,0 +1,94 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class UnregisterExadbVmClusterPkcsDetails(object): + """ + Details of unregistering PKCS11 driver. + """ + + #: A constant which can be used with the tde_key_store_type property of a UnregisterExadbVmClusterPkcsDetails. + #: This constant has a value of "AZURE" + TDE_KEY_STORE_TYPE_AZURE = "AZURE" + + #: A constant which can be used with the tde_key_store_type property of a UnregisterExadbVmClusterPkcsDetails. + #: This constant has a value of "OCI" + TDE_KEY_STORE_TYPE_OCI = "OCI" + + #: A constant which can be used with the tde_key_store_type property of a UnregisterExadbVmClusterPkcsDetails. + #: This constant has a value of "GCP" + TDE_KEY_STORE_TYPE_GCP = "GCP" + + #: A constant which can be used with the tde_key_store_type property of a UnregisterExadbVmClusterPkcsDetails. + #: This constant has a value of "AWS" + TDE_KEY_STORE_TYPE_AWS = "AWS" + + def __init__(self, **kwargs): + """ + Initializes a new UnregisterExadbVmClusterPkcsDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param tde_key_store_type: + The value to assign to the tde_key_store_type property of this UnregisterExadbVmClusterPkcsDetails. + Allowed values for this property are: "AZURE", "OCI", "GCP", "AWS" + :type tde_key_store_type: str + + """ + self.swagger_types = { + 'tde_key_store_type': 'str' + } + self.attribute_map = { + 'tde_key_store_type': 'tdeKeyStoreType' + } + self._tde_key_store_type = None + + @property + def tde_key_store_type(self): + """ + **[Required]** Gets the tde_key_store_type of this UnregisterExadbVmClusterPkcsDetails. + TDE keystore type + + Allowed values for this property are: "AZURE", "OCI", "GCP", "AWS" + + + :return: The tde_key_store_type of this UnregisterExadbVmClusterPkcsDetails. + :rtype: str + """ + return self._tde_key_store_type + + @tde_key_store_type.setter + def tde_key_store_type(self, tde_key_store_type): + """ + Sets the tde_key_store_type of this UnregisterExadbVmClusterPkcsDetails. + TDE keystore type + + + :param tde_key_store_type: The tde_key_store_type of this UnregisterExadbVmClusterPkcsDetails. + :type: str + """ + allowed_values = ["AZURE", "OCI", "GCP", "AWS"] + if not value_allowed_none_or_none_sentinel(tde_key_store_type, allowed_values): + raise ValueError( + f"Invalid value for `tde_key_store_type`, must be None or one of {allowed_values}" + ) + self._tde_key_store_type = tde_key_store_type + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/database/models/update.py b/src/oci/database/models/update.py index 51c0bc7393..b075101a80 100644 --- a/src/oci/database/models/update.py +++ b/src/oci/database/models/update.py @@ -47,6 +47,46 @@ class Update(object): #: This constant has a value of "ROLLBACK" AVAILABLE_ACTIONS_ROLLBACK = "ROLLBACK" + #: A constant which can be used with the last_update_mode property of a Update. + #: This constant has a value of "ONLINE_HIGHCVSS" + LAST_UPDATE_MODE_ONLINE_HIGHCVSS = "ONLINE_HIGHCVSS" + + #: A constant which can be used with the last_update_mode property of a Update. + #: This constant has a value of "ONLINE_ALLCVSS" + LAST_UPDATE_MODE_ONLINE_ALLCVSS = "ONLINE_ALLCVSS" + + #: A constant which can be used with the last_update_mode property of a Update. + #: This constant has a value of "ONLINE_ALL_UPDATES" + LAST_UPDATE_MODE_ONLINE_ALL_UPDATES = "ONLINE_ALL_UPDATES" + + #: A constant which can be used with the last_update_mode property of a Update. + #: This constant has a value of "PENDING_UPDATES" + LAST_UPDATE_MODE_PENDING_UPDATES = "PENDING_UPDATES" + + #: A constant which can be used with the last_update_mode property of a Update. + #: This constant has a value of "FULL_UPDATE" + LAST_UPDATE_MODE_FULL_UPDATE = "FULL_UPDATE" + + #: A constant which can be used with the available_update_modes property of a Update. + #: This constant has a value of "ONLINE_HIGHCVSS" + AVAILABLE_UPDATE_MODES_ONLINE_HIGHCVSS = "ONLINE_HIGHCVSS" + + #: A constant which can be used with the available_update_modes property of a Update. + #: This constant has a value of "ONLINE_ALLCVSS" + AVAILABLE_UPDATE_MODES_ONLINE_ALLCVSS = "ONLINE_ALLCVSS" + + #: A constant which can be used with the available_update_modes property of a Update. + #: This constant has a value of "ONLINE_ALL_UPDATES" + AVAILABLE_UPDATE_MODES_ONLINE_ALL_UPDATES = "ONLINE_ALL_UPDATES" + + #: A constant which can be used with the available_update_modes property of a Update. + #: This constant has a value of "PENDING_UPDATES" + AVAILABLE_UPDATE_MODES_PENDING_UPDATES = "PENDING_UPDATES" + + #: A constant which can be used with the available_update_modes property of a Update. + #: This constant has a value of "FULL_UPDATE" + AVAILABLE_UPDATE_MODES_FULL_UPDATE = "FULL_UPDATE" + #: A constant which can be used with the update_type property of a Update. #: This constant has a value of "GI_UPGRADE" UPDATE_TYPE_GI_UPGRADE = "GI_UPGRADE" @@ -100,6 +140,22 @@ def __init__(self, **kwargs): Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type available_actions: list[str] + :param last_update_mode: + The value to assign to the last_update_mode property of this Update. + Allowed values for this property are: "ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES", "FULL_UPDATE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type last_update_mode: str + + :param available_update_modes: + The value to assign to the available_update_modes property of this Update. + Allowed values for items in this list are: "ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES", "FULL_UPDATE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type available_update_modes: list[str] + + :param oracle_linux_version: + The value to assign to the oracle_linux_version property of this Update. + :type oracle_linux_version: str + :param update_type: The value to assign to the update_type property of this Update. Allowed values for this property are: "GI_UPGRADE", "GI_PATCH", "OS_UPDATE", 'UNKNOWN_ENUM_VALUE'. @@ -130,6 +186,9 @@ def __init__(self, **kwargs): 'description': 'str', 'last_action': 'str', 'available_actions': 'list[str]', + 'last_update_mode': 'str', + 'available_update_modes': 'list[str]', + 'oracle_linux_version': 'str', 'update_type': 'str', 'lifecycle_details': 'str', 'lifecycle_state': 'str', @@ -141,6 +200,9 @@ def __init__(self, **kwargs): 'description': 'description', 'last_action': 'lastAction', 'available_actions': 'availableActions', + 'last_update_mode': 'lastUpdateMode', + 'available_update_modes': 'availableUpdateModes', + 'oracle_linux_version': 'oracleLinuxVersion', 'update_type': 'updateType', 'lifecycle_details': 'lifecycleDetails', 'lifecycle_state': 'lifecycleState', @@ -151,6 +213,9 @@ def __init__(self, **kwargs): self._description = None self._last_action = None self._available_actions = None + self._last_update_mode = None + self._available_update_modes = None + self._oracle_linux_version = None self._update_type = None self._lifecycle_details = None self._lifecycle_state = None @@ -269,6 +334,90 @@ def available_actions(self, available_actions): available_actions[:] = ['UNKNOWN_ENUM_VALUE' if not value_allowed_none_or_none_sentinel(x, allowed_values) else x for x in available_actions] self._available_actions = available_actions + @property + def last_update_mode(self): + """ + Gets the last_update_mode of this Update. + The previous update mode performed (only valid for OS Updates). + + Allowed values for this property are: "ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES", "FULL_UPDATE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The last_update_mode of this Update. + :rtype: str + """ + return self._last_update_mode + + @last_update_mode.setter + def last_update_mode(self, last_update_mode): + """ + Sets the last_update_mode of this Update. + The previous update mode performed (only valid for OS Updates). + + + :param last_update_mode: The last_update_mode of this Update. + :type: str + """ + allowed_values = ["ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES", "FULL_UPDATE"] + if not value_allowed_none_or_none_sentinel(last_update_mode, allowed_values): + last_update_mode = 'UNKNOWN_ENUM_VALUE' + self._last_update_mode = last_update_mode + + @property + def available_update_modes(self): + """ + Gets the available_update_modes of this Update. + The possible update options available (only valid for OS Update). + + Allowed values for items in this list are: "ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES", "FULL_UPDATE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The available_update_modes of this Update. + :rtype: list[str] + """ + return self._available_update_modes + + @available_update_modes.setter + def available_update_modes(self, available_update_modes): + """ + Sets the available_update_modes of this Update. + The possible update options available (only valid for OS Update). + + + :param available_update_modes: The available_update_modes of this Update. + :type: list[str] + """ + allowed_values = ["ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES", "FULL_UPDATE"] + if available_update_modes: + available_update_modes[:] = ['UNKNOWN_ENUM_VALUE' if not value_allowed_none_or_none_sentinel(x, allowed_values) else x for x in available_update_modes] + self._available_update_modes = available_update_modes + + @property + def oracle_linux_version(self): + """ + Gets the oracle_linux_version of this Update. + Oracle Linux version for the respective Exadata Image. + + + :return: The oracle_linux_version of this Update. + :rtype: str + """ + return self._oracle_linux_version + + @oracle_linux_version.setter + def oracle_linux_version(self, oracle_linux_version): + """ + Sets the oracle_linux_version of this Update. + Oracle Linux version for the respective Exadata Image. + + + :param oracle_linux_version: The oracle_linux_version of this Update. + :type: str + """ + self._oracle_linux_version = oracle_linux_version + @property def update_type(self): """ diff --git a/src/oci/database/models/update_basecc_vm_cluster_details.py b/src/oci/database/models/update_basecc_vm_cluster_details.py new file mode 100644 index 0000000000..406dd00947 --- /dev/null +++ b/src/oci/database/models/update_basecc_vm_cluster_details.py @@ -0,0 +1,462 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class UpdateBaseccVmClusterDetails(object): + """ + Details for updating the BaseDB-C@C VM cluster. Applies to Base Database Service on Cloud@Customer instances only. + """ + + #: A constant which can be used with the license_model property of a UpdateBaseccVmClusterDetails. + #: This constant has a value of "LICENSE_INCLUDED" + LICENSE_MODEL_LICENSE_INCLUDED = "LICENSE_INCLUDED" + + #: A constant which can be used with the license_model property of a UpdateBaseccVmClusterDetails. + #: This constant has a value of "BRING_YOUR_OWN_LICENSE" + LICENSE_MODEL_BRING_YOUR_OWN_LICENSE = "BRING_YOUR_OWN_LICENSE" + + def __init__(self, **kwargs): + """ + Initializes a new UpdateBaseccVmClusterDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param cpu_core_count: + The value to assign to the cpu_core_count property of this UpdateBaseccVmClusterDetails. + :type cpu_core_count: int + + :param memory_size_in_gbs: + The value to assign to the memory_size_in_gbs property of this UpdateBaseccVmClusterDetails. + :type memory_size_in_gbs: int + + :param data_storage_size_in_gbs: + The value to assign to the data_storage_size_in_gbs property of this UpdateBaseccVmClusterDetails. + :type data_storage_size_in_gbs: int + + :param reco_storage_size_in_gbs: + The value to assign to the reco_storage_size_in_gbs property of this UpdateBaseccVmClusterDetails. + :type reco_storage_size_in_gbs: int + + :param license_model: + The value to assign to the license_model property of this UpdateBaseccVmClusterDetails. + Allowed values for this property are: "LICENSE_INCLUDED", "BRING_YOUR_OWN_LICENSE" + :type license_model: str + + :param ssh_public_keys: + The value to assign to the ssh_public_keys property of this UpdateBaseccVmClusterDetails. + :type ssh_public_keys: list[str] + + :param display_name: + The value to assign to the display_name property of this UpdateBaseccVmClusterDetails. + :type display_name: str + + :param additional_vm_storage_size_in_gbs: + The value to assign to the additional_vm_storage_size_in_gbs property of this UpdateBaseccVmClusterDetails. + :type additional_vm_storage_size_in_gbs: int + + :param update_details: + The value to assign to the update_details property of this UpdateBaseccVmClusterDetails. + :type update_details: oci.database.models.BaseccVmClusterUpdateDetails + + :param freeform_tags: + The value to assign to the freeform_tags property of this UpdateBaseccVmClusterDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this UpdateBaseccVmClusterDetails. + :type defined_tags: dict(str, dict(str, object)) + + :param data_collection_options: + The value to assign to the data_collection_options property of this UpdateBaseccVmClusterDetails. + :type data_collection_options: oci.database.models.DataCollectionOptions + + :param cloud_automation_update_details: + The value to assign to the cloud_automation_update_details property of this UpdateBaseccVmClusterDetails. + :type cloud_automation_update_details: oci.database.models.CloudAutomationUpdateDetails + + """ + self.swagger_types = { + 'cpu_core_count': 'int', + 'memory_size_in_gbs': 'int', + 'data_storage_size_in_gbs': 'int', + 'reco_storage_size_in_gbs': 'int', + 'license_model': 'str', + 'ssh_public_keys': 'list[str]', + 'display_name': 'str', + 'additional_vm_storage_size_in_gbs': 'int', + 'update_details': 'BaseccVmClusterUpdateDetails', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'data_collection_options': 'DataCollectionOptions', + 'cloud_automation_update_details': 'CloudAutomationUpdateDetails' + } + self.attribute_map = { + 'cpu_core_count': 'cpuCoreCount', + 'memory_size_in_gbs': 'memorySizeInGBs', + 'data_storage_size_in_gbs': 'dataStorageSizeInGBs', + 'reco_storage_size_in_gbs': 'recoStorageSizeInGBs', + 'license_model': 'licenseModel', + 'ssh_public_keys': 'sshPublicKeys', + 'display_name': 'displayName', + 'additional_vm_storage_size_in_gbs': 'additionalVmStorageSizeInGBs', + 'update_details': 'updateDetails', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'data_collection_options': 'dataCollectionOptions', + 'cloud_automation_update_details': 'cloudAutomationUpdateDetails' + } + self._cpu_core_count = None + self._memory_size_in_gbs = None + self._data_storage_size_in_gbs = None + self._reco_storage_size_in_gbs = None + self._license_model = None + self._ssh_public_keys = None + self._display_name = None + self._additional_vm_storage_size_in_gbs = None + self._update_details = None + self._freeform_tags = None + self._defined_tags = None + self._data_collection_options = None + self._cloud_automation_update_details = None + + @property + def cpu_core_count(self): + """ + Gets the cpu_core_count of this UpdateBaseccVmClusterDetails. + Total CPU cores for the BaseDB C@C VM cluster. + + + :return: The cpu_core_count of this UpdateBaseccVmClusterDetails. + :rtype: int + """ + return self._cpu_core_count + + @cpu_core_count.setter + def cpu_core_count(self, cpu_core_count): + """ + Sets the cpu_core_count of this UpdateBaseccVmClusterDetails. + Total CPU cores for the BaseDB C@C VM cluster. + + + :param cpu_core_count: The cpu_core_count of this UpdateBaseccVmClusterDetails. + :type: int + """ + self._cpu_core_count = cpu_core_count + + @property + def memory_size_in_gbs(self): + """ + Gets the memory_size_in_gbs of this UpdateBaseccVmClusterDetails. + The total memory to be allocated, in GBs, for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. The minimum is 11GB for every 4 ECPU. + + + :return: The memory_size_in_gbs of this UpdateBaseccVmClusterDetails. + :rtype: int + """ + return self._memory_size_in_gbs + + @memory_size_in_gbs.setter + def memory_size_in_gbs(self, memory_size_in_gbs): + """ + Sets the memory_size_in_gbs of this UpdateBaseccVmClusterDetails. + The total memory to be allocated, in GBs, for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. The minimum is 11GB for every 4 ECPU. + + + :param memory_size_in_gbs: The memory_size_in_gbs of this UpdateBaseccVmClusterDetails. + :type: int + """ + self._memory_size_in_gbs = memory_size_in_gbs + + @property + def data_storage_size_in_gbs(self): + """ + Gets the data_storage_size_in_gbs of this UpdateBaseccVmClusterDetails. + The DATA Disk Group size in GB for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :return: The data_storage_size_in_gbs of this UpdateBaseccVmClusterDetails. + :rtype: int + """ + return self._data_storage_size_in_gbs + + @data_storage_size_in_gbs.setter + def data_storage_size_in_gbs(self, data_storage_size_in_gbs): + """ + Sets the data_storage_size_in_gbs of this UpdateBaseccVmClusterDetails. + The DATA Disk Group size in GB for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :param data_storage_size_in_gbs: The data_storage_size_in_gbs of this UpdateBaseccVmClusterDetails. + :type: int + """ + self._data_storage_size_in_gbs = data_storage_size_in_gbs + + @property + def reco_storage_size_in_gbs(self): + """ + Gets the reco_storage_size_in_gbs of this UpdateBaseccVmClusterDetails. + The RECO Disk Group size in GB for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :return: The reco_storage_size_in_gbs of this UpdateBaseccVmClusterDetails. + :rtype: int + """ + return self._reco_storage_size_in_gbs + + @reco_storage_size_in_gbs.setter + def reco_storage_size_in_gbs(self, reco_storage_size_in_gbs): + """ + Sets the reco_storage_size_in_gbs of this UpdateBaseccVmClusterDetails. + The RECO Disk Group size in GB for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :param reco_storage_size_in_gbs: The reco_storage_size_in_gbs of this UpdateBaseccVmClusterDetails. + :type: int + """ + self._reco_storage_size_in_gbs = reco_storage_size_in_gbs + + @property + def license_model(self): + """ + Gets the license_model of this UpdateBaseccVmClusterDetails. + The Oracle license model that applies to the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. The default is LICENSE_INCLUDED. + + Allowed values for this property are: "LICENSE_INCLUDED", "BRING_YOUR_OWN_LICENSE" + + + :return: The license_model of this UpdateBaseccVmClusterDetails. + :rtype: str + """ + return self._license_model + + @license_model.setter + def license_model(self, license_model): + """ + Sets the license_model of this UpdateBaseccVmClusterDetails. + The Oracle license model that applies to the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. The default is LICENSE_INCLUDED. + + + :param license_model: The license_model of this UpdateBaseccVmClusterDetails. + :type: str + """ + allowed_values = ["LICENSE_INCLUDED", "BRING_YOUR_OWN_LICENSE"] + if not value_allowed_none_or_none_sentinel(license_model, allowed_values): + raise ValueError( + f"Invalid value for `license_model`, must be None or one of {allowed_values}" + ) + self._license_model = license_model + + @property + def ssh_public_keys(self): + """ + Gets the ssh_public_keys of this UpdateBaseccVmClusterDetails. + The public key portion of one or more key pairs used for SSH access to the VMs of Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :return: The ssh_public_keys of this UpdateBaseccVmClusterDetails. + :rtype: list[str] + """ + return self._ssh_public_keys + + @ssh_public_keys.setter + def ssh_public_keys(self, ssh_public_keys): + """ + Sets the ssh_public_keys of this UpdateBaseccVmClusterDetails. + The public key portion of one or more key pairs used for SSH access to the VMs of Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :param ssh_public_keys: The ssh_public_keys of this UpdateBaseccVmClusterDetails. + :type: list[str] + """ + self._ssh_public_keys = ssh_public_keys + + @property + def display_name(self): + """ + Gets the display_name of this UpdateBaseccVmClusterDetails. + The user-friendly name for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. The name does not need to be unique. + + + :return: The display_name of this UpdateBaseccVmClusterDetails. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this UpdateBaseccVmClusterDetails. + The user-friendly name for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. The name does not need to be unique. + + + :param display_name: The display_name of this UpdateBaseccVmClusterDetails. + :type: str + """ + self._display_name = display_name + + @property + def additional_vm_storage_size_in_gbs(self): + """ + Gets the additional_vm_storage_size_in_gbs of this UpdateBaseccVmClusterDetails. + Total /u01 partition size (GB) for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :return: The additional_vm_storage_size_in_gbs of this UpdateBaseccVmClusterDetails. + :rtype: int + """ + return self._additional_vm_storage_size_in_gbs + + @additional_vm_storage_size_in_gbs.setter + def additional_vm_storage_size_in_gbs(self, additional_vm_storage_size_in_gbs): + """ + Sets the additional_vm_storage_size_in_gbs of this UpdateBaseccVmClusterDetails. + Total /u01 partition size (GB) for the Base Database Service on Cloud@Customer (BaseDB-C@C) VM cluster. + + + :param additional_vm_storage_size_in_gbs: The additional_vm_storage_size_in_gbs of this UpdateBaseccVmClusterDetails. + :type: int + """ + self._additional_vm_storage_size_in_gbs = additional_vm_storage_size_in_gbs + + @property + def update_details(self): + """ + Gets the update_details of this UpdateBaseccVmClusterDetails. + + :return: The update_details of this UpdateBaseccVmClusterDetails. + :rtype: oci.database.models.BaseccVmClusterUpdateDetails + """ + return self._update_details + + @update_details.setter + def update_details(self, update_details): + """ + Sets the update_details of this UpdateBaseccVmClusterDetails. + + :param update_details: The update_details of this UpdateBaseccVmClusterDetails. + :type: oci.database.models.BaseccVmClusterUpdateDetails + """ + self._update_details = update_details + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this UpdateBaseccVmClusterDetails. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this UpdateBaseccVmClusterDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this UpdateBaseccVmClusterDetails. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this UpdateBaseccVmClusterDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this UpdateBaseccVmClusterDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this UpdateBaseccVmClusterDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this UpdateBaseccVmClusterDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this UpdateBaseccVmClusterDetails. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def data_collection_options(self): + """ + Gets the data_collection_options of this UpdateBaseccVmClusterDetails. + + :return: The data_collection_options of this UpdateBaseccVmClusterDetails. + :rtype: oci.database.models.DataCollectionOptions + """ + return self._data_collection_options + + @data_collection_options.setter + def data_collection_options(self, data_collection_options): + """ + Sets the data_collection_options of this UpdateBaseccVmClusterDetails. + + :param data_collection_options: The data_collection_options of this UpdateBaseccVmClusterDetails. + :type: oci.database.models.DataCollectionOptions + """ + self._data_collection_options = data_collection_options + + @property + def cloud_automation_update_details(self): + """ + Gets the cloud_automation_update_details of this UpdateBaseccVmClusterDetails. + + :return: The cloud_automation_update_details of this UpdateBaseccVmClusterDetails. + :rtype: oci.database.models.CloudAutomationUpdateDetails + """ + return self._cloud_automation_update_details + + @cloud_automation_update_details.setter + def cloud_automation_update_details(self, cloud_automation_update_details): + """ + Sets the cloud_automation_update_details of this UpdateBaseccVmClusterDetails. + + :param cloud_automation_update_details: The cloud_automation_update_details of this UpdateBaseccVmClusterDetails. + :type: oci.database.models.CloudAutomationUpdateDetails + """ + self._cloud_automation_update_details = cloud_automation_update_details + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/database/models/update_data_guard_details.py b/src/oci/database/models/update_data_guard_details.py index f6e7af6415..e089719adf 100644 --- a/src/oci/database/models/update_data_guard_details.py +++ b/src/oci/database/models/update_data_guard_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -75,6 +75,9 @@ def __init__(self, **kwargs): 'transport_type': 'transportType', 'is_active_data_guard_enabled': 'isActiveDataGuardEnabled' } + self._redacted_field_paths = [ + ['database_admin_password'], + ] self._database_admin_password = None self._protection_mode = None self._transport_type = None @@ -227,7 +230,9 @@ def is_active_data_guard_enabled(self, is_active_data_guard_enabled): self._is_active_data_guard_enabled = is_active_data_guard_enabled def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['database_admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/update_database_details.py b/src/oci/database/models/update_database_details.py index f859ad7fdb..8ef2bfb047 100644 --- a/src/oci/database/models/update_database_details.py +++ b/src/oci/database/models/update_database_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -87,6 +87,11 @@ def __init__(self, **kwargs): 'managed_software_update_details': 'managedSoftwareUpdateDetails', 'patch_options': 'patchOptions' } + self._redacted_field_paths = [ + ['new_admin_password'], + ['old_tde_wallet_password'], + ['new_tde_wallet_password'], + ] self._db_backup_config = None self._db_home_id = None self._new_admin_password = None @@ -343,7 +348,11 @@ def patch_options(self, patch_options): self._patch_options = patch_options def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['new_admin_password']) + redact_password_field(as_dict, ['old_tde_wallet_password']) + redact_password_field(as_dict, ['new_tde_wallet_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/update_details.py b/src/oci/database/models/update_details.py index ba746750f7..e2229abd02 100644 --- a/src/oci/database/models/update_details.py +++ b/src/oci/database/models/update_details.py @@ -31,6 +31,26 @@ class UpdateDetails(object): #: This constant has a value of "ROLLBACK" UPDATE_ACTION_ROLLBACK = "ROLLBACK" + #: A constant which can be used with the update_mode property of a UpdateDetails. + #: This constant has a value of "ONLINE_HIGHCVSS" + UPDATE_MODE_ONLINE_HIGHCVSS = "ONLINE_HIGHCVSS" + + #: A constant which can be used with the update_mode property of a UpdateDetails. + #: This constant has a value of "ONLINE_ALLCVSS" + UPDATE_MODE_ONLINE_ALLCVSS = "ONLINE_ALLCVSS" + + #: A constant which can be used with the update_mode property of a UpdateDetails. + #: This constant has a value of "ONLINE_ALL_UPDATES" + UPDATE_MODE_ONLINE_ALL_UPDATES = "ONLINE_ALL_UPDATES" + + #: A constant which can be used with the update_mode property of a UpdateDetails. + #: This constant has a value of "PENDING_UPDATES" + UPDATE_MODE_PENDING_UPDATES = "PENDING_UPDATES" + + #: A constant which can be used with the update_mode property of a UpdateDetails. + #: This constant has a value of "FULL_UPDATE" + UPDATE_MODE_FULL_UPDATE = "FULL_UPDATE" + def __init__(self, **kwargs): """ Initializes a new UpdateDetails object with values from keyword arguments. @@ -45,6 +65,11 @@ def __init__(self, **kwargs): Allowed values for this property are: "ROLLING_APPLY", "NON_ROLLING_APPLY", "PRECHECK", "ROLLBACK" :type update_action: str + :param update_mode: + The value to assign to the update_mode property of this UpdateDetails. + Allowed values for this property are: "ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES", "FULL_UPDATE" + :type update_mode: str + :param gi_software_image_id: The value to assign to the gi_software_image_id property of this UpdateDetails. :type gi_software_image_id: str @@ -53,15 +78,18 @@ def __init__(self, **kwargs): self.swagger_types = { 'update_id': 'str', 'update_action': 'str', + 'update_mode': 'str', 'gi_software_image_id': 'str' } self.attribute_map = { 'update_id': 'updateId', 'update_action': 'updateAction', + 'update_mode': 'updateMode', 'gi_software_image_id': 'giSoftwareImageId' } self._update_id = None self._update_action = None + self._update_mode = None self._gi_software_image_id = None @property @@ -123,6 +151,37 @@ def update_action(self, update_action): ) self._update_action = update_action + @property + def update_mode(self): + """ + Gets the update_mode of this UpdateDetails. + The update mode to perform for OS Update. + + Allowed values for this property are: "ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES", "FULL_UPDATE" + + + :return: The update_mode of this UpdateDetails. + :rtype: str + """ + return self._update_mode + + @update_mode.setter + def update_mode(self, update_mode): + """ + Sets the update_mode of this UpdateDetails. + The update mode to perform for OS Update. + + + :param update_mode: The update_mode of this UpdateDetails. + :type: str + """ + allowed_values = ["ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES", "FULL_UPDATE"] + if not value_allowed_none_or_none_sentinel(update_mode, allowed_values): + raise ValueError( + f"Invalid value for `update_mode`, must be None or one of {allowed_values}" + ) + self._update_mode = update_mode + @property def gi_software_image_id(self): """ diff --git a/src/oci/database/models/update_history_entry.py b/src/oci/database/models/update_history_entry.py index a2d167a30d..74b96e6b0a 100644 --- a/src/oci/database/models/update_history_entry.py +++ b/src/oci/database/models/update_history_entry.py @@ -31,6 +31,34 @@ class UpdateHistoryEntry(object): #: This constant has a value of "ROLLBACK" UPDATE_ACTION_ROLLBACK = "ROLLBACK" + #: A constant which can be used with the update_mode property of a UpdateHistoryEntry. + #: This constant has a value of "ONLINE_HIGHCVSS" + UPDATE_MODE_ONLINE_HIGHCVSS = "ONLINE_HIGHCVSS" + + #: A constant which can be used with the update_mode property of a UpdateHistoryEntry. + #: This constant has a value of "ONLINE_ALLCVSS" + UPDATE_MODE_ONLINE_ALLCVSS = "ONLINE_ALLCVSS" + + #: A constant which can be used with the update_mode property of a UpdateHistoryEntry. + #: This constant has a value of "ONLINE_ALL_UPDATES" + UPDATE_MODE_ONLINE_ALL_UPDATES = "ONLINE_ALL_UPDATES" + + #: A constant which can be used with the update_mode property of a UpdateHistoryEntry. + #: This constant has a value of "PENDING_UPDATES_HIGHCVSS" + UPDATE_MODE_PENDING_UPDATES_HIGHCVSS = "PENDING_UPDATES_HIGHCVSS" + + #: A constant which can be used with the update_mode property of a UpdateHistoryEntry. + #: This constant has a value of "PENDING_UPDATES_ALLCVSS" + UPDATE_MODE_PENDING_UPDATES_ALLCVSS = "PENDING_UPDATES_ALLCVSS" + + #: A constant which can be used with the update_mode property of a UpdateHistoryEntry. + #: This constant has a value of "PENDING_ALL_UPDATES" + UPDATE_MODE_PENDING_ALL_UPDATES = "PENDING_ALL_UPDATES" + + #: A constant which can be used with the update_mode property of a UpdateHistoryEntry. + #: This constant has a value of "FULL_UPDATE" + UPDATE_MODE_FULL_UPDATE = "FULL_UPDATE" + #: A constant which can be used with the update_type property of a UpdateHistoryEntry. #: This constant has a value of "GI_UPGRADE" UPDATE_TYPE_GI_UPGRADE = "GI_UPGRADE" @@ -74,6 +102,12 @@ def __init__(self, **kwargs): Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type update_action: str + :param update_mode: + The value to assign to the update_mode property of this UpdateHistoryEntry. + Allowed values for this property are: "ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES_HIGHCVSS", "PENDING_UPDATES_ALLCVSS", "PENDING_ALL_UPDATES", "FULL_UPDATE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type update_mode: str + :param update_type: The value to assign to the update_type property of this UpdateHistoryEntry. Allowed values for this property are: "GI_UPGRADE", "GI_PATCH", "OS_UPDATE", 'UNKNOWN_ENUM_VALUE'. @@ -103,6 +137,7 @@ def __init__(self, **kwargs): 'id': 'str', 'update_id': 'str', 'update_action': 'str', + 'update_mode': 'str', 'update_type': 'str', 'lifecycle_state': 'str', 'lifecycle_details': 'str', @@ -113,6 +148,7 @@ def __init__(self, **kwargs): 'id': 'id', 'update_id': 'updateId', 'update_action': 'updateAction', + 'update_mode': 'updateMode', 'update_type': 'updateType', 'lifecycle_state': 'lifecycleState', 'lifecycle_details': 'lifecycleDetails', @@ -122,6 +158,7 @@ def __init__(self, **kwargs): self._id = None self._update_id = None self._update_action = None + self._update_mode = None self._update_type = None self._lifecycle_state = None self._lifecycle_details = None @@ -214,6 +251,36 @@ def update_action(self, update_action): update_action = 'UNKNOWN_ENUM_VALUE' self._update_action = update_action + @property + def update_mode(self): + """ + Gets the update_mode of this UpdateHistoryEntry. + The OS update mode performed using this maintenance update. + + Allowed values for this property are: "ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES_HIGHCVSS", "PENDING_UPDATES_ALLCVSS", "PENDING_ALL_UPDATES", "FULL_UPDATE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The update_mode of this UpdateHistoryEntry. + :rtype: str + """ + return self._update_mode + + @update_mode.setter + def update_mode(self, update_mode): + """ + Sets the update_mode of this UpdateHistoryEntry. + The OS update mode performed using this maintenance update. + + + :param update_mode: The update_mode of this UpdateHistoryEntry. + :type: str + """ + allowed_values = ["ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES_HIGHCVSS", "PENDING_UPDATES_ALLCVSS", "PENDING_ALL_UPDATES", "FULL_UPDATE"] + if not value_allowed_none_or_none_sentinel(update_mode, allowed_values): + update_mode = 'UNKNOWN_ENUM_VALUE' + self._update_mode = update_mode + @property def update_type(self): """ diff --git a/src/oci/database/models/update_history_entry_summary.py b/src/oci/database/models/update_history_entry_summary.py index 72e3d09c48..dd0a6e7091 100644 --- a/src/oci/database/models/update_history_entry_summary.py +++ b/src/oci/database/models/update_history_entry_summary.py @@ -31,6 +31,34 @@ class UpdateHistoryEntrySummary(object): #: This constant has a value of "ROLLBACK" UPDATE_ACTION_ROLLBACK = "ROLLBACK" + #: A constant which can be used with the update_mode property of a UpdateHistoryEntrySummary. + #: This constant has a value of "ONLINE_HIGHCVSS" + UPDATE_MODE_ONLINE_HIGHCVSS = "ONLINE_HIGHCVSS" + + #: A constant which can be used with the update_mode property of a UpdateHistoryEntrySummary. + #: This constant has a value of "ONLINE_ALLCVSS" + UPDATE_MODE_ONLINE_ALLCVSS = "ONLINE_ALLCVSS" + + #: A constant which can be used with the update_mode property of a UpdateHistoryEntrySummary. + #: This constant has a value of "ONLINE_ALL_UPDATES" + UPDATE_MODE_ONLINE_ALL_UPDATES = "ONLINE_ALL_UPDATES" + + #: A constant which can be used with the update_mode property of a UpdateHistoryEntrySummary. + #: This constant has a value of "PENDING_UPDATES_HIGHCVSS" + UPDATE_MODE_PENDING_UPDATES_HIGHCVSS = "PENDING_UPDATES_HIGHCVSS" + + #: A constant which can be used with the update_mode property of a UpdateHistoryEntrySummary. + #: This constant has a value of "PENDING_UPDATES_ALLCVSS" + UPDATE_MODE_PENDING_UPDATES_ALLCVSS = "PENDING_UPDATES_ALLCVSS" + + #: A constant which can be used with the update_mode property of a UpdateHistoryEntrySummary. + #: This constant has a value of "PENDING_ALL_UPDATES" + UPDATE_MODE_PENDING_ALL_UPDATES = "PENDING_ALL_UPDATES" + + #: A constant which can be used with the update_mode property of a UpdateHistoryEntrySummary. + #: This constant has a value of "FULL_UPDATE" + UPDATE_MODE_FULL_UPDATE = "FULL_UPDATE" + #: A constant which can be used with the update_type property of a UpdateHistoryEntrySummary. #: This constant has a value of "GI_UPGRADE" UPDATE_TYPE_GI_UPGRADE = "GI_UPGRADE" @@ -74,6 +102,12 @@ def __init__(self, **kwargs): Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type update_action: str + :param update_mode: + The value to assign to the update_mode property of this UpdateHistoryEntrySummary. + Allowed values for this property are: "ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES_HIGHCVSS", "PENDING_UPDATES_ALLCVSS", "PENDING_ALL_UPDATES", "FULL_UPDATE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type update_mode: str + :param update_type: The value to assign to the update_type property of this UpdateHistoryEntrySummary. Allowed values for this property are: "GI_UPGRADE", "GI_PATCH", "OS_UPDATE", 'UNKNOWN_ENUM_VALUE'. @@ -103,6 +137,7 @@ def __init__(self, **kwargs): 'id': 'str', 'update_id': 'str', 'update_action': 'str', + 'update_mode': 'str', 'update_type': 'str', 'lifecycle_state': 'str', 'lifecycle_details': 'str', @@ -113,6 +148,7 @@ def __init__(self, **kwargs): 'id': 'id', 'update_id': 'updateId', 'update_action': 'updateAction', + 'update_mode': 'updateMode', 'update_type': 'updateType', 'lifecycle_state': 'lifecycleState', 'lifecycle_details': 'lifecycleDetails', @@ -122,6 +158,7 @@ def __init__(self, **kwargs): self._id = None self._update_id = None self._update_action = None + self._update_mode = None self._update_type = None self._lifecycle_state = None self._lifecycle_details = None @@ -214,6 +251,36 @@ def update_action(self, update_action): update_action = 'UNKNOWN_ENUM_VALUE' self._update_action = update_action + @property + def update_mode(self): + """ + Gets the update_mode of this UpdateHistoryEntrySummary. + The OS update mode performed using this maintenance update. + + Allowed values for this property are: "ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES_HIGHCVSS", "PENDING_UPDATES_ALLCVSS", "PENDING_ALL_UPDATES", "FULL_UPDATE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The update_mode of this UpdateHistoryEntrySummary. + :rtype: str + """ + return self._update_mode + + @update_mode.setter + def update_mode(self, update_mode): + """ + Sets the update_mode of this UpdateHistoryEntrySummary. + The OS update mode performed using this maintenance update. + + + :param update_mode: The update_mode of this UpdateHistoryEntrySummary. + :type: str + """ + allowed_values = ["ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES_HIGHCVSS", "PENDING_UPDATES_ALLCVSS", "PENDING_ALL_UPDATES", "FULL_UPDATE"] + if not value_allowed_none_or_none_sentinel(update_mode, allowed_values): + update_mode = 'UNKNOWN_ENUM_VALUE' + self._update_mode = update_mode + @property def update_type(self): """ diff --git a/src/oci/database/models/update_summary.py b/src/oci/database/models/update_summary.py index 76a4e3e631..9e41a1f167 100644 --- a/src/oci/database/models/update_summary.py +++ b/src/oci/database/models/update_summary.py @@ -53,6 +53,46 @@ class UpdateSummary(object): #: This constant has a value of "ROLLBACK" AVAILABLE_ACTIONS_ROLLBACK = "ROLLBACK" + #: A constant which can be used with the last_update_mode property of a UpdateSummary. + #: This constant has a value of "ONLINE_HIGHCVSS" + LAST_UPDATE_MODE_ONLINE_HIGHCVSS = "ONLINE_HIGHCVSS" + + #: A constant which can be used with the last_update_mode property of a UpdateSummary. + #: This constant has a value of "ONLINE_ALLCVSS" + LAST_UPDATE_MODE_ONLINE_ALLCVSS = "ONLINE_ALLCVSS" + + #: A constant which can be used with the last_update_mode property of a UpdateSummary. + #: This constant has a value of "ONLINE_ALL_UPDATES" + LAST_UPDATE_MODE_ONLINE_ALL_UPDATES = "ONLINE_ALL_UPDATES" + + #: A constant which can be used with the last_update_mode property of a UpdateSummary. + #: This constant has a value of "PENDING_UPDATES" + LAST_UPDATE_MODE_PENDING_UPDATES = "PENDING_UPDATES" + + #: A constant which can be used with the last_update_mode property of a UpdateSummary. + #: This constant has a value of "FULL_UPDATE" + LAST_UPDATE_MODE_FULL_UPDATE = "FULL_UPDATE" + + #: A constant which can be used with the available_update_modes property of a UpdateSummary. + #: This constant has a value of "ONLINE_HIGHCVSS" + AVAILABLE_UPDATE_MODES_ONLINE_HIGHCVSS = "ONLINE_HIGHCVSS" + + #: A constant which can be used with the available_update_modes property of a UpdateSummary. + #: This constant has a value of "ONLINE_ALLCVSS" + AVAILABLE_UPDATE_MODES_ONLINE_ALLCVSS = "ONLINE_ALLCVSS" + + #: A constant which can be used with the available_update_modes property of a UpdateSummary. + #: This constant has a value of "ONLINE_ALL_UPDATES" + AVAILABLE_UPDATE_MODES_ONLINE_ALL_UPDATES = "ONLINE_ALL_UPDATES" + + #: A constant which can be used with the available_update_modes property of a UpdateSummary. + #: This constant has a value of "PENDING_UPDATES" + AVAILABLE_UPDATE_MODES_PENDING_UPDATES = "PENDING_UPDATES" + + #: A constant which can be used with the available_update_modes property of a UpdateSummary. + #: This constant has a value of "FULL_UPDATE" + AVAILABLE_UPDATE_MODES_FULL_UPDATE = "FULL_UPDATE" + #: A constant which can be used with the update_type property of a UpdateSummary. #: This constant has a value of "GI_UPGRADE" UPDATE_TYPE_GI_UPGRADE = "GI_UPGRADE" @@ -106,6 +146,22 @@ def __init__(self, **kwargs): Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type available_actions: list[str] + :param last_update_mode: + The value to assign to the last_update_mode property of this UpdateSummary. + Allowed values for this property are: "ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES", "FULL_UPDATE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type last_update_mode: str + + :param available_update_modes: + The value to assign to the available_update_modes property of this UpdateSummary. + Allowed values for items in this list are: "ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES", "FULL_UPDATE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type available_update_modes: list[str] + + :param oracle_linux_version: + The value to assign to the oracle_linux_version property of this UpdateSummary. + :type oracle_linux_version: str + :param update_type: The value to assign to the update_type property of this UpdateSummary. Allowed values for this property are: "GI_UPGRADE", "GI_PATCH", "OS_UPDATE", 'UNKNOWN_ENUM_VALUE'. @@ -136,6 +192,9 @@ def __init__(self, **kwargs): 'description': 'str', 'last_action': 'str', 'available_actions': 'list[str]', + 'last_update_mode': 'str', + 'available_update_modes': 'list[str]', + 'oracle_linux_version': 'str', 'update_type': 'str', 'lifecycle_details': 'str', 'lifecycle_state': 'str', @@ -147,6 +206,9 @@ def __init__(self, **kwargs): 'description': 'description', 'last_action': 'lastAction', 'available_actions': 'availableActions', + 'last_update_mode': 'lastUpdateMode', + 'available_update_modes': 'availableUpdateModes', + 'oracle_linux_version': 'oracleLinuxVersion', 'update_type': 'updateType', 'lifecycle_details': 'lifecycleDetails', 'lifecycle_state': 'lifecycleState', @@ -157,6 +219,9 @@ def __init__(self, **kwargs): self._description = None self._last_action = None self._available_actions = None + self._last_update_mode = None + self._available_update_modes = None + self._oracle_linux_version = None self._update_type = None self._lifecycle_details = None self._lifecycle_state = None @@ -275,6 +340,90 @@ def available_actions(self, available_actions): available_actions[:] = ['UNKNOWN_ENUM_VALUE' if not value_allowed_none_or_none_sentinel(x, allowed_values) else x for x in available_actions] self._available_actions = available_actions + @property + def last_update_mode(self): + """ + Gets the last_update_mode of this UpdateSummary. + The previous update mode performed (only valid for OS Updates). + + Allowed values for this property are: "ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES", "FULL_UPDATE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The last_update_mode of this UpdateSummary. + :rtype: str + """ + return self._last_update_mode + + @last_update_mode.setter + def last_update_mode(self, last_update_mode): + """ + Sets the last_update_mode of this UpdateSummary. + The previous update mode performed (only valid for OS Updates). + + + :param last_update_mode: The last_update_mode of this UpdateSummary. + :type: str + """ + allowed_values = ["ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES", "FULL_UPDATE"] + if not value_allowed_none_or_none_sentinel(last_update_mode, allowed_values): + last_update_mode = 'UNKNOWN_ENUM_VALUE' + self._last_update_mode = last_update_mode + + @property + def available_update_modes(self): + """ + Gets the available_update_modes of this UpdateSummary. + The possible update options available (only valid for OS Update). + + Allowed values for items in this list are: "ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES", "FULL_UPDATE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The available_update_modes of this UpdateSummary. + :rtype: list[str] + """ + return self._available_update_modes + + @available_update_modes.setter + def available_update_modes(self, available_update_modes): + """ + Sets the available_update_modes of this UpdateSummary. + The possible update options available (only valid for OS Update). + + + :param available_update_modes: The available_update_modes of this UpdateSummary. + :type: list[str] + """ + allowed_values = ["ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES", "FULL_UPDATE"] + if available_update_modes: + available_update_modes[:] = ['UNKNOWN_ENUM_VALUE' if not value_allowed_none_or_none_sentinel(x, allowed_values) else x for x in available_update_modes] + self._available_update_modes = available_update_modes + + @property + def oracle_linux_version(self): + """ + Gets the oracle_linux_version of this UpdateSummary. + Oracle Linux version for the respective Exadata Image. + + + :return: The oracle_linux_version of this UpdateSummary. + :rtype: str + """ + return self._oracle_linux_version + + @oracle_linux_version.setter + def oracle_linux_version(self, oracle_linux_version): + """ + Sets the oracle_linux_version of this UpdateSummary. + Oracle Linux version for the respective Exadata Image. + + + :param oracle_linux_version: The oracle_linux_version of this UpdateSummary. + :type: str + """ + self._oracle_linux_version = oracle_linux_version + @property def update_type(self): """ diff --git a/src/oci/database/models/vm_cluster.py b/src/oci/database/models/vm_cluster.py index 0635ee152f..5febcba9f4 100644 --- a/src/oci/database/models/vm_cluster.py +++ b/src/oci/database/models/vm_cluster.py @@ -154,6 +154,14 @@ def __init__(self, **kwargs): The value to assign to the sparse_storage_percentage property of this VmCluster. :type sparse_storage_percentage: int + :param live_image_version_details: + The value to assign to the live_image_version_details property of this VmCluster. + :type live_image_version_details: oci.database.models.ExadataLiveImageVersionDetails + + :param oracle_linux_version: + The value to assign to the oracle_linux_version property of this VmCluster. + :type oracle_linux_version: str + :param vm_cluster_network_id: The value to assign to the vm_cluster_network_id property of this VmCluster. :type vm_cluster_network_id: str @@ -290,6 +298,8 @@ def __init__(self, **kwargs): 'data_storage_percentage': 'int', 'reco_storage_percentage': 'int', 'sparse_storage_percentage': 'int', + 'live_image_version_details': 'ExadataLiveImageVersionDetails', + 'oracle_linux_version': 'str', 'vm_cluster_network_id': 'str', 'cpus_enabled': 'int', 'ocpus_enabled': 'float', @@ -333,6 +343,8 @@ def __init__(self, **kwargs): 'data_storage_percentage': 'dataStoragePercentage', 'reco_storage_percentage': 'recoStoragePercentage', 'sparse_storage_percentage': 'sparseStoragePercentage', + 'live_image_version_details': 'liveImageVersionDetails', + 'oracle_linux_version': 'oracleLinuxVersion', 'vm_cluster_network_id': 'vmClusterNetworkId', 'cpus_enabled': 'cpusEnabled', 'ocpus_enabled': 'ocpusEnabled', @@ -375,6 +387,8 @@ def __init__(self, **kwargs): self._data_storage_percentage = None self._reco_storage_percentage = None self._sparse_storage_percentage = None + self._live_image_version_details = None + self._oracle_linux_version = None self._vm_cluster_network_id = None self._cpus_enabled = None self._ocpus_enabled = None @@ -777,6 +791,50 @@ def sparse_storage_percentage(self, sparse_storage_percentage): """ self._sparse_storage_percentage = sparse_storage_percentage + @property + def live_image_version_details(self): + """ + Gets the live_image_version_details of this VmCluster. + + :return: The live_image_version_details of this VmCluster. + :rtype: oci.database.models.ExadataLiveImageVersionDetails + """ + return self._live_image_version_details + + @live_image_version_details.setter + def live_image_version_details(self, live_image_version_details): + """ + Sets the live_image_version_details of this VmCluster. + + :param live_image_version_details: The live_image_version_details of this VmCluster. + :type: oci.database.models.ExadataLiveImageVersionDetails + """ + self._live_image_version_details = live_image_version_details + + @property + def oracle_linux_version(self): + """ + Gets the oracle_linux_version of this VmCluster. + Oracle Linux version for the respective Exadata Image. + + + :return: The oracle_linux_version of this VmCluster. + :rtype: str + """ + return self._oracle_linux_version + + @oracle_linux_version.setter + def oracle_linux_version(self, oracle_linux_version): + """ + Sets the oracle_linux_version of this VmCluster. + Oracle Linux version for the respective Exadata Image. + + + :param oracle_linux_version: The oracle_linux_version of this VmCluster. + :type: str + """ + self._oracle_linux_version = oracle_linux_version + @property def vm_cluster_network_id(self): """ diff --git a/src/oci/database/models/vm_cluster_summary.py b/src/oci/database/models/vm_cluster_summary.py index 25cec1e266..22e5c46bfe 100644 --- a/src/oci/database/models/vm_cluster_summary.py +++ b/src/oci/database/models/vm_cluster_summary.py @@ -154,6 +154,14 @@ def __init__(self, **kwargs): The value to assign to the sparse_storage_percentage property of this VmClusterSummary. :type sparse_storage_percentage: int + :param live_image_version_details: + The value to assign to the live_image_version_details property of this VmClusterSummary. + :type live_image_version_details: oci.database.models.ExadataLiveImageVersionDetails + + :param oracle_linux_version: + The value to assign to the oracle_linux_version property of this VmClusterSummary. + :type oracle_linux_version: str + :param vm_cluster_network_id: The value to assign to the vm_cluster_network_id property of this VmClusterSummary. :type vm_cluster_network_id: str @@ -290,6 +298,8 @@ def __init__(self, **kwargs): 'data_storage_percentage': 'int', 'reco_storage_percentage': 'int', 'sparse_storage_percentage': 'int', + 'live_image_version_details': 'ExadataLiveImageVersionDetails', + 'oracle_linux_version': 'str', 'vm_cluster_network_id': 'str', 'cpus_enabled': 'int', 'ocpus_enabled': 'float', @@ -333,6 +343,8 @@ def __init__(self, **kwargs): 'data_storage_percentage': 'dataStoragePercentage', 'reco_storage_percentage': 'recoStoragePercentage', 'sparse_storage_percentage': 'sparseStoragePercentage', + 'live_image_version_details': 'liveImageVersionDetails', + 'oracle_linux_version': 'oracleLinuxVersion', 'vm_cluster_network_id': 'vmClusterNetworkId', 'cpus_enabled': 'cpusEnabled', 'ocpus_enabled': 'ocpusEnabled', @@ -375,6 +387,8 @@ def __init__(self, **kwargs): self._data_storage_percentage = None self._reco_storage_percentage = None self._sparse_storage_percentage = None + self._live_image_version_details = None + self._oracle_linux_version = None self._vm_cluster_network_id = None self._cpus_enabled = None self._ocpus_enabled = None @@ -777,6 +791,50 @@ def sparse_storage_percentage(self, sparse_storage_percentage): """ self._sparse_storage_percentage = sparse_storage_percentage + @property + def live_image_version_details(self): + """ + Gets the live_image_version_details of this VmClusterSummary. + + :return: The live_image_version_details of this VmClusterSummary. + :rtype: oci.database.models.ExadataLiveImageVersionDetails + """ + return self._live_image_version_details + + @live_image_version_details.setter + def live_image_version_details(self, live_image_version_details): + """ + Sets the live_image_version_details of this VmClusterSummary. + + :param live_image_version_details: The live_image_version_details of this VmClusterSummary. + :type: oci.database.models.ExadataLiveImageVersionDetails + """ + self._live_image_version_details = live_image_version_details + + @property + def oracle_linux_version(self): + """ + Gets the oracle_linux_version of this VmClusterSummary. + Oracle Linux version for the respective Exadata Image. + + + :return: The oracle_linux_version of this VmClusterSummary. + :rtype: str + """ + return self._oracle_linux_version + + @oracle_linux_version.setter + def oracle_linux_version(self, oracle_linux_version): + """ + Sets the oracle_linux_version of this VmClusterSummary. + Oracle Linux version for the respective Exadata Image. + + + :param oracle_linux_version: The oracle_linux_version of this VmClusterSummary. + :type: str + """ + self._oracle_linux_version = oracle_linux_version + @property def vm_cluster_network_id(self): """ diff --git a/src/oci/database/models/vm_cluster_update.py b/src/oci/database/models/vm_cluster_update.py index d86a1e088d..b79f65bff7 100644 --- a/src/oci/database/models/vm_cluster_update.py +++ b/src/oci/database/models/vm_cluster_update.py @@ -33,6 +33,46 @@ class VmClusterUpdate(object): #: This constant has a value of "ROLLBACK" LAST_ACTION_ROLLBACK = "ROLLBACK" + #: A constant which can be used with the last_update_mode property of a VmClusterUpdate. + #: This constant has a value of "ONLINE_HIGHCVSS" + LAST_UPDATE_MODE_ONLINE_HIGHCVSS = "ONLINE_HIGHCVSS" + + #: A constant which can be used with the last_update_mode property of a VmClusterUpdate. + #: This constant has a value of "ONLINE_ALLCVSS" + LAST_UPDATE_MODE_ONLINE_ALLCVSS = "ONLINE_ALLCVSS" + + #: A constant which can be used with the last_update_mode property of a VmClusterUpdate. + #: This constant has a value of "ONLINE_ALL_UPDATES" + LAST_UPDATE_MODE_ONLINE_ALL_UPDATES = "ONLINE_ALL_UPDATES" + + #: A constant which can be used with the last_update_mode property of a VmClusterUpdate. + #: This constant has a value of "PENDING_UPDATES" + LAST_UPDATE_MODE_PENDING_UPDATES = "PENDING_UPDATES" + + #: A constant which can be used with the last_update_mode property of a VmClusterUpdate. + #: This constant has a value of "FULL_UPDATE" + LAST_UPDATE_MODE_FULL_UPDATE = "FULL_UPDATE" + + #: A constant which can be used with the available_update_modes property of a VmClusterUpdate. + #: This constant has a value of "ONLINE_HIGHCVSS" + AVAILABLE_UPDATE_MODES_ONLINE_HIGHCVSS = "ONLINE_HIGHCVSS" + + #: A constant which can be used with the available_update_modes property of a VmClusterUpdate. + #: This constant has a value of "ONLINE_ALLCVSS" + AVAILABLE_UPDATE_MODES_ONLINE_ALLCVSS = "ONLINE_ALLCVSS" + + #: A constant which can be used with the available_update_modes property of a VmClusterUpdate. + #: This constant has a value of "ONLINE_ALL_UPDATES" + AVAILABLE_UPDATE_MODES_ONLINE_ALL_UPDATES = "ONLINE_ALL_UPDATES" + + #: A constant which can be used with the available_update_modes property of a VmClusterUpdate. + #: This constant has a value of "PENDING_UPDATES" + AVAILABLE_UPDATE_MODES_PENDING_UPDATES = "PENDING_UPDATES" + + #: A constant which can be used with the available_update_modes property of a VmClusterUpdate. + #: This constant has a value of "FULL_UPDATE" + AVAILABLE_UPDATE_MODES_FULL_UPDATE = "FULL_UPDATE" + #: A constant which can be used with the available_actions property of a VmClusterUpdate. #: This constant has a value of "ROLLING_APPLY" AVAILABLE_ACTIONS_ROLLING_APPLY = "ROLLING_APPLY" @@ -92,6 +132,22 @@ def __init__(self, **kwargs): Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type last_action: str + :param last_update_mode: + The value to assign to the last_update_mode property of this VmClusterUpdate. + Allowed values for this property are: "ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES", "FULL_UPDATE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type last_update_mode: str + + :param available_update_modes: + The value to assign to the available_update_modes property of this VmClusterUpdate. + Allowed values for items in this list are: "ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES", "FULL_UPDATE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type available_update_modes: list[str] + + :param oracle_linux_version: + The value to assign to the oracle_linux_version property of this VmClusterUpdate. + :type oracle_linux_version: str + :param available_actions: The value to assign to the available_actions property of this VmClusterUpdate. Allowed values for items in this list are: "ROLLING_APPLY", "PRECHECK", "ROLLBACK", 'UNKNOWN_ENUM_VALUE'. @@ -127,6 +183,9 @@ def __init__(self, **kwargs): 'id': 'str', 'description': 'str', 'last_action': 'str', + 'last_update_mode': 'str', + 'available_update_modes': 'list[str]', + 'oracle_linux_version': 'str', 'available_actions': 'list[str]', 'update_type': 'str', 'lifecycle_details': 'str', @@ -138,6 +197,9 @@ def __init__(self, **kwargs): 'id': 'id', 'description': 'description', 'last_action': 'lastAction', + 'last_update_mode': 'lastUpdateMode', + 'available_update_modes': 'availableUpdateModes', + 'oracle_linux_version': 'oracleLinuxVersion', 'available_actions': 'availableActions', 'update_type': 'updateType', 'lifecycle_details': 'lifecycleDetails', @@ -148,6 +210,9 @@ def __init__(self, **kwargs): self._id = None self._description = None self._last_action = None + self._last_update_mode = None + self._available_update_modes = None + self._oracle_linux_version = None self._available_actions = None self._update_type = None self._lifecycle_details = None @@ -237,6 +302,90 @@ def last_action(self, last_action): last_action = 'UNKNOWN_ENUM_VALUE' self._last_action = last_action + @property + def last_update_mode(self): + """ + Gets the last_update_mode of this VmClusterUpdate. + The update mode performed most recently using this maintenance update (only valid for OS Update). + + Allowed values for this property are: "ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES", "FULL_UPDATE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The last_update_mode of this VmClusterUpdate. + :rtype: str + """ + return self._last_update_mode + + @last_update_mode.setter + def last_update_mode(self, last_update_mode): + """ + Sets the last_update_mode of this VmClusterUpdate. + The update mode performed most recently using this maintenance update (only valid for OS Update). + + + :param last_update_mode: The last_update_mode of this VmClusterUpdate. + :type: str + """ + allowed_values = ["ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES", "FULL_UPDATE"] + if not value_allowed_none_or_none_sentinel(last_update_mode, allowed_values): + last_update_mode = 'UNKNOWN_ENUM_VALUE' + self._last_update_mode = last_update_mode + + @property + def available_update_modes(self): + """ + Gets the available_update_modes of this VmClusterUpdate. + The possible update options that can be performed using this maintenance update (only valid for OS Update). + + Allowed values for items in this list are: "ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES", "FULL_UPDATE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The available_update_modes of this VmClusterUpdate. + :rtype: list[str] + """ + return self._available_update_modes + + @available_update_modes.setter + def available_update_modes(self, available_update_modes): + """ + Sets the available_update_modes of this VmClusterUpdate. + The possible update options that can be performed using this maintenance update (only valid for OS Update). + + + :param available_update_modes: The available_update_modes of this VmClusterUpdate. + :type: list[str] + """ + allowed_values = ["ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES", "FULL_UPDATE"] + if available_update_modes: + available_update_modes[:] = ['UNKNOWN_ENUM_VALUE' if not value_allowed_none_or_none_sentinel(x, allowed_values) else x for x in available_update_modes] + self._available_update_modes = available_update_modes + + @property + def oracle_linux_version(self): + """ + Gets the oracle_linux_version of this VmClusterUpdate. + Oracle Linux version for the respective Exadata Image. + + + :return: The oracle_linux_version of this VmClusterUpdate. + :rtype: str + """ + return self._oracle_linux_version + + @oracle_linux_version.setter + def oracle_linux_version(self, oracle_linux_version): + """ + Sets the oracle_linux_version of this VmClusterUpdate. + Oracle Linux version for the respective Exadata Image. + + + :param oracle_linux_version: The oracle_linux_version of this VmClusterUpdate. + :type: str + """ + self._oracle_linux_version = oracle_linux_version + @property def available_actions(self): """ diff --git a/src/oci/database/models/vm_cluster_update_details.py b/src/oci/database/models/vm_cluster_update_details.py index d4d1f4f7bb..8a6b490b58 100644 --- a/src/oci/database/models/vm_cluster_update_details.py +++ b/src/oci/database/models/vm_cluster_update_details.py @@ -15,6 +15,26 @@ class VmClusterUpdateDetails(object): Details specifying which maintenance update to apply to the VM Cluster and which action is to be performed by the maintenance update. Applies to Exadata Cloud@Customer instances only. """ + #: A constant which can be used with the update_mode property of a VmClusterUpdateDetails. + #: This constant has a value of "ONLINE_HIGHCVSS" + UPDATE_MODE_ONLINE_HIGHCVSS = "ONLINE_HIGHCVSS" + + #: A constant which can be used with the update_mode property of a VmClusterUpdateDetails. + #: This constant has a value of "ONLINE_ALLCVSS" + UPDATE_MODE_ONLINE_ALLCVSS = "ONLINE_ALLCVSS" + + #: A constant which can be used with the update_mode property of a VmClusterUpdateDetails. + #: This constant has a value of "ONLINE_ALL_UPDATES" + UPDATE_MODE_ONLINE_ALL_UPDATES = "ONLINE_ALL_UPDATES" + + #: A constant which can be used with the update_mode property of a VmClusterUpdateDetails. + #: This constant has a value of "PENDING_UPDATES" + UPDATE_MODE_PENDING_UPDATES = "PENDING_UPDATES" + + #: A constant which can be used with the update_mode property of a VmClusterUpdateDetails. + #: This constant has a value of "FULL_UPDATE" + UPDATE_MODE_FULL_UPDATE = "FULL_UPDATE" + #: A constant which can be used with the update_action property of a VmClusterUpdateDetails. #: This constant has a value of "ROLLING_APPLY" UPDATE_ACTION_ROLLING_APPLY = "ROLLING_APPLY" @@ -36,6 +56,11 @@ def __init__(self, **kwargs): The value to assign to the update_id property of this VmClusterUpdateDetails. :type update_id: str + :param update_mode: + The value to assign to the update_mode property of this VmClusterUpdateDetails. + Allowed values for this property are: "ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES", "FULL_UPDATE" + :type update_mode: str + :param update_action: The value to assign to the update_action property of this VmClusterUpdateDetails. Allowed values for this property are: "ROLLING_APPLY", "PRECHECK", "ROLLBACK" @@ -48,15 +73,18 @@ def __init__(self, **kwargs): """ self.swagger_types = { 'update_id': 'str', + 'update_mode': 'str', 'update_action': 'str', 'gi_software_image_id': 'str' } self.attribute_map = { 'update_id': 'updateId', + 'update_mode': 'updateMode', 'update_action': 'updateAction', 'gi_software_image_id': 'giSoftwareImageId' } self._update_id = None + self._update_mode = None self._update_action = None self._gi_software_image_id = None @@ -88,6 +116,37 @@ def update_id(self, update_id): """ self._update_id = update_id + @property + def update_mode(self): + """ + Gets the update_mode of this VmClusterUpdateDetails. + The update mode to perform for OS Update. + + Allowed values for this property are: "ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES", "FULL_UPDATE" + + + :return: The update_mode of this VmClusterUpdateDetails. + :rtype: str + """ + return self._update_mode + + @update_mode.setter + def update_mode(self, update_mode): + """ + Sets the update_mode of this VmClusterUpdateDetails. + The update mode to perform for OS Update. + + + :param update_mode: The update_mode of this VmClusterUpdateDetails. + :type: str + """ + allowed_values = ["ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES", "FULL_UPDATE"] + if not value_allowed_none_or_none_sentinel(update_mode, allowed_values): + raise ValueError( + f"Invalid value for `update_mode`, must be None or one of {allowed_values}" + ) + self._update_mode = update_mode + @property def update_action(self): """ diff --git a/src/oci/database/models/vm_cluster_update_history_entry.py b/src/oci/database/models/vm_cluster_update_history_entry.py index e19865db3a..8a92b81be3 100644 --- a/src/oci/database/models/vm_cluster_update_history_entry.py +++ b/src/oci/database/models/vm_cluster_update_history_entry.py @@ -27,6 +27,34 @@ class VmClusterUpdateHistoryEntry(object): #: This constant has a value of "ROLLBACK" UPDATE_ACTION_ROLLBACK = "ROLLBACK" + #: A constant which can be used with the update_mode property of a VmClusterUpdateHistoryEntry. + #: This constant has a value of "ONLINE_HIGHCVSS" + UPDATE_MODE_ONLINE_HIGHCVSS = "ONLINE_HIGHCVSS" + + #: A constant which can be used with the update_mode property of a VmClusterUpdateHistoryEntry. + #: This constant has a value of "ONLINE_ALLCVSS" + UPDATE_MODE_ONLINE_ALLCVSS = "ONLINE_ALLCVSS" + + #: A constant which can be used with the update_mode property of a VmClusterUpdateHistoryEntry. + #: This constant has a value of "ONLINE_ALL_UPDATES" + UPDATE_MODE_ONLINE_ALL_UPDATES = "ONLINE_ALL_UPDATES" + + #: A constant which can be used with the update_mode property of a VmClusterUpdateHistoryEntry. + #: This constant has a value of "PENDING_UPDATES_HIGHCVSS" + UPDATE_MODE_PENDING_UPDATES_HIGHCVSS = "PENDING_UPDATES_HIGHCVSS" + + #: A constant which can be used with the update_mode property of a VmClusterUpdateHistoryEntry. + #: This constant has a value of "PENDING_UPDATES_ALLCVSS" + UPDATE_MODE_PENDING_UPDATES_ALLCVSS = "PENDING_UPDATES_ALLCVSS" + + #: A constant which can be used with the update_mode property of a VmClusterUpdateHistoryEntry. + #: This constant has a value of "PENDING_ALL_UPDATES" + UPDATE_MODE_PENDING_ALL_UPDATES = "PENDING_ALL_UPDATES" + + #: A constant which can be used with the update_mode property of a VmClusterUpdateHistoryEntry. + #: This constant has a value of "FULL_UPDATE" + UPDATE_MODE_FULL_UPDATE = "FULL_UPDATE" + #: A constant which can be used with the update_type property of a VmClusterUpdateHistoryEntry. #: This constant has a value of "GI_UPGRADE" UPDATE_TYPE_GI_UPGRADE = "GI_UPGRADE" @@ -70,6 +98,12 @@ def __init__(self, **kwargs): Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type update_action: str + :param update_mode: + The value to assign to the update_mode property of this VmClusterUpdateHistoryEntry. + Allowed values for this property are: "ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES_HIGHCVSS", "PENDING_UPDATES_ALLCVSS", "PENDING_ALL_UPDATES", "FULL_UPDATE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type update_mode: str + :param update_type: The value to assign to the update_type property of this VmClusterUpdateHistoryEntry. Allowed values for this property are: "GI_UPGRADE", "GI_PATCH", "OS_UPDATE", 'UNKNOWN_ENUM_VALUE'. @@ -99,6 +133,7 @@ def __init__(self, **kwargs): 'id': 'str', 'update_id': 'str', 'update_action': 'str', + 'update_mode': 'str', 'update_type': 'str', 'lifecycle_state': 'str', 'lifecycle_details': 'str', @@ -109,6 +144,7 @@ def __init__(self, **kwargs): 'id': 'id', 'update_id': 'updateId', 'update_action': 'updateAction', + 'update_mode': 'updateMode', 'update_type': 'updateType', 'lifecycle_state': 'lifecycleState', 'lifecycle_details': 'lifecycleDetails', @@ -118,6 +154,7 @@ def __init__(self, **kwargs): self._id = None self._update_id = None self._update_action = None + self._update_mode = None self._update_type = None self._lifecycle_state = None self._lifecycle_details = None @@ -210,6 +247,36 @@ def update_action(self, update_action): update_action = 'UNKNOWN_ENUM_VALUE' self._update_action = update_action + @property + def update_mode(self): + """ + Gets the update_mode of this VmClusterUpdateHistoryEntry. + The OS update mode performed using this maintenance update. + + Allowed values for this property are: "ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES_HIGHCVSS", "PENDING_UPDATES_ALLCVSS", "PENDING_ALL_UPDATES", "FULL_UPDATE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The update_mode of this VmClusterUpdateHistoryEntry. + :rtype: str + """ + return self._update_mode + + @update_mode.setter + def update_mode(self, update_mode): + """ + Sets the update_mode of this VmClusterUpdateHistoryEntry. + The OS update mode performed using this maintenance update. + + + :param update_mode: The update_mode of this VmClusterUpdateHistoryEntry. + :type: str + """ + allowed_values = ["ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES_HIGHCVSS", "PENDING_UPDATES_ALLCVSS", "PENDING_ALL_UPDATES", "FULL_UPDATE"] + if not value_allowed_none_or_none_sentinel(update_mode, allowed_values): + update_mode = 'UNKNOWN_ENUM_VALUE' + self._update_mode = update_mode + @property def update_type(self): """ diff --git a/src/oci/database/models/vm_cluster_update_history_entry_summary.py b/src/oci/database/models/vm_cluster_update_history_entry_summary.py index eb43b89f8e..b29c71bb28 100644 --- a/src/oci/database/models/vm_cluster_update_history_entry_summary.py +++ b/src/oci/database/models/vm_cluster_update_history_entry_summary.py @@ -27,6 +27,34 @@ class VmClusterUpdateHistoryEntrySummary(object): #: This constant has a value of "ROLLBACK" UPDATE_ACTION_ROLLBACK = "ROLLBACK" + #: A constant which can be used with the update_mode property of a VmClusterUpdateHistoryEntrySummary. + #: This constant has a value of "ONLINE_HIGHCVSS" + UPDATE_MODE_ONLINE_HIGHCVSS = "ONLINE_HIGHCVSS" + + #: A constant which can be used with the update_mode property of a VmClusterUpdateHistoryEntrySummary. + #: This constant has a value of "ONLINE_ALLCVSS" + UPDATE_MODE_ONLINE_ALLCVSS = "ONLINE_ALLCVSS" + + #: A constant which can be used with the update_mode property of a VmClusterUpdateHistoryEntrySummary. + #: This constant has a value of "ONLINE_ALL_UPDATES" + UPDATE_MODE_ONLINE_ALL_UPDATES = "ONLINE_ALL_UPDATES" + + #: A constant which can be used with the update_mode property of a VmClusterUpdateHistoryEntrySummary. + #: This constant has a value of "PENDING_UPDATES_HIGHCVSS" + UPDATE_MODE_PENDING_UPDATES_HIGHCVSS = "PENDING_UPDATES_HIGHCVSS" + + #: A constant which can be used with the update_mode property of a VmClusterUpdateHistoryEntrySummary. + #: This constant has a value of "PENDING_UPDATES_ALLCVSS" + UPDATE_MODE_PENDING_UPDATES_ALLCVSS = "PENDING_UPDATES_ALLCVSS" + + #: A constant which can be used with the update_mode property of a VmClusterUpdateHistoryEntrySummary. + #: This constant has a value of "PENDING_ALL_UPDATES" + UPDATE_MODE_PENDING_ALL_UPDATES = "PENDING_ALL_UPDATES" + + #: A constant which can be used with the update_mode property of a VmClusterUpdateHistoryEntrySummary. + #: This constant has a value of "FULL_UPDATE" + UPDATE_MODE_FULL_UPDATE = "FULL_UPDATE" + #: A constant which can be used with the update_type property of a VmClusterUpdateHistoryEntrySummary. #: This constant has a value of "GI_UPGRADE" UPDATE_TYPE_GI_UPGRADE = "GI_UPGRADE" @@ -70,6 +98,12 @@ def __init__(self, **kwargs): Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type update_action: str + :param update_mode: + The value to assign to the update_mode property of this VmClusterUpdateHistoryEntrySummary. + Allowed values for this property are: "ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES_HIGHCVSS", "PENDING_UPDATES_ALLCVSS", "PENDING_ALL_UPDATES", "FULL_UPDATE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type update_mode: str + :param update_type: The value to assign to the update_type property of this VmClusterUpdateHistoryEntrySummary. Allowed values for this property are: "GI_UPGRADE", "GI_PATCH", "OS_UPDATE", 'UNKNOWN_ENUM_VALUE'. @@ -99,6 +133,7 @@ def __init__(self, **kwargs): 'id': 'str', 'update_id': 'str', 'update_action': 'str', + 'update_mode': 'str', 'update_type': 'str', 'lifecycle_state': 'str', 'lifecycle_details': 'str', @@ -109,6 +144,7 @@ def __init__(self, **kwargs): 'id': 'id', 'update_id': 'updateId', 'update_action': 'updateAction', + 'update_mode': 'updateMode', 'update_type': 'updateType', 'lifecycle_state': 'lifecycleState', 'lifecycle_details': 'lifecycleDetails', @@ -118,6 +154,7 @@ def __init__(self, **kwargs): self._id = None self._update_id = None self._update_action = None + self._update_mode = None self._update_type = None self._lifecycle_state = None self._lifecycle_details = None @@ -210,6 +247,36 @@ def update_action(self, update_action): update_action = 'UNKNOWN_ENUM_VALUE' self._update_action = update_action + @property + def update_mode(self): + """ + Gets the update_mode of this VmClusterUpdateHistoryEntrySummary. + The OS update mode performed using this maintenance update. + + Allowed values for this property are: "ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES_HIGHCVSS", "PENDING_UPDATES_ALLCVSS", "PENDING_ALL_UPDATES", "FULL_UPDATE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The update_mode of this VmClusterUpdateHistoryEntrySummary. + :rtype: str + """ + return self._update_mode + + @update_mode.setter + def update_mode(self, update_mode): + """ + Sets the update_mode of this VmClusterUpdateHistoryEntrySummary. + The OS update mode performed using this maintenance update. + + + :param update_mode: The update_mode of this VmClusterUpdateHistoryEntrySummary. + :type: str + """ + allowed_values = ["ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES_HIGHCVSS", "PENDING_UPDATES_ALLCVSS", "PENDING_ALL_UPDATES", "FULL_UPDATE"] + if not value_allowed_none_or_none_sentinel(update_mode, allowed_values): + update_mode = 'UNKNOWN_ENUM_VALUE' + self._update_mode = update_mode + @property def update_type(self): """ diff --git a/src/oci/database/models/vm_cluster_update_summary.py b/src/oci/database/models/vm_cluster_update_summary.py index 71bd3c7b5a..193b08a52a 100644 --- a/src/oci/database/models/vm_cluster_update_summary.py +++ b/src/oci/database/models/vm_cluster_update_summary.py @@ -33,6 +33,46 @@ class VmClusterUpdateSummary(object): #: This constant has a value of "ROLLBACK" LAST_ACTION_ROLLBACK = "ROLLBACK" + #: A constant which can be used with the last_update_mode property of a VmClusterUpdateSummary. + #: This constant has a value of "ONLINE_HIGHCVSS" + LAST_UPDATE_MODE_ONLINE_HIGHCVSS = "ONLINE_HIGHCVSS" + + #: A constant which can be used with the last_update_mode property of a VmClusterUpdateSummary. + #: This constant has a value of "ONLINE_ALLCVSS" + LAST_UPDATE_MODE_ONLINE_ALLCVSS = "ONLINE_ALLCVSS" + + #: A constant which can be used with the last_update_mode property of a VmClusterUpdateSummary. + #: This constant has a value of "ONLINE_ALL_UPDATES" + LAST_UPDATE_MODE_ONLINE_ALL_UPDATES = "ONLINE_ALL_UPDATES" + + #: A constant which can be used with the last_update_mode property of a VmClusterUpdateSummary. + #: This constant has a value of "PENDING_UPDATES" + LAST_UPDATE_MODE_PENDING_UPDATES = "PENDING_UPDATES" + + #: A constant which can be used with the last_update_mode property of a VmClusterUpdateSummary. + #: This constant has a value of "FULL_UPDATE" + LAST_UPDATE_MODE_FULL_UPDATE = "FULL_UPDATE" + + #: A constant which can be used with the available_update_modes property of a VmClusterUpdateSummary. + #: This constant has a value of "ONLINE_HIGHCVSS" + AVAILABLE_UPDATE_MODES_ONLINE_HIGHCVSS = "ONLINE_HIGHCVSS" + + #: A constant which can be used with the available_update_modes property of a VmClusterUpdateSummary. + #: This constant has a value of "ONLINE_ALLCVSS" + AVAILABLE_UPDATE_MODES_ONLINE_ALLCVSS = "ONLINE_ALLCVSS" + + #: A constant which can be used with the available_update_modes property of a VmClusterUpdateSummary. + #: This constant has a value of "ONLINE_ALL_UPDATES" + AVAILABLE_UPDATE_MODES_ONLINE_ALL_UPDATES = "ONLINE_ALL_UPDATES" + + #: A constant which can be used with the available_update_modes property of a VmClusterUpdateSummary. + #: This constant has a value of "PENDING_UPDATES" + AVAILABLE_UPDATE_MODES_PENDING_UPDATES = "PENDING_UPDATES" + + #: A constant which can be used with the available_update_modes property of a VmClusterUpdateSummary. + #: This constant has a value of "FULL_UPDATE" + AVAILABLE_UPDATE_MODES_FULL_UPDATE = "FULL_UPDATE" + #: A constant which can be used with the available_actions property of a VmClusterUpdateSummary. #: This constant has a value of "ROLLING_APPLY" AVAILABLE_ACTIONS_ROLLING_APPLY = "ROLLING_APPLY" @@ -92,6 +132,22 @@ def __init__(self, **kwargs): Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type last_action: str + :param last_update_mode: + The value to assign to the last_update_mode property of this VmClusterUpdateSummary. + Allowed values for this property are: "ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES", "FULL_UPDATE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type last_update_mode: str + + :param available_update_modes: + The value to assign to the available_update_modes property of this VmClusterUpdateSummary. + Allowed values for items in this list are: "ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES", "FULL_UPDATE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type available_update_modes: list[str] + + :param oracle_linux_version: + The value to assign to the oracle_linux_version property of this VmClusterUpdateSummary. + :type oracle_linux_version: str + :param available_actions: The value to assign to the available_actions property of this VmClusterUpdateSummary. Allowed values for items in this list are: "ROLLING_APPLY", "PRECHECK", "ROLLBACK", 'UNKNOWN_ENUM_VALUE'. @@ -127,6 +183,9 @@ def __init__(self, **kwargs): 'id': 'str', 'description': 'str', 'last_action': 'str', + 'last_update_mode': 'str', + 'available_update_modes': 'list[str]', + 'oracle_linux_version': 'str', 'available_actions': 'list[str]', 'update_type': 'str', 'lifecycle_details': 'str', @@ -138,6 +197,9 @@ def __init__(self, **kwargs): 'id': 'id', 'description': 'description', 'last_action': 'lastAction', + 'last_update_mode': 'lastUpdateMode', + 'available_update_modes': 'availableUpdateModes', + 'oracle_linux_version': 'oracleLinuxVersion', 'available_actions': 'availableActions', 'update_type': 'updateType', 'lifecycle_details': 'lifecycleDetails', @@ -148,6 +210,9 @@ def __init__(self, **kwargs): self._id = None self._description = None self._last_action = None + self._last_update_mode = None + self._available_update_modes = None + self._oracle_linux_version = None self._available_actions = None self._update_type = None self._lifecycle_details = None @@ -237,6 +302,90 @@ def last_action(self, last_action): last_action = 'UNKNOWN_ENUM_VALUE' self._last_action = last_action + @property + def last_update_mode(self): + """ + Gets the last_update_mode of this VmClusterUpdateSummary. + The update mode performed most recently using this maintenance update (only valid for OS Update). + + Allowed values for this property are: "ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES", "FULL_UPDATE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The last_update_mode of this VmClusterUpdateSummary. + :rtype: str + """ + return self._last_update_mode + + @last_update_mode.setter + def last_update_mode(self, last_update_mode): + """ + Sets the last_update_mode of this VmClusterUpdateSummary. + The update mode performed most recently using this maintenance update (only valid for OS Update). + + + :param last_update_mode: The last_update_mode of this VmClusterUpdateSummary. + :type: str + """ + allowed_values = ["ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES", "FULL_UPDATE"] + if not value_allowed_none_or_none_sentinel(last_update_mode, allowed_values): + last_update_mode = 'UNKNOWN_ENUM_VALUE' + self._last_update_mode = last_update_mode + + @property + def available_update_modes(self): + """ + Gets the available_update_modes of this VmClusterUpdateSummary. + The possible update options that can be performed using this maintenance update (only valid for OS Update). + + Allowed values for items in this list are: "ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES", "FULL_UPDATE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The available_update_modes of this VmClusterUpdateSummary. + :rtype: list[str] + """ + return self._available_update_modes + + @available_update_modes.setter + def available_update_modes(self, available_update_modes): + """ + Sets the available_update_modes of this VmClusterUpdateSummary. + The possible update options that can be performed using this maintenance update (only valid for OS Update). + + + :param available_update_modes: The available_update_modes of this VmClusterUpdateSummary. + :type: list[str] + """ + allowed_values = ["ONLINE_HIGHCVSS", "ONLINE_ALLCVSS", "ONLINE_ALL_UPDATES", "PENDING_UPDATES", "FULL_UPDATE"] + if available_update_modes: + available_update_modes[:] = ['UNKNOWN_ENUM_VALUE' if not value_allowed_none_or_none_sentinel(x, allowed_values) else x for x in available_update_modes] + self._available_update_modes = available_update_modes + + @property + def oracle_linux_version(self): + """ + Gets the oracle_linux_version of this VmClusterUpdateSummary. + Oracle Linux version for the respective Exadata Image. + + + :return: The oracle_linux_version of this VmClusterUpdateSummary. + :rtype: str + """ + return self._oracle_linux_version + + @oracle_linux_version.setter + def oracle_linux_version(self, oracle_linux_version): + """ + Sets the oracle_linux_version of this VmClusterUpdateSummary. + Oracle Linux version for the respective Exadata Image. + + + :param oracle_linux_version: The oracle_linux_version of this VmClusterUpdateSummary. + :type: str + """ + self._oracle_linux_version = oracle_linux_version + @property def available_actions(self): """ diff --git a/src/oci/database_management/models/change_database_parameters_details.py b/src/oci/database_management/models/change_database_parameters_details.py index c84e459a55..d7b6c3d4e5 100644 --- a/src/oci/database_management/models/change_database_parameters_details.py +++ b/src/oci/database_management/models/change_database_parameters_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20201101 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -63,6 +63,9 @@ def __init__(self, **kwargs): 'scope': 'scope', 'parameters': 'parameters' } + self._redacted_field_paths = [ + ['credentials', 'password'], + ] self._credentials = None self._database_credential = None self._scope = None @@ -178,7 +181,9 @@ def parameters(self, parameters): self._parameters = parameters def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['credentials', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database_management/models/create_cloud_exadata_storage_connector_details.py b/src/oci/database_management/models/create_cloud_exadata_storage_connector_details.py index 2ffaeb072c..11f1a6843b 100644 --- a/src/oci/database_management/models/create_cloud_exadata_storage_connector_details.py +++ b/src/oci/database_management/models/create_cloud_exadata_storage_connector_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20201101 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -67,6 +67,10 @@ def __init__(self, **kwargs): 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags' } + self._redacted_field_paths = [ + ['credential_info', 'password'], + ['credential_info', 'ssl_trust_store_password'], + ] self._storage_server_id = None self._agent_id = None self._display_name = None @@ -264,7 +268,10 @@ def defined_tags(self, defined_tags): self._defined_tags = defined_tags def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['credential_info', 'password']) + redact_password_field(as_dict, ['credential_info', 'ssl_trust_store_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database_management/models/create_external_exadata_storage_connector_details.py b/src/oci/database_management/models/create_external_exadata_storage_connector_details.py index e86499d1f9..c935ca373a 100644 --- a/src/oci/database_management/models/create_external_exadata_storage_connector_details.py +++ b/src/oci/database_management/models/create_external_exadata_storage_connector_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20201101 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -67,6 +67,10 @@ def __init__(self, **kwargs): 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags' } + self._redacted_field_paths = [ + ['credential_info', 'password'], + ['credential_info', 'ssl_trust_store_password'], + ] self._storage_server_id = None self._agent_id = None self._connector_name = None @@ -264,7 +268,10 @@ def defined_tags(self, defined_tags): self._defined_tags = defined_tags def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['credential_info', 'password']) + redact_password_field(as_dict, ['credential_info', 'ssl_trust_store_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database_management/models/database_credentials.py b/src/oci/database_management/models/database_credentials.py index 7ff8d45fe1..b676c6c5c9 100644 --- a/src/oci/database_management/models/database_credentials.py +++ b/src/oci/database_management/models/database_credentials.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20201101 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -60,6 +60,9 @@ def __init__(self, **kwargs): 'secret_id': 'secretId', 'role': 'role' } + self._redacted_field_paths = [ + ['password'], + ] self._user_name = None self._password = None self._secret_id = None @@ -173,7 +176,9 @@ def role(self, role): self._role = role def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database_management/models/database_password_credential_details.py b/src/oci/database_management/models/database_password_credential_details.py index 8a114e14db..80e8cf669d 100644 --- a/src/oci/database_management/models/database_password_credential_details.py +++ b/src/oci/database_management/models/database_password_credential_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20201101 from .database_credential_details import DatabaseCredentialDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -66,6 +66,9 @@ def __init__(self, **kwargs): 'username': 'username', 'role': 'role' } + self._redacted_field_paths = [ + ['password'], + ] self._credential_type = None self._password = None self._username = None @@ -151,7 +154,9 @@ def role(self, role): self._role = role def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database_management/models/managed_database_password_credential.py b/src/oci/database_management/models/managed_database_password_credential.py index 27206d01e8..6722f4ca0e 100644 --- a/src/oci/database_management/models/managed_database_password_credential.py +++ b/src/oci/database_management/models/managed_database_password_credential.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20201101 from .managed_database_credential import ManagedDatabaseCredential -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -52,6 +52,9 @@ def __init__(self, **kwargs): 'role': 'role', 'password': 'password' } + self._redacted_field_paths = [ + ['password'], + ] self._credential_type = None self._username = None self._role = None @@ -83,7 +86,9 @@ def password(self, password): self._password = password def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database_management/models/reset_database_parameters_details.py b/src/oci/database_management/models/reset_database_parameters_details.py index 720fa0b8e8..b55e150bcc 100644 --- a/src/oci/database_management/models/reset_database_parameters_details.py +++ b/src/oci/database_management/models/reset_database_parameters_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20201101 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -63,6 +63,9 @@ def __init__(self, **kwargs): 'scope': 'scope', 'parameters': 'parameters' } + self._redacted_field_paths = [ + ['credentials', 'password'], + ] self._credentials = None self._database_credential = None self._scope = None @@ -180,7 +183,9 @@ def parameters(self, parameters): self._parameters = parameters def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['credentials', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database_management/models/rest_credential.py b/src/oci/database_management/models/rest_credential.py index 7f0917635f..893ee19750 100644 --- a/src/oci/database_management/models/rest_credential.py +++ b/src/oci/database_management/models/rest_credential.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20201101 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -64,6 +64,10 @@ def __init__(self, **kwargs): 'ssl_trust_store_location': 'sslTrustStoreLocation', 'ssl_trust_store_password': 'sslTrustStorePassword' } + self._redacted_field_paths = [ + ['password'], + ['ssl_trust_store_password'], + ] self._username = None self._password = None self._ssl_trust_store_type = None @@ -198,7 +202,10 @@ def ssl_trust_store_password(self, ssl_trust_store_password): self._ssl_trust_store_password = ssl_trust_store_password def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['ssl_trust_store_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database_management/models/sql_tuning_set_admin_password_credential_details.py b/src/oci/database_management/models/sql_tuning_set_admin_password_credential_details.py index 309bcf2702..a821691229 100644 --- a/src/oci/database_management/models/sql_tuning_set_admin_password_credential_details.py +++ b/src/oci/database_management/models/sql_tuning_set_admin_password_credential_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20201101 from .sql_tuning_set_admin_credential_details import SqlTuningSetAdminCredentialDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -52,6 +52,9 @@ def __init__(self, **kwargs): 'role': 'role', 'password': 'password' } + self._redacted_field_paths = [ + ['password'], + ] self._sql_tuning_set_admin_credential_type = None self._username = None self._role = None @@ -83,7 +86,9 @@ def password(self, password): self._password = password def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database_management/models/sql_tuning_task_password_credential_details.py b/src/oci/database_management/models/sql_tuning_task_password_credential_details.py index 438e8028eb..da803d4e3e 100644 --- a/src/oci/database_management/models/sql_tuning_task_password_credential_details.py +++ b/src/oci/database_management/models/sql_tuning_task_password_credential_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20201101 from .sql_tuning_task_credential_details import SqlTuningTaskCredentialDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -52,6 +52,9 @@ def __init__(self, **kwargs): 'role': 'role', 'password': 'password' } + self._redacted_field_paths = [ + ['password'], + ] self._sql_tuning_task_credential_type = None self._username = None self._role = None @@ -83,7 +86,9 @@ def password(self, password): self._password = password def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database_management/models/tablespace_admin_password_credential_details.py b/src/oci/database_management/models/tablespace_admin_password_credential_details.py index be2654ad25..b2d0288244 100644 --- a/src/oci/database_management/models/tablespace_admin_password_credential_details.py +++ b/src/oci/database_management/models/tablespace_admin_password_credential_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20201101 from .tablespace_admin_credential_details import TablespaceAdminCredentialDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -52,6 +52,9 @@ def __init__(self, **kwargs): 'role': 'role', 'password': 'password' } + self._redacted_field_paths = [ + ['password'], + ] self._tablespace_admin_credential_type = None self._username = None self._role = None @@ -83,7 +86,9 @@ def password(self, password): self._password = password def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database_management/models/update_cloud_exadata_storage_connector_details.py b/src/oci/database_management/models/update_cloud_exadata_storage_connector_details.py index b4b5194a07..dbbb4474ff 100644 --- a/src/oci/database_management/models/update_cloud_exadata_storage_connector_details.py +++ b/src/oci/database_management/models/update_cloud_exadata_storage_connector_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20201101 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -55,6 +55,10 @@ def __init__(self, **kwargs): 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags' } + self._redacted_field_paths = [ + ['credential_info', 'password'], + ['credential_info', 'ssl_trust_store_password'], + ] self._display_name = None self._connection_uri = None self._credential_info = None @@ -194,7 +198,10 @@ def defined_tags(self, defined_tags): self._defined_tags = defined_tags def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['credential_info', 'password']) + redact_password_field(as_dict, ['credential_info', 'ssl_trust_store_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database_management/models/update_external_exadata_storage_connector_details.py b/src/oci/database_management/models/update_external_exadata_storage_connector_details.py index 117fb78919..c02649c329 100644 --- a/src/oci/database_management/models/update_external_exadata_storage_connector_details.py +++ b/src/oci/database_management/models/update_external_exadata_storage_connector_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20201101 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -55,6 +55,10 @@ def __init__(self, **kwargs): 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags' } + self._redacted_field_paths = [ + ['credential_info', 'password'], + ['credential_info', 'ssl_trust_store_password'], + ] self._connector_name = None self._connection_uri = None self._credential_info = None @@ -194,7 +198,10 @@ def defined_tags(self, defined_tags): self._defined_tags = defined_tags def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['credential_info', 'password']) + redact_password_field(as_dict, ['credential_info', 'ssl_trust_store_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database_migration/models/connection.py b/src/oci/database_migration/models/connection.py index c303453b91..7c425cd8ca 100644 --- a/src/oci/database_migration/models/connection.py +++ b/src/oci/database_migration/models/connection.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230518 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -208,6 +208,10 @@ def __init__(self, **kwargs): 'secret_id': 'secretId', 'private_endpoint_id': 'privateEndpointId' } + self._redacted_field_paths = [ + ['password'], + ['replication_password'], + ] self._connection_type = None self._id = None self._display_name = None @@ -829,7 +833,10 @@ def private_endpoint_id(self, private_endpoint_id): self._private_endpoint_id = private_endpoint_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['replication_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database_migration/models/create_admin_credentials.py b/src/oci/database_migration/models/create_admin_credentials.py index 1eeff0f835..452cda114a 100644 --- a/src/oci/database_migration/models/create_admin_credentials.py +++ b/src/oci/database_migration/models/create_admin_credentials.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230518 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -37,6 +37,9 @@ def __init__(self, **kwargs): 'username': 'username', 'password': 'password' } + self._redacted_field_paths = [ + ['password'], + ] self._username = None self._password = None @@ -89,7 +92,9 @@ def password(self, password): self._password = password def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database_migration/models/create_connection_details.py b/src/oci/database_migration/models/create_connection_details.py index 24b48bc579..807266a9e5 100644 --- a/src/oci/database_migration/models/create_connection_details.py +++ b/src/oci/database_migration/models/create_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230518 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -123,6 +123,10 @@ def __init__(self, **kwargs): 'replication_username': 'replicationUsername', 'replication_password': 'replicationPassword' } + self._redacted_field_paths = [ + ['password'], + ['replication_password'], + ] self._connection_type = None self._display_name = None self._description = None @@ -506,7 +510,10 @@ def replication_password(self, replication_password): self._replication_password = replication_password def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['replication_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database_migration/models/create_golden_gate_hub_details.py b/src/oci/database_migration/models/create_golden_gate_hub_details.py index c03b7e5f3f..28caa67e13 100644 --- a/src/oci/database_migration/models/create_golden_gate_hub_details.py +++ b/src/oci/database_migration/models/create_golden_gate_hub_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230518 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -73,6 +73,9 @@ def __init__(self, **kwargs): 'replicat': 'replicat', 'acceptable_lag': 'acceptableLag' } + self._redacted_field_paths = [ + ['rest_admin_credentials', 'password'], + ] self._rest_admin_credentials = None self._url = None self._compute_id = None @@ -263,7 +266,9 @@ def acceptable_lag(self, acceptable_lag): self._acceptable_lag = acceptable_lag def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['rest_admin_credentials', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database_migration/models/create_my_sql_migration_details.py b/src/oci/database_migration/models/create_my_sql_migration_details.py index 41fb9e721e..10397227bf 100644 --- a/src/oci/database_migration/models/create_my_sql_migration_details.py +++ b/src/oci/database_migration/models/create_my_sql_migration_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230518 from .create_migration_details import CreateMigrationDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -136,6 +136,9 @@ def __init__(self, **kwargs): 'hub_details': 'hubDetails', 'ggs_details': 'ggsDetails' } + self._redacted_field_paths = [ + ['hub_details', 'rest_admin_credentials', 'password'], + ] self._description = None self._compartment_id = None self._database_combination = None @@ -333,7 +336,9 @@ def ggs_details(self, ggs_details): self._ggs_details = ggs_details def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['hub_details', 'rest_admin_credentials', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database_migration/models/create_mysql_connection_details.py b/src/oci/database_migration/models/create_mysql_connection_details.py index 53b9487b72..94908d377f 100644 --- a/src/oci/database_migration/models/create_mysql_connection_details.py +++ b/src/oci/database_migration/models/create_mysql_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230518 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -183,6 +183,10 @@ def __init__(self, **kwargs): 'additional_attributes': 'additionalAttributes', 'db_system_id': 'dbSystemId' } + self._redacted_field_paths = [ + ['password'], + ['replication_password'], + ] self._connection_type = None self._display_name = None self._description = None @@ -510,7 +514,10 @@ def db_system_id(self, db_system_id): self._db_system_id = db_system_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['replication_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database_migration/models/create_oracle_aws_s3_data_transfer_medium_details.py b/src/oci/database_migration/models/create_oracle_aws_s3_data_transfer_medium_details.py index 19704c304f..7585605f0a 100644 --- a/src/oci/database_migration/models/create_oracle_aws_s3_data_transfer_medium_details.py +++ b/src/oci/database_migration/models/create_oracle_aws_s3_data_transfer_medium_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230518 from .create_oracle_data_transfer_medium_details import CreateOracleDataTransferMediumDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -64,6 +64,10 @@ def __init__(self, **kwargs): 'secret_access_key': 'secretAccessKey', 'object_storage_bucket': 'objectStorageBucket' } + self._redacted_field_paths = [ + ['access_key_id'], + ['secret_access_key'], + ] self._type = None self._name = None self._region = None @@ -197,7 +201,10 @@ def object_storage_bucket(self, object_storage_bucket): self._object_storage_bucket = object_storage_bucket def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['access_key_id']) + redact_password_field(as_dict, ['secret_access_key']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database_migration/models/create_oracle_connection_details.py b/src/oci/database_migration/models/create_oracle_connection_details.py index 07d81f1bac..03e05b154a 100644 --- a/src/oci/database_migration/models/create_oracle_connection_details.py +++ b/src/oci/database_migration/models/create_oracle_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230518 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -159,6 +159,10 @@ def __init__(self, **kwargs): 'ssh_user': 'sshUser', 'ssh_sudo_location': 'sshSudoLocation' } + self._redacted_field_paths = [ + ['password'], + ['replication_password'], + ] self._connection_type = None self._display_name = None self._description = None @@ -378,7 +382,10 @@ def ssh_sudo_location(self, ssh_sudo_location): self._ssh_sudo_location = ssh_sudo_location def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['replication_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database_migration/models/create_oracle_migration_details.py b/src/oci/database_migration/models/create_oracle_migration_details.py index 4c0e059a04..6e5e84c08e 100644 --- a/src/oci/database_migration/models/create_oracle_migration_details.py +++ b/src/oci/database_migration/models/create_oracle_migration_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230518 from .create_migration_details import CreateMigrationDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -154,6 +154,9 @@ def __init__(self, **kwargs): 'include_objects': 'includeObjects', 'bulk_include_exclude_data': 'bulkIncludeExcludeData' } + self._redacted_field_paths = [ + ['hub_details', 'rest_admin_credentials', 'password'], + ] self._description = None self._compartment_id = None self._database_combination = None @@ -426,7 +429,9 @@ def bulk_include_exclude_data(self, bulk_include_exclude_data): self._bulk_include_exclude_data = bulk_include_exclude_data def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['hub_details', 'rest_admin_credentials', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database_migration/models/mysql_connection.py b/src/oci/database_migration/models/mysql_connection.py index b00286c6cb..680642da6e 100644 --- a/src/oci/database_migration/models/mysql_connection.py +++ b/src/oci/database_migration/models/mysql_connection.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230518 from .connection import Connection -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -278,6 +278,10 @@ def __init__(self, **kwargs): 'additional_attributes': 'additionalAttributes', 'db_system_id': 'dbSystemId' } + self._redacted_field_paths = [ + ['password'], + ['replication_password'], + ] self._connection_type = None self._id = None self._display_name = None @@ -524,7 +528,10 @@ def db_system_id(self, db_system_id): self._db_system_id = db_system_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['replication_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database_migration/models/oracle_aws_s3_data_transfer_medium_details.py b/src/oci/database_migration/models/oracle_aws_s3_data_transfer_medium_details.py index b0f0df66d3..18d4dcad5e 100644 --- a/src/oci/database_migration/models/oracle_aws_s3_data_transfer_medium_details.py +++ b/src/oci/database_migration/models/oracle_aws_s3_data_transfer_medium_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230518 from .oracle_data_transfer_medium_details import OracleDataTransferMediumDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -64,6 +64,10 @@ def __init__(self, **kwargs): 'secret_access_key': 'secretAccessKey', 'object_storage_bucket': 'objectStorageBucket' } + self._redacted_field_paths = [ + ['access_key_id'], + ['secret_access_key'], + ] self._type = None self._name = None self._region = None @@ -197,7 +201,10 @@ def object_storage_bucket(self, object_storage_bucket): self._object_storage_bucket = object_storage_bucket def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['access_key_id']) + redact_password_field(as_dict, ['secret_access_key']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database_migration/models/oracle_connection.py b/src/oci/database_migration/models/oracle_connection.py index c0aa377d7b..50e2946f35 100644 --- a/src/oci/database_migration/models/oracle_connection.py +++ b/src/oci/database_migration/models/oracle_connection.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230518 from .connection import Connection -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -228,6 +228,10 @@ def __init__(self, **kwargs): 'ssh_user': 'sshUser', 'ssh_sudo_location': 'sshSudoLocation' } + self._redacted_field_paths = [ + ['password'], + ['replication_password'], + ] self._connection_type = None self._id = None self._display_name = None @@ -435,7 +439,10 @@ def ssh_sudo_location(self, ssh_sudo_location): self._ssh_sudo_location = ssh_sudo_location def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['replication_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database_migration/models/update_admin_credentials.py b/src/oci/database_migration/models/update_admin_credentials.py index 74046b0d4c..156d1e2c7c 100644 --- a/src/oci/database_migration/models/update_admin_credentials.py +++ b/src/oci/database_migration/models/update_admin_credentials.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230518 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -37,6 +37,9 @@ def __init__(self, **kwargs): 'username': 'username', 'password': 'password' } + self._redacted_field_paths = [ + ['password'], + ] self._username = None self._password = None @@ -89,7 +92,9 @@ def password(self, password): self._password = password def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database_migration/models/update_connection_details.py b/src/oci/database_migration/models/update_connection_details.py index c1a4c710f9..628c6388c8 100644 --- a/src/oci/database_migration/models/update_connection_details.py +++ b/src/oci/database_migration/models/update_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230518 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -117,6 +117,10 @@ def __init__(self, **kwargs): 'replication_username': 'replicationUsername', 'replication_password': 'replicationPassword' } + self._redacted_field_paths = [ + ['password'], + ['replication_password'], + ] self._connection_type = None self._display_name = None self._description = None @@ -475,7 +479,10 @@ def replication_password(self, replication_password): self._replication_password = replication_password def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['replication_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database_migration/models/update_golden_gate_hub_details.py b/src/oci/database_migration/models/update_golden_gate_hub_details.py index c0c57cb6de..43f3052e5e 100644 --- a/src/oci/database_migration/models/update_golden_gate_hub_details.py +++ b/src/oci/database_migration/models/update_golden_gate_hub_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230518 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -73,6 +73,9 @@ def __init__(self, **kwargs): 'replicat': 'replicat', 'acceptable_lag': 'acceptableLag' } + self._redacted_field_paths = [ + ['rest_admin_credentials', 'password'], + ] self._rest_admin_credentials = None self._url = None self._compute_id = None @@ -263,7 +266,9 @@ def acceptable_lag(self, acceptable_lag): self._acceptable_lag = acceptable_lag def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['rest_admin_credentials', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database_migration/models/update_my_sql_migration_details.py b/src/oci/database_migration/models/update_my_sql_migration_details.py index 9457581032..4415960f51 100644 --- a/src/oci/database_migration/models/update_my_sql_migration_details.py +++ b/src/oci/database_migration/models/update_my_sql_migration_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230518 from .update_migration_details import UpdateMigrationDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -106,6 +106,9 @@ def __init__(self, **kwargs): 'hub_details': 'hubDetails', 'ggs_details': 'ggsDetails' } + self._redacted_field_paths = [ + ['hub_details', 'rest_admin_credentials', 'password'], + ] self._description = None self._database_combination = None self._type = None @@ -222,7 +225,9 @@ def ggs_details(self, ggs_details): self._ggs_details = ggs_details def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['hub_details', 'rest_admin_credentials', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database_migration/models/update_mysql_connection_details.py b/src/oci/database_migration/models/update_mysql_connection_details.py index e532be364a..e5b86fb4e6 100644 --- a/src/oci/database_migration/models/update_mysql_connection_details.py +++ b/src/oci/database_migration/models/update_mysql_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230518 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -171,6 +171,10 @@ def __init__(self, **kwargs): 'additional_attributes': 'additionalAttributes', 'db_system_id': 'dbSystemId' } + self._redacted_field_paths = [ + ['password'], + ['replication_password'], + ] self._connection_type = None self._display_name = None self._description = None @@ -470,7 +474,10 @@ def db_system_id(self, db_system_id): self._db_system_id = db_system_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['replication_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database_migration/models/update_oracle_aws_s3_data_transfer_medium_details.py b/src/oci/database_migration/models/update_oracle_aws_s3_data_transfer_medium_details.py index 702ab68af4..4a31a6a58a 100644 --- a/src/oci/database_migration/models/update_oracle_aws_s3_data_transfer_medium_details.py +++ b/src/oci/database_migration/models/update_oracle_aws_s3_data_transfer_medium_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230518 from .update_oracle_data_transfer_medium_details import UpdateOracleDataTransferMediumDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -64,6 +64,10 @@ def __init__(self, **kwargs): 'secret_access_key': 'secretAccessKey', 'object_storage_bucket': 'objectStorageBucket' } + self._redacted_field_paths = [ + ['access_key_id'], + ['secret_access_key'], + ] self._type = None self._name = None self._region = None @@ -197,7 +201,10 @@ def object_storage_bucket(self, object_storage_bucket): self._object_storage_bucket = object_storage_bucket def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['access_key_id']) + redact_password_field(as_dict, ['secret_access_key']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database_migration/models/update_oracle_connection_details.py b/src/oci/database_migration/models/update_oracle_connection_details.py index b8885a7d4f..a556bacb76 100644 --- a/src/oci/database_migration/models/update_oracle_connection_details.py +++ b/src/oci/database_migration/models/update_oracle_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230518 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -147,6 +147,10 @@ def __init__(self, **kwargs): 'ssh_user': 'sshUser', 'ssh_sudo_location': 'sshSudoLocation' } + self._redacted_field_paths = [ + ['password'], + ['replication_password'], + ] self._connection_type = None self._display_name = None self._description = None @@ -340,7 +344,10 @@ def ssh_sudo_location(self, ssh_sudo_location): self._ssh_sudo_location = ssh_sudo_location def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['replication_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database_migration/models/update_oracle_migration_details.py b/src/oci/database_migration/models/update_oracle_migration_details.py index 14d7d4a2d3..044fc073d0 100644 --- a/src/oci/database_migration/models/update_oracle_migration_details.py +++ b/src/oci/database_migration/models/update_oracle_migration_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230518 from .update_migration_details import UpdateMigrationDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -124,6 +124,9 @@ def __init__(self, **kwargs): 'source_container_database_connection_id': 'sourceContainerDatabaseConnectionId', 'source_standby_database_connection_id': 'sourceStandbyDatabaseConnectionId' } + self._redacted_field_paths = [ + ['hub_details', 'rest_admin_credentials', 'password'], + ] self._description = None self._database_combination = None self._type = None @@ -315,7 +318,9 @@ def source_standby_database_connection_id(self, source_standby_database_connecti self._source_standby_database_connection_id = source_standby_database_connection_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['hub_details', 'rest_admin_credentials', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database_tools_runtime/models/create_credential_basic_details.py b/src/oci/database_tools_runtime/models/create_credential_basic_details.py index b85ff7790d..2ef46a39f9 100644 --- a/src/oci/database_tools_runtime/models/create_credential_basic_details.py +++ b/src/oci/database_tools_runtime/models/create_credential_basic_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230222 from .create_credential_details import CreateCredentialDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -51,6 +51,9 @@ def __init__(self, **kwargs): 'user_name': 'userName', 'password': 'password' } + self._redacted_field_paths = [ + ['password'], + ] self._type = None self._key = None self._user_name = None @@ -106,7 +109,9 @@ def password(self, password): self._password = password def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database_tools_runtime/models/update_credential_basic_details.py b/src/oci/database_tools_runtime/models/update_credential_basic_details.py index 7fd152abbd..d9ee77b029 100644 --- a/src/oci/database_tools_runtime/models/update_credential_basic_details.py +++ b/src/oci/database_tools_runtime/models/update_credential_basic_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20230222 from .update_credential_details import UpdateCredentialDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -45,6 +45,9 @@ def __init__(self, **kwargs): 'user_name': 'userName', 'password': 'password' } + self._redacted_field_paths = [ + ['password'], + ] self._type = None self._user_name = None self._password = None @@ -99,7 +102,9 @@ def password(self, password): self._password = password def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/distributed_database/models/create_distributed_database_catalog_with_exadb_xs_new_vault_and_cluster_details.py b/src/oci/distributed_database/models/create_distributed_database_catalog_with_exadb_xs_new_vault_and_cluster_details.py index c1a4efab3c..2936ca10ed 100644 --- a/src/oci/distributed_database/models/create_distributed_database_catalog_with_exadb_xs_new_vault_and_cluster_details.py +++ b/src/oci/distributed_database/models/create_distributed_database_catalog_with_exadb_xs_new_vault_and_cluster_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20250101 from .create_distributed_database_catalog_details import CreateDistributedDatabaseCatalogDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -87,6 +87,9 @@ def __init__(self, **kwargs): 'db_storage_vault_details': 'dbStorageVaultDetails', 'vm_cluster_details': 'vmClusterDetails' } + self._redacted_field_paths = [ + ['admin_password'], + ] self._source = None self._admin_password = None self._peer_details = None @@ -316,7 +319,9 @@ def vm_cluster_details(self, vm_cluster_details): self._vm_cluster_details = vm_cluster_details def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/distributed_database/models/create_distributed_database_shard_with_exadb_xs_new_vault_and_cluster_details.py b/src/oci/distributed_database/models/create_distributed_database_shard_with_exadb_xs_new_vault_and_cluster_details.py index ba27edc5da..316025db20 100644 --- a/src/oci/distributed_database/models/create_distributed_database_shard_with_exadb_xs_new_vault_and_cluster_details.py +++ b/src/oci/distributed_database/models/create_distributed_database_shard_with_exadb_xs_new_vault_and_cluster_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20250101 from .create_distributed_database_shard_details import CreateDistributedDatabaseShardDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -87,6 +87,9 @@ def __init__(self, **kwargs): 'db_storage_vault_details': 'dbStorageVaultDetails', 'vm_cluster_details': 'vmClusterDetails' } + self._redacted_field_paths = [ + ['admin_password'], + ] self._source = None self._admin_password = None self._peer_details = None @@ -316,7 +319,9 @@ def vm_cluster_details(self, vm_cluster_details): self._vm_cluster_details = vm_cluster_details def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/dns/models/create_migrated_dynect_zone_details.py b/src/oci/dns/models/create_migrated_dynect_zone_details.py index a46e810fb9..4d939f74c5 100644 --- a/src/oci/dns/models/create_migrated_dynect_zone_details.py +++ b/src/oci/dns/models/create_migrated_dynect_zone_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20180115 from .create_zone_base_details import CreateZoneBaseDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -65,6 +65,9 @@ def __init__(self, **kwargs): 'defined_tags': 'definedTags', 'dynect_migration_details': 'dynectMigrationDetails' } + self._redacted_field_paths = [ + ['dynect_migration_details', 'password'], + ] self._migration_source = None self._name = None self._compartment_id = None @@ -94,7 +97,9 @@ def dynect_migration_details(self, dynect_migration_details): self._dynect_migration_details = dynect_migration_details def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['dynect_migration_details', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/dns/models/dynect_migration_details.py b/src/oci/dns/models/dynect_migration_details.py index 52f0679fb6..3d2e82302e 100644 --- a/src/oci/dns/models/dynect_migration_details.py +++ b/src/oci/dns/models/dynect_migration_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20180115 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -49,6 +49,9 @@ def __init__(self, **kwargs): 'password': 'password', 'http_redirect_replacements': 'httpRedirectReplacements' } + self._redacted_field_paths = [ + ['password'], + ] self._customer_name = None self._username = None self._password = None @@ -151,7 +154,9 @@ def http_redirect_replacements(self, http_redirect_replacements): self._http_redirect_replacements = http_redirect_replacements def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/fleet_apps_management/models/fleet_credential_entity_specific_details.py b/src/oci/fleet_apps_management/models/fleet_credential_entity_specific_details.py index cf1df62dbc..110a2d57c5 100644 --- a/src/oci/fleet_apps_management/models/fleet_credential_entity_specific_details.py +++ b/src/oci/fleet_apps_management/models/fleet_credential_entity_specific_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20250228 from .credential_entity_specific_details import CredentialEntitySpecificDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -39,6 +39,9 @@ def __init__(self, **kwargs): 'credential_level': 'credentialLevel', 'variables': 'variables' } + self._redacted_field_paths = [ + ['variables', '*', 'value'], + ] self._credential_level = None self._variables = None self._credential_level = 'FLEET' @@ -68,7 +71,9 @@ def variables(self, variables): self._variables = variables def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['variables', '*', 'value']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/fleet_apps_management/models/variable.py b/src/oci/fleet_apps_management/models/variable.py index 581d01ec8f..99c0dfcb68 100644 --- a/src/oci/fleet_apps_management/models/variable.py +++ b/src/oci/fleet_apps_management/models/variable.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20250228 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -37,6 +37,9 @@ def __init__(self, **kwargs): 'name': 'name', 'value': 'value' } + self._redacted_field_paths = [ + ['value'], + ] self._name = None self._value = None @@ -89,7 +92,9 @@ def value(self, value): self._value = value def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['value']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/fusion_apps/models/extract_details_collection.py b/src/oci/fusion_apps/models/extract_details_collection.py index 8a3271ae6f..5e8a43968e 100644 --- a/src/oci/fusion_apps/models/extract_details_collection.py +++ b/src/oci/fusion_apps/models/extract_details_collection.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20211201 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -31,6 +31,9 @@ def __init__(self, **kwargs): self.attribute_map = { 'items': 'items' } + self._redacted_field_paths = [ + ['items', '*', 'password'], + ] self._items = None @property @@ -58,7 +61,9 @@ def items(self, items): self._items = items def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['items', '*', 'password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/fusion_apps/models/extract_details_summary.py b/src/oci/fusion_apps/models/extract_details_summary.py index 3c2d7ccbc4..dfe7e64a29 100644 --- a/src/oci/fusion_apps/models/extract_details_summary.py +++ b/src/oci/fusion_apps/models/extract_details_summary.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20211201 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -43,6 +43,9 @@ def __init__(self, **kwargs): 'password': 'password', 'time_created': 'timeCreated' } + self._redacted_field_paths = [ + ['password'], + ] self._par_url = None self._password = None self._time_created = None @@ -120,7 +123,9 @@ def time_created(self, time_created): self._time_created = time_created def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/fusion_apps/models/reset_fusion_environment_password_details.py b/src/oci/fusion_apps/models/reset_fusion_environment_password_details.py index 9c66c9d8a3..e2936af273 100644 --- a/src/oci/fusion_apps/models/reset_fusion_environment_password_details.py +++ b/src/oci/fusion_apps/models/reset_fusion_environment_password_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20211201 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -31,6 +31,9 @@ def __init__(self, **kwargs): self.attribute_map = { 'password': 'password' } + self._redacted_field_paths = [ + ['password'], + ] self._password = None @property @@ -58,7 +61,9 @@ def password(self, password): self._password = password def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/generative_ai/models/create_dedicated_ai_cluster_details.py b/src/oci/generative_ai/models/create_dedicated_ai_cluster_details.py index 7ac09799f5..2c89f4c0b3 100644 --- a/src/oci/generative_ai/models/create_dedicated_ai_cluster_details.py +++ b/src/oci/generative_ai/models/create_dedicated_ai_cluster_details.py @@ -250,6 +250,8 @@ def unit_shape(self): - H100_X2 - H100_X4 - H100_X8 + - H100_X16 + - H100_X32 - H200_X1 - H200_X2 - H200_X4 @@ -260,6 +262,7 @@ def unit_shape(self): - A100_40G_X1, A100_40G_X2, A100_40G_X4, A100_40G_X8 - A100_80G_X1, A100_80G_X2, A100_80G_X4, A100_80G_X8 - H100_X1, H100_X2, H100_X4, H100_X8 + - H100_X16, H100_X32 - H200_X1, H200_X2, H200_X4, H200_X8 - OAI_A10_X2 - OAI_H100_X1 @@ -325,6 +328,8 @@ def unit_shape(self, unit_shape): - H100_X2 - H100_X4 - H100_X8 + - H100_X16 + - H100_X32 - H200_X1 - H200_X2 - H200_X4 @@ -335,6 +340,7 @@ def unit_shape(self, unit_shape): - A100_40G_X1, A100_40G_X2, A100_40G_X4, A100_40G_X8 - A100_80G_X1, A100_80G_X2, A100_80G_X4, A100_80G_X8 - H100_X1, H100_X2, H100_X4, H100_X8 + - H100_X16, H100_X32 - H200_X1, H200_X2, H200_X4, H200_X8 - OAI_A10_X2 - OAI_H100_X1 diff --git a/src/oci/generative_ai/models/dedicated_ai_cluster.py b/src/oci/generative_ai/models/dedicated_ai_cluster.py index 789e69d847..eb7140cd03 100644 --- a/src/oci/generative_ai/models/dedicated_ai_cluster.py +++ b/src/oci/generative_ai/models/dedicated_ai_cluster.py @@ -365,6 +365,14 @@ class DedicatedAiCluster(object): #: This constant has a value of "H100_X8" UNIT_SHAPE_H100_X8 = "H100_X8" + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "H100_X16" + UNIT_SHAPE_H100_X16 = "H100_X16" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "H100_X32" + UNIT_SHAPE_H100_X32 = "H100_X32" + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. #: This constant has a value of "H200_X1" UNIT_SHAPE_H200_X1 = "H200_X1" @@ -500,7 +508,7 @@ def __init__(self, **kwargs): :param unit_shape: The value to assign to the unit_shape property of this DedicatedAiCluster. - Allowed values for this property are: "LARGE_COHERE", "LARGE_COHERE_V2", "SMALL_COHERE", "SMALL_COHERE_V2", "SMALL_COHERE_4", "EMBED_COHERE", "LLAMA2_70", "LARGE_GENERIC", "LARGE_COHERE_V2_2", "LARGE_GENERIC_4", "SMALL_GENERIC_V2", "LARGE_GENERIC_2", "LARGE_GENERIC_V2", "LARGE_GENERIC_V3", "LARGE_GENERIC_V4", "LARGE_GENERIC_V5", "COHERE_H100_X1", "COHERE_A100_80G_X1", "COHERE_A100_40G_X1", "COHERE_A10_X1", "COHERE_A100_40G_X2", "COHERE_A100_40G_X4", "COHERE_A100_40G_X8", "COHERE_A100_80G_X2", "COHERE_A100_80G_X4", "COHERE_A100_80G_X8", "COHERE_H100_X2", "COHERE_H100_X4", "COHERE_H100_X8", "COHERE_H200_X1", "COHERE_H200_X2", "COHERE_H200_X4", "COHERE_H200_X8", "COHERE_B200_X1", "COHERE_B200_X2", "COHERE_B200_X4", "COHERE_B200_X8", "META_A100_40G_X1", "META_A100_40G_X2", "META_A100_40G_X4", "META_A100_40G_X8", "META_A100_80G_X1", "META_A100_80G_X2", "META_A100_80G_X4", "META_A100_80G_X8", "META_H100_X1", "META_H100_X2", "META_H100_X4", "META_H100_X8", "META_H200_X1", "META_H200_X2", "META_H200_X4", "META_H200_X8", "META_B200_X1", "META_B200_X2", "META_B200_X4", "META_B200_X8", "LARGE_COHERE_V3", "RERANK_COHERE", "SMALL_GENERIC_V1", "MEDIUM_GENERIC_V1", "LARGE_GENERIC_V1", "A10_X1", "A10_X2", "A10_X4", "A100_40G_X1", "A100_40G_X2", "A100_40G_X4", "A100_40G_X8", "A100_80G_X1", "A100_80G_X2", "A100_80G_X4", "A100_80G_X8", "H100_X1", "H100_X2", "H100_X4", "H100_X8", "H200_X1", "H200_X2", "H200_X4", "H200_X8", "OAI_A10_X2", "OAI_H100_X1", "OAI_H100_X2", "OAI_H200_X1", "OAI_A100_80G_X1", "OAI_A100_80G_X2", "OAI_A100_40G_X1", "OAI_A100_40G_X4", "B200_X1", "B200_X2", "B200_X4", "B200_X8", "OAI_B200_X1", "OAI_B200_X2", "OAI_B200_X4", "OAI_B200_X8", "SB_B200_X1", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "LARGE_COHERE", "LARGE_COHERE_V2", "SMALL_COHERE", "SMALL_COHERE_V2", "SMALL_COHERE_4", "EMBED_COHERE", "LLAMA2_70", "LARGE_GENERIC", "LARGE_COHERE_V2_2", "LARGE_GENERIC_4", "SMALL_GENERIC_V2", "LARGE_GENERIC_2", "LARGE_GENERIC_V2", "LARGE_GENERIC_V3", "LARGE_GENERIC_V4", "LARGE_GENERIC_V5", "COHERE_H100_X1", "COHERE_A100_80G_X1", "COHERE_A100_40G_X1", "COHERE_A10_X1", "COHERE_A100_40G_X2", "COHERE_A100_40G_X4", "COHERE_A100_40G_X8", "COHERE_A100_80G_X2", "COHERE_A100_80G_X4", "COHERE_A100_80G_X8", "COHERE_H100_X2", "COHERE_H100_X4", "COHERE_H100_X8", "COHERE_H200_X1", "COHERE_H200_X2", "COHERE_H200_X4", "COHERE_H200_X8", "COHERE_B200_X1", "COHERE_B200_X2", "COHERE_B200_X4", "COHERE_B200_X8", "META_A100_40G_X1", "META_A100_40G_X2", "META_A100_40G_X4", "META_A100_40G_X8", "META_A100_80G_X1", "META_A100_80G_X2", "META_A100_80G_X4", "META_A100_80G_X8", "META_H100_X1", "META_H100_X2", "META_H100_X4", "META_H100_X8", "META_H200_X1", "META_H200_X2", "META_H200_X4", "META_H200_X8", "META_B200_X1", "META_B200_X2", "META_B200_X4", "META_B200_X8", "LARGE_COHERE_V3", "RERANK_COHERE", "SMALL_GENERIC_V1", "MEDIUM_GENERIC_V1", "LARGE_GENERIC_V1", "A10_X1", "A10_X2", "A10_X4", "A100_40G_X1", "A100_40G_X2", "A100_40G_X4", "A100_40G_X8", "A100_80G_X1", "A100_80G_X2", "A100_80G_X4", "A100_80G_X8", "H100_X1", "H100_X2", "H100_X4", "H100_X8", "H100_X16", "H100_X32", "H200_X1", "H200_X2", "H200_X4", "H200_X8", "OAI_A10_X2", "OAI_H100_X1", "OAI_H100_X2", "OAI_H200_X1", "OAI_A100_80G_X1", "OAI_A100_80G_X2", "OAI_A100_40G_X1", "OAI_A100_40G_X4", "B200_X1", "B200_X2", "B200_X4", "B200_X8", "OAI_B200_X1", "OAI_B200_X2", "OAI_B200_X4", "OAI_B200_X8", "SB_B200_X1", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type unit_shape: str @@ -840,7 +848,7 @@ def unit_shape(self): **[Required]** Gets the unit_shape of this DedicatedAiCluster. The shape of dedicated unit in this AI cluster. The underlying hardware configuration is hidden from customers. - Allowed values for this property are: "LARGE_COHERE", "LARGE_COHERE_V2", "SMALL_COHERE", "SMALL_COHERE_V2", "SMALL_COHERE_4", "EMBED_COHERE", "LLAMA2_70", "LARGE_GENERIC", "LARGE_COHERE_V2_2", "LARGE_GENERIC_4", "SMALL_GENERIC_V2", "LARGE_GENERIC_2", "LARGE_GENERIC_V2", "LARGE_GENERIC_V3", "LARGE_GENERIC_V4", "LARGE_GENERIC_V5", "COHERE_H100_X1", "COHERE_A100_80G_X1", "COHERE_A100_40G_X1", "COHERE_A10_X1", "COHERE_A100_40G_X2", "COHERE_A100_40G_X4", "COHERE_A100_40G_X8", "COHERE_A100_80G_X2", "COHERE_A100_80G_X4", "COHERE_A100_80G_X8", "COHERE_H100_X2", "COHERE_H100_X4", "COHERE_H100_X8", "COHERE_H200_X1", "COHERE_H200_X2", "COHERE_H200_X4", "COHERE_H200_X8", "COHERE_B200_X1", "COHERE_B200_X2", "COHERE_B200_X4", "COHERE_B200_X8", "META_A100_40G_X1", "META_A100_40G_X2", "META_A100_40G_X4", "META_A100_40G_X8", "META_A100_80G_X1", "META_A100_80G_X2", "META_A100_80G_X4", "META_A100_80G_X8", "META_H100_X1", "META_H100_X2", "META_H100_X4", "META_H100_X8", "META_H200_X1", "META_H200_X2", "META_H200_X4", "META_H200_X8", "META_B200_X1", "META_B200_X2", "META_B200_X4", "META_B200_X8", "LARGE_COHERE_V3", "RERANK_COHERE", "SMALL_GENERIC_V1", "MEDIUM_GENERIC_V1", "LARGE_GENERIC_V1", "A10_X1", "A10_X2", "A10_X4", "A100_40G_X1", "A100_40G_X2", "A100_40G_X4", "A100_40G_X8", "A100_80G_X1", "A100_80G_X2", "A100_80G_X4", "A100_80G_X8", "H100_X1", "H100_X2", "H100_X4", "H100_X8", "H200_X1", "H200_X2", "H200_X4", "H200_X8", "OAI_A10_X2", "OAI_H100_X1", "OAI_H100_X2", "OAI_H200_X1", "OAI_A100_80G_X1", "OAI_A100_80G_X2", "OAI_A100_40G_X1", "OAI_A100_40G_X4", "B200_X1", "B200_X2", "B200_X4", "B200_X8", "OAI_B200_X1", "OAI_B200_X2", "OAI_B200_X4", "OAI_B200_X8", "SB_B200_X1", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "LARGE_COHERE", "LARGE_COHERE_V2", "SMALL_COHERE", "SMALL_COHERE_V2", "SMALL_COHERE_4", "EMBED_COHERE", "LLAMA2_70", "LARGE_GENERIC", "LARGE_COHERE_V2_2", "LARGE_GENERIC_4", "SMALL_GENERIC_V2", "LARGE_GENERIC_2", "LARGE_GENERIC_V2", "LARGE_GENERIC_V3", "LARGE_GENERIC_V4", "LARGE_GENERIC_V5", "COHERE_H100_X1", "COHERE_A100_80G_X1", "COHERE_A100_40G_X1", "COHERE_A10_X1", "COHERE_A100_40G_X2", "COHERE_A100_40G_X4", "COHERE_A100_40G_X8", "COHERE_A100_80G_X2", "COHERE_A100_80G_X4", "COHERE_A100_80G_X8", "COHERE_H100_X2", "COHERE_H100_X4", "COHERE_H100_X8", "COHERE_H200_X1", "COHERE_H200_X2", "COHERE_H200_X4", "COHERE_H200_X8", "COHERE_B200_X1", "COHERE_B200_X2", "COHERE_B200_X4", "COHERE_B200_X8", "META_A100_40G_X1", "META_A100_40G_X2", "META_A100_40G_X4", "META_A100_40G_X8", "META_A100_80G_X1", "META_A100_80G_X2", "META_A100_80G_X4", "META_A100_80G_X8", "META_H100_X1", "META_H100_X2", "META_H100_X4", "META_H100_X8", "META_H200_X1", "META_H200_X2", "META_H200_X4", "META_H200_X8", "META_B200_X1", "META_B200_X2", "META_B200_X4", "META_B200_X8", "LARGE_COHERE_V3", "RERANK_COHERE", "SMALL_GENERIC_V1", "MEDIUM_GENERIC_V1", "LARGE_GENERIC_V1", "A10_X1", "A10_X2", "A10_X4", "A100_40G_X1", "A100_40G_X2", "A100_40G_X4", "A100_40G_X8", "A100_80G_X1", "A100_80G_X2", "A100_80G_X4", "A100_80G_X8", "H100_X1", "H100_X2", "H100_X4", "H100_X8", "H100_X16", "H100_X32", "H200_X1", "H200_X2", "H200_X4", "H200_X8", "OAI_A10_X2", "OAI_H100_X1", "OAI_H100_X2", "OAI_H200_X1", "OAI_A100_80G_X1", "OAI_A100_80G_X2", "OAI_A100_40G_X1", "OAI_A100_40G_X4", "B200_X1", "B200_X2", "B200_X4", "B200_X8", "OAI_B200_X1", "OAI_B200_X2", "OAI_B200_X4", "OAI_B200_X8", "SB_B200_X1", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -859,7 +867,7 @@ def unit_shape(self, unit_shape): :param unit_shape: The unit_shape of this DedicatedAiCluster. :type: str """ - allowed_values = ["LARGE_COHERE", "LARGE_COHERE_V2", "SMALL_COHERE", "SMALL_COHERE_V2", "SMALL_COHERE_4", "EMBED_COHERE", "LLAMA2_70", "LARGE_GENERIC", "LARGE_COHERE_V2_2", "LARGE_GENERIC_4", "SMALL_GENERIC_V2", "LARGE_GENERIC_2", "LARGE_GENERIC_V2", "LARGE_GENERIC_V3", "LARGE_GENERIC_V4", "LARGE_GENERIC_V5", "COHERE_H100_X1", "COHERE_A100_80G_X1", "COHERE_A100_40G_X1", "COHERE_A10_X1", "COHERE_A100_40G_X2", "COHERE_A100_40G_X4", "COHERE_A100_40G_X8", "COHERE_A100_80G_X2", "COHERE_A100_80G_X4", "COHERE_A100_80G_X8", "COHERE_H100_X2", "COHERE_H100_X4", "COHERE_H100_X8", "COHERE_H200_X1", "COHERE_H200_X2", "COHERE_H200_X4", "COHERE_H200_X8", "COHERE_B200_X1", "COHERE_B200_X2", "COHERE_B200_X4", "COHERE_B200_X8", "META_A100_40G_X1", "META_A100_40G_X2", "META_A100_40G_X4", "META_A100_40G_X8", "META_A100_80G_X1", "META_A100_80G_X2", "META_A100_80G_X4", "META_A100_80G_X8", "META_H100_X1", "META_H100_X2", "META_H100_X4", "META_H100_X8", "META_H200_X1", "META_H200_X2", "META_H200_X4", "META_H200_X8", "META_B200_X1", "META_B200_X2", "META_B200_X4", "META_B200_X8", "LARGE_COHERE_V3", "RERANK_COHERE", "SMALL_GENERIC_V1", "MEDIUM_GENERIC_V1", "LARGE_GENERIC_V1", "A10_X1", "A10_X2", "A10_X4", "A100_40G_X1", "A100_40G_X2", "A100_40G_X4", "A100_40G_X8", "A100_80G_X1", "A100_80G_X2", "A100_80G_X4", "A100_80G_X8", "H100_X1", "H100_X2", "H100_X4", "H100_X8", "H200_X1", "H200_X2", "H200_X4", "H200_X8", "OAI_A10_X2", "OAI_H100_X1", "OAI_H100_X2", "OAI_H200_X1", "OAI_A100_80G_X1", "OAI_A100_80G_X2", "OAI_A100_40G_X1", "OAI_A100_40G_X4", "B200_X1", "B200_X2", "B200_X4", "B200_X8", "OAI_B200_X1", "OAI_B200_X2", "OAI_B200_X4", "OAI_B200_X8", "SB_B200_X1"] + allowed_values = ["LARGE_COHERE", "LARGE_COHERE_V2", "SMALL_COHERE", "SMALL_COHERE_V2", "SMALL_COHERE_4", "EMBED_COHERE", "LLAMA2_70", "LARGE_GENERIC", "LARGE_COHERE_V2_2", "LARGE_GENERIC_4", "SMALL_GENERIC_V2", "LARGE_GENERIC_2", "LARGE_GENERIC_V2", "LARGE_GENERIC_V3", "LARGE_GENERIC_V4", "LARGE_GENERIC_V5", "COHERE_H100_X1", "COHERE_A100_80G_X1", "COHERE_A100_40G_X1", "COHERE_A10_X1", "COHERE_A100_40G_X2", "COHERE_A100_40G_X4", "COHERE_A100_40G_X8", "COHERE_A100_80G_X2", "COHERE_A100_80G_X4", "COHERE_A100_80G_X8", "COHERE_H100_X2", "COHERE_H100_X4", "COHERE_H100_X8", "COHERE_H200_X1", "COHERE_H200_X2", "COHERE_H200_X4", "COHERE_H200_X8", "COHERE_B200_X1", "COHERE_B200_X2", "COHERE_B200_X4", "COHERE_B200_X8", "META_A100_40G_X1", "META_A100_40G_X2", "META_A100_40G_X4", "META_A100_40G_X8", "META_A100_80G_X1", "META_A100_80G_X2", "META_A100_80G_X4", "META_A100_80G_X8", "META_H100_X1", "META_H100_X2", "META_H100_X4", "META_H100_X8", "META_H200_X1", "META_H200_X2", "META_H200_X4", "META_H200_X8", "META_B200_X1", "META_B200_X2", "META_B200_X4", "META_B200_X8", "LARGE_COHERE_V3", "RERANK_COHERE", "SMALL_GENERIC_V1", "MEDIUM_GENERIC_V1", "LARGE_GENERIC_V1", "A10_X1", "A10_X2", "A10_X4", "A100_40G_X1", "A100_40G_X2", "A100_40G_X4", "A100_40G_X8", "A100_80G_X1", "A100_80G_X2", "A100_80G_X4", "A100_80G_X8", "H100_X1", "H100_X2", "H100_X4", "H100_X8", "H100_X16", "H100_X32", "H200_X1", "H200_X2", "H200_X4", "H200_X8", "OAI_A10_X2", "OAI_H100_X1", "OAI_H100_X2", "OAI_H200_X1", "OAI_A100_80G_X1", "OAI_A100_80G_X2", "OAI_A100_40G_X1", "OAI_A100_40G_X4", "B200_X1", "B200_X2", "B200_X4", "B200_X8", "OAI_B200_X1", "OAI_B200_X2", "OAI_B200_X4", "OAI_B200_X8", "SB_B200_X1"] if not value_allowed_none_or_none_sentinel(unit_shape, allowed_values): unit_shape = 'UNKNOWN_ENUM_VALUE' self._unit_shape = unit_shape diff --git a/src/oci/golden_gate/golden_gate_client.py b/src/oci/golden_gate/golden_gate_client.py index 3efa477662..9e57916fca 100644 --- a/src/oci/golden_gate/golden_gate_client.py +++ b/src/oci/golden_gate/golden_gate_client.py @@ -5792,6 +5792,237 @@ def import_deployment_wallet(self, deployment_id, import_deployment_wallet_detai api_reference_link=api_reference_link, required_arguments=required_arguments) + def list_ai_models(self, compartment_id, provider_type, **kwargs): + """ + Returns the list of AI models for the specified provider. If the + provider requires additional context to resolve its supported models, + that context must be supplied in the request. + + + :param str compartment_id: (required) + The OCID of the compartment that contains the work request. Work requests should be scoped + to the same compartment as the resource the work request affects. If the work request concerns + multiple resources, and those resources are not in the same compartment, it is up to the service team + to pick the primary resource whose compartment should be used. + + :param str provider_type: (required) + The AI provider type for which model information is requested. + + Allowed values are: "OCI_GENERATIVE_AI", "GEMINI", "OPEN_AI", "VOYAGE_AI" + + :param str region: (optional) + OCI region identifier, for example us-ashburn-1. + + :param str tenancy_id: (optional) + OCI tenancy OCID to use when resolving provider models, for example for + OCI Generative AI model discovery across a specific tenancy. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.golden_gate.models.AiModelCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_ai_models API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['compartmentId', 'providerType'] + resource_path = "/aiModels" + method = "GET" + operation_name = "list_ai_models" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/goldengate/20200407/AiModelCollection/ListAiModels" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "region", + "tenancy_id", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_ai_models got unknown kwargs: {extra_kwargs!r}") + + provider_type_allowed_values = ["OCI_GENERATIVE_AI", "GEMINI", "OPEN_AI", "VOYAGE_AI"] + if provider_type not in provider_type_allowed_values: + raise ValueError( + f"Invalid value for `provider_type`, must be one of { provider_type_allowed_values }" + ) + + query_params = { + "compartmentId": compartment_id, + "providerType": provider_type, + "region": kwargs.get("region", missing), + "tenancyId": kwargs.get("tenancy_id", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="AiModelCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="AiModelCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_ai_providers(self, compartment_id, **kwargs): + """ + Returns the list of AI providers along with their supported models. + + + :param str compartment_id: (required) + The OCID of the compartment that contains the work request. Work requests should be scoped + to the same compartment as the resource the work request affects. If the work request concerns + multiple resources, and those resources are not in the same compartment, it is up to the service team + to pick the primary resource whose compartment should be used. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.golden_gate.models.AiProviderCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_ai_providers API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['compartmentId'] + resource_path = "/aiProviders" + method = "GET" + operation_name = "list_ai_providers" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/goldengate/20200407/AiProviderCollection/ListAiProviders" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_ai_providers got unknown kwargs: {extra_kwargs!r}") + + query_params = { + "compartmentId": compartment_id + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="AiProviderCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="AiProviderCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + def list_certificates(self, deployment_id, **kwargs): """ Returns a list of certificates from truststore. @@ -5979,6 +6210,16 @@ def list_connection_assignments(self, compartment_id, **kwargs): __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + :param list[str] connection_type: (optional) + The array of connection types. + + Allowed values are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" + + :param list[str] connection_type_not_equal_to: (optional) + The array of connection types to exclude. + + Allowed values are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" + :param str name: (optional) The name of the connection in the assignment (aliasName). @@ -6045,6 +6286,8 @@ def list_connection_assignments(self, compartment_id, **kwargs): "retry_strategy", "deployment_id", "connection_id", + "connection_type", + "connection_type_not_equal_to", "name", "lifecycle_state", "limit", @@ -6058,6 +6301,22 @@ def list_connection_assignments(self, compartment_id, **kwargs): raise ValueError( f"list_connection_assignments got unknown kwargs: {extra_kwargs!r}") + if 'connection_type' in kwargs: + connection_type_allowed_values = ["GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL"] + for connection_type_item in kwargs['connection_type']: + if connection_type_item not in connection_type_allowed_values: + raise ValueError( + f"Invalid value for `connection_type`, must be one of { connection_type_allowed_values }" + ) + + if 'connection_type_not_equal_to' in kwargs: + connection_type_not_equal_to_allowed_values = ["GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL"] + for connection_type_not_equal_to_item in kwargs['connection_type_not_equal_to']: + if connection_type_not_equal_to_item not in connection_type_not_equal_to_allowed_values: + raise ValueError( + f"Invalid value for `connection_type_not_equal_to`, must be one of { connection_type_not_equal_to_allowed_values }" + ) + if 'lifecycle_state' in kwargs: lifecycle_state_allowed_values = ["CREATING", "ACTIVE", "FAILED", "UPDATING", "DELETING"] if kwargs['lifecycle_state'] not in lifecycle_state_allowed_values: @@ -6083,6 +6342,8 @@ def list_connection_assignments(self, compartment_id, **kwargs): "compartmentId": compartment_id, "deploymentId": kwargs.get("deployment_id", missing), "connectionId": kwargs.get("connection_id", missing), + "connectionType": self.base_client.generate_collection_format_param(kwargs.get("connection_type", missing), 'multi'), + "connectionTypeNotEqualTo": self.base_client.generate_collection_format_param(kwargs.get("connection_type_not_equal_to", missing), 'multi'), "name": kwargs.get("name", missing), "lifecycleState": kwargs.get("lifecycle_state", missing), "limit": kwargs.get("limit", missing), @@ -6149,12 +6410,17 @@ def list_connections(self, compartment_id, **kwargs): :param list[str] technology_type: (optional) The array of technology types. - Allowed values are: "GOLDENGATE", "GENERIC", "OCI_AUTONOMOUS_DATABASE", "OCI_AUTONOMOUS_JSON_DATABASE", "OCI_CACHE_WITH_REDIS", "OCI_MYSQL", "OCI_OBJECT_STORAGE", "OCI_POSTGRESQL", "OCI_STREAMING", "OCI_STREAMING_WITH_APACHE_KAFKA", "ORACLE_DATABASE", "ORACLE_EXADATA", "ORACLE_EXADATA_DATABASE_AT_AZURE", "ORACLE_AUTONOMOUS_DATABASE_AT_AZURE", "ORACLE_JSON_COLLECTION", "ORACLE_EXADATA_DATABASE_AT_GOOGLE_CLOUD", "ORACLE_AUTONOMOUS_DATABASE_AT_GOOGLE_CLOUD", "ORACLE_EXADATA_DATABASE_AT_AWS", "ORACLE_AUTONOMOUS_DATABASE_AT_AWS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "ORACLE_REST_DATA_SERVICES", "ORACLE_WEBLOGIC_JMS", "AMAZON_RDS_ORACLE", "AMAZON_RDS_SQLSERVER", "AMAZON_S3", "AMAZON_AURORA_MYSQL", "AMAZON_AURORA_POSTGRESQL", "AMAZON_DOCUMENT_DB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "AMAZON_RDS_MARIADB", "AMAZON_RDS_MYSQL", "AMAZON_RDS_POSTGRESQL", "APACHE_ICEBERG", "APACHE_KAFKA", "AZURE_COSMOS_DB_FOR_MONGODB", "AZURE_COSMOS_DB_FOR_POSTGRESQL", "AZURE_DATA_LAKE_STORAGE", "AZURE_EVENT_HUBS", "AZURE_MYSQL", "AZURE_POSTGRESQL", "AZURE_SQLSERVER_MANAGED_INSTANCE", "AZURE_SQLSERVER_NON_MANAGED_INSTANCE", "AZURE_SYNAPSE_ANALYTICS", "CONFLUENT_KAFKA", "CONFLUENT_SCHEMA_REGISTRY", "DATABRICKS", "DB2_I", "DB2_ZOS", "ELASTICSEARCH", "EDB_POSTGRES_ADVANCED_SERVER", "GOOGLE_ALLOY_DB_FOR_POSTGRESQL", "GOOGLE_BIGQUERY", "GOOGLE_CLOUD_STORAGE", "GOOGLE_CLOUD_SQL_MYSQL", "GOOGLE_CLOUD_SQL_POSTGRESQL", "GOOGLE_CLOUD_SQL_SQLSERVER", "GOOGLE_PUBSUB", "HDFS", "MARIADB", "MICROSOFT_SQLSERVER", "MICROSOFT_FABRIC_EVENTSTREAM", "MICROSOFT_FABRIC_LAKEHOUSE", "MICROSOFT_FABRIC_MIRROR", "MONGODB", "MYSQL_SERVER", "MYSQL_HEATWAVE_ON_AZURE", "MYSQL_HEATWAVE_ON_AWS", "POSTGRESQL_SERVER", "REDIS", "SINGLESTOREDB", "SINGLESTOREDB_CLOUD", "SNOWFLAKE", "YUGABYTE_DB" + Allowed values are: "GOLDENGATE", "GENERIC", "OCI_AUTONOMOUS_DATABASE", "OCI_AUTONOMOUS_JSON_DATABASE", "OCI_CACHE_WITH_REDIS", "OCI_MYSQL", "OCI_OBJECT_STORAGE", "OCI_POSTGRESQL", "OCI_STREAMING", "OCI_STREAMING_WITH_APACHE_KAFKA", "ORACLE_DATABASE", "ORACLE_EXADATA", "ORACLE_EXADATA_EXASCALE", "ORACLE_EXADATA_DATABASE_AT_AZURE", "ORACLE_EXADATA_EXASCALE_AT_AZURE", "ORACLE_AUTONOMOUS_DATABASE_AT_AZURE", "ORACLE_JSON_COLLECTION", "ORACLE_EXADATA_DATABASE_AT_GOOGLE_CLOUD", "ORACLE_EXADATA_EXASCALE_AT_GOOGLE_CLOUD", "ORACLE_AUTONOMOUS_DATABASE_AT_GOOGLE_CLOUD", "ORACLE_EXADATA_DATABASE_AT_AWS", "ORACLE_AUTONOMOUS_DATABASE_AT_AWS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "ORACLE_REST_DATA_SERVICES", "ORACLE_WEBLOGIC_JMS", "AMAZON_RDS_ORACLE", "AMAZON_RDS_SQLSERVER", "AMAZON_S3", "AMAZON_AURORA_MYSQL", "AMAZON_AURORA_POSTGRESQL", "AMAZON_DOCUMENT_DB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "AMAZON_RDS_MARIADB", "AMAZON_RDS_MYSQL", "AMAZON_RDS_POSTGRESQL", "APACHE_ICEBERG", "APACHE_KAFKA", "AZURE_COSMOS_DB_FOR_MONGODB", "AZURE_COSMOS_DB_FOR_POSTGRESQL", "AZURE_DATA_LAKE_STORAGE", "AZURE_EVENT_HUBS", "AZURE_MYSQL", "AZURE_POSTGRESQL", "AZURE_SQLSERVER_MANAGED_INSTANCE", "AZURE_SQLSERVER_NON_MANAGED_INSTANCE", "AZURE_SYNAPSE_ANALYTICS", "CONFLUENT_KAFKA", "CONFLUENT_SCHEMA_REGISTRY", "DATABRICKS", "DB2_I", "DB2_ZOS", "ELASTICSEARCH", "EDB_POSTGRES_ADVANCED_SERVER", "GOOGLE_ALLOY_DB_FOR_POSTGRESQL", "GOOGLE_BIGQUERY", "GOOGLE_CLOUD_MANAGED_SERVICE_FOR_APACHE_KAFKA", "GOOGLE_CLOUD_STORAGE", "GOOGLE_CLOUD_SQL_MYSQL", "GOOGLE_CLOUD_SQL_POSTGRESQL", "GOOGLE_CLOUD_SQL_SQLSERVER", "GOOGLE_PUBSUB", "HDFS", "MARIADB", "MICROSOFT_SQLSERVER", "MICROSOFT_FABRIC_EVENTSTREAM", "MICROSOFT_FABRIC_LAKEHOUSE", "MICROSOFT_FABRIC_MIRROR", "MONGODB", "MYSQL_SERVER", "MYSQL_HEATWAVE_ON_AZURE", "MYSQL_HEATWAVE_ON_AWS", "POSTGRESQL_SERVER", "REDIS", "SINGLESTOREDB", "SINGLESTOREDB_CLOUD", "SNOWFLAKE", "YUGABYTE_DB", "AI_MODEL" :param list[str] connection_type: (optional) The array of connection types. - Allowed values are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" + + :param list[str] connection_type_not_equal_to: (optional) + The array of connection types to exclude. + + Allowed values are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :param str assigned_deployment_id: (optional) The OCID of the deployment which for the connection must be assigned. @@ -6170,7 +6436,7 @@ def list_connections(self, compartment_id, **kwargs): :param str lifecycle_state: (optional) A filter to return only connections having the 'lifecycleState' given. - Allowed values are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED" + Allowed values are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION" :param str display_name: (optional) A filter to return only the resources that match the entire 'displayName' given. @@ -6233,6 +6499,7 @@ def list_connections(self, compartment_id, **kwargs): "retry_strategy", "technology_type", "connection_type", + "connection_type_not_equal_to", "assigned_deployment_id", "assignable_deployment_id", "assignable_deployment_type", @@ -6250,7 +6517,7 @@ def list_connections(self, compartment_id, **kwargs): f"list_connections got unknown kwargs: {extra_kwargs!r}") if 'technology_type' in kwargs: - technology_type_allowed_values = ["GOLDENGATE", "GENERIC", "OCI_AUTONOMOUS_DATABASE", "OCI_AUTONOMOUS_JSON_DATABASE", "OCI_CACHE_WITH_REDIS", "OCI_MYSQL", "OCI_OBJECT_STORAGE", "OCI_POSTGRESQL", "OCI_STREAMING", "OCI_STREAMING_WITH_APACHE_KAFKA", "ORACLE_DATABASE", "ORACLE_EXADATA", "ORACLE_EXADATA_DATABASE_AT_AZURE", "ORACLE_AUTONOMOUS_DATABASE_AT_AZURE", "ORACLE_JSON_COLLECTION", "ORACLE_EXADATA_DATABASE_AT_GOOGLE_CLOUD", "ORACLE_AUTONOMOUS_DATABASE_AT_GOOGLE_CLOUD", "ORACLE_EXADATA_DATABASE_AT_AWS", "ORACLE_AUTONOMOUS_DATABASE_AT_AWS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "ORACLE_REST_DATA_SERVICES", "ORACLE_WEBLOGIC_JMS", "AMAZON_RDS_ORACLE", "AMAZON_RDS_SQLSERVER", "AMAZON_S3", "AMAZON_AURORA_MYSQL", "AMAZON_AURORA_POSTGRESQL", "AMAZON_DOCUMENT_DB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "AMAZON_RDS_MARIADB", "AMAZON_RDS_MYSQL", "AMAZON_RDS_POSTGRESQL", "APACHE_ICEBERG", "APACHE_KAFKA", "AZURE_COSMOS_DB_FOR_MONGODB", "AZURE_COSMOS_DB_FOR_POSTGRESQL", "AZURE_DATA_LAKE_STORAGE", "AZURE_EVENT_HUBS", "AZURE_MYSQL", "AZURE_POSTGRESQL", "AZURE_SQLSERVER_MANAGED_INSTANCE", "AZURE_SQLSERVER_NON_MANAGED_INSTANCE", "AZURE_SYNAPSE_ANALYTICS", "CONFLUENT_KAFKA", "CONFLUENT_SCHEMA_REGISTRY", "DATABRICKS", "DB2_I", "DB2_ZOS", "ELASTICSEARCH", "EDB_POSTGRES_ADVANCED_SERVER", "GOOGLE_ALLOY_DB_FOR_POSTGRESQL", "GOOGLE_BIGQUERY", "GOOGLE_CLOUD_STORAGE", "GOOGLE_CLOUD_SQL_MYSQL", "GOOGLE_CLOUD_SQL_POSTGRESQL", "GOOGLE_CLOUD_SQL_SQLSERVER", "GOOGLE_PUBSUB", "HDFS", "MARIADB", "MICROSOFT_SQLSERVER", "MICROSOFT_FABRIC_EVENTSTREAM", "MICROSOFT_FABRIC_LAKEHOUSE", "MICROSOFT_FABRIC_MIRROR", "MONGODB", "MYSQL_SERVER", "MYSQL_HEATWAVE_ON_AZURE", "MYSQL_HEATWAVE_ON_AWS", "POSTGRESQL_SERVER", "REDIS", "SINGLESTOREDB", "SINGLESTOREDB_CLOUD", "SNOWFLAKE", "YUGABYTE_DB"] + technology_type_allowed_values = ["GOLDENGATE", "GENERIC", "OCI_AUTONOMOUS_DATABASE", "OCI_AUTONOMOUS_JSON_DATABASE", "OCI_CACHE_WITH_REDIS", "OCI_MYSQL", "OCI_OBJECT_STORAGE", "OCI_POSTGRESQL", "OCI_STREAMING", "OCI_STREAMING_WITH_APACHE_KAFKA", "ORACLE_DATABASE", "ORACLE_EXADATA", "ORACLE_EXADATA_EXASCALE", "ORACLE_EXADATA_DATABASE_AT_AZURE", "ORACLE_EXADATA_EXASCALE_AT_AZURE", "ORACLE_AUTONOMOUS_DATABASE_AT_AZURE", "ORACLE_JSON_COLLECTION", "ORACLE_EXADATA_DATABASE_AT_GOOGLE_CLOUD", "ORACLE_EXADATA_EXASCALE_AT_GOOGLE_CLOUD", "ORACLE_AUTONOMOUS_DATABASE_AT_GOOGLE_CLOUD", "ORACLE_EXADATA_DATABASE_AT_AWS", "ORACLE_AUTONOMOUS_DATABASE_AT_AWS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "ORACLE_REST_DATA_SERVICES", "ORACLE_WEBLOGIC_JMS", "AMAZON_RDS_ORACLE", "AMAZON_RDS_SQLSERVER", "AMAZON_S3", "AMAZON_AURORA_MYSQL", "AMAZON_AURORA_POSTGRESQL", "AMAZON_DOCUMENT_DB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "AMAZON_RDS_MARIADB", "AMAZON_RDS_MYSQL", "AMAZON_RDS_POSTGRESQL", "APACHE_ICEBERG", "APACHE_KAFKA", "AZURE_COSMOS_DB_FOR_MONGODB", "AZURE_COSMOS_DB_FOR_POSTGRESQL", "AZURE_DATA_LAKE_STORAGE", "AZURE_EVENT_HUBS", "AZURE_MYSQL", "AZURE_POSTGRESQL", "AZURE_SQLSERVER_MANAGED_INSTANCE", "AZURE_SQLSERVER_NON_MANAGED_INSTANCE", "AZURE_SYNAPSE_ANALYTICS", "CONFLUENT_KAFKA", "CONFLUENT_SCHEMA_REGISTRY", "DATABRICKS", "DB2_I", "DB2_ZOS", "ELASTICSEARCH", "EDB_POSTGRES_ADVANCED_SERVER", "GOOGLE_ALLOY_DB_FOR_POSTGRESQL", "GOOGLE_BIGQUERY", "GOOGLE_CLOUD_MANAGED_SERVICE_FOR_APACHE_KAFKA", "GOOGLE_CLOUD_STORAGE", "GOOGLE_CLOUD_SQL_MYSQL", "GOOGLE_CLOUD_SQL_POSTGRESQL", "GOOGLE_CLOUD_SQL_SQLSERVER", "GOOGLE_PUBSUB", "HDFS", "MARIADB", "MICROSOFT_SQLSERVER", "MICROSOFT_FABRIC_EVENTSTREAM", "MICROSOFT_FABRIC_LAKEHOUSE", "MICROSOFT_FABRIC_MIRROR", "MONGODB", "MYSQL_SERVER", "MYSQL_HEATWAVE_ON_AZURE", "MYSQL_HEATWAVE_ON_AWS", "POSTGRESQL_SERVER", "REDIS", "SINGLESTOREDB", "SINGLESTOREDB_CLOUD", "SNOWFLAKE", "YUGABYTE_DB", "AI_MODEL"] for technology_type_item in kwargs['technology_type']: if technology_type_item not in technology_type_allowed_values: raise ValueError( @@ -6258,13 +6525,21 @@ def list_connections(self, compartment_id, **kwargs): ) if 'connection_type' in kwargs: - connection_type_allowed_values = ["GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG"] + connection_type_allowed_values = ["GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL"] for connection_type_item in kwargs['connection_type']: if connection_type_item not in connection_type_allowed_values: raise ValueError( f"Invalid value for `connection_type`, must be one of { connection_type_allowed_values }" ) + if 'connection_type_not_equal_to' in kwargs: + connection_type_not_equal_to_allowed_values = ["GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL"] + for connection_type_not_equal_to_item in kwargs['connection_type_not_equal_to']: + if connection_type_not_equal_to_item not in connection_type_not_equal_to_allowed_values: + raise ValueError( + f"Invalid value for `connection_type_not_equal_to`, must be one of { connection_type_not_equal_to_allowed_values }" + ) + if 'assignable_deployment_type' in kwargs: assignable_deployment_type_allowed_values = ["OGG", "DATABASE_ORACLE", "BIGDATA", "DATABASE_MICROSOFT_SQLSERVER", "DATABASE_MYSQL", "DATABASE_POSTGRESQL", "DATABASE_DB2ZOS", "DATABASE_DB2I", "GGSA", "DATA_TRANSFORMS", "VERIDATA_SERVER", "VERIDATA_AGENT"] if kwargs['assignable_deployment_type'] not in assignable_deployment_type_allowed_values: @@ -6273,7 +6548,7 @@ def list_connections(self, compartment_id, **kwargs): ) if 'lifecycle_state' in kwargs: - lifecycle_state_allowed_values = ["CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED"] + lifecycle_state_allowed_values = ["CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION"] if kwargs['lifecycle_state'] not in lifecycle_state_allowed_values: raise ValueError( f"Invalid value for `lifecycle_state`, must be one of { lifecycle_state_allowed_values }" @@ -6297,6 +6572,7 @@ def list_connections(self, compartment_id, **kwargs): "compartmentId": compartment_id, "technologyType": self.base_client.generate_collection_format_param(kwargs.get("technology_type", missing), 'multi'), "connectionType": self.base_client.generate_collection_format_param(kwargs.get("connection_type", missing), 'multi'), + "connectionTypeNotEqualTo": self.base_client.generate_collection_format_param(kwargs.get("connection_type_not_equal_to", missing), 'multi'), "assignedDeploymentId": kwargs.get("assigned_deployment_id", missing), "assignableDeploymentId": kwargs.get("assignable_deployment_id", missing), "assignableDeploymentType": kwargs.get("assignable_deployment_type", missing), @@ -7674,7 +7950,7 @@ def list_deployments(self, compartment_id, **kwargs): :param str supported_connection_type: (optional) The connection type which the deployment must support. - Allowed values are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :param str assigned_connection_id: (optional) The OCID of the connection which for the deployment must be assigned. @@ -7779,7 +8055,7 @@ def list_deployments(self, compartment_id, **kwargs): f"list_deployments got unknown kwargs: {extra_kwargs!r}") if 'supported_connection_type' in kwargs: - supported_connection_type_allowed_values = ["GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG"] + supported_connection_type_allowed_values = ["GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL"] if kwargs['supported_connection_type'] not in supported_connection_type_allowed_values: raise ValueError( f"Invalid value for `supported_connection_type`, must be one of { supported_connection_type_allowed_values }" diff --git a/src/oci/golden_gate/models/__init__.py b/src/oci/golden_gate/models/__init__.py index d3ba82276c..9207efd10a 100644 --- a/src/oci/golden_gate/models/__init__.py +++ b/src/oci/golden_gate/models/__init__.py @@ -8,6 +8,14 @@ from .add_deployment_local_peer_details import AddDeploymentLocalPeerDetails from .add_resource_lock_details import AddResourceLockDetails +from .ai_model_auth_details import AiModelAuthDetails +from .ai_model_auth_details_summary import AiModelAuthDetailsSummary +from .ai_model_collection import AiModelCollection +from .ai_model_connection import AiModelConnection +from .ai_model_connection_summary import AiModelConnectionSummary +from .ai_model_summary import AiModelSummary +from .ai_provider_collection import AiProviderCollection +from .ai_provider_summary import AiProviderSummary from .amazon_kinesis_connection import AmazonKinesisConnection from .amazon_kinesis_connection_summary import AmazonKinesisConnectionSummary from .amazon_redshift_connection import AmazonRedshiftConnection @@ -16,6 +24,8 @@ from .amazon_s3_connection_summary import AmazonS3ConnectionSummary from .amazon_s3_iceberg_storage import AmazonS3IcebergStorage from .amazon_s3_iceberg_storage_summary import AmazonS3IcebergStorageSummary +from .api_key_ai_model_auth_details import ApiKeyAiModelAuthDetails +from .api_key_ai_model_auth_details_summary import ApiKeyAiModelAuthDetailsSummary from .azure_data_lake_storage_connection import AzureDataLakeStorageConnection from .azure_data_lake_storage_connection_summary import AzureDataLakeStorageConnectionSummary from .azure_data_lake_storage_iceberg_storage import AzureDataLakeStorageIcebergStorage @@ -47,10 +57,13 @@ from .connection_collection import ConnectionCollection from .connection_summary import ConnectionSummary from .copy_deployment_backup_details import CopyDeploymentBackupDetails +from .create_ai_model_auth_details import CreateAiModelAuthDetails +from .create_ai_model_connection_details import CreateAiModelConnectionDetails from .create_amazon_kinesis_connection_details import CreateAmazonKinesisConnectionDetails from .create_amazon_redshift_connection_details import CreateAmazonRedshiftConnectionDetails from .create_amazon_s3_connection_details import CreateAmazonS3ConnectionDetails from .create_amazon_s3_iceberg_storage_details import CreateAmazonS3IcebergStorageDetails +from .create_api_key_ai_model_auth_details import CreateApiKeyAiModelAuthDetails from .create_azure_data_lake_storage_connection_details import CreateAzureDataLakeStorageConnectionDetails from .create_azure_data_lake_storage_iceberg_storage_details import CreateAzureDataLakeStorageIcebergStorageDetails from .create_azure_synapse_connection_details import CreateAzureSynapseConnectionDetails @@ -87,7 +100,10 @@ from .create_mongo_db_connection_details import CreateMongoDbConnectionDetails from .create_mysql_connection_details import CreateMysqlConnectionDetails from .create_nessie_iceberg_catalog_details import CreateNessieIcebergCatalogDetails +from .create_no_iceberg_storage_details import CreateNoIcebergStorageDetails +from .create_oci_gen_ai_model_auth_details import CreateOciGenAiModelAuthDetails from .create_oci_object_storage_connection_details import CreateOciObjectStorageConnectionDetails +from .create_oci_object_storage_s3_api_iceberg_storage_details import CreateOciObjectStorageS3ApiIcebergStorageDetails from .create_ogg_deployment_details import CreateOggDeploymentDetails from .create_oracle_ai_data_platform_connection_details import CreateOracleAiDataPlatformConnectionDetails from .create_oracle_connection_details import CreateOracleConnectionDetails @@ -208,8 +224,14 @@ from .name_value_pair import NameValuePair from .nessie_iceberg_catalog import NessieIcebergCatalog from .nessie_iceberg_catalog_summary import NessieIcebergCatalogSummary +from .no_iceberg_storage import NoIcebergStorage +from .no_iceberg_storage_summary import NoIcebergStorageSummary +from .oci_gen_ai_model_auth_details import OciGenAiModelAuthDetails +from .oci_gen_ai_model_auth_details_summary import OciGenAiModelAuthDetailsSummary from .oci_object_storage_connection import OciObjectStorageConnection from .oci_object_storage_connection_summary import OciObjectStorageConnectionSummary +from .oci_object_storage_s3_api_iceberg_storage import OciObjectStorageS3ApiIcebergStorage +from .oci_object_storage_s3_api_iceberg_storage_summary import OciObjectStorageS3ApiIcebergStorageSummary from .ogg_deployment import OggDeployment from .oracle_ai_data_platform_connection import OracleAiDataPlatformConnection from .oracle_ai_data_platform_connection_summary import OracleAiDataPlatformConnectionSummary @@ -272,10 +294,13 @@ from .trail_file_summary import TrailFileSummary from .trail_sequence_collection import TrailSequenceCollection from .trail_sequence_summary import TrailSequenceSummary +from .update_ai_model_auth_details import UpdateAiModelAuthDetails +from .update_ai_model_connection_details import UpdateAiModelConnectionDetails from .update_amazon_kinesis_connection_details import UpdateAmazonKinesisConnectionDetails from .update_amazon_redshift_connection_details import UpdateAmazonRedshiftConnectionDetails from .update_amazon_s3_connection_details import UpdateAmazonS3ConnectionDetails from .update_amazon_s3_iceberg_storage_details import UpdateAmazonS3IcebergStorageDetails +from .update_api_key_ai_model_auth_details import UpdateApiKeyAiModelAuthDetails from .update_azure_data_lake_storage_connection_details import UpdateAzureDataLakeStorageConnectionDetails from .update_azure_data_lake_storage_iceberg_storage_details import UpdateAzureDataLakeStorageIcebergStorageDetails from .update_azure_synapse_connection_details import UpdateAzureSynapseConnectionDetails @@ -310,7 +335,10 @@ from .update_mongo_db_connection_details import UpdateMongoDbConnectionDetails from .update_mysql_connection_details import UpdateMysqlConnectionDetails from .update_nessie_iceberg_catalog_details import UpdateNessieIcebergCatalogDetails +from .update_no_iceberg_storage_details import UpdateNoIcebergStorageDetails +from .update_oci_gen_ai_model_auth_details import UpdateOciGenAiModelAuthDetails from .update_oci_object_storage_connection_details import UpdateOciObjectStorageConnectionDetails +from .update_oci_object_storage_s3_api_iceberg_storage_details import UpdateOciObjectStorageS3ApiIcebergStorageDetails from .update_ogg_deployment_details import UpdateOggDeploymentDetails from .update_oracle_ai_data_platform_connection_details import UpdateOracleAiDataPlatformConnectionDetails from .update_oracle_connection_details import UpdateOracleConnectionDetails @@ -337,6 +365,14 @@ golden_gate_type_mapping = { "AddDeploymentLocalPeerDetails": AddDeploymentLocalPeerDetails, "AddResourceLockDetails": AddResourceLockDetails, + "AiModelAuthDetails": AiModelAuthDetails, + "AiModelAuthDetailsSummary": AiModelAuthDetailsSummary, + "AiModelCollection": AiModelCollection, + "AiModelConnection": AiModelConnection, + "AiModelConnectionSummary": AiModelConnectionSummary, + "AiModelSummary": AiModelSummary, + "AiProviderCollection": AiProviderCollection, + "AiProviderSummary": AiProviderSummary, "AmazonKinesisConnection": AmazonKinesisConnection, "AmazonKinesisConnectionSummary": AmazonKinesisConnectionSummary, "AmazonRedshiftConnection": AmazonRedshiftConnection, @@ -345,6 +381,8 @@ "AmazonS3ConnectionSummary": AmazonS3ConnectionSummary, "AmazonS3IcebergStorage": AmazonS3IcebergStorage, "AmazonS3IcebergStorageSummary": AmazonS3IcebergStorageSummary, + "ApiKeyAiModelAuthDetails": ApiKeyAiModelAuthDetails, + "ApiKeyAiModelAuthDetailsSummary": ApiKeyAiModelAuthDetailsSummary, "AzureDataLakeStorageConnection": AzureDataLakeStorageConnection, "AzureDataLakeStorageConnectionSummary": AzureDataLakeStorageConnectionSummary, "AzureDataLakeStorageIcebergStorage": AzureDataLakeStorageIcebergStorage, @@ -376,10 +414,13 @@ "ConnectionCollection": ConnectionCollection, "ConnectionSummary": ConnectionSummary, "CopyDeploymentBackupDetails": CopyDeploymentBackupDetails, + "CreateAiModelAuthDetails": CreateAiModelAuthDetails, + "CreateAiModelConnectionDetails": CreateAiModelConnectionDetails, "CreateAmazonKinesisConnectionDetails": CreateAmazonKinesisConnectionDetails, "CreateAmazonRedshiftConnectionDetails": CreateAmazonRedshiftConnectionDetails, "CreateAmazonS3ConnectionDetails": CreateAmazonS3ConnectionDetails, "CreateAmazonS3IcebergStorageDetails": CreateAmazonS3IcebergStorageDetails, + "CreateApiKeyAiModelAuthDetails": CreateApiKeyAiModelAuthDetails, "CreateAzureDataLakeStorageConnectionDetails": CreateAzureDataLakeStorageConnectionDetails, "CreateAzureDataLakeStorageIcebergStorageDetails": CreateAzureDataLakeStorageIcebergStorageDetails, "CreateAzureSynapseConnectionDetails": CreateAzureSynapseConnectionDetails, @@ -416,7 +457,10 @@ "CreateMongoDbConnectionDetails": CreateMongoDbConnectionDetails, "CreateMysqlConnectionDetails": CreateMysqlConnectionDetails, "CreateNessieIcebergCatalogDetails": CreateNessieIcebergCatalogDetails, + "CreateNoIcebergStorageDetails": CreateNoIcebergStorageDetails, + "CreateOciGenAiModelAuthDetails": CreateOciGenAiModelAuthDetails, "CreateOciObjectStorageConnectionDetails": CreateOciObjectStorageConnectionDetails, + "CreateOciObjectStorageS3ApiIcebergStorageDetails": CreateOciObjectStorageS3ApiIcebergStorageDetails, "CreateOggDeploymentDetails": CreateOggDeploymentDetails, "CreateOracleAiDataPlatformConnectionDetails": CreateOracleAiDataPlatformConnectionDetails, "CreateOracleConnectionDetails": CreateOracleConnectionDetails, @@ -537,8 +581,14 @@ "NameValuePair": NameValuePair, "NessieIcebergCatalog": NessieIcebergCatalog, "NessieIcebergCatalogSummary": NessieIcebergCatalogSummary, + "NoIcebergStorage": NoIcebergStorage, + "NoIcebergStorageSummary": NoIcebergStorageSummary, + "OciGenAiModelAuthDetails": OciGenAiModelAuthDetails, + "OciGenAiModelAuthDetailsSummary": OciGenAiModelAuthDetailsSummary, "OciObjectStorageConnection": OciObjectStorageConnection, "OciObjectStorageConnectionSummary": OciObjectStorageConnectionSummary, + "OciObjectStorageS3ApiIcebergStorage": OciObjectStorageS3ApiIcebergStorage, + "OciObjectStorageS3ApiIcebergStorageSummary": OciObjectStorageS3ApiIcebergStorageSummary, "OggDeployment": OggDeployment, "OracleAiDataPlatformConnection": OracleAiDataPlatformConnection, "OracleAiDataPlatformConnectionSummary": OracleAiDataPlatformConnectionSummary, @@ -601,10 +651,13 @@ "TrailFileSummary": TrailFileSummary, "TrailSequenceCollection": TrailSequenceCollection, "TrailSequenceSummary": TrailSequenceSummary, + "UpdateAiModelAuthDetails": UpdateAiModelAuthDetails, + "UpdateAiModelConnectionDetails": UpdateAiModelConnectionDetails, "UpdateAmazonKinesisConnectionDetails": UpdateAmazonKinesisConnectionDetails, "UpdateAmazonRedshiftConnectionDetails": UpdateAmazonRedshiftConnectionDetails, "UpdateAmazonS3ConnectionDetails": UpdateAmazonS3ConnectionDetails, "UpdateAmazonS3IcebergStorageDetails": UpdateAmazonS3IcebergStorageDetails, + "UpdateApiKeyAiModelAuthDetails": UpdateApiKeyAiModelAuthDetails, "UpdateAzureDataLakeStorageConnectionDetails": UpdateAzureDataLakeStorageConnectionDetails, "UpdateAzureDataLakeStorageIcebergStorageDetails": UpdateAzureDataLakeStorageIcebergStorageDetails, "UpdateAzureSynapseConnectionDetails": UpdateAzureSynapseConnectionDetails, @@ -639,7 +692,10 @@ "UpdateMongoDbConnectionDetails": UpdateMongoDbConnectionDetails, "UpdateMysqlConnectionDetails": UpdateMysqlConnectionDetails, "UpdateNessieIcebergCatalogDetails": UpdateNessieIcebergCatalogDetails, + "UpdateNoIcebergStorageDetails": UpdateNoIcebergStorageDetails, + "UpdateOciGenAiModelAuthDetails": UpdateOciGenAiModelAuthDetails, "UpdateOciObjectStorageConnectionDetails": UpdateOciObjectStorageConnectionDetails, + "UpdateOciObjectStorageS3ApiIcebergStorageDetails": UpdateOciObjectStorageS3ApiIcebergStorageDetails, "UpdateOggDeploymentDetails": UpdateOggDeploymentDetails, "UpdateOracleAiDataPlatformConnectionDetails": UpdateOracleAiDataPlatformConnectionDetails, "UpdateOracleConnectionDetails": UpdateOracleConnectionDetails, diff --git a/src/oci/golden_gate/models/ai_model_auth_details.py b/src/oci/golden_gate/models/ai_model_auth_details.py new file mode 100644 index 0000000000..071a392324 --- /dev/null +++ b/src/oci/golden_gate/models/ai_model_auth_details.py @@ -0,0 +1,107 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class AiModelAuthDetails(object): + """ + Represents authentication details for an AI Model connection. + """ + + #: A constant which can be used with the auth_type property of a AiModelAuthDetails. + #: This constant has a value of "OCI_GEN_AI" + AUTH_TYPE_OCI_GEN_AI = "OCI_GEN_AI" + + #: A constant which can be used with the auth_type property of a AiModelAuthDetails. + #: This constant has a value of "API_KEY" + AUTH_TYPE_API_KEY = "API_KEY" + + def __init__(self, **kwargs): + """ + Initializes a new AiModelAuthDetails object with values from keyword arguments. This class has the following subclasses and if you are using this class as input + to a service operations then you should favor using a subclass over the base class: + + * :class:`~oci.golden_gate.models.OciGenAiModelAuthDetails` + * :class:`~oci.golden_gate.models.ApiKeyAiModelAuthDetails` + + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param auth_type: + The value to assign to the auth_type property of this AiModelAuthDetails. + Allowed values for this property are: "OCI_GEN_AI", "API_KEY", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type auth_type: str + + """ + self.swagger_types = { + 'auth_type': 'str' + } + self.attribute_map = { + 'auth_type': 'authType' + } + self._auth_type = None + + @staticmethod + def get_subtype(object_dictionary): + """ + Given the hash representation of a subtype of this class, + use the info in the hash to return the class of the subtype. + """ + type = object_dictionary['authType'] + + if type == 'OCI_GEN_AI': + return 'OciGenAiModelAuthDetails' + + if type == 'API_KEY': + return 'ApiKeyAiModelAuthDetails' + else: + return 'AiModelAuthDetails' + + @property + def auth_type(self): + """ + **[Required]** Gets the auth_type of this AiModelAuthDetails. + Authentication type used by the AI model connection. + + Allowed values for this property are: "OCI_GEN_AI", "API_KEY", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The auth_type of this AiModelAuthDetails. + :rtype: str + """ + return self._auth_type + + @auth_type.setter + def auth_type(self, auth_type): + """ + Sets the auth_type of this AiModelAuthDetails. + Authentication type used by the AI model connection. + + + :param auth_type: The auth_type of this AiModelAuthDetails. + :type: str + """ + allowed_values = ["OCI_GEN_AI", "API_KEY"] + if not value_allowed_none_or_none_sentinel(auth_type, allowed_values): + auth_type = 'UNKNOWN_ENUM_VALUE' + self._auth_type = auth_type + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/golden_gate/models/ai_model_auth_details_summary.py b/src/oci/golden_gate/models/ai_model_auth_details_summary.py new file mode 100644 index 0000000000..cfd707e2f5 --- /dev/null +++ b/src/oci/golden_gate/models/ai_model_auth_details_summary.py @@ -0,0 +1,107 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class AiModelAuthDetailsSummary(object): + """ + Summary of authentication details for an AI Model connection. + """ + + #: A constant which can be used with the auth_type property of a AiModelAuthDetailsSummary. + #: This constant has a value of "OCI_GEN_AI" + AUTH_TYPE_OCI_GEN_AI = "OCI_GEN_AI" + + #: A constant which can be used with the auth_type property of a AiModelAuthDetailsSummary. + #: This constant has a value of "API_KEY" + AUTH_TYPE_API_KEY = "API_KEY" + + def __init__(self, **kwargs): + """ + Initializes a new AiModelAuthDetailsSummary object with values from keyword arguments. This class has the following subclasses and if you are using this class as input + to a service operations then you should favor using a subclass over the base class: + + * :class:`~oci.golden_gate.models.ApiKeyAiModelAuthDetailsSummary` + * :class:`~oci.golden_gate.models.OciGenAiModelAuthDetailsSummary` + + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param auth_type: + The value to assign to the auth_type property of this AiModelAuthDetailsSummary. + Allowed values for this property are: "OCI_GEN_AI", "API_KEY", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type auth_type: str + + """ + self.swagger_types = { + 'auth_type': 'str' + } + self.attribute_map = { + 'auth_type': 'authType' + } + self._auth_type = None + + @staticmethod + def get_subtype(object_dictionary): + """ + Given the hash representation of a subtype of this class, + use the info in the hash to return the class of the subtype. + """ + type = object_dictionary['authType'] + + if type == 'API_KEY': + return 'ApiKeyAiModelAuthDetailsSummary' + + if type == 'OCI_GEN_AI': + return 'OciGenAiModelAuthDetailsSummary' + else: + return 'AiModelAuthDetailsSummary' + + @property + def auth_type(self): + """ + **[Required]** Gets the auth_type of this AiModelAuthDetailsSummary. + Authentication type used by the AI model connection. + + Allowed values for this property are: "OCI_GEN_AI", "API_KEY", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The auth_type of this AiModelAuthDetailsSummary. + :rtype: str + """ + return self._auth_type + + @auth_type.setter + def auth_type(self, auth_type): + """ + Sets the auth_type of this AiModelAuthDetailsSummary. + Authentication type used by the AI model connection. + + + :param auth_type: The auth_type of this AiModelAuthDetailsSummary. + :type: str + """ + allowed_values = ["OCI_GEN_AI", "API_KEY"] + if not value_allowed_none_or_none_sentinel(auth_type, allowed_values): + auth_type = 'UNKNOWN_ENUM_VALUE' + self._auth_type = auth_type + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/golden_gate/models/ai_model_collection.py b/src/oci/golden_gate/models/ai_model_collection.py new file mode 100644 index 0000000000..0bfed0f1de --- /dev/null +++ b/src/oci/golden_gate/models/ai_model_collection.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class AiModelCollection(object): + """ + Collection of AI models currently known by GoldenGate for the specified provider. + """ + + def __init__(self, **kwargs): + """ + Initializes a new AiModelCollection object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this AiModelCollection. + :type items: list[oci.golden_gate.models.AiModelSummary] + + """ + self.swagger_types = { + 'items': 'list[AiModelSummary]' + } + self.attribute_map = { + 'items': 'items' + } + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this AiModelCollection. + An array of AI models. + + + :return: The items of this AiModelCollection. + :rtype: list[oci.golden_gate.models.AiModelSummary] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this AiModelCollection. + An array of AI models. + + + :param items: The items of this AiModelCollection. + :type: list[oci.golden_gate.models.AiModelSummary] + """ + self._items = items + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/golden_gate/models/ai_model_connection.py b/src/oci/golden_gate/models/ai_model_connection.py new file mode 100644 index 0000000000..0dfb5c0935 --- /dev/null +++ b/src/oci/golden_gate/models/ai_model_connection.py @@ -0,0 +1,395 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 + +from .connection import Connection +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class AiModelConnection(Connection): + """ + Represents the metadata of an AI Model Connection. + """ + + #: A constant which can be used with the technology_type property of a AiModelConnection. + #: This constant has a value of "AI_MODEL" + TECHNOLOGY_TYPE_AI_MODEL = "AI_MODEL" + + #: A constant which can be used with the provider_type property of a AiModelConnection. + #: This constant has a value of "OCI_GENERATIVE_AI" + PROVIDER_TYPE_OCI_GENERATIVE_AI = "OCI_GENERATIVE_AI" + + #: A constant which can be used with the provider_type property of a AiModelConnection. + #: This constant has a value of "GEMINI" + PROVIDER_TYPE_GEMINI = "GEMINI" + + #: A constant which can be used with the provider_type property of a AiModelConnection. + #: This constant has a value of "OPEN_AI" + PROVIDER_TYPE_OPEN_AI = "OPEN_AI" + + #: A constant which can be used with the provider_type property of a AiModelConnection. + #: This constant has a value of "VOYAGE_AI" + PROVIDER_TYPE_VOYAGE_AI = "VOYAGE_AI" + + def __init__(self, **kwargs): + """ + Initializes a new AiModelConnection object with values from keyword arguments. The default value of the :py:attr:`~oci.golden_gate.models.AiModelConnection.connection_type` attribute + of this class is ``AI_MODEL`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param connection_type: + The value to assign to the connection_type property of this AiModelConnection. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type connection_type: str + + :param id: + The value to assign to the id property of this AiModelConnection. + :type id: str + + :param display_name: + The value to assign to the display_name property of this AiModelConnection. + :type display_name: str + + :param description: + The value to assign to the description property of this AiModelConnection. + :type description: str + + :param compartment_id: + The value to assign to the compartment_id property of this AiModelConnection. + :type compartment_id: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this AiModelConnection. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this AiModelConnection. + :type defined_tags: dict(str, dict(str, object)) + + :param system_tags: + The value to assign to the system_tags property of this AiModelConnection. + :type system_tags: dict(str, dict(str, object)) + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this AiModelConnection. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + :param lifecycle_details: + The value to assign to the lifecycle_details property of this AiModelConnection. + :type lifecycle_details: str + + :param time_created: + The value to assign to the time_created property of this AiModelConnection. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this AiModelConnection. + :type time_updated: datetime + + :param locks: + The value to assign to the locks property of this AiModelConnection. + :type locks: list[oci.golden_gate.models.ResourceLock] + + :param vault_id: + The value to assign to the vault_id property of this AiModelConnection. + :type vault_id: str + + :param key_id: + The value to assign to the key_id property of this AiModelConnection. + :type key_id: str + + :param ingress_ips: + The value to assign to the ingress_ips property of this AiModelConnection. + :type ingress_ips: list[oci.golden_gate.models.IngressIpDetails] + + :param nsg_ids: + The value to assign to the nsg_ids property of this AiModelConnection. + :type nsg_ids: list[str] + + :param subnet_id: + The value to assign to the subnet_id property of this AiModelConnection. + :type subnet_id: str + + :param routing_method: + The value to assign to the routing_method property of this AiModelConnection. + Allowed values for this property are: "SHARED_SERVICE_ENDPOINT", "SHARED_DEPLOYMENT_ENDPOINT", "DEDICATED_ENDPOINT", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type routing_method: str + + :param does_use_secret_ids: + The value to assign to the does_use_secret_ids property of this AiModelConnection. + :type does_use_secret_ids: bool + + :param subscription_id: + The value to assign to the subscription_id property of this AiModelConnection. + :type subscription_id: str + + :param cluster_placement_group_id: + The value to assign to the cluster_placement_group_id property of this AiModelConnection. + :type cluster_placement_group_id: str + + :param security_attributes: + The value to assign to the security_attributes property of this AiModelConnection. + :type security_attributes: dict(str, dict(str, object)) + + :param technology_type: + The value to assign to the technology_type property of this AiModelConnection. + Allowed values for this property are: "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type technology_type: str + + :param provider_type: + The value to assign to the provider_type property of this AiModelConnection. + Allowed values for this property are: "OCI_GENERATIVE_AI", "GEMINI", "OPEN_AI", "VOYAGE_AI", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type provider_type: str + + :param model_key: + The value to assign to the model_key property of this AiModelConnection. + :type model_key: str + + :param max_input_chars: + The value to assign to the max_input_chars property of this AiModelConnection. + :type max_input_chars: int + + :param auth_details: + The value to assign to the auth_details property of this AiModelConnection. + :type auth_details: oci.golden_gate.models.AiModelAuthDetails + + """ + self.swagger_types = { + 'connection_type': 'str', + 'id': 'str', + 'display_name': 'str', + 'description': 'str', + 'compartment_id': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))', + 'lifecycle_state': 'str', + 'lifecycle_details': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'locks': 'list[ResourceLock]', + 'vault_id': 'str', + 'key_id': 'str', + 'ingress_ips': 'list[IngressIpDetails]', + 'nsg_ids': 'list[str]', + 'subnet_id': 'str', + 'routing_method': 'str', + 'does_use_secret_ids': 'bool', + 'subscription_id': 'str', + 'cluster_placement_group_id': 'str', + 'security_attributes': 'dict(str, dict(str, object))', + 'technology_type': 'str', + 'provider_type': 'str', + 'model_key': 'str', + 'max_input_chars': 'int', + 'auth_details': 'AiModelAuthDetails' + } + self.attribute_map = { + 'connection_type': 'connectionType', + 'id': 'id', + 'display_name': 'displayName', + 'description': 'description', + 'compartment_id': 'compartmentId', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags', + 'lifecycle_state': 'lifecycleState', + 'lifecycle_details': 'lifecycleDetails', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'locks': 'locks', + 'vault_id': 'vaultId', + 'key_id': 'keyId', + 'ingress_ips': 'ingressIps', + 'nsg_ids': 'nsgIds', + 'subnet_id': 'subnetId', + 'routing_method': 'routingMethod', + 'does_use_secret_ids': 'doesUseSecretIds', + 'subscription_id': 'subscriptionId', + 'cluster_placement_group_id': 'clusterPlacementGroupId', + 'security_attributes': 'securityAttributes', + 'technology_type': 'technologyType', + 'provider_type': 'providerType', + 'model_key': 'modelKey', + 'max_input_chars': 'maxInputChars', + 'auth_details': 'authDetails' + } + self._connection_type = None + self._id = None + self._display_name = None + self._description = None + self._compartment_id = None + self._freeform_tags = None + self._defined_tags = None + self._system_tags = None + self._lifecycle_state = None + self._lifecycle_details = None + self._time_created = None + self._time_updated = None + self._locks = None + self._vault_id = None + self._key_id = None + self._ingress_ips = None + self._nsg_ids = None + self._subnet_id = None + self._routing_method = None + self._does_use_secret_ids = None + self._subscription_id = None + self._cluster_placement_group_id = None + self._security_attributes = None + self._technology_type = None + self._provider_type = None + self._model_key = None + self._max_input_chars = None + self._auth_details = None + self._connection_type = 'AI_MODEL' + + @property + def technology_type(self): + """ + **[Required]** Gets the technology_type of this AiModelConnection. + The AI Model technology type. + + Allowed values for this property are: "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The technology_type of this AiModelConnection. + :rtype: str + """ + return self._technology_type + + @technology_type.setter + def technology_type(self, technology_type): + """ + Sets the technology_type of this AiModelConnection. + The AI Model technology type. + + + :param technology_type: The technology_type of this AiModelConnection. + :type: str + """ + allowed_values = ["AI_MODEL"] + if not value_allowed_none_or_none_sentinel(technology_type, allowed_values): + technology_type = 'UNKNOWN_ENUM_VALUE' + self._technology_type = technology_type + + @property + def provider_type(self): + """ + Gets the provider_type of this AiModelConnection. + AI Provider type used by the AI Model Connection. + + Allowed values for this property are: "OCI_GENERATIVE_AI", "GEMINI", "OPEN_AI", "VOYAGE_AI", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The provider_type of this AiModelConnection. + :rtype: str + """ + return self._provider_type + + @provider_type.setter + def provider_type(self, provider_type): + """ + Sets the provider_type of this AiModelConnection. + AI Provider type used by the AI Model Connection. + + + :param provider_type: The provider_type of this AiModelConnection. + :type: str + """ + allowed_values = ["OCI_GENERATIVE_AI", "GEMINI", "OPEN_AI", "VOYAGE_AI"] + if not value_allowed_none_or_none_sentinel(provider_type, allowed_values): + provider_type = 'UNKNOWN_ENUM_VALUE' + self._provider_type = provider_type + + @property + def model_key(self): + """ + **[Required]** Gets the model_key of this AiModelConnection. + AI model identifier. + + + :return: The model_key of this AiModelConnection. + :rtype: str + """ + return self._model_key + + @model_key.setter + def model_key(self, model_key): + """ + Sets the model_key of this AiModelConnection. + AI model identifier. + + + :param model_key: The model_key of this AiModelConnection. + :type: str + """ + self._model_key = model_key + + @property + def max_input_chars(self): + """ + Gets the max_input_chars of this AiModelConnection. + Maximum number of input characters supported by this AI model connection. + + + :return: The max_input_chars of this AiModelConnection. + :rtype: int + """ + return self._max_input_chars + + @max_input_chars.setter + def max_input_chars(self, max_input_chars): + """ + Sets the max_input_chars of this AiModelConnection. + Maximum number of input characters supported by this AI model connection. + + + :param max_input_chars: The max_input_chars of this AiModelConnection. + :type: int + """ + self._max_input_chars = max_input_chars + + @property + def auth_details(self): + """ + Gets the auth_details of this AiModelConnection. + + :return: The auth_details of this AiModelConnection. + :rtype: oci.golden_gate.models.AiModelAuthDetails + """ + return self._auth_details + + @auth_details.setter + def auth_details(self, auth_details): + """ + Sets the auth_details of this AiModelConnection. + + :param auth_details: The auth_details of this AiModelConnection. + :type: oci.golden_gate.models.AiModelAuthDetails + """ + self._auth_details = auth_details + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/golden_gate/models/ai_model_connection_summary.py b/src/oci/golden_gate/models/ai_model_connection_summary.py new file mode 100644 index 0000000000..9697b7fc18 --- /dev/null +++ b/src/oci/golden_gate/models/ai_model_connection_summary.py @@ -0,0 +1,381 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 + +from .connection_summary import ConnectionSummary +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class AiModelConnectionSummary(ConnectionSummary): + """ + Summary of the AI Model Connection. + """ + + #: A constant which can be used with the provider_type property of a AiModelConnectionSummary. + #: This constant has a value of "OCI_GENERATIVE_AI" + PROVIDER_TYPE_OCI_GENERATIVE_AI = "OCI_GENERATIVE_AI" + + #: A constant which can be used with the provider_type property of a AiModelConnectionSummary. + #: This constant has a value of "GEMINI" + PROVIDER_TYPE_GEMINI = "GEMINI" + + #: A constant which can be used with the provider_type property of a AiModelConnectionSummary. + #: This constant has a value of "OPEN_AI" + PROVIDER_TYPE_OPEN_AI = "OPEN_AI" + + #: A constant which can be used with the provider_type property of a AiModelConnectionSummary. + #: This constant has a value of "VOYAGE_AI" + PROVIDER_TYPE_VOYAGE_AI = "VOYAGE_AI" + + def __init__(self, **kwargs): + """ + Initializes a new AiModelConnectionSummary object with values from keyword arguments. The default value of the :py:attr:`~oci.golden_gate.models.AiModelConnectionSummary.connection_type` attribute + of this class is ``AI_MODEL`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param connection_type: + The value to assign to the connection_type property of this AiModelConnectionSummary. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type connection_type: str + + :param id: + The value to assign to the id property of this AiModelConnectionSummary. + :type id: str + + :param display_name: + The value to assign to the display_name property of this AiModelConnectionSummary. + :type display_name: str + + :param description: + The value to assign to the description property of this AiModelConnectionSummary. + :type description: str + + :param compartment_id: + The value to assign to the compartment_id property of this AiModelConnectionSummary. + :type compartment_id: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this AiModelConnectionSummary. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this AiModelConnectionSummary. + :type defined_tags: dict(str, dict(str, object)) + + :param system_tags: + The value to assign to the system_tags property of this AiModelConnectionSummary. + :type system_tags: dict(str, dict(str, object)) + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this AiModelConnectionSummary. + :type lifecycle_state: str + + :param lifecycle_details: + The value to assign to the lifecycle_details property of this AiModelConnectionSummary. + :type lifecycle_details: str + + :param time_created: + The value to assign to the time_created property of this AiModelConnectionSummary. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this AiModelConnectionSummary. + :type time_updated: datetime + + :param vault_id: + The value to assign to the vault_id property of this AiModelConnectionSummary. + :type vault_id: str + + :param key_id: + The value to assign to the key_id property of this AiModelConnectionSummary. + :type key_id: str + + :param ingress_ips: + The value to assign to the ingress_ips property of this AiModelConnectionSummary. + :type ingress_ips: list[oci.golden_gate.models.IngressIpDetails] + + :param nsg_ids: + The value to assign to the nsg_ids property of this AiModelConnectionSummary. + :type nsg_ids: list[str] + + :param subnet_id: + The value to assign to the subnet_id property of this AiModelConnectionSummary. + :type subnet_id: str + + :param routing_method: + The value to assign to the routing_method property of this AiModelConnectionSummary. + Allowed values for this property are: "SHARED_SERVICE_ENDPOINT", "SHARED_DEPLOYMENT_ENDPOINT", "DEDICATED_ENDPOINT", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type routing_method: str + + :param locks: + The value to assign to the locks property of this AiModelConnectionSummary. + :type locks: list[oci.golden_gate.models.ResourceLock] + + :param does_use_secret_ids: + The value to assign to the does_use_secret_ids property of this AiModelConnectionSummary. + :type does_use_secret_ids: bool + + :param subscription_id: + The value to assign to the subscription_id property of this AiModelConnectionSummary. + :type subscription_id: str + + :param cluster_placement_group_id: + The value to assign to the cluster_placement_group_id property of this AiModelConnectionSummary. + :type cluster_placement_group_id: str + + :param security_attributes: + The value to assign to the security_attributes property of this AiModelConnectionSummary. + :type security_attributes: dict(str, dict(str, object)) + + :param technology_type: + The value to assign to the technology_type property of this AiModelConnectionSummary. + :type technology_type: str + + :param provider_type: + The value to assign to the provider_type property of this AiModelConnectionSummary. + Allowed values for this property are: "OCI_GENERATIVE_AI", "GEMINI", "OPEN_AI", "VOYAGE_AI", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type provider_type: str + + :param model_key: + The value to assign to the model_key property of this AiModelConnectionSummary. + :type model_key: str + + :param max_input_chars: + The value to assign to the max_input_chars property of this AiModelConnectionSummary. + :type max_input_chars: int + + :param auth_details: + The value to assign to the auth_details property of this AiModelConnectionSummary. + :type auth_details: oci.golden_gate.models.AiModelAuthDetailsSummary + + """ + self.swagger_types = { + 'connection_type': 'str', + 'id': 'str', + 'display_name': 'str', + 'description': 'str', + 'compartment_id': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))', + 'lifecycle_state': 'str', + 'lifecycle_details': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'vault_id': 'str', + 'key_id': 'str', + 'ingress_ips': 'list[IngressIpDetails]', + 'nsg_ids': 'list[str]', + 'subnet_id': 'str', + 'routing_method': 'str', + 'locks': 'list[ResourceLock]', + 'does_use_secret_ids': 'bool', + 'subscription_id': 'str', + 'cluster_placement_group_id': 'str', + 'security_attributes': 'dict(str, dict(str, object))', + 'technology_type': 'str', + 'provider_type': 'str', + 'model_key': 'str', + 'max_input_chars': 'int', + 'auth_details': 'AiModelAuthDetailsSummary' + } + self.attribute_map = { + 'connection_type': 'connectionType', + 'id': 'id', + 'display_name': 'displayName', + 'description': 'description', + 'compartment_id': 'compartmentId', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags', + 'lifecycle_state': 'lifecycleState', + 'lifecycle_details': 'lifecycleDetails', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'vault_id': 'vaultId', + 'key_id': 'keyId', + 'ingress_ips': 'ingressIps', + 'nsg_ids': 'nsgIds', + 'subnet_id': 'subnetId', + 'routing_method': 'routingMethod', + 'locks': 'locks', + 'does_use_secret_ids': 'doesUseSecretIds', + 'subscription_id': 'subscriptionId', + 'cluster_placement_group_id': 'clusterPlacementGroupId', + 'security_attributes': 'securityAttributes', + 'technology_type': 'technologyType', + 'provider_type': 'providerType', + 'model_key': 'modelKey', + 'max_input_chars': 'maxInputChars', + 'auth_details': 'authDetails' + } + self._connection_type = None + self._id = None + self._display_name = None + self._description = None + self._compartment_id = None + self._freeform_tags = None + self._defined_tags = None + self._system_tags = None + self._lifecycle_state = None + self._lifecycle_details = None + self._time_created = None + self._time_updated = None + self._vault_id = None + self._key_id = None + self._ingress_ips = None + self._nsg_ids = None + self._subnet_id = None + self._routing_method = None + self._locks = None + self._does_use_secret_ids = None + self._subscription_id = None + self._cluster_placement_group_id = None + self._security_attributes = None + self._technology_type = None + self._provider_type = None + self._model_key = None + self._max_input_chars = None + self._auth_details = None + self._connection_type = 'AI_MODEL' + + @property + def technology_type(self): + """ + **[Required]** Gets the technology_type of this AiModelConnectionSummary. + The AI Model technology type. + + + :return: The technology_type of this AiModelConnectionSummary. + :rtype: str + """ + return self._technology_type + + @technology_type.setter + def technology_type(self, technology_type): + """ + Sets the technology_type of this AiModelConnectionSummary. + The AI Model technology type. + + + :param technology_type: The technology_type of this AiModelConnectionSummary. + :type: str + """ + self._technology_type = technology_type + + @property + def provider_type(self): + """ + Gets the provider_type of this AiModelConnectionSummary. + AI Provider type used by the AI Model Connection. + + Allowed values for this property are: "OCI_GENERATIVE_AI", "GEMINI", "OPEN_AI", "VOYAGE_AI", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The provider_type of this AiModelConnectionSummary. + :rtype: str + """ + return self._provider_type + + @provider_type.setter + def provider_type(self, provider_type): + """ + Sets the provider_type of this AiModelConnectionSummary. + AI Provider type used by the AI Model Connection. + + + :param provider_type: The provider_type of this AiModelConnectionSummary. + :type: str + """ + allowed_values = ["OCI_GENERATIVE_AI", "GEMINI", "OPEN_AI", "VOYAGE_AI"] + if not value_allowed_none_or_none_sentinel(provider_type, allowed_values): + provider_type = 'UNKNOWN_ENUM_VALUE' + self._provider_type = provider_type + + @property + def model_key(self): + """ + **[Required]** Gets the model_key of this AiModelConnectionSummary. + AI model identifier. + + + :return: The model_key of this AiModelConnectionSummary. + :rtype: str + """ + return self._model_key + + @model_key.setter + def model_key(self, model_key): + """ + Sets the model_key of this AiModelConnectionSummary. + AI model identifier. + + + :param model_key: The model_key of this AiModelConnectionSummary. + :type: str + """ + self._model_key = model_key + + @property + def max_input_chars(self): + """ + Gets the max_input_chars of this AiModelConnectionSummary. + Maximum number of input characters supported by this AI model connection. + + + :return: The max_input_chars of this AiModelConnectionSummary. + :rtype: int + """ + return self._max_input_chars + + @max_input_chars.setter + def max_input_chars(self, max_input_chars): + """ + Sets the max_input_chars of this AiModelConnectionSummary. + Maximum number of input characters supported by this AI model connection. + + + :param max_input_chars: The max_input_chars of this AiModelConnectionSummary. + :type: int + """ + self._max_input_chars = max_input_chars + + @property + def auth_details(self): + """ + Gets the auth_details of this AiModelConnectionSummary. + + :return: The auth_details of this AiModelConnectionSummary. + :rtype: oci.golden_gate.models.AiModelAuthDetailsSummary + """ + return self._auth_details + + @auth_details.setter + def auth_details(self, auth_details): + """ + Sets the auth_details of this AiModelConnectionSummary. + + :param auth_details: The auth_details of this AiModelConnectionSummary. + :type: oci.golden_gate.models.AiModelAuthDetailsSummary + """ + self._auth_details = auth_details + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/golden_gate/models/ai_model_summary.py b/src/oci/golden_gate/models/ai_model_summary.py new file mode 100644 index 0000000000..e798d57980 --- /dev/null +++ b/src/oci/golden_gate/models/ai_model_summary.py @@ -0,0 +1,187 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class AiModelSummary(object): + """ + Summary details of an AI model supported by a provider. + """ + + #: A constant which can be used with the provider_type property of a AiModelSummary. + #: This constant has a value of "OCI_GENERATIVE_AI" + PROVIDER_TYPE_OCI_GENERATIVE_AI = "OCI_GENERATIVE_AI" + + #: A constant which can be used with the provider_type property of a AiModelSummary. + #: This constant has a value of "GEMINI" + PROVIDER_TYPE_GEMINI = "GEMINI" + + #: A constant which can be used with the provider_type property of a AiModelSummary. + #: This constant has a value of "OPEN_AI" + PROVIDER_TYPE_OPEN_AI = "OPEN_AI" + + #: A constant which can be used with the provider_type property of a AiModelSummary. + #: This constant has a value of "VOYAGE_AI" + PROVIDER_TYPE_VOYAGE_AI = "VOYAGE_AI" + + def __init__(self, **kwargs): + """ + Initializes a new AiModelSummary object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param key: + The value to assign to the key property of this AiModelSummary. + :type key: str + + :param provider_type: + The value to assign to the provider_type property of this AiModelSummary. + Allowed values for this property are: "OCI_GENERATIVE_AI", "GEMINI", "OPEN_AI", "VOYAGE_AI", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type provider_type: str + + :param display_name: + The value to assign to the display_name property of this AiModelSummary. + :type display_name: str + + :param description: + The value to assign to the description property of this AiModelSummary. + :type description: str + + """ + self.swagger_types = { + 'key': 'str', + 'provider_type': 'str', + 'display_name': 'str', + 'description': 'str' + } + self.attribute_map = { + 'key': 'key', + 'provider_type': 'providerType', + 'display_name': 'displayName', + 'description': 'description' + } + self._key = None + self._provider_type = None + self._display_name = None + self._description = None + + @property + def key(self): + """ + **[Required]** Gets the key of this AiModelSummary. + The identifier of the AI model offered by a provider. + + + :return: The key of this AiModelSummary. + :rtype: str + """ + return self._key + + @key.setter + def key(self, key): + """ + Sets the key of this AiModelSummary. + The identifier of the AI model offered by a provider. + + + :param key: The key of this AiModelSummary. + :type: str + """ + self._key = key + + @property + def provider_type(self): + """ + **[Required]** Gets the provider_type of this AiModelSummary. + AI Provider type used by the AI Model Connection. + + Allowed values for this property are: "OCI_GENERATIVE_AI", "GEMINI", "OPEN_AI", "VOYAGE_AI", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The provider_type of this AiModelSummary. + :rtype: str + """ + return self._provider_type + + @provider_type.setter + def provider_type(self, provider_type): + """ + Sets the provider_type of this AiModelSummary. + AI Provider type used by the AI Model Connection. + + + :param provider_type: The provider_type of this AiModelSummary. + :type: str + """ + allowed_values = ["OCI_GENERATIVE_AI", "GEMINI", "OPEN_AI", "VOYAGE_AI"] + if not value_allowed_none_or_none_sentinel(provider_type, allowed_values): + provider_type = 'UNKNOWN_ENUM_VALUE' + self._provider_type = provider_type + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this AiModelSummary. + An object's Display Name. + + + :return: The display_name of this AiModelSummary. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this AiModelSummary. + An object's Display Name. + + + :param display_name: The display_name of this AiModelSummary. + :type: str + """ + self._display_name = display_name + + @property + def description(self): + """ + **[Required]** Gets the description of this AiModelSummary. + Metadata about this specific object. + + + :return: The description of this AiModelSummary. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this AiModelSummary. + Metadata about this specific object. + + + :param description: The description of this AiModelSummary. + :type: str + """ + self._description = description + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/golden_gate/models/ai_provider_collection.py b/src/oci/golden_gate/models/ai_provider_collection.py new file mode 100644 index 0000000000..7dd4b50c10 --- /dev/null +++ b/src/oci/golden_gate/models/ai_provider_collection.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class AiProviderCollection(object): + """ + Collection of AI providers supported by GoldenGate. + """ + + def __init__(self, **kwargs): + """ + Initializes a new AiProviderCollection object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this AiProviderCollection. + :type items: list[oci.golden_gate.models.AiProviderSummary] + + """ + self.swagger_types = { + 'items': 'list[AiProviderSummary]' + } + self.attribute_map = { + 'items': 'items' + } + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this AiProviderCollection. + An array of AI providers. + + + :return: The items of this AiProviderCollection. + :rtype: list[oci.golden_gate.models.AiProviderSummary] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this AiProviderCollection. + An array of AI providers. + + + :param items: The items of this AiProviderCollection. + :type: list[oci.golden_gate.models.AiProviderSummary] + """ + self._items = items + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/golden_gate/models/ai_provider_summary.py b/src/oci/golden_gate/models/ai_provider_summary.py new file mode 100644 index 0000000000..b30470c337 --- /dev/null +++ b/src/oci/golden_gate/models/ai_provider_summary.py @@ -0,0 +1,255 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class AiProviderSummary(object): + """ + Summary details of an AI provider and its supported models. + """ + + #: A constant which can be used with the provider_type property of a AiProviderSummary. + #: This constant has a value of "OCI_GENERATIVE_AI" + PROVIDER_TYPE_OCI_GENERATIVE_AI = "OCI_GENERATIVE_AI" + + #: A constant which can be used with the provider_type property of a AiProviderSummary. + #: This constant has a value of "GEMINI" + PROVIDER_TYPE_GEMINI = "GEMINI" + + #: A constant which can be used with the provider_type property of a AiProviderSummary. + #: This constant has a value of "OPEN_AI" + PROVIDER_TYPE_OPEN_AI = "OPEN_AI" + + #: A constant which can be used with the provider_type property of a AiProviderSummary. + #: This constant has a value of "VOYAGE_AI" + PROVIDER_TYPE_VOYAGE_AI = "VOYAGE_AI" + + def __init__(self, **kwargs): + """ + Initializes a new AiProviderSummary object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param provider_type: + The value to assign to the provider_type property of this AiProviderSummary. + Allowed values for this property are: "OCI_GENERATIVE_AI", "GEMINI", "OPEN_AI", "VOYAGE_AI", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type provider_type: str + + :param display_name: + The value to assign to the display_name property of this AiProviderSummary. + :type display_name: str + + :param description: + The value to assign to the description property of this AiProviderSummary. + :type description: str + + :param auth_type: + The value to assign to the auth_type property of this AiProviderSummary. + :type auth_type: list[oci.golden_gate.models.AiModelAuthType] + + :param default_base_url: + The value to assign to the default_base_url property of this AiProviderSummary. + :type default_base_url: str + + :param models: + The value to assign to the models property of this AiProviderSummary. + :type models: list[oci.golden_gate.models.AiModelSummary] + + """ + self.swagger_types = { + 'provider_type': 'str', + 'display_name': 'str', + 'description': 'str', + 'auth_type': 'list[AiModelAuthType]', + 'default_base_url': 'str', + 'models': 'list[AiModelSummary]' + } + self.attribute_map = { + 'provider_type': 'providerType', + 'display_name': 'displayName', + 'description': 'description', + 'auth_type': 'authType', + 'default_base_url': 'defaultBaseUrl', + 'models': 'models' + } + self._provider_type = None + self._display_name = None + self._description = None + self._auth_type = None + self._default_base_url = None + self._models = None + + @property + def provider_type(self): + """ + **[Required]** Gets the provider_type of this AiProviderSummary. + AI Provider type used by the AI Model Connection. + + Allowed values for this property are: "OCI_GENERATIVE_AI", "GEMINI", "OPEN_AI", "VOYAGE_AI", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The provider_type of this AiProviderSummary. + :rtype: str + """ + return self._provider_type + + @provider_type.setter + def provider_type(self, provider_type): + """ + Sets the provider_type of this AiProviderSummary. + AI Provider type used by the AI Model Connection. + + + :param provider_type: The provider_type of this AiProviderSummary. + :type: str + """ + allowed_values = ["OCI_GENERATIVE_AI", "GEMINI", "OPEN_AI", "VOYAGE_AI"] + if not value_allowed_none_or_none_sentinel(provider_type, allowed_values): + provider_type = 'UNKNOWN_ENUM_VALUE' + self._provider_type = provider_type + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this AiProviderSummary. + An object's Display Name. + + + :return: The display_name of this AiProviderSummary. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this AiProviderSummary. + An object's Display Name. + + + :param display_name: The display_name of this AiProviderSummary. + :type: str + """ + self._display_name = display_name + + @property + def description(self): + """ + **[Required]** Gets the description of this AiProviderSummary. + Metadata about this specific object. + + + :return: The description of this AiProviderSummary. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this AiProviderSummary. + Metadata about this specific object. + + + :param description: The description of this AiProviderSummary. + :type: str + """ + self._description = description + + @property + def auth_type(self): + """ + **[Required]** Gets the auth_type of this AiProviderSummary. + Authentication types supported by the AI provider. + + + :return: The auth_type of this AiProviderSummary. + :rtype: list[oci.golden_gate.models.AiModelAuthType] + """ + return self._auth_type + + @auth_type.setter + def auth_type(self, auth_type): + """ + Sets the auth_type of this AiProviderSummary. + Authentication types supported by the AI provider. + + + :param auth_type: The auth_type of this AiProviderSummary. + :type: list[oci.golden_gate.models.AiModelAuthType] + """ + self._auth_type = auth_type + + @property + def default_base_url(self): + """ + **[Required]** Gets the default_base_url of this AiProviderSummary. + Default base URL for the AI provider. + + + :return: The default_base_url of this AiProviderSummary. + :rtype: str + """ + return self._default_base_url + + @default_base_url.setter + def default_base_url(self, default_base_url): + """ + Sets the default_base_url of this AiProviderSummary. + Default base URL for the AI provider. + + + :param default_base_url: The default_base_url of this AiProviderSummary. + :type: str + """ + self._default_base_url = default_base_url + + @property + def models(self): + """ + Gets the models of this AiProviderSummary. + List of AI models supported by this provider, when available. This + field is null when the provider's models can be retrieved only after + supplying additional context. For example, OCI_GENERATIVE_AI model + availability may vary by region. + + + :return: The models of this AiProviderSummary. + :rtype: list[oci.golden_gate.models.AiModelSummary] + """ + return self._models + + @models.setter + def models(self, models): + """ + Sets the models of this AiProviderSummary. + List of AI models supported by this provider, when available. This + field is null when the provider's models can be retrieved only after + supplying additional context. For example, OCI_GENERATIVE_AI model + availability may vary by region. + + + :param models: The models of this AiProviderSummary. + :type: list[oci.golden_gate.models.AiModelSummary] + """ + self._models = models + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/golden_gate/models/amazon_kinesis_connection.py b/src/oci/golden_gate/models/amazon_kinesis_connection.py index 41d18da29c..ba5c5ca633 100644 --- a/src/oci/golden_gate/models/amazon_kinesis_connection.py +++ b/src/oci/golden_gate/models/amazon_kinesis_connection.py @@ -27,7 +27,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this AmazonKinesisConnection. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type connection_type: str @@ -61,7 +61,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this AmazonKinesisConnection. - Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str @@ -271,6 +271,7 @@ def access_key_id(self): """ **[Required]** Gets the access_key_id of this AmazonKinesisConnection. Access key ID to access the Amazon Kinesis. + Note: Despite the \"Id\" suffix, this value is not an OCI OCID. :return: The access_key_id of this AmazonKinesisConnection. @@ -283,6 +284,7 @@ def access_key_id(self, access_key_id): """ Sets the access_key_id of this AmazonKinesisConnection. Access key ID to access the Amazon Kinesis. + Note: Despite the \"Id\" suffix, this value is not an OCI OCID. :param access_key_id: The access_key_id of this AmazonKinesisConnection. diff --git a/src/oci/golden_gate/models/amazon_kinesis_connection_summary.py b/src/oci/golden_gate/models/amazon_kinesis_connection_summary.py index 446cb3dd61..d730dec522 100644 --- a/src/oci/golden_gate/models/amazon_kinesis_connection_summary.py +++ b/src/oci/golden_gate/models/amazon_kinesis_connection_summary.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this AmazonKinesisConnectionSummary. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param id: @@ -255,6 +255,7 @@ def access_key_id(self): """ **[Required]** Gets the access_key_id of this AmazonKinesisConnectionSummary. Access key ID to access the Amazon Kinesis. + Note: Despite the \"Id\" suffix, this value is not an OCI OCID. :return: The access_key_id of this AmazonKinesisConnectionSummary. @@ -267,6 +268,7 @@ def access_key_id(self, access_key_id): """ Sets the access_key_id of this AmazonKinesisConnectionSummary. Access key ID to access the Amazon Kinesis. + Note: Despite the \"Id\" suffix, this value is not an OCI OCID. :param access_key_id: The access_key_id of this AmazonKinesisConnectionSummary. diff --git a/src/oci/golden_gate/models/amazon_redshift_connection.py b/src/oci/golden_gate/models/amazon_redshift_connection.py index cbc61e0cbd..a6836c3c7e 100644 --- a/src/oci/golden_gate/models/amazon_redshift_connection.py +++ b/src/oci/golden_gate/models/amazon_redshift_connection.py @@ -27,7 +27,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this AmazonRedshiftConnection. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type connection_type: str @@ -61,7 +61,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this AmazonRedshiftConnection. - Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str diff --git a/src/oci/golden_gate/models/amazon_redshift_connection_summary.py b/src/oci/golden_gate/models/amazon_redshift_connection_summary.py index 9419c9f953..a32be10026 100644 --- a/src/oci/golden_gate/models/amazon_redshift_connection_summary.py +++ b/src/oci/golden_gate/models/amazon_redshift_connection_summary.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this AmazonRedshiftConnectionSummary. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param id: diff --git a/src/oci/golden_gate/models/amazon_s3_connection.py b/src/oci/golden_gate/models/amazon_s3_connection.py index 439bdb0e20..4b605f4bce 100644 --- a/src/oci/golden_gate/models/amazon_s3_connection.py +++ b/src/oci/golden_gate/models/amazon_s3_connection.py @@ -27,7 +27,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this AmazonS3Connection. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type connection_type: str @@ -61,7 +61,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this AmazonS3Connection. - Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str @@ -271,7 +271,7 @@ def access_key_id(self): """ **[Required]** Gets the access_key_id of this AmazonS3Connection. Access key ID to access the Amazon S3 bucket. - e.g.: \"this-is-not-the-secret\" + Note: Despite the \"Id\" suffix, this value is not an OCI OCID. :return: The access_key_id of this AmazonS3Connection. @@ -284,7 +284,7 @@ def access_key_id(self, access_key_id): """ Sets the access_key_id of this AmazonS3Connection. Access key ID to access the Amazon S3 bucket. - e.g.: \"this-is-not-the-secret\" + Note: Despite the \"Id\" suffix, this value is not an OCI OCID. :param access_key_id: The access_key_id of this AmazonS3Connection. diff --git a/src/oci/golden_gate/models/amazon_s3_connection_summary.py b/src/oci/golden_gate/models/amazon_s3_connection_summary.py index e582a8a6a5..425c61660e 100644 --- a/src/oci/golden_gate/models/amazon_s3_connection_summary.py +++ b/src/oci/golden_gate/models/amazon_s3_connection_summary.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this AmazonS3ConnectionSummary. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param id: @@ -255,7 +255,7 @@ def access_key_id(self): """ **[Required]** Gets the access_key_id of this AmazonS3ConnectionSummary. Access key ID to access the Amazon S3 bucket. - e.g.: \"this-is-not-the-secret\" + Note: Despite the \"Id\" suffix, this value is not an OCI OCID. :return: The access_key_id of this AmazonS3ConnectionSummary. @@ -268,7 +268,7 @@ def access_key_id(self, access_key_id): """ Sets the access_key_id of this AmazonS3ConnectionSummary. Access key ID to access the Amazon S3 bucket. - e.g.: \"this-is-not-the-secret\" + Note: Despite the \"Id\" suffix, this value is not an OCI OCID. :param access_key_id: The access_key_id of this AmazonS3ConnectionSummary. diff --git a/src/oci/golden_gate/models/amazon_s3_iceberg_storage.py b/src/oci/golden_gate/models/amazon_s3_iceberg_storage.py index 2eb5016415..6b568a18cf 100644 --- a/src/oci/golden_gate/models/amazon_s3_iceberg_storage.py +++ b/src/oci/golden_gate/models/amazon_s3_iceberg_storage.py @@ -31,7 +31,7 @@ def __init__(self, **kwargs): :param storage_type: The value to assign to the storage_type property of this AmazonS3IcebergStorage. - Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", "NONE", "OCI_OBJECT_STORAGE_S3_API", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type storage_type: str @@ -150,6 +150,7 @@ def access_key_id(self): """ **[Required]** Gets the access_key_id of this AmazonS3IcebergStorage. Access key ID to access the Amazon S3 bucket. + Note: Despite the \"Id\" suffix, this value is not an OCI OCID. :return: The access_key_id of this AmazonS3IcebergStorage. @@ -162,6 +163,7 @@ def access_key_id(self, access_key_id): """ Sets the access_key_id of this AmazonS3IcebergStorage. Access key ID to access the Amazon S3 bucket. + Note: Despite the \"Id\" suffix, this value is not an OCI OCID. :param access_key_id: The access_key_id of this AmazonS3IcebergStorage. diff --git a/src/oci/golden_gate/models/amazon_s3_iceberg_storage_summary.py b/src/oci/golden_gate/models/amazon_s3_iceberg_storage_summary.py index dbc5b1f841..019454c1aa 100644 --- a/src/oci/golden_gate/models/amazon_s3_iceberg_storage_summary.py +++ b/src/oci/golden_gate/models/amazon_s3_iceberg_storage_summary.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param storage_type: The value to assign to the storage_type property of this AmazonS3IcebergStorageSummary. - Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE" + Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", "NONE", "OCI_OBJECT_STORAGE_S3_API" :type storage_type: str :param scheme_type: @@ -133,6 +133,7 @@ def access_key_id(self): """ **[Required]** Gets the access_key_id of this AmazonS3IcebergStorageSummary. Access key ID to access the Amazon S3 bucket. + Note: Despite the \"Id\" suffix, this value is not an OCI OCID. :return: The access_key_id of this AmazonS3IcebergStorageSummary. @@ -145,6 +146,7 @@ def access_key_id(self, access_key_id): """ Sets the access_key_id of this AmazonS3IcebergStorageSummary. Access key ID to access the Amazon S3 bucket. + Note: Despite the \"Id\" suffix, this value is not an OCI OCID. :param access_key_id: The access_key_id of this AmazonS3IcebergStorageSummary. diff --git a/src/oci/golden_gate/models/api_key_ai_model_auth_details.py b/src/oci/golden_gate/models/api_key_ai_model_auth_details.py new file mode 100644 index 0000000000..10876eccea --- /dev/null +++ b/src/oci/golden_gate/models/api_key_ai_model_auth_details.py @@ -0,0 +1,150 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 + +from .ai_model_auth_details import AiModelAuthDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ApiKeyAiModelAuthDetails(AiModelAuthDetails): + """ + API key authentication details for an AI Model connection. + """ + + def __init__(self, **kwargs): + """ + Initializes a new ApiKeyAiModelAuthDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.golden_gate.models.ApiKeyAiModelAuthDetails.auth_type` attribute + of this class is ``API_KEY`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param auth_type: + The value to assign to the auth_type property of this ApiKeyAiModelAuthDetails. + Allowed values for this property are: "OCI_GEN_AI", "API_KEY" + :type auth_type: str + + :param base_url: + The value to assign to the base_url property of this ApiKeyAiModelAuthDetails. + :type base_url: str + + :param api_key: + The value to assign to the api_key property of this ApiKeyAiModelAuthDetails. + :type api_key: str + + :param api_key_secret_id: + The value to assign to the api_key_secret_id property of this ApiKeyAiModelAuthDetails. + :type api_key_secret_id: str + + """ + self.swagger_types = { + 'auth_type': 'str', + 'base_url': 'str', + 'api_key': 'str', + 'api_key_secret_id': 'str' + } + self.attribute_map = { + 'auth_type': 'authType', + 'base_url': 'baseUrl', + 'api_key': 'apiKey', + 'api_key_secret_id': 'apiKeySecretId' + } + self._auth_type = None + self._base_url = None + self._api_key = None + self._api_key_secret_id = None + self._auth_type = 'API_KEY' + + @property + def base_url(self): + """ + Gets the base_url of this ApiKeyAiModelAuthDetails. + Base URL of the AI model endpoint. + If not specified, the default base URL for the selected AI provider will be used. + + + :return: The base_url of this ApiKeyAiModelAuthDetails. + :rtype: str + """ + return self._base_url + + @base_url.setter + def base_url(self, base_url): + """ + Sets the base_url of this ApiKeyAiModelAuthDetails. + Base URL of the AI model endpoint. + If not specified, the default base URL for the selected AI provider will be used. + + + :param base_url: The base_url of this ApiKeyAiModelAuthDetails. + :type: str + """ + self._base_url = base_url + + @property + def api_key(self): + """ + Gets the api_key of this ApiKeyAiModelAuthDetails. + API key for the AI model connection. + Deprecated: This field is deprecated and replaced by \"apiKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + + :return: The api_key of this ApiKeyAiModelAuthDetails. + :rtype: str + """ + return self._api_key + + @api_key.setter + def api_key(self, api_key): + """ + Sets the api_key of this ApiKeyAiModelAuthDetails. + API key for the AI model connection. + Deprecated: This field is deprecated and replaced by \"apiKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + + :param api_key: The api_key of this ApiKeyAiModelAuthDetails. + :type: str + """ + self._api_key = api_key + + @property + def api_key_secret_id(self): + """ + Gets the api_key_secret_id of this ApiKeyAiModelAuthDetails. + API key secret OCID for the AI model connection. + + + :return: The api_key_secret_id of this ApiKeyAiModelAuthDetails. + :rtype: str + """ + return self._api_key_secret_id + + @api_key_secret_id.setter + def api_key_secret_id(self, api_key_secret_id): + """ + Sets the api_key_secret_id of this ApiKeyAiModelAuthDetails. + API key secret OCID for the AI model connection. + + + :param api_key_secret_id: The api_key_secret_id of this ApiKeyAiModelAuthDetails. + :type: str + """ + self._api_key_secret_id = api_key_secret_id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/golden_gate/models/api_key_ai_model_auth_details_summary.py b/src/oci/golden_gate/models/api_key_ai_model_auth_details_summary.py new file mode 100644 index 0000000000..27f0819619 --- /dev/null +++ b/src/oci/golden_gate/models/api_key_ai_model_auth_details_summary.py @@ -0,0 +1,113 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 + +from .ai_model_auth_details_summary import AiModelAuthDetailsSummary +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ApiKeyAiModelAuthDetailsSummary(AiModelAuthDetailsSummary): + """ + Summary of API key authentication details for an AI Model connection. + """ + + def __init__(self, **kwargs): + """ + Initializes a new ApiKeyAiModelAuthDetailsSummary object with values from keyword arguments. The default value of the :py:attr:`~oci.golden_gate.models.ApiKeyAiModelAuthDetailsSummary.auth_type` attribute + of this class is ``API_KEY`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param auth_type: + The value to assign to the auth_type property of this ApiKeyAiModelAuthDetailsSummary. + Allowed values for this property are: "OCI_GEN_AI", "API_KEY" + :type auth_type: str + + :param base_url: + The value to assign to the base_url property of this ApiKeyAiModelAuthDetailsSummary. + :type base_url: str + + :param api_key_secret_id: + The value to assign to the api_key_secret_id property of this ApiKeyAiModelAuthDetailsSummary. + :type api_key_secret_id: str + + """ + self.swagger_types = { + 'auth_type': 'str', + 'base_url': 'str', + 'api_key_secret_id': 'str' + } + self.attribute_map = { + 'auth_type': 'authType', + 'base_url': 'baseUrl', + 'api_key_secret_id': 'apiKeySecretId' + } + self._auth_type = None + self._base_url = None + self._api_key_secret_id = None + self._auth_type = 'API_KEY' + + @property + def base_url(self): + """ + Gets the base_url of this ApiKeyAiModelAuthDetailsSummary. + Base URL of the AI model endpoint. + If not specified, the default base URL for the selected AI provider will be used. + + + :return: The base_url of this ApiKeyAiModelAuthDetailsSummary. + :rtype: str + """ + return self._base_url + + @base_url.setter + def base_url(self, base_url): + """ + Sets the base_url of this ApiKeyAiModelAuthDetailsSummary. + Base URL of the AI model endpoint. + If not specified, the default base URL for the selected AI provider will be used. + + + :param base_url: The base_url of this ApiKeyAiModelAuthDetailsSummary. + :type: str + """ + self._base_url = base_url + + @property + def api_key_secret_id(self): + """ + Gets the api_key_secret_id of this ApiKeyAiModelAuthDetailsSummary. + API key secret OCID for the AI model connection. + + + :return: The api_key_secret_id of this ApiKeyAiModelAuthDetailsSummary. + :rtype: str + """ + return self._api_key_secret_id + + @api_key_secret_id.setter + def api_key_secret_id(self, api_key_secret_id): + """ + Sets the api_key_secret_id of this ApiKeyAiModelAuthDetailsSummary. + API key secret OCID for the AI model connection. + + + :param api_key_secret_id: The api_key_secret_id of this ApiKeyAiModelAuthDetailsSummary. + :type: str + """ + self._api_key_secret_id = api_key_secret_id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/golden_gate/models/azure_data_lake_storage_connection.py b/src/oci/golden_gate/models/azure_data_lake_storage_connection.py index 0c263d7eb8..e1a3b11377 100644 --- a/src/oci/golden_gate/models/azure_data_lake_storage_connection.py +++ b/src/oci/golden_gate/models/azure_data_lake_storage_connection.py @@ -39,7 +39,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this AzureDataLakeStorageConnection. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type connection_type: str @@ -73,7 +73,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this AzureDataLakeStorageConnection. - Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str diff --git a/src/oci/golden_gate/models/azure_data_lake_storage_connection_summary.py b/src/oci/golden_gate/models/azure_data_lake_storage_connection_summary.py index 73692da95e..ea0aaa6b79 100644 --- a/src/oci/golden_gate/models/azure_data_lake_storage_connection_summary.py +++ b/src/oci/golden_gate/models/azure_data_lake_storage_connection_summary.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this AzureDataLakeStorageConnectionSummary. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param id: diff --git a/src/oci/golden_gate/models/azure_data_lake_storage_iceberg_storage.py b/src/oci/golden_gate/models/azure_data_lake_storage_iceberg_storage.py index 219454ba71..226e6f8456 100644 --- a/src/oci/golden_gate/models/azure_data_lake_storage_iceberg_storage.py +++ b/src/oci/golden_gate/models/azure_data_lake_storage_iceberg_storage.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param storage_type: The value to assign to the storage_type property of this AzureDataLakeStorageIcebergStorage. - Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE" + Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", "NONE", "OCI_OBJECT_STORAGE_S3_API" :type storage_type: str :param account_name: diff --git a/src/oci/golden_gate/models/azure_data_lake_storage_iceberg_storage_summary.py b/src/oci/golden_gate/models/azure_data_lake_storage_iceberg_storage_summary.py index 6ab7f5a822..f924e858c9 100644 --- a/src/oci/golden_gate/models/azure_data_lake_storage_iceberg_storage_summary.py +++ b/src/oci/golden_gate/models/azure_data_lake_storage_iceberg_storage_summary.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param storage_type: The value to assign to the storage_type property of this AzureDataLakeStorageIcebergStorageSummary. - Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE" + Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", "NONE", "OCI_OBJECT_STORAGE_S3_API" :type storage_type: str :param account_name: diff --git a/src/oci/golden_gate/models/azure_synapse_connection.py b/src/oci/golden_gate/models/azure_synapse_connection.py index b185142c62..2fb0bdbe40 100644 --- a/src/oci/golden_gate/models/azure_synapse_connection.py +++ b/src/oci/golden_gate/models/azure_synapse_connection.py @@ -27,7 +27,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this AzureSynapseConnection. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type connection_type: str @@ -61,7 +61,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this AzureSynapseConnection. - Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str diff --git a/src/oci/golden_gate/models/azure_synapse_connection_summary.py b/src/oci/golden_gate/models/azure_synapse_connection_summary.py index 192f8590c2..55040a56f8 100644 --- a/src/oci/golden_gate/models/azure_synapse_connection_summary.py +++ b/src/oci/golden_gate/models/azure_synapse_connection_summary.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this AzureSynapseConnectionSummary. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param id: diff --git a/src/oci/golden_gate/models/connection.py b/src/oci/golden_gate/models/connection.py index 100d4f27a1..77bd9bbcb0 100644 --- a/src/oci/golden_gate/models/connection.py +++ b/src/oci/golden_gate/models/connection.py @@ -131,6 +131,10 @@ class Connection(object): #: This constant has a value of "ICEBERG" CONNECTION_TYPE_ICEBERG = "ICEBERG" + #: A constant which can be used with the connection_type property of a Connection. + #: This constant has a value of "AI_MODEL" + CONNECTION_TYPE_AI_MODEL = "AI_MODEL" + #: A constant which can be used with the lifecycle_state property of a Connection. #: This constant has a value of "CREATING" LIFECYCLE_STATE_CREATING = "CREATING" @@ -155,6 +159,10 @@ class Connection(object): #: This constant has a value of "FAILED" LIFECYCLE_STATE_FAILED = "FAILED" + #: A constant which can be used with the lifecycle_state property of a Connection. + #: This constant has a value of "NEEDS_ATTENTION" + LIFECYCLE_STATE_NEEDS_ATTENTION = "NEEDS_ATTENTION" + #: A constant which can be used with the routing_method property of a Connection. #: This constant has a value of "SHARED_SERVICE_ENDPOINT" ROUTING_METHOD_SHARED_SERVICE_ENDPOINT = "SHARED_SERVICE_ENDPOINT" @@ -177,6 +185,7 @@ def __init__(self, **kwargs): * :class:`~oci.golden_gate.models.Db2Connection` * :class:`~oci.golden_gate.models.ElasticsearchConnection` * :class:`~oci.golden_gate.models.AmazonRedshiftConnection` + * :class:`~oci.golden_gate.models.AiModelConnection` * :class:`~oci.golden_gate.models.AmazonS3Connection` * :class:`~oci.golden_gate.models.MongoDbConnection` * :class:`~oci.golden_gate.models.HdfsConnection` @@ -206,7 +215,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this Connection. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type connection_type: str @@ -240,7 +249,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this Connection. - Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str @@ -400,6 +409,9 @@ def get_subtype(object_dictionary): if type == 'AMAZON_REDSHIFT': return 'AmazonRedshiftConnection' + if type == 'AI_MODEL': + return 'AiModelConnection' + if type == 'AMAZON_S3': return 'AmazonS3Connection' @@ -480,7 +492,7 @@ def connection_type(self): **[Required]** Gets the connection_type of this Connection. The connection type. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -499,7 +511,7 @@ def connection_type(self, connection_type): :param connection_type: The connection_type of this Connection. :type: str """ - allowed_values = ["GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG"] + allowed_values = ["GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL"] if not value_allowed_none_or_none_sentinel(connection_type, allowed_values): connection_type = 'UNKNOWN_ENUM_VALUE' self._connection_type = connection_type @@ -710,7 +722,7 @@ def lifecycle_state(self): **[Required]** Gets the lifecycle_state of this Connection. Possible lifecycle states for connection. - Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -729,7 +741,7 @@ def lifecycle_state(self, lifecycle_state): :param lifecycle_state: The lifecycle_state of this Connection. :type: str """ - allowed_values = ["CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED"] + allowed_values = ["CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION"] if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): lifecycle_state = 'UNKNOWN_ENUM_VALUE' self._lifecycle_state = lifecycle_state @@ -848,9 +860,15 @@ def locks(self, locks): def vault_id(self): """ Gets the vault_id of this Connection. - Refers to the customer's vault OCID. - If provided, it references a vault where GoldenGate can manage secrets. Customers must add policies to permit GoldenGate - to manage secrets contained within this vault. + References the OCI Vault that contains the customer-managed encryption key identified by `keyId`. + + Deprecated: This field is deprecated for GoldenGate connections. Sensitive attributes should be provided using the + corresponding Secret OCID attributes of the connection (for example, `passwordSecretId`) instead of plain-text + attributes encrypted with `vaultId` and `keyId`. This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + This field is applicable only when `doesUseSecretIds` is set to `false`. + If `vaultId` is provided, `keyId` must also be provided. :return: The vault_id of this Connection. @@ -862,9 +880,15 @@ def vault_id(self): def vault_id(self, vault_id): """ Sets the vault_id of this Connection. - Refers to the customer's vault OCID. - If provided, it references a vault where GoldenGate can manage secrets. Customers must add policies to permit GoldenGate - to manage secrets contained within this vault. + References the OCI Vault that contains the customer-managed encryption key identified by `keyId`. + + Deprecated: This field is deprecated for GoldenGate connections. Sensitive attributes should be provided using the + corresponding Secret OCID attributes of the connection (for example, `passwordSecretId`) instead of plain-text + attributes encrypted with `vaultId` and `keyId`. This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + This field is applicable only when `doesUseSecretIds` is set to `false`. + If `vaultId` is provided, `keyId` must also be provided. :param vault_id: The vault_id of this Connection. @@ -876,8 +900,17 @@ def vault_id(self, vault_id): def key_id(self): """ Gets the key_id of this Connection. - Refers to the customer's master key OCID. - If provided, it references a key to manage secrets. Customers must add policies to permit GoldenGate to use this key. + References the OCI Vault key in the OCI Vault identified by `vaultId`. + + Deprecated: This field is deprecated for GoldenGate connections. Sensitive attributes should be provided using the + corresponding Secret OCID attributes of the connection (for example, `passwordSecretId`) instead of plain-text + attributes encrypted with `vaultId` and `keyId`. This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + The GoldenGate service uses this key to encrypt sensitive information (for example, `password`) that is provided in plain-text connection attributes through the API. + This field is applicable only when `doesUseSecretIds` is set to `false`. If both `vaultId` and `keyId` are provided, + the GoldenGate service uses the specified customer-managed key to encrypt the sensitive data. + If neither `vaultId` nor `keyId` is provided, the GoldenGate service uses Oracle-managed encryption keys. :return: The key_id of this Connection. @@ -889,8 +922,17 @@ def key_id(self): def key_id(self, key_id): """ Sets the key_id of this Connection. - Refers to the customer's master key OCID. - If provided, it references a key to manage secrets. Customers must add policies to permit GoldenGate to use this key. + References the OCI Vault key in the OCI Vault identified by `vaultId`. + + Deprecated: This field is deprecated for GoldenGate connections. Sensitive attributes should be provided using the + corresponding Secret OCID attributes of the connection (for example, `passwordSecretId`) instead of plain-text + attributes encrypted with `vaultId` and `keyId`. This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + The GoldenGate service uses this key to encrypt sensitive information (for example, `password`) that is provided in plain-text connection attributes through the API. + This field is applicable only when `doesUseSecretIds` is set to `false`. If both `vaultId` and `keyId` are provided, + the GoldenGate service uses the specified customer-managed key to encrypt the sensitive data. + If neither `vaultId` nor `keyId` is provided, the GoldenGate service uses Oracle-managed encryption keys. :param key_id: The key_id of this Connection. @@ -981,9 +1023,13 @@ def routing_method(self): """ Gets the routing_method of this Connection. Controls the network traffic direction to the target: - SHARED_SERVICE_ENDPOINT: Traffic flows through the Goldengate Service's network to public hosts. Cannot be used for private targets. SHARED_DEPLOYMENT_ENDPOINT: Network traffic flows from the assigned deployment's private endpoint through the deployment's subnet. DEDICATED_ENDPOINT: A dedicated private endpoint is created in the target VCN subnet for the connection. The subnetId is required when DEDICATED_ENDPOINT networking is selected. + SHARED_SERVICE_ENDPOINT: Traffic flows through the Goldengate Service's network to public hosts. Cannot be used for private targets. + + Deprecated: SHARED_SERVICE_ENDPOINT is deprecated. Use another supported routingMethod value, or update existing connections to use a supported routing method. + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate Allowed values for this property are: "SHARED_SERVICE_ENDPOINT", "SHARED_DEPLOYMENT_ENDPOINT", "DEDICATED_ENDPOINT", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -999,9 +1045,13 @@ def routing_method(self, routing_method): """ Sets the routing_method of this Connection. Controls the network traffic direction to the target: - SHARED_SERVICE_ENDPOINT: Traffic flows through the Goldengate Service's network to public hosts. Cannot be used for private targets. SHARED_DEPLOYMENT_ENDPOINT: Network traffic flows from the assigned deployment's private endpoint through the deployment's subnet. DEDICATED_ENDPOINT: A dedicated private endpoint is created in the target VCN subnet for the connection. The subnetId is required when DEDICATED_ENDPOINT networking is selected. + SHARED_SERVICE_ENDPOINT: Traffic flows through the Goldengate Service's network to public hosts. Cannot be used for private targets. + + Deprecated: SHARED_SERVICE_ENDPOINT is deprecated. Use another supported routingMethod value, or update existing connections to use a supported routing method. + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param routing_method: The routing_method of this Connection. @@ -1018,6 +1068,21 @@ def does_use_secret_ids(self): Gets the does_use_secret_ids of this Connection. Indicates that sensitive attributes are provided via Secrets. + Deprecated: This field is deprecated. Sensitive attributes should be provided using the corresponding Secret OCID + attributes of the connection (for example, `passwordSecretId`) instead of plain-text attributes. This change follows + the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + When set to `true`, all sensitive information must be provided as OCI Vault secrets using the corresponding + `*SecretId` attributes of the connection (for example, `passwordSecretId`). Plain-text sensitive attributes (for example, `password`) must not be used. + This ensures that sensitive information remains stored and managed in the customer's OCI Vault rather than by the GoldenGate service. + + When set to false, sensitive information must be provided in the corresponding plain-text attributes (for example, `password`) rather than in secret OCID attributes. + In this mode, the sensitive information is stored by the GoldenGate service. If `vaultId` and `keyId` are not specified, + the GoldenGate service uses Oracle-managed encryption keys to encrypt the stored data. + + If `vaultId` and `keyId` are provided, the specified customer-managed key is used. + :return: The does_use_secret_ids of this Connection. :rtype: bool @@ -1030,6 +1095,21 @@ def does_use_secret_ids(self, does_use_secret_ids): Sets the does_use_secret_ids of this Connection. Indicates that sensitive attributes are provided via Secrets. + Deprecated: This field is deprecated. Sensitive attributes should be provided using the corresponding Secret OCID + attributes of the connection (for example, `passwordSecretId`) instead of plain-text attributes. This change follows + the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + When set to `true`, all sensitive information must be provided as OCI Vault secrets using the corresponding + `*SecretId` attributes of the connection (for example, `passwordSecretId`). Plain-text sensitive attributes (for example, `password`) must not be used. + This ensures that sensitive information remains stored and managed in the customer's OCI Vault rather than by the GoldenGate service. + + When set to false, sensitive information must be provided in the corresponding plain-text attributes (for example, `password`) rather than in secret OCID attributes. + In this mode, the sensitive information is stored by the GoldenGate service. If `vaultId` and `keyId` are not specified, + the GoldenGate service uses Oracle-managed encryption keys to encrypt the stored data. + + If `vaultId` and `keyId` are provided, the specified customer-managed key is used. + :param does_use_secret_ids: The does_use_secret_ids of this Connection. :type: bool diff --git a/src/oci/golden_gate/models/connection_assignment.py b/src/oci/golden_gate/models/connection_assignment.py index 68aad1d41d..c199711fc3 100644 --- a/src/oci/golden_gate/models/connection_assignment.py +++ b/src/oci/golden_gate/models/connection_assignment.py @@ -16,6 +16,126 @@ class ConnectionAssignment(object): Before you can use a connection as a GoldenGate source or target, you must assign it to a deployment. """ + #: A constant which can be used with the connection_type property of a ConnectionAssignment. + #: This constant has a value of "GOLDENGATE" + CONNECTION_TYPE_GOLDENGATE = "GOLDENGATE" + + #: A constant which can be used with the connection_type property of a ConnectionAssignment. + #: This constant has a value of "KAFKA" + CONNECTION_TYPE_KAFKA = "KAFKA" + + #: A constant which can be used with the connection_type property of a ConnectionAssignment. + #: This constant has a value of "KAFKA_SCHEMA_REGISTRY" + CONNECTION_TYPE_KAFKA_SCHEMA_REGISTRY = "KAFKA_SCHEMA_REGISTRY" + + #: A constant which can be used with the connection_type property of a ConnectionAssignment. + #: This constant has a value of "MYSQL" + CONNECTION_TYPE_MYSQL = "MYSQL" + + #: A constant which can be used with the connection_type property of a ConnectionAssignment. + #: This constant has a value of "JAVA_MESSAGE_SERVICE" + CONNECTION_TYPE_JAVA_MESSAGE_SERVICE = "JAVA_MESSAGE_SERVICE" + + #: A constant which can be used with the connection_type property of a ConnectionAssignment. + #: This constant has a value of "MICROSOFT_SQLSERVER" + CONNECTION_TYPE_MICROSOFT_SQLSERVER = "MICROSOFT_SQLSERVER" + + #: A constant which can be used with the connection_type property of a ConnectionAssignment. + #: This constant has a value of "OCI_OBJECT_STORAGE" + CONNECTION_TYPE_OCI_OBJECT_STORAGE = "OCI_OBJECT_STORAGE" + + #: A constant which can be used with the connection_type property of a ConnectionAssignment. + #: This constant has a value of "ORACLE" + CONNECTION_TYPE_ORACLE = "ORACLE" + + #: A constant which can be used with the connection_type property of a ConnectionAssignment. + #: This constant has a value of "AZURE_DATA_LAKE_STORAGE" + CONNECTION_TYPE_AZURE_DATA_LAKE_STORAGE = "AZURE_DATA_LAKE_STORAGE" + + #: A constant which can be used with the connection_type property of a ConnectionAssignment. + #: This constant has a value of "POSTGRESQL" + CONNECTION_TYPE_POSTGRESQL = "POSTGRESQL" + + #: A constant which can be used with the connection_type property of a ConnectionAssignment. + #: This constant has a value of "AZURE_SYNAPSE_ANALYTICS" + CONNECTION_TYPE_AZURE_SYNAPSE_ANALYTICS = "AZURE_SYNAPSE_ANALYTICS" + + #: A constant which can be used with the connection_type property of a ConnectionAssignment. + #: This constant has a value of "SNOWFLAKE" + CONNECTION_TYPE_SNOWFLAKE = "SNOWFLAKE" + + #: A constant which can be used with the connection_type property of a ConnectionAssignment. + #: This constant has a value of "AMAZON_S3" + CONNECTION_TYPE_AMAZON_S3 = "AMAZON_S3" + + #: A constant which can be used with the connection_type property of a ConnectionAssignment. + #: This constant has a value of "HDFS" + CONNECTION_TYPE_HDFS = "HDFS" + + #: A constant which can be used with the connection_type property of a ConnectionAssignment. + #: This constant has a value of "ORACLE_AI_DATA_PLATFORM" + CONNECTION_TYPE_ORACLE_AI_DATA_PLATFORM = "ORACLE_AI_DATA_PLATFORM" + + #: A constant which can be used with the connection_type property of a ConnectionAssignment. + #: This constant has a value of "ORACLE_NOSQL" + CONNECTION_TYPE_ORACLE_NOSQL = "ORACLE_NOSQL" + + #: A constant which can be used with the connection_type property of a ConnectionAssignment. + #: This constant has a value of "MONGODB" + CONNECTION_TYPE_MONGODB = "MONGODB" + + #: A constant which can be used with the connection_type property of a ConnectionAssignment. + #: This constant has a value of "AMAZON_KINESIS" + CONNECTION_TYPE_AMAZON_KINESIS = "AMAZON_KINESIS" + + #: A constant which can be used with the connection_type property of a ConnectionAssignment. + #: This constant has a value of "AMAZON_REDSHIFT" + CONNECTION_TYPE_AMAZON_REDSHIFT = "AMAZON_REDSHIFT" + + #: A constant which can be used with the connection_type property of a ConnectionAssignment. + #: This constant has a value of "DB2" + CONNECTION_TYPE_DB2 = "DB2" + + #: A constant which can be used with the connection_type property of a ConnectionAssignment. + #: This constant has a value of "REDIS" + CONNECTION_TYPE_REDIS = "REDIS" + + #: A constant which can be used with the connection_type property of a ConnectionAssignment. + #: This constant has a value of "ELASTICSEARCH" + CONNECTION_TYPE_ELASTICSEARCH = "ELASTICSEARCH" + + #: A constant which can be used with the connection_type property of a ConnectionAssignment. + #: This constant has a value of "GENERIC" + CONNECTION_TYPE_GENERIC = "GENERIC" + + #: A constant which can be used with the connection_type property of a ConnectionAssignment. + #: This constant has a value of "GOOGLE_CLOUD_STORAGE" + CONNECTION_TYPE_GOOGLE_CLOUD_STORAGE = "GOOGLE_CLOUD_STORAGE" + + #: A constant which can be used with the connection_type property of a ConnectionAssignment. + #: This constant has a value of "GOOGLE_BIGQUERY" + CONNECTION_TYPE_GOOGLE_BIGQUERY = "GOOGLE_BIGQUERY" + + #: A constant which can be used with the connection_type property of a ConnectionAssignment. + #: This constant has a value of "DATABRICKS" + CONNECTION_TYPE_DATABRICKS = "DATABRICKS" + + #: A constant which can be used with the connection_type property of a ConnectionAssignment. + #: This constant has a value of "GOOGLE_PUBSUB" + CONNECTION_TYPE_GOOGLE_PUBSUB = "GOOGLE_PUBSUB" + + #: A constant which can be used with the connection_type property of a ConnectionAssignment. + #: This constant has a value of "MICROSOFT_FABRIC" + CONNECTION_TYPE_MICROSOFT_FABRIC = "MICROSOFT_FABRIC" + + #: A constant which can be used with the connection_type property of a ConnectionAssignment. + #: This constant has a value of "ICEBERG" + CONNECTION_TYPE_ICEBERG = "ICEBERG" + + #: A constant which can be used with the connection_type property of a ConnectionAssignment. + #: This constant has a value of "AI_MODEL" + CONNECTION_TYPE_AI_MODEL = "AI_MODEL" + #: A constant which can be used with the lifecycle_state property of a ConnectionAssignment. #: This constant has a value of "CREATING" LIFECYCLE_STATE_CREATING = "CREATING" @@ -49,6 +169,12 @@ def __init__(self, **kwargs): The value to assign to the connection_id property of this ConnectionAssignment. :type connection_id: str + :param connection_type: + The value to assign to the connection_type property of this ConnectionAssignment. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type connection_type: str + :param deployment_id: The value to assign to the deployment_id property of this ConnectionAssignment. :type deployment_id: str @@ -79,6 +205,7 @@ def __init__(self, **kwargs): self.swagger_types = { 'id': 'str', 'connection_id': 'str', + 'connection_type': 'str', 'deployment_id': 'str', 'alias_name': 'str', 'compartment_id': 'str', @@ -89,6 +216,7 @@ def __init__(self, **kwargs): self.attribute_map = { 'id': 'id', 'connection_id': 'connectionId', + 'connection_type': 'connectionType', 'deployment_id': 'deploymentId', 'alias_name': 'aliasName', 'compartment_id': 'compartmentId', @@ -98,6 +226,7 @@ def __init__(self, **kwargs): } self._id = None self._connection_id = None + self._connection_type = None self._deployment_id = None self._alias_name = None self._compartment_id = None @@ -165,6 +294,36 @@ def connection_id(self, connection_id): """ self._connection_id = connection_id + @property + def connection_type(self): + """ + **[Required]** Gets the connection_type of this ConnectionAssignment. + The connection type. + + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The connection_type of this ConnectionAssignment. + :rtype: str + """ + return self._connection_type + + @connection_type.setter + def connection_type(self, connection_type): + """ + Sets the connection_type of this ConnectionAssignment. + The connection type. + + + :param connection_type: The connection_type of this ConnectionAssignment. + :type: str + """ + allowed_values = ["GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL"] + if not value_allowed_none_or_none_sentinel(connection_type, allowed_values): + connection_type = 'UNKNOWN_ENUM_VALUE' + self._connection_type = connection_type + @property def deployment_id(self): """ diff --git a/src/oci/golden_gate/models/connection_assignment_summary.py b/src/oci/golden_gate/models/connection_assignment_summary.py index 80a011b4ed..f19ff5a9f4 100644 --- a/src/oci/golden_gate/models/connection_assignment_summary.py +++ b/src/oci/golden_gate/models/connection_assignment_summary.py @@ -15,6 +15,126 @@ class ConnectionAssignmentSummary(object): Summary of the Connection Assignment. """ + #: A constant which can be used with the connection_type property of a ConnectionAssignmentSummary. + #: This constant has a value of "GOLDENGATE" + CONNECTION_TYPE_GOLDENGATE = "GOLDENGATE" + + #: A constant which can be used with the connection_type property of a ConnectionAssignmentSummary. + #: This constant has a value of "KAFKA" + CONNECTION_TYPE_KAFKA = "KAFKA" + + #: A constant which can be used with the connection_type property of a ConnectionAssignmentSummary. + #: This constant has a value of "KAFKA_SCHEMA_REGISTRY" + CONNECTION_TYPE_KAFKA_SCHEMA_REGISTRY = "KAFKA_SCHEMA_REGISTRY" + + #: A constant which can be used with the connection_type property of a ConnectionAssignmentSummary. + #: This constant has a value of "MYSQL" + CONNECTION_TYPE_MYSQL = "MYSQL" + + #: A constant which can be used with the connection_type property of a ConnectionAssignmentSummary. + #: This constant has a value of "JAVA_MESSAGE_SERVICE" + CONNECTION_TYPE_JAVA_MESSAGE_SERVICE = "JAVA_MESSAGE_SERVICE" + + #: A constant which can be used with the connection_type property of a ConnectionAssignmentSummary. + #: This constant has a value of "MICROSOFT_SQLSERVER" + CONNECTION_TYPE_MICROSOFT_SQLSERVER = "MICROSOFT_SQLSERVER" + + #: A constant which can be used with the connection_type property of a ConnectionAssignmentSummary. + #: This constant has a value of "OCI_OBJECT_STORAGE" + CONNECTION_TYPE_OCI_OBJECT_STORAGE = "OCI_OBJECT_STORAGE" + + #: A constant which can be used with the connection_type property of a ConnectionAssignmentSummary. + #: This constant has a value of "ORACLE" + CONNECTION_TYPE_ORACLE = "ORACLE" + + #: A constant which can be used with the connection_type property of a ConnectionAssignmentSummary. + #: This constant has a value of "AZURE_DATA_LAKE_STORAGE" + CONNECTION_TYPE_AZURE_DATA_LAKE_STORAGE = "AZURE_DATA_LAKE_STORAGE" + + #: A constant which can be used with the connection_type property of a ConnectionAssignmentSummary. + #: This constant has a value of "POSTGRESQL" + CONNECTION_TYPE_POSTGRESQL = "POSTGRESQL" + + #: A constant which can be used with the connection_type property of a ConnectionAssignmentSummary. + #: This constant has a value of "AZURE_SYNAPSE_ANALYTICS" + CONNECTION_TYPE_AZURE_SYNAPSE_ANALYTICS = "AZURE_SYNAPSE_ANALYTICS" + + #: A constant which can be used with the connection_type property of a ConnectionAssignmentSummary. + #: This constant has a value of "SNOWFLAKE" + CONNECTION_TYPE_SNOWFLAKE = "SNOWFLAKE" + + #: A constant which can be used with the connection_type property of a ConnectionAssignmentSummary. + #: This constant has a value of "AMAZON_S3" + CONNECTION_TYPE_AMAZON_S3 = "AMAZON_S3" + + #: A constant which can be used with the connection_type property of a ConnectionAssignmentSummary. + #: This constant has a value of "HDFS" + CONNECTION_TYPE_HDFS = "HDFS" + + #: A constant which can be used with the connection_type property of a ConnectionAssignmentSummary. + #: This constant has a value of "ORACLE_AI_DATA_PLATFORM" + CONNECTION_TYPE_ORACLE_AI_DATA_PLATFORM = "ORACLE_AI_DATA_PLATFORM" + + #: A constant which can be used with the connection_type property of a ConnectionAssignmentSummary. + #: This constant has a value of "ORACLE_NOSQL" + CONNECTION_TYPE_ORACLE_NOSQL = "ORACLE_NOSQL" + + #: A constant which can be used with the connection_type property of a ConnectionAssignmentSummary. + #: This constant has a value of "MONGODB" + CONNECTION_TYPE_MONGODB = "MONGODB" + + #: A constant which can be used with the connection_type property of a ConnectionAssignmentSummary. + #: This constant has a value of "AMAZON_KINESIS" + CONNECTION_TYPE_AMAZON_KINESIS = "AMAZON_KINESIS" + + #: A constant which can be used with the connection_type property of a ConnectionAssignmentSummary. + #: This constant has a value of "AMAZON_REDSHIFT" + CONNECTION_TYPE_AMAZON_REDSHIFT = "AMAZON_REDSHIFT" + + #: A constant which can be used with the connection_type property of a ConnectionAssignmentSummary. + #: This constant has a value of "DB2" + CONNECTION_TYPE_DB2 = "DB2" + + #: A constant which can be used with the connection_type property of a ConnectionAssignmentSummary. + #: This constant has a value of "REDIS" + CONNECTION_TYPE_REDIS = "REDIS" + + #: A constant which can be used with the connection_type property of a ConnectionAssignmentSummary. + #: This constant has a value of "ELASTICSEARCH" + CONNECTION_TYPE_ELASTICSEARCH = "ELASTICSEARCH" + + #: A constant which can be used with the connection_type property of a ConnectionAssignmentSummary. + #: This constant has a value of "GENERIC" + CONNECTION_TYPE_GENERIC = "GENERIC" + + #: A constant which can be used with the connection_type property of a ConnectionAssignmentSummary. + #: This constant has a value of "GOOGLE_CLOUD_STORAGE" + CONNECTION_TYPE_GOOGLE_CLOUD_STORAGE = "GOOGLE_CLOUD_STORAGE" + + #: A constant which can be used with the connection_type property of a ConnectionAssignmentSummary. + #: This constant has a value of "GOOGLE_BIGQUERY" + CONNECTION_TYPE_GOOGLE_BIGQUERY = "GOOGLE_BIGQUERY" + + #: A constant which can be used with the connection_type property of a ConnectionAssignmentSummary. + #: This constant has a value of "DATABRICKS" + CONNECTION_TYPE_DATABRICKS = "DATABRICKS" + + #: A constant which can be used with the connection_type property of a ConnectionAssignmentSummary. + #: This constant has a value of "GOOGLE_PUBSUB" + CONNECTION_TYPE_GOOGLE_PUBSUB = "GOOGLE_PUBSUB" + + #: A constant which can be used with the connection_type property of a ConnectionAssignmentSummary. + #: This constant has a value of "MICROSOFT_FABRIC" + CONNECTION_TYPE_MICROSOFT_FABRIC = "MICROSOFT_FABRIC" + + #: A constant which can be used with the connection_type property of a ConnectionAssignmentSummary. + #: This constant has a value of "ICEBERG" + CONNECTION_TYPE_ICEBERG = "ICEBERG" + + #: A constant which can be used with the connection_type property of a ConnectionAssignmentSummary. + #: This constant has a value of "AI_MODEL" + CONNECTION_TYPE_AI_MODEL = "AI_MODEL" + def __init__(self, **kwargs): """ Initializes a new ConnectionAssignmentSummary object with values from keyword arguments. @@ -32,6 +152,12 @@ def __init__(self, **kwargs): The value to assign to the connection_id property of this ConnectionAssignmentSummary. :type connection_id: str + :param connection_type: + The value to assign to the connection_type property of this ConnectionAssignmentSummary. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type connection_type: str + :param deployment_id: The value to assign to the deployment_id property of this ConnectionAssignmentSummary. :type deployment_id: str @@ -57,6 +183,7 @@ def __init__(self, **kwargs): 'id': 'str', 'compartment_id': 'str', 'connection_id': 'str', + 'connection_type': 'str', 'deployment_id': 'str', 'alias_name': 'str', 'lifecycle_state': 'str', @@ -67,6 +194,7 @@ def __init__(self, **kwargs): 'id': 'id', 'compartment_id': 'compartmentId', 'connection_id': 'connectionId', + 'connection_type': 'connectionType', 'deployment_id': 'deploymentId', 'alias_name': 'aliasName', 'lifecycle_state': 'lifecycleState', @@ -76,6 +204,7 @@ def __init__(self, **kwargs): self._id = None self._compartment_id = None self._connection_id = None + self._connection_type = None self._deployment_id = None self._alias_name = None self._lifecycle_state = None @@ -170,6 +299,36 @@ def connection_id(self, connection_id): """ self._connection_id = connection_id + @property + def connection_type(self): + """ + **[Required]** Gets the connection_type of this ConnectionAssignmentSummary. + The connection type. + + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The connection_type of this ConnectionAssignmentSummary. + :rtype: str + """ + return self._connection_type + + @connection_type.setter + def connection_type(self, connection_type): + """ + Sets the connection_type of this ConnectionAssignmentSummary. + The connection type. + + + :param connection_type: The connection_type of this ConnectionAssignmentSummary. + :type: str + """ + allowed_values = ["GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL"] + if not value_allowed_none_or_none_sentinel(connection_type, allowed_values): + connection_type = 'UNKNOWN_ENUM_VALUE' + self._connection_type = connection_type + @property def deployment_id(self): """ diff --git a/src/oci/golden_gate/models/connection_summary.py b/src/oci/golden_gate/models/connection_summary.py index 5a1dd6e8d7..9e00a5869f 100644 --- a/src/oci/golden_gate/models/connection_summary.py +++ b/src/oci/golden_gate/models/connection_summary.py @@ -131,6 +131,10 @@ class ConnectionSummary(object): #: This constant has a value of "ICEBERG" CONNECTION_TYPE_ICEBERG = "ICEBERG" + #: A constant which can be used with the connection_type property of a ConnectionSummary. + #: This constant has a value of "AI_MODEL" + CONNECTION_TYPE_AI_MODEL = "AI_MODEL" + #: A constant which can be used with the routing_method property of a ConnectionSummary. #: This constant has a value of "SHARED_SERVICE_ENDPOINT" ROUTING_METHOD_SHARED_SERVICE_ENDPOINT = "SHARED_SERVICE_ENDPOINT" @@ -173,6 +177,7 @@ def __init__(self, **kwargs): * :class:`~oci.golden_gate.models.PostgresqlConnectionSummary` * :class:`~oci.golden_gate.models.GenericConnectionSummary` * :class:`~oci.golden_gate.models.KafkaConnectionSummary` + * :class:`~oci.golden_gate.models.AiModelConnectionSummary` * :class:`~oci.golden_gate.models.Db2ConnectionSummary` * :class:`~oci.golden_gate.models.AmazonRedshiftConnectionSummary` * :class:`~oci.golden_gate.models.DatabricksConnectionSummary` @@ -182,7 +187,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this ConnectionSummary. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type connection_type: str @@ -434,6 +439,9 @@ def get_subtype(object_dictionary): if type == 'KAFKA': return 'KafkaConnectionSummary' + if type == 'AI_MODEL': + return 'AiModelConnectionSummary' + if type == 'DB2': return 'Db2ConnectionSummary' @@ -454,7 +462,7 @@ def connection_type(self): **[Required]** Gets the connection_type of this ConnectionSummary. The connection type. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -473,7 +481,7 @@ def connection_type(self, connection_type): :param connection_type: The connection_type of this ConnectionSummary. :type: str """ - allowed_values = ["GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG"] + allowed_values = ["GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL"] if not value_allowed_none_or_none_sentinel(connection_type, allowed_values): connection_type = 'UNKNOWN_ENUM_VALUE' self._connection_type = connection_type @@ -792,9 +800,15 @@ def time_updated(self, time_updated): def vault_id(self): """ Gets the vault_id of this ConnectionSummary. - Refers to the customer's vault OCID. - If provided, it references a vault where GoldenGate can manage secrets. Customers must add policies to permit GoldenGate - to manage secrets contained within this vault. + References the OCI Vault that contains the customer-managed encryption key identified by `keyId`. + + Deprecated: This field is deprecated for GoldenGate connections. Sensitive attributes should be provided using the + corresponding Secret OCID attributes of the connection (for example, `passwordSecretId`) instead of plain-text + attributes encrypted with `vaultId` and `keyId`. This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + This field is applicable only when `doesUseSecretIds` is set to `false`. + If `vaultId` is provided, `keyId` must also be provided. :return: The vault_id of this ConnectionSummary. @@ -806,9 +820,15 @@ def vault_id(self): def vault_id(self, vault_id): """ Sets the vault_id of this ConnectionSummary. - Refers to the customer's vault OCID. - If provided, it references a vault where GoldenGate can manage secrets. Customers must add policies to permit GoldenGate - to manage secrets contained within this vault. + References the OCI Vault that contains the customer-managed encryption key identified by `keyId`. + + Deprecated: This field is deprecated for GoldenGate connections. Sensitive attributes should be provided using the + corresponding Secret OCID attributes of the connection (for example, `passwordSecretId`) instead of plain-text + attributes encrypted with `vaultId` and `keyId`. This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + This field is applicable only when `doesUseSecretIds` is set to `false`. + If `vaultId` is provided, `keyId` must also be provided. :param vault_id: The vault_id of this ConnectionSummary. @@ -820,8 +840,17 @@ def vault_id(self, vault_id): def key_id(self): """ Gets the key_id of this ConnectionSummary. - Refers to the customer's master key OCID. - If provided, it references a key to manage secrets. Customers must add policies to permit GoldenGate to use this key. + References the OCI Vault key in the OCI Vault identified by `vaultId`. + + Deprecated: This field is deprecated for GoldenGate connections. Sensitive attributes should be provided using the + corresponding Secret OCID attributes of the connection (for example, `passwordSecretId`) instead of plain-text + attributes encrypted with `vaultId` and `keyId`. This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + The GoldenGate service uses this key to encrypt sensitive information (for example, `password`) that is provided in plain-text connection attributes through the API. + This field is applicable only when `doesUseSecretIds` is set to `false`. If both `vaultId` and `keyId` are provided, + the GoldenGate service uses the specified customer-managed key to encrypt the sensitive data. + If neither `vaultId` nor `keyId` is provided, the GoldenGate service uses Oracle-managed encryption keys. :return: The key_id of this ConnectionSummary. @@ -833,8 +862,17 @@ def key_id(self): def key_id(self, key_id): """ Sets the key_id of this ConnectionSummary. - Refers to the customer's master key OCID. - If provided, it references a key to manage secrets. Customers must add policies to permit GoldenGate to use this key. + References the OCI Vault key in the OCI Vault identified by `vaultId`. + + Deprecated: This field is deprecated for GoldenGate connections. Sensitive attributes should be provided using the + corresponding Secret OCID attributes of the connection (for example, `passwordSecretId`) instead of plain-text + attributes encrypted with `vaultId` and `keyId`. This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + The GoldenGate service uses this key to encrypt sensitive information (for example, `password`) that is provided in plain-text connection attributes through the API. + This field is applicable only when `doesUseSecretIds` is set to `false`. If both `vaultId` and `keyId` are provided, + the GoldenGate service uses the specified customer-managed key to encrypt the sensitive data. + If neither `vaultId` nor `keyId` is provided, the GoldenGate service uses Oracle-managed encryption keys. :param key_id: The key_id of this ConnectionSummary. @@ -925,9 +963,13 @@ def routing_method(self): """ Gets the routing_method of this ConnectionSummary. Controls the network traffic direction to the target: - SHARED_SERVICE_ENDPOINT: Traffic flows through the Goldengate Service's network to public hosts. Cannot be used for private targets. SHARED_DEPLOYMENT_ENDPOINT: Network traffic flows from the assigned deployment's private endpoint through the deployment's subnet. DEDICATED_ENDPOINT: A dedicated private endpoint is created in the target VCN subnet for the connection. The subnetId is required when DEDICATED_ENDPOINT networking is selected. + SHARED_SERVICE_ENDPOINT: Traffic flows through the Goldengate Service's network to public hosts. Cannot be used for private targets. + + Deprecated: SHARED_SERVICE_ENDPOINT is deprecated. Use another supported routingMethod value, or update existing connections to use a supported routing method. + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate Allowed values for this property are: "SHARED_SERVICE_ENDPOINT", "SHARED_DEPLOYMENT_ENDPOINT", "DEDICATED_ENDPOINT", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -943,9 +985,13 @@ def routing_method(self, routing_method): """ Sets the routing_method of this ConnectionSummary. Controls the network traffic direction to the target: - SHARED_SERVICE_ENDPOINT: Traffic flows through the Goldengate Service's network to public hosts. Cannot be used for private targets. SHARED_DEPLOYMENT_ENDPOINT: Network traffic flows from the assigned deployment's private endpoint through the deployment's subnet. DEDICATED_ENDPOINT: A dedicated private endpoint is created in the target VCN subnet for the connection. The subnetId is required when DEDICATED_ENDPOINT networking is selected. + SHARED_SERVICE_ENDPOINT: Traffic flows through the Goldengate Service's network to public hosts. Cannot be used for private targets. + + Deprecated: SHARED_SERVICE_ENDPOINT is deprecated. Use another supported routingMethod value, or update existing connections to use a supported routing method. + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param routing_method: The routing_method of this ConnectionSummary. @@ -986,6 +1032,21 @@ def does_use_secret_ids(self): Gets the does_use_secret_ids of this ConnectionSummary. Indicates that sensitive attributes are provided via Secrets. + Deprecated: This field is deprecated. Sensitive attributes should be provided using the corresponding Secret OCID + attributes of the connection (for example, `passwordSecretId`) instead of plain-text attributes. This change follows + the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + When set to `true`, all sensitive information must be provided as OCI Vault secrets using the corresponding + `*SecretId` attributes of the connection (for example, `passwordSecretId`). Plain-text sensitive attributes (for example, `password`) must not be used. + This ensures that sensitive information remains stored and managed in the customer's OCI Vault rather than by the GoldenGate service. + + When set to false, sensitive information must be provided in the corresponding plain-text attributes (for example, `password`) rather than in secret OCID attributes. + In this mode, the sensitive information is stored by the GoldenGate service. If `vaultId` and `keyId` are not specified, + the GoldenGate service uses Oracle-managed encryption keys to encrypt the stored data. + + If `vaultId` and `keyId` are provided, the specified customer-managed key is used. + :return: The does_use_secret_ids of this ConnectionSummary. :rtype: bool @@ -998,6 +1059,21 @@ def does_use_secret_ids(self, does_use_secret_ids): Sets the does_use_secret_ids of this ConnectionSummary. Indicates that sensitive attributes are provided via Secrets. + Deprecated: This field is deprecated. Sensitive attributes should be provided using the corresponding Secret OCID + attributes of the connection (for example, `passwordSecretId`) instead of plain-text attributes. This change follows + the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + When set to `true`, all sensitive information must be provided as OCI Vault secrets using the corresponding + `*SecretId` attributes of the connection (for example, `passwordSecretId`). Plain-text sensitive attributes (for example, `password`) must not be used. + This ensures that sensitive information remains stored and managed in the customer's OCI Vault rather than by the GoldenGate service. + + When set to false, sensitive information must be provided in the corresponding plain-text attributes (for example, `password`) rather than in secret OCID attributes. + In this mode, the sensitive information is stored by the GoldenGate service. If `vaultId` and `keyId` are not specified, + the GoldenGate service uses Oracle-managed encryption keys to encrypt the stored data. + + If `vaultId` and `keyId` are provided, the specified customer-managed key is used. + :param does_use_secret_ids: The does_use_secret_ids of this ConnectionSummary. :type: bool diff --git a/src/oci/golden_gate/models/create_ai_model_auth_details.py b/src/oci/golden_gate/models/create_ai_model_auth_details.py new file mode 100644 index 0000000000..091145337f --- /dev/null +++ b/src/oci/golden_gate/models/create_ai_model_auth_details.py @@ -0,0 +1,107 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateAiModelAuthDetails(object): + """ + The information about new authentication details for an AI Model connection. + """ + + #: A constant which can be used with the auth_type property of a CreateAiModelAuthDetails. + #: This constant has a value of "OCI_GEN_AI" + AUTH_TYPE_OCI_GEN_AI = "OCI_GEN_AI" + + #: A constant which can be used with the auth_type property of a CreateAiModelAuthDetails. + #: This constant has a value of "API_KEY" + AUTH_TYPE_API_KEY = "API_KEY" + + def __init__(self, **kwargs): + """ + Initializes a new CreateAiModelAuthDetails object with values from keyword arguments. This class has the following subclasses and if you are using this class as input + to a service operations then you should favor using a subclass over the base class: + + * :class:`~oci.golden_gate.models.CreateApiKeyAiModelAuthDetails` + * :class:`~oci.golden_gate.models.CreateOciGenAiModelAuthDetails` + + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param auth_type: + The value to assign to the auth_type property of this CreateAiModelAuthDetails. + Allowed values for this property are: "OCI_GEN_AI", "API_KEY" + :type auth_type: str + + """ + self.swagger_types = { + 'auth_type': 'str' + } + self.attribute_map = { + 'auth_type': 'authType' + } + self._auth_type = None + + @staticmethod + def get_subtype(object_dictionary): + """ + Given the hash representation of a subtype of this class, + use the info in the hash to return the class of the subtype. + """ + type = object_dictionary['authType'] + + if type == 'API_KEY': + return 'CreateApiKeyAiModelAuthDetails' + + if type == 'OCI_GEN_AI': + return 'CreateOciGenAiModelAuthDetails' + else: + return 'CreateAiModelAuthDetails' + + @property + def auth_type(self): + """ + **[Required]** Gets the auth_type of this CreateAiModelAuthDetails. + Authentication type used by the AI model connection. + + Allowed values for this property are: "OCI_GEN_AI", "API_KEY" + + + :return: The auth_type of this CreateAiModelAuthDetails. + :rtype: str + """ + return self._auth_type + + @auth_type.setter + def auth_type(self, auth_type): + """ + Sets the auth_type of this CreateAiModelAuthDetails. + Authentication type used by the AI model connection. + + + :param auth_type: The auth_type of this CreateAiModelAuthDetails. + :type: str + """ + allowed_values = ["OCI_GEN_AI", "API_KEY"] + if not value_allowed_none_or_none_sentinel(auth_type, allowed_values): + raise ValueError( + f"Invalid value for `auth_type`, must be None or one of {allowed_values}" + ) + self._auth_type = auth_type + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/golden_gate/models/create_ai_model_connection_details.py b/src/oci/golden_gate/models/create_ai_model_connection_details.py new file mode 100644 index 0000000000..01ff5dfbb2 --- /dev/null +++ b/src/oci/golden_gate/models/create_ai_model_connection_details.py @@ -0,0 +1,330 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 + +from .create_connection_details import CreateConnectionDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateAiModelConnectionDetails(CreateConnectionDetails): + """ + The information about a new AI Model Connection. + """ + + #: A constant which can be used with the provider_type property of a CreateAiModelConnectionDetails. + #: This constant has a value of "OCI_GENERATIVE_AI" + PROVIDER_TYPE_OCI_GENERATIVE_AI = "OCI_GENERATIVE_AI" + + #: A constant which can be used with the provider_type property of a CreateAiModelConnectionDetails. + #: This constant has a value of "GEMINI" + PROVIDER_TYPE_GEMINI = "GEMINI" + + #: A constant which can be used with the provider_type property of a CreateAiModelConnectionDetails. + #: This constant has a value of "OPEN_AI" + PROVIDER_TYPE_OPEN_AI = "OPEN_AI" + + #: A constant which can be used with the provider_type property of a CreateAiModelConnectionDetails. + #: This constant has a value of "VOYAGE_AI" + PROVIDER_TYPE_VOYAGE_AI = "VOYAGE_AI" + + def __init__(self, **kwargs): + """ + Initializes a new CreateAiModelConnectionDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.golden_gate.models.CreateAiModelConnectionDetails.connection_type` attribute + of this class is ``AI_MODEL`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param connection_type: + The value to assign to the connection_type property of this CreateAiModelConnectionDetails. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" + :type connection_type: str + + :param display_name: + The value to assign to the display_name property of this CreateAiModelConnectionDetails. + :type display_name: str + + :param description: + The value to assign to the description property of this CreateAiModelConnectionDetails. + :type description: str + + :param compartment_id: + The value to assign to the compartment_id property of this CreateAiModelConnectionDetails. + :type compartment_id: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this CreateAiModelConnectionDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this CreateAiModelConnectionDetails. + :type defined_tags: dict(str, dict(str, object)) + + :param locks: + The value to assign to the locks property of this CreateAiModelConnectionDetails. + :type locks: list[oci.golden_gate.models.AddResourceLockDetails] + + :param vault_id: + The value to assign to the vault_id property of this CreateAiModelConnectionDetails. + :type vault_id: str + + :param key_id: + The value to assign to the key_id property of this CreateAiModelConnectionDetails. + :type key_id: str + + :param nsg_ids: + The value to assign to the nsg_ids property of this CreateAiModelConnectionDetails. + :type nsg_ids: list[str] + + :param subnet_id: + The value to assign to the subnet_id property of this CreateAiModelConnectionDetails. + :type subnet_id: str + + :param routing_method: + The value to assign to the routing_method property of this CreateAiModelConnectionDetails. + Allowed values for this property are: "SHARED_SERVICE_ENDPOINT", "SHARED_DEPLOYMENT_ENDPOINT", "DEDICATED_ENDPOINT" + :type routing_method: str + + :param does_use_secret_ids: + The value to assign to the does_use_secret_ids property of this CreateAiModelConnectionDetails. + :type does_use_secret_ids: bool + + :param subscription_id: + The value to assign to the subscription_id property of this CreateAiModelConnectionDetails. + :type subscription_id: str + + :param cluster_placement_group_id: + The value to assign to the cluster_placement_group_id property of this CreateAiModelConnectionDetails. + :type cluster_placement_group_id: str + + :param security_attributes: + The value to assign to the security_attributes property of this CreateAiModelConnectionDetails. + :type security_attributes: dict(str, dict(str, object)) + + :param technology_type: + The value to assign to the technology_type property of this CreateAiModelConnectionDetails. + :type technology_type: str + + :param provider_type: + The value to assign to the provider_type property of this CreateAiModelConnectionDetails. + Allowed values for this property are: "OCI_GENERATIVE_AI", "GEMINI", "OPEN_AI", "VOYAGE_AI" + :type provider_type: str + + :param model_key: + The value to assign to the model_key property of this CreateAiModelConnectionDetails. + :type model_key: str + + :param max_input_chars: + The value to assign to the max_input_chars property of this CreateAiModelConnectionDetails. + :type max_input_chars: int + + :param auth_details: + The value to assign to the auth_details property of this CreateAiModelConnectionDetails. + :type auth_details: oci.golden_gate.models.CreateAiModelAuthDetails + + """ + self.swagger_types = { + 'connection_type': 'str', + 'display_name': 'str', + 'description': 'str', + 'compartment_id': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'locks': 'list[AddResourceLockDetails]', + 'vault_id': 'str', + 'key_id': 'str', + 'nsg_ids': 'list[str]', + 'subnet_id': 'str', + 'routing_method': 'str', + 'does_use_secret_ids': 'bool', + 'subscription_id': 'str', + 'cluster_placement_group_id': 'str', + 'security_attributes': 'dict(str, dict(str, object))', + 'technology_type': 'str', + 'provider_type': 'str', + 'model_key': 'str', + 'max_input_chars': 'int', + 'auth_details': 'CreateAiModelAuthDetails' + } + self.attribute_map = { + 'connection_type': 'connectionType', + 'display_name': 'displayName', + 'description': 'description', + 'compartment_id': 'compartmentId', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'locks': 'locks', + 'vault_id': 'vaultId', + 'key_id': 'keyId', + 'nsg_ids': 'nsgIds', + 'subnet_id': 'subnetId', + 'routing_method': 'routingMethod', + 'does_use_secret_ids': 'doesUseSecretIds', + 'subscription_id': 'subscriptionId', + 'cluster_placement_group_id': 'clusterPlacementGroupId', + 'security_attributes': 'securityAttributes', + 'technology_type': 'technologyType', + 'provider_type': 'providerType', + 'model_key': 'modelKey', + 'max_input_chars': 'maxInputChars', + 'auth_details': 'authDetails' + } + self._connection_type = None + self._display_name = None + self._description = None + self._compartment_id = None + self._freeform_tags = None + self._defined_tags = None + self._locks = None + self._vault_id = None + self._key_id = None + self._nsg_ids = None + self._subnet_id = None + self._routing_method = None + self._does_use_secret_ids = None + self._subscription_id = None + self._cluster_placement_group_id = None + self._security_attributes = None + self._technology_type = None + self._provider_type = None + self._model_key = None + self._max_input_chars = None + self._auth_details = None + self._connection_type = 'AI_MODEL' + + @property + def technology_type(self): + """ + **[Required]** Gets the technology_type of this CreateAiModelConnectionDetails. + The AI Model technology type. + + + :return: The technology_type of this CreateAiModelConnectionDetails. + :rtype: str + """ + return self._technology_type + + @technology_type.setter + def technology_type(self, technology_type): + """ + Sets the technology_type of this CreateAiModelConnectionDetails. + The AI Model technology type. + + + :param technology_type: The technology_type of this CreateAiModelConnectionDetails. + :type: str + """ + self._technology_type = technology_type + + @property + def provider_type(self): + """ + Gets the provider_type of this CreateAiModelConnectionDetails. + AI Provider type used by the AI Model Connection. + + Allowed values for this property are: "OCI_GENERATIVE_AI", "GEMINI", "OPEN_AI", "VOYAGE_AI" + + + :return: The provider_type of this CreateAiModelConnectionDetails. + :rtype: str + """ + return self._provider_type + + @provider_type.setter + def provider_type(self, provider_type): + """ + Sets the provider_type of this CreateAiModelConnectionDetails. + AI Provider type used by the AI Model Connection. + + + :param provider_type: The provider_type of this CreateAiModelConnectionDetails. + :type: str + """ + allowed_values = ["OCI_GENERATIVE_AI", "GEMINI", "OPEN_AI", "VOYAGE_AI"] + if not value_allowed_none_or_none_sentinel(provider_type, allowed_values): + raise ValueError( + f"Invalid value for `provider_type`, must be None or one of {allowed_values}" + ) + self._provider_type = provider_type + + @property + def model_key(self): + """ + **[Required]** Gets the model_key of this CreateAiModelConnectionDetails. + AI model identifier. + + + :return: The model_key of this CreateAiModelConnectionDetails. + :rtype: str + """ + return self._model_key + + @model_key.setter + def model_key(self, model_key): + """ + Sets the model_key of this CreateAiModelConnectionDetails. + AI model identifier. + + + :param model_key: The model_key of this CreateAiModelConnectionDetails. + :type: str + """ + self._model_key = model_key + + @property + def max_input_chars(self): + """ + Gets the max_input_chars of this CreateAiModelConnectionDetails. + Maximum number of input characters supported by this AI model connection. + + + :return: The max_input_chars of this CreateAiModelConnectionDetails. + :rtype: int + """ + return self._max_input_chars + + @max_input_chars.setter + def max_input_chars(self, max_input_chars): + """ + Sets the max_input_chars of this CreateAiModelConnectionDetails. + Maximum number of input characters supported by this AI model connection. + + + :param max_input_chars: The max_input_chars of this CreateAiModelConnectionDetails. + :type: int + """ + self._max_input_chars = max_input_chars + + @property + def auth_details(self): + """ + Gets the auth_details of this CreateAiModelConnectionDetails. + + :return: The auth_details of this CreateAiModelConnectionDetails. + :rtype: oci.golden_gate.models.CreateAiModelAuthDetails + """ + return self._auth_details + + @auth_details.setter + def auth_details(self, auth_details): + """ + Sets the auth_details of this CreateAiModelConnectionDetails. + + :param auth_details: The auth_details of this CreateAiModelConnectionDetails. + :type: oci.golden_gate.models.CreateAiModelAuthDetails + """ + self._auth_details = auth_details + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/golden_gate/models/create_amazon_kinesis_connection_details.py b/src/oci/golden_gate/models/create_amazon_kinesis_connection_details.py index ee6d873ec1..8eda3272be 100644 --- a/src/oci/golden_gate/models/create_amazon_kinesis_connection_details.py +++ b/src/oci/golden_gate/models/create_amazon_kinesis_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this CreateAmazonKinesisConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -160,6 +160,9 @@ def __init__(self, **kwargs): 'endpoint': 'endpoint', 'region': 'region' } + self._redacted_field_paths = [ + ['secret_access_key'], + ] self._connection_type = None self._display_name = None self._description = None @@ -213,6 +216,7 @@ def access_key_id(self): """ **[Required]** Gets the access_key_id of this CreateAmazonKinesisConnectionDetails. Access key ID to access the Amazon Kinesis. + Note: Despite the \"Id\" suffix, this value is not an OCI OCID. :return: The access_key_id of this CreateAmazonKinesisConnectionDetails. @@ -225,6 +229,7 @@ def access_key_id(self, access_key_id): """ Sets the access_key_id of this CreateAmazonKinesisConnectionDetails. Access key ID to access the Amazon Kinesis. + Note: Despite the \"Id\" suffix, this value is not an OCI OCID. :param access_key_id: The access_key_id of this CreateAmazonKinesisConnectionDetails. @@ -237,7 +242,9 @@ def secret_access_key(self): """ Gets the secret_access_key of this CreateAmazonKinesisConnectionDetails. Secret access key to access the Amazon Kinesis. - Deprecated: This field is deprecated and replaced by \"secretAccessKeySecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"secretAccessKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The secret_access_key of this CreateAmazonKinesisConnectionDetails. @@ -250,7 +257,9 @@ def secret_access_key(self, secret_access_key): """ Sets the secret_access_key of this CreateAmazonKinesisConnectionDetails. Secret access key to access the Amazon Kinesis. - Deprecated: This field is deprecated and replaced by \"secretAccessKeySecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"secretAccessKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param secret_access_key: The secret_access_key of this CreateAmazonKinesisConnectionDetails. @@ -345,7 +354,9 @@ def region(self, region): self._region = region def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['secret_access_key']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_amazon_redshift_connection_details.py b/src/oci/golden_gate/models/create_amazon_redshift_connection_details.py index 344f3dcef8..a96c4323ee 100644 --- a/src/oci/golden_gate/models/create_amazon_redshift_connection_details.py +++ b/src/oci/golden_gate/models/create_amazon_redshift_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this CreateAmazonRedshiftConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -154,6 +154,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret_id': 'passwordSecretId' } + self._redacted_field_paths = [ + ['password'], + ] self._connection_type = None self._display_name = None self._description = None @@ -261,7 +264,9 @@ def password(self): Gets the password of this CreateAmazonRedshiftConnectionDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The password of this CreateAmazonRedshiftConnectionDetails. @@ -275,7 +280,9 @@ def password(self, password): Sets the password of this CreateAmazonRedshiftConnectionDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param password: The password of this CreateAmazonRedshiftConnectionDetails. @@ -320,7 +327,9 @@ def password_secret_id(self, password_secret_id): self._password_secret_id = password_secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_amazon_s3_connection_details.py b/src/oci/golden_gate/models/create_amazon_s3_connection_details.py index fa2bda52e8..bfcfa5e2f3 100644 --- a/src/oci/golden_gate/models/create_amazon_s3_connection_details.py +++ b/src/oci/golden_gate/models/create_amazon_s3_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this CreateAmazonS3ConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -160,6 +160,9 @@ def __init__(self, **kwargs): 'endpoint': 'endpoint', 'region': 'region' } + self._redacted_field_paths = [ + ['secret_access_key'], + ] self._connection_type = None self._display_name = None self._description = None @@ -213,7 +216,7 @@ def access_key_id(self): """ **[Required]** Gets the access_key_id of this CreateAmazonS3ConnectionDetails. Access key ID to access the Amazon S3 bucket. - e.g.: \"this-is-not-the-secret\" + Note: Despite the \"Id\" suffix, this value is not an OCI OCID. :return: The access_key_id of this CreateAmazonS3ConnectionDetails. @@ -226,7 +229,7 @@ def access_key_id(self, access_key_id): """ Sets the access_key_id of this CreateAmazonS3ConnectionDetails. Access key ID to access the Amazon S3 bucket. - e.g.: \"this-is-not-the-secret\" + Note: Despite the \"Id\" suffix, this value is not an OCI OCID. :param access_key_id: The access_key_id of this CreateAmazonS3ConnectionDetails. @@ -239,8 +242,10 @@ def secret_access_key(self): """ Gets the secret_access_key of this CreateAmazonS3ConnectionDetails. Secret access key to access the Amazon S3 bucket. - e.g.: \"this-is-not-the-secret\" - Deprecated: This field is deprecated and replaced by \"secretAccessKeySecretId\". This field will be removed after February 15 2026. + + Deprecated: This field is deprecated and replaced by \"secretAccessKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The secret_access_key of this CreateAmazonS3ConnectionDetails. @@ -253,8 +258,10 @@ def secret_access_key(self, secret_access_key): """ Sets the secret_access_key of this CreateAmazonS3ConnectionDetails. Secret access key to access the Amazon S3 bucket. - e.g.: \"this-is-not-the-secret\" - Deprecated: This field is deprecated and replaced by \"secretAccessKeySecretId\". This field will be removed after February 15 2026. + + Deprecated: This field is deprecated and replaced by \"secretAccessKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param secret_access_key: The secret_access_key of this CreateAmazonS3ConnectionDetails. @@ -349,7 +356,9 @@ def region(self, region): self._region = region def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['secret_access_key']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_amazon_s3_iceberg_storage_details.py b/src/oci/golden_gate/models/create_amazon_s3_iceberg_storage_details.py index 2bafa0aa9c..802aa74c2d 100644 --- a/src/oci/golden_gate/models/create_amazon_s3_iceberg_storage_details.py +++ b/src/oci/golden_gate/models/create_amazon_s3_iceberg_storage_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .create_iceberg_storage_details import CreateIcebergStorageDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param storage_type: The value to assign to the storage_type property of this CreateAmazonS3IcebergStorageDetails. - Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE" + Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", "NONE", "OCI_OBJECT_STORAGE_S3_API" :type storage_type: str :param scheme_type: @@ -75,6 +75,9 @@ def __init__(self, **kwargs): 'region': 'region', 'bucket': 'bucket' } + self._redacted_field_paths = [ + ['secret_access_key'], + ] self._storage_type = None self._scheme_type = None self._endpoint = None @@ -140,6 +143,7 @@ def access_key_id(self): """ **[Required]** Gets the access_key_id of this CreateAmazonS3IcebergStorageDetails. Access key ID to access the Amazon S3 bucket. + Note: Despite the \"Id\" suffix, this value is not an OCI OCID. :return: The access_key_id of this CreateAmazonS3IcebergStorageDetails. @@ -152,6 +156,7 @@ def access_key_id(self, access_key_id): """ Sets the access_key_id of this CreateAmazonS3IcebergStorageDetails. Access key ID to access the Amazon S3 bucket. + Note: Despite the \"Id\" suffix, this value is not an OCI OCID. :param access_key_id: The access_key_id of this CreateAmazonS3IcebergStorageDetails. @@ -192,8 +197,10 @@ def secret_access_key(self): """ Gets the secret_access_key of this CreateAmazonS3IcebergStorageDetails. Secret access key to access the Amazon S3 bucket. - e.g.: \"this-is-not-the-secret\" - Deprecated: This field is deprecated and replaced by \"secretAccessKeySecretId\". This field will be removed after February 15 2026. + + Deprecated: This field is deprecated and replaced by \"secretAccessKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The secret_access_key of this CreateAmazonS3IcebergStorageDetails. @@ -206,8 +213,10 @@ def secret_access_key(self, secret_access_key): """ Sets the secret_access_key of this CreateAmazonS3IcebergStorageDetails. Secret access key to access the Amazon S3 bucket. - e.g.: \"this-is-not-the-secret\" - Deprecated: This field is deprecated and replaced by \"secretAccessKeySecretId\". This field will be removed after February 15 2026. + + Deprecated: This field is deprecated and replaced by \"secretAccessKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param secret_access_key: The secret_access_key of this CreateAmazonS3IcebergStorageDetails. @@ -266,7 +275,9 @@ def bucket(self, bucket): self._bucket = bucket def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['secret_access_key']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_api_key_ai_model_auth_details.py b/src/oci/golden_gate/models/create_api_key_ai_model_auth_details.py new file mode 100644 index 0000000000..4d1546e7c7 --- /dev/null +++ b/src/oci/golden_gate/models/create_api_key_ai_model_auth_details.py @@ -0,0 +1,150 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 + +from .create_ai_model_auth_details import CreateAiModelAuthDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateApiKeyAiModelAuthDetails(CreateAiModelAuthDetails): + """ + The information about new API key authentication details for an AI Model connection. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateApiKeyAiModelAuthDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.golden_gate.models.CreateApiKeyAiModelAuthDetails.auth_type` attribute + of this class is ``API_KEY`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param auth_type: + The value to assign to the auth_type property of this CreateApiKeyAiModelAuthDetails. + Allowed values for this property are: "OCI_GEN_AI", "API_KEY" + :type auth_type: str + + :param base_url: + The value to assign to the base_url property of this CreateApiKeyAiModelAuthDetails. + :type base_url: str + + :param api_key: + The value to assign to the api_key property of this CreateApiKeyAiModelAuthDetails. + :type api_key: str + + :param api_key_secret_id: + The value to assign to the api_key_secret_id property of this CreateApiKeyAiModelAuthDetails. + :type api_key_secret_id: str + + """ + self.swagger_types = { + 'auth_type': 'str', + 'base_url': 'str', + 'api_key': 'str', + 'api_key_secret_id': 'str' + } + self.attribute_map = { + 'auth_type': 'authType', + 'base_url': 'baseUrl', + 'api_key': 'apiKey', + 'api_key_secret_id': 'apiKeySecretId' + } + self._auth_type = None + self._base_url = None + self._api_key = None + self._api_key_secret_id = None + self._auth_type = 'API_KEY' + + @property + def base_url(self): + """ + Gets the base_url of this CreateApiKeyAiModelAuthDetails. + Base URL of the AI model endpoint. + If not specified, the default base URL for the selected AI provider will be used. + + + :return: The base_url of this CreateApiKeyAiModelAuthDetails. + :rtype: str + """ + return self._base_url + + @base_url.setter + def base_url(self, base_url): + """ + Sets the base_url of this CreateApiKeyAiModelAuthDetails. + Base URL of the AI model endpoint. + If not specified, the default base URL for the selected AI provider will be used. + + + :param base_url: The base_url of this CreateApiKeyAiModelAuthDetails. + :type: str + """ + self._base_url = base_url + + @property + def api_key(self): + """ + Gets the api_key of this CreateApiKeyAiModelAuthDetails. + API key for the AI model connection. + Deprecated: This field is deprecated and replaced by \"apiKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + + :return: The api_key of this CreateApiKeyAiModelAuthDetails. + :rtype: str + """ + return self._api_key + + @api_key.setter + def api_key(self, api_key): + """ + Sets the api_key of this CreateApiKeyAiModelAuthDetails. + API key for the AI model connection. + Deprecated: This field is deprecated and replaced by \"apiKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + + :param api_key: The api_key of this CreateApiKeyAiModelAuthDetails. + :type: str + """ + self._api_key = api_key + + @property + def api_key_secret_id(self): + """ + Gets the api_key_secret_id of this CreateApiKeyAiModelAuthDetails. + API key secret OCID for the AI model connection. + + + :return: The api_key_secret_id of this CreateApiKeyAiModelAuthDetails. + :rtype: str + """ + return self._api_key_secret_id + + @api_key_secret_id.setter + def api_key_secret_id(self, api_key_secret_id): + """ + Sets the api_key_secret_id of this CreateApiKeyAiModelAuthDetails. + API key secret OCID for the AI model connection. + + + :param api_key_secret_id: The api_key_secret_id of this CreateApiKeyAiModelAuthDetails. + :type: str + """ + self._api_key_secret_id = api_key_secret_id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/golden_gate/models/create_azure_data_lake_storage_connection_details.py b/src/oci/golden_gate/models/create_azure_data_lake_storage_connection_details.py index 52e556ef76..01c429984f 100644 --- a/src/oci/golden_gate/models/create_azure_data_lake_storage_connection_details.py +++ b/src/oci/golden_gate/models/create_azure_data_lake_storage_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this CreateAzureDataLakeStorageConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -202,6 +202,11 @@ def __init__(self, **kwargs): 'endpoint': 'endpoint', 'azure_authority_host': 'azureAuthorityHost' } + self._redacted_field_paths = [ + ['account_key'], + ['sas_token'], + ['client_secret'], + ] self._connection_type = None self._display_name = None self._description = None @@ -311,7 +316,9 @@ def account_key(self): Gets the account_key of this CreateAzureDataLakeStorageConnectionDetails. Azure storage account key. This property is required when 'authenticationType' is set to 'SHARED_KEY'. e.g.: pa3WbhVATzj56xD4DH1VjOUhApRGEGHvOo58eQJVWIzX+j8j4CUVFcTjpIqDSRaSa1Wo2LbWY5at+AStEgLOIQ== - Deprecated: This field is deprecated and replaced by \"accountKeySecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"accountKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The account_key of this CreateAzureDataLakeStorageConnectionDetails. @@ -325,7 +332,9 @@ def account_key(self, account_key): Sets the account_key of this CreateAzureDataLakeStorageConnectionDetails. Azure storage account key. This property is required when 'authenticationType' is set to 'SHARED_KEY'. e.g.: pa3WbhVATzj56xD4DH1VjOUhApRGEGHvOo58eQJVWIzX+j8j4CUVFcTjpIqDSRaSa1Wo2LbWY5at+AStEgLOIQ== - Deprecated: This field is deprecated and replaced by \"accountKeySecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"accountKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param account_key: The account_key of this CreateAzureDataLakeStorageConnectionDetails. @@ -370,7 +379,9 @@ def sas_token(self): Credential that uses a shared access signature (SAS) to authenticate to an Azure Service. This property is required when 'authenticationType' is set to 'SHARED_ACCESS_SIGNATURE'. e.g.: ?sv=2020-06-08&ss=bfqt&srt=sco&sp=rwdlacupyx&se=2020-09-10T20:27:28Z&st=2022-08-05T12:27:28Z&spr=https&sig=C1IgHsiLBmTSStYkXXGLTP8it0xBrArcgCqOsZbXwIQ%3D - Deprecated: This field is deprecated and replaced by \"sasTokenSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"sasTokenSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The sas_token of this CreateAzureDataLakeStorageConnectionDetails. @@ -385,7 +396,9 @@ def sas_token(self, sas_token): Credential that uses a shared access signature (SAS) to authenticate to an Azure Service. This property is required when 'authenticationType' is set to 'SHARED_ACCESS_SIGNATURE'. e.g.: ?sv=2020-06-08&ss=bfqt&srt=sco&sp=rwdlacupyx&se=2020-09-10T20:27:28Z&st=2022-08-05T12:27:28Z&spr=https&sig=C1IgHsiLBmTSStYkXXGLTP8it0xBrArcgCqOsZbXwIQ%3D - Deprecated: This field is deprecated and replaced by \"sasTokenSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"sasTokenSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param sas_token: The sas_token of this CreateAzureDataLakeStorageConnectionDetails. @@ -481,7 +494,9 @@ def client_secret(self): Gets the client_secret of this CreateAzureDataLakeStorageConnectionDetails. Azure client secret (aka application password) for authentication. This property is required when 'authenticationType' is set to 'AZURE_ACTIVE_DIRECTORY'. e.g.: dO29Q~F5-VwnA.lZdd11xFF_t5NAXCaGwDl9NbT1 - Deprecated: This field is deprecated and replaced by \"clientSecretSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"clientSecretSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The client_secret of this CreateAzureDataLakeStorageConnectionDetails. @@ -495,7 +510,9 @@ def client_secret(self, client_secret): Sets the client_secret of this CreateAzureDataLakeStorageConnectionDetails. Azure client secret (aka application password) for authentication. This property is required when 'authenticationType' is set to 'AZURE_ACTIVE_DIRECTORY'. e.g.: dO29Q~F5-VwnA.lZdd11xFF_t5NAXCaGwDl9NbT1 - Deprecated: This field is deprecated and replaced by \"clientSecretSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"clientSecretSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param client_secret: The client_secret of this CreateAzureDataLakeStorageConnectionDetails. @@ -592,7 +609,11 @@ def azure_authority_host(self, azure_authority_host): self._azure_authority_host = azure_authority_host def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['account_key']) + redact_password_field(as_dict, ['sas_token']) + redact_password_field(as_dict, ['client_secret']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_azure_data_lake_storage_iceberg_storage_details.py b/src/oci/golden_gate/models/create_azure_data_lake_storage_iceberg_storage_details.py index 72fe0a743c..1ebc260a35 100644 --- a/src/oci/golden_gate/models/create_azure_data_lake_storage_iceberg_storage_details.py +++ b/src/oci/golden_gate/models/create_azure_data_lake_storage_iceberg_storage_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .create_iceberg_storage_details import CreateIcebergStorageDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param storage_type: The value to assign to the storage_type property of this CreateAzureDataLakeStorageIcebergStorageDetails. - Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE" + Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", "NONE", "OCI_OBJECT_STORAGE_S3_API" :type storage_type: str :param account_name: @@ -63,6 +63,9 @@ def __init__(self, **kwargs): 'account_key': 'accountKey', 'endpoint': 'endpoint' } + self._redacted_field_paths = [ + ['account_key'], + ] self._storage_type = None self._account_name = None self._container = None @@ -153,7 +156,9 @@ def account_key(self): Gets the account_key of this CreateAzureDataLakeStorageIcebergStorageDetails. Azure storage account key. This property is required when 'authenticationType' is set to 'SHARED_KEY'. e.g.: pa3WbhVATzj56xD4DH1VjOUhApRGEGHvOo58eQJVWIzX+j8j4CUVFcTjpIqDSRaSa1Wo2LbWY5at+AStEgLOIQ== - Deprecated: This field is deprecated and replaced by \"accountKeySecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"accountKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The account_key of this CreateAzureDataLakeStorageIcebergStorageDetails. @@ -167,7 +172,9 @@ def account_key(self, account_key): Sets the account_key of this CreateAzureDataLakeStorageIcebergStorageDetails. Azure storage account key. This property is required when 'authenticationType' is set to 'SHARED_KEY'. e.g.: pa3WbhVATzj56xD4DH1VjOUhApRGEGHvOo58eQJVWIzX+j8j4CUVFcTjpIqDSRaSa1Wo2LbWY5at+AStEgLOIQ== - Deprecated: This field is deprecated and replaced by \"accountKeySecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"accountKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param account_key: The account_key of this CreateAzureDataLakeStorageIcebergStorageDetails. @@ -202,7 +209,9 @@ def endpoint(self, endpoint): self._endpoint = endpoint def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['account_key']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_azure_synapse_connection_details.py b/src/oci/golden_gate/models/create_azure_synapse_connection_details.py index 86410fd2bb..01060f4dd1 100644 --- a/src/oci/golden_gate/models/create_azure_synapse_connection_details.py +++ b/src/oci/golden_gate/models/create_azure_synapse_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this CreateAzureSynapseConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -154,6 +154,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret_id': 'passwordSecretId' } + self._redacted_field_paths = [ + ['password'], + ] self._connection_type = None self._display_name = None self._description = None @@ -261,7 +264,9 @@ def password(self): Gets the password of this CreateAzureSynapseConnectionDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The password of this CreateAzureSynapseConnectionDetails. @@ -275,7 +280,9 @@ def password(self, password): Sets the password of this CreateAzureSynapseConnectionDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param password: The password of this CreateAzureSynapseConnectionDetails. @@ -320,7 +327,9 @@ def password_secret_id(self, password_secret_id): self._password_secret_id = password_secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_connection_details.py b/src/oci/golden_gate/models/create_connection_details.py index adde59aba1..a19b69c23e 100644 --- a/src/oci/golden_gate/models/create_connection_details.py +++ b/src/oci/golden_gate/models/create_connection_details.py @@ -131,6 +131,10 @@ class CreateConnectionDetails(object): #: This constant has a value of "ICEBERG" CONNECTION_TYPE_ICEBERG = "ICEBERG" + #: A constant which can be used with the connection_type property of a CreateConnectionDetails. + #: This constant has a value of "AI_MODEL" + CONNECTION_TYPE_AI_MODEL = "AI_MODEL" + #: A constant which can be used with the routing_method property of a CreateConnectionDetails. #: This constant has a value of "SHARED_SERVICE_ENDPOINT" ROUTING_METHOD_SHARED_SERVICE_ENDPOINT = "SHARED_SERVICE_ENDPOINT" @@ -170,6 +174,7 @@ def __init__(self, **kwargs): * :class:`~oci.golden_gate.models.CreateDatabricksConnectionDetails` * :class:`~oci.golden_gate.models.CreateDb2ConnectionDetails` * :class:`~oci.golden_gate.models.CreateElasticsearchConnectionDetails` + * :class:`~oci.golden_gate.models.CreateAiModelConnectionDetails` * :class:`~oci.golden_gate.models.CreateAzureSynapseConnectionDetails` * :class:`~oci.golden_gate.models.CreateIcebergConnectionDetails` * :class:`~oci.golden_gate.models.CreateMysqlConnectionDetails` @@ -182,7 +187,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this CreateConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -374,6 +379,9 @@ def get_subtype(object_dictionary): if type == 'ELASTICSEARCH': return 'CreateElasticsearchConnectionDetails' + if type == 'AI_MODEL': + return 'CreateAiModelConnectionDetails' + if type == 'AZURE_SYNAPSE_ANALYTICS': return 'CreateAzureSynapseConnectionDetails' @@ -403,7 +411,7 @@ def connection_type(self): **[Required]** Gets the connection_type of this CreateConnectionDetails. The connection type. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :return: The connection_type of this CreateConnectionDetails. @@ -421,7 +429,7 @@ def connection_type(self, connection_type): :param connection_type: The connection_type of this CreateConnectionDetails. :type: str """ - allowed_values = ["GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG"] + allowed_values = ["GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL"] if not value_allowed_none_or_none_sentinel(connection_type, allowed_values): raise ValueError( f"Invalid value for `connection_type`, must be None or one of {allowed_values}" @@ -590,9 +598,15 @@ def locks(self, locks): def vault_id(self): """ Gets the vault_id of this CreateConnectionDetails. - Refers to the customer's vault OCID. - If provided, it references a vault where GoldenGate can manage secrets. Customers must add policies to permit GoldenGate - to manage secrets contained within this vault. + References the OCI Vault that contains the customer-managed encryption key identified by `keyId`. + + Deprecated: This field is deprecated for GoldenGate connections. Sensitive attributes should be provided using the + corresponding Secret OCID attributes of the connection (for example, `passwordSecretId`) instead of plain-text + attributes encrypted with `vaultId` and `keyId`. This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + This field is applicable only when `doesUseSecretIds` is set to `false`. + If `vaultId` is provided, `keyId` must also be provided. :return: The vault_id of this CreateConnectionDetails. @@ -604,9 +618,15 @@ def vault_id(self): def vault_id(self, vault_id): """ Sets the vault_id of this CreateConnectionDetails. - Refers to the customer's vault OCID. - If provided, it references a vault where GoldenGate can manage secrets. Customers must add policies to permit GoldenGate - to manage secrets contained within this vault. + References the OCI Vault that contains the customer-managed encryption key identified by `keyId`. + + Deprecated: This field is deprecated for GoldenGate connections. Sensitive attributes should be provided using the + corresponding Secret OCID attributes of the connection (for example, `passwordSecretId`) instead of plain-text + attributes encrypted with `vaultId` and `keyId`. This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + This field is applicable only when `doesUseSecretIds` is set to `false`. + If `vaultId` is provided, `keyId` must also be provided. :param vault_id: The vault_id of this CreateConnectionDetails. @@ -618,8 +638,17 @@ def vault_id(self, vault_id): def key_id(self): """ Gets the key_id of this CreateConnectionDetails. - Refers to the customer's master key OCID. - If provided, it references a key to manage secrets. Customers must add policies to permit GoldenGate to use this key. + References the OCI Vault key in the OCI Vault identified by `vaultId`. + + Deprecated: This field is deprecated for GoldenGate connections. Sensitive attributes should be provided using the + corresponding Secret OCID attributes of the connection (for example, `passwordSecretId`) instead of plain-text + attributes encrypted with `vaultId` and `keyId`. This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + The GoldenGate service uses this key to encrypt sensitive information (for example, `password`) that is provided in plain-text connection attributes through the API. + This field is applicable only when `doesUseSecretIds` is set to `false`. If both `vaultId` and `keyId` are provided, + the GoldenGate service uses the specified customer-managed key to encrypt the sensitive data. + If neither `vaultId` nor `keyId` is provided, the GoldenGate service uses Oracle-managed encryption keys. :return: The key_id of this CreateConnectionDetails. @@ -631,8 +660,17 @@ def key_id(self): def key_id(self, key_id): """ Sets the key_id of this CreateConnectionDetails. - Refers to the customer's master key OCID. - If provided, it references a key to manage secrets. Customers must add policies to permit GoldenGate to use this key. + References the OCI Vault key in the OCI Vault identified by `vaultId`. + + Deprecated: This field is deprecated for GoldenGate connections. Sensitive attributes should be provided using the + corresponding Secret OCID attributes of the connection (for example, `passwordSecretId`) instead of plain-text + attributes encrypted with `vaultId` and `keyId`. This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + The GoldenGate service uses this key to encrypt sensitive information (for example, `password`) that is provided in plain-text connection attributes through the API. + This field is applicable only when `doesUseSecretIds` is set to `false`. If both `vaultId` and `keyId` are provided, + the GoldenGate service uses the specified customer-managed key to encrypt the sensitive data. + If neither `vaultId` nor `keyId` is provided, the GoldenGate service uses Oracle-managed encryption keys. :param key_id: The key_id of this CreateConnectionDetails. @@ -697,9 +735,13 @@ def routing_method(self): """ Gets the routing_method of this CreateConnectionDetails. Controls the network traffic direction to the target: - SHARED_SERVICE_ENDPOINT: Traffic flows through the Goldengate Service's network to public hosts. Cannot be used for private targets. SHARED_DEPLOYMENT_ENDPOINT: Network traffic flows from the assigned deployment's private endpoint through the deployment's subnet. DEDICATED_ENDPOINT: A dedicated private endpoint is created in the target VCN subnet for the connection. The subnetId is required when DEDICATED_ENDPOINT networking is selected. + SHARED_SERVICE_ENDPOINT: Traffic flows through the Goldengate Service's network to public hosts. Cannot be used for private targets. + + Deprecated: SHARED_SERVICE_ENDPOINT is deprecated. Use another supported routingMethod value, or update existing connections to use a supported routing method. + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate Allowed values for this property are: "SHARED_SERVICE_ENDPOINT", "SHARED_DEPLOYMENT_ENDPOINT", "DEDICATED_ENDPOINT" @@ -714,9 +756,13 @@ def routing_method(self, routing_method): """ Sets the routing_method of this CreateConnectionDetails. Controls the network traffic direction to the target: - SHARED_SERVICE_ENDPOINT: Traffic flows through the Goldengate Service's network to public hosts. Cannot be used for private targets. SHARED_DEPLOYMENT_ENDPOINT: Network traffic flows from the assigned deployment's private endpoint through the deployment's subnet. DEDICATED_ENDPOINT: A dedicated private endpoint is created in the target VCN subnet for the connection. The subnetId is required when DEDICATED_ENDPOINT networking is selected. + SHARED_SERVICE_ENDPOINT: Traffic flows through the Goldengate Service's network to public hosts. Cannot be used for private targets. + + Deprecated: SHARED_SERVICE_ENDPOINT is deprecated. Use another supported routingMethod value, or update existing connections to use a supported routing method. + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param routing_method: The routing_method of this CreateConnectionDetails. @@ -735,6 +781,21 @@ def does_use_secret_ids(self): Gets the does_use_secret_ids of this CreateConnectionDetails. Indicates that sensitive attributes are provided via Secrets. + Deprecated: This field is deprecated. Sensitive attributes should be provided using the corresponding Secret OCID + attributes of the connection (for example, `passwordSecretId`) instead of plain-text attributes. This change follows + the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + When set to `true`, all sensitive information must be provided as OCI Vault secrets using the corresponding + `*SecretId` attributes of the connection (for example, `passwordSecretId`). Plain-text sensitive attributes (for example, `password`) must not be used. + This ensures that sensitive information remains stored and managed in the customer's OCI Vault rather than by the GoldenGate service. + + When set to false, sensitive information must be provided in the corresponding plain-text attributes (for example, `password`) rather than in secret OCID attributes. + In this mode, the sensitive information is stored by the GoldenGate service. If `vaultId` and `keyId` are not specified, + the GoldenGate service uses Oracle-managed encryption keys to encrypt the stored data. + + If `vaultId` and `keyId` are provided, the specified customer-managed key is used. + :return: The does_use_secret_ids of this CreateConnectionDetails. :rtype: bool @@ -747,6 +808,21 @@ def does_use_secret_ids(self, does_use_secret_ids): Sets the does_use_secret_ids of this CreateConnectionDetails. Indicates that sensitive attributes are provided via Secrets. + Deprecated: This field is deprecated. Sensitive attributes should be provided using the corresponding Secret OCID + attributes of the connection (for example, `passwordSecretId`) instead of plain-text attributes. This change follows + the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + When set to `true`, all sensitive information must be provided as OCI Vault secrets using the corresponding + `*SecretId` attributes of the connection (for example, `passwordSecretId`). Plain-text sensitive attributes (for example, `password`) must not be used. + This ensures that sensitive information remains stored and managed in the customer's OCI Vault rather than by the GoldenGate service. + + When set to false, sensitive information must be provided in the corresponding plain-text attributes (for example, `password`) rather than in secret OCID attributes. + In this mode, the sensitive information is stored by the GoldenGate service. If `vaultId` and `keyId` are not specified, + the GoldenGate service uses Oracle-managed encryption keys to encrypt the stored data. + + If `vaultId` and `keyId` are provided, the specified customer-managed key is used. + :param does_use_secret_ids: The does_use_secret_ids of this CreateConnectionDetails. :type: bool diff --git a/src/oci/golden_gate/models/create_database_registration_details.py b/src/oci/golden_gate/models/create_database_registration_details.py index 3887fa3365..94d113bb10 100644 --- a/src/oci/golden_gate/models/create_database_registration_details.py +++ b/src/oci/golden_gate/models/create_database_registration_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -142,6 +142,9 @@ def __init__(self, **kwargs): 'key_id': 'keyId', 'secret_compartment_id': 'secretCompartmentId' } + self._redacted_field_paths = [ + ['password'], + ] self._display_name = None self._description = None self._compartment_id = None @@ -435,7 +438,9 @@ def password(self): **[Required]** Gets the password of this CreateDatabaseRegistrationDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The password of this CreateDatabaseRegistrationDetails. @@ -449,7 +454,9 @@ def password(self, password): Sets the password of this CreateDatabaseRegistrationDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param password: The password of this CreateDatabaseRegistrationDetails. @@ -524,7 +531,9 @@ def wallet(self): Gets the wallet of this CreateDatabaseRegistrationDetails. The wallet contents Oracle GoldenGate uses to make connections to a database. This attribute is expected to be base64 encoded. - Deprecated: This field is deprecated and replaced by \"walletSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"walletSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The wallet of this CreateDatabaseRegistrationDetails. @@ -538,7 +547,9 @@ def wallet(self, wallet): Sets the wallet of this CreateDatabaseRegistrationDetails. The wallet contents Oracle GoldenGate uses to make connections to a database. This attribute is expected to be base64 encoded. - Deprecated: This field is deprecated and replaced by \"walletSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"walletSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param wallet: The wallet of this CreateDatabaseRegistrationDetails. @@ -651,7 +662,9 @@ def secret_compartment_id(self, secret_compartment_id): self._secret_compartment_id = secret_compartment_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_databricks_connection_details.py b/src/oci/golden_gate/models/create_databricks_connection_details.py index d1c910b78d..cd212b2b93 100644 --- a/src/oci/golden_gate/models/create_databricks_connection_details.py +++ b/src/oci/golden_gate/models/create_databricks_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this CreateDatabricksConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -178,6 +178,10 @@ def __init__(self, **kwargs): 'client_secret_secret_id': 'clientSecretSecretId', 'storage_credential_name': 'storageCredentialName' } + self._redacted_field_paths = [ + ['password'], + ['client_secret'], + ] self._connection_type = None self._display_name = None self._description = None @@ -285,7 +289,9 @@ def password(self): Gets the password of this CreateDatabricksConnectionDetails. The password used to connect to Databricks. Only applicable for authenticationType == PERSONAL_ACCESS_TOKEN. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The password of this CreateDatabricksConnectionDetails. @@ -299,7 +305,9 @@ def password(self, password): Sets the password of this CreateDatabricksConnectionDetails. The password used to connect to Databricks. Only applicable for authenticationType == PERSONAL_ACCESS_TOKEN. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param password: The password of this CreateDatabricksConnectionDetails. @@ -366,7 +374,9 @@ def client_secret(self): """ Gets the client_secret of this CreateDatabricksConnectionDetails. OAuth client secret, only applicable for authenticationType == OAUTH_M2M - Deprecated: This field is deprecated and replaced by \"clientSecretSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"clientSecretSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The client_secret of this CreateDatabricksConnectionDetails. @@ -379,7 +389,9 @@ def client_secret(self, client_secret): """ Sets the client_secret of this CreateDatabricksConnectionDetails. OAuth client secret, only applicable for authenticationType == OAUTH_M2M - Deprecated: This field is deprecated and replaced by \"clientSecretSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"clientSecretSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param client_secret: The client_secret of this CreateDatabricksConnectionDetails. @@ -444,7 +456,10 @@ def storage_credential_name(self, storage_credential_name): self._storage_credential_name = storage_credential_name def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['client_secret']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_db2_connection_details.py b/src/oci/golden_gate/models/create_db2_connection_details.py index efca7c5533..98ec0b22e2 100644 --- a/src/oci/golden_gate/models/create_db2_connection_details.py +++ b/src/oci/golden_gate/models/create_db2_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this CreateDb2ConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -208,6 +208,9 @@ def __init__(self, **kwargs): 'ssl_client_keystash_secret_id': 'sslClientKeystashSecretId', 'ssl_server_certificate': 'sslServerCertificate' } + self._redacted_field_paths = [ + ['password'], + ] self._connection_type = None self._display_name = None self._description = None @@ -367,7 +370,9 @@ def password(self): """ Gets the password of this CreateDb2ConnectionDetails. The password Oracle GoldenGate uses to connect the associated DB2 database. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The password of this CreateDb2ConnectionDetails. @@ -380,7 +385,9 @@ def password(self, password): """ Sets the password of this CreateDb2ConnectionDetails. The password Oracle GoldenGate uses to connect the associated DB2 database. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param password: The password of this CreateDb2ConnectionDetails. @@ -477,7 +484,9 @@ def ssl_client_keystoredb(self): The base64 encoded keystore file created at the client containing the server certificate / CA root certificate. This property is not supported for IBM Db2 for i, as client TLS mode is not available. - Deprecated: This field is deprecated and replaced by \"sslClientKeystoredbSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"sslClientKeystoredbSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The ssl_client_keystoredb of this CreateDb2ConnectionDetails. @@ -492,7 +501,9 @@ def ssl_client_keystoredb(self, ssl_client_keystoredb): The base64 encoded keystore file created at the client containing the server certificate / CA root certificate. This property is not supported for IBM Db2 for i, as client TLS mode is not available. - Deprecated: This field is deprecated and replaced by \"sslClientKeystoredbSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"sslClientKeystoredbSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param ssl_client_keystoredb: The ssl_client_keystoredb of this CreateDb2ConnectionDetails. @@ -543,7 +554,9 @@ def ssl_client_keystash(self): The base64 encoded keystash file which contains the encrypted password to the key database file. This property is not supported for IBM Db2 for i, as client TLS mode is not available. - Deprecated: This field is deprecated and replaced by \"sslClientKeystashSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"sslClientKeystashSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The ssl_client_keystash of this CreateDb2ConnectionDetails. @@ -558,7 +571,9 @@ def ssl_client_keystash(self, ssl_client_keystash): The base64 encoded keystash file which contains the encrypted password to the key database file. This property is not supported for IBM Db2 for i, as client TLS mode is not available. - Deprecated: This field is deprecated and replaced by \"sslClientKeystashSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"sslClientKeystashSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param ssl_client_keystash: The ssl_client_keystash of this CreateDb2ConnectionDetails. @@ -629,7 +644,9 @@ def ssl_server_certificate(self, ssl_server_certificate): self._ssl_server_certificate = ssl_server_certificate def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_deployment_details.py b/src/oci/golden_gate/models/create_deployment_details.py index 39f108987d..c25c86cfa5 100644 --- a/src/oci/golden_gate/models/create_deployment_details.py +++ b/src/oci/golden_gate/models/create_deployment_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -287,6 +287,9 @@ def __init__(self, **kwargs): 'maintenance_configuration': 'maintenanceConfiguration', 'backup_schedule': 'backupSchedule' } + self._redacted_field_paths = [ + ['ogg_data', 'admin_password'], + ] self._display_name = None self._license_model = None self._is_byol_cpu_core_count_limit_enabled = None @@ -1160,7 +1163,9 @@ def backup_schedule(self, backup_schedule): self._backup_schedule = backup_schedule def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['ogg_data', 'admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_elasticsearch_connection_details.py b/src/oci/golden_gate/models/create_elasticsearch_connection_details.py index 5b1c943fa4..b5fabf404d 100644 --- a/src/oci/golden_gate/models/create_elasticsearch_connection_details.py +++ b/src/oci/golden_gate/models/create_elasticsearch_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this CreateElasticsearchConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -172,6 +172,9 @@ def __init__(self, **kwargs): 'password_secret_id': 'passwordSecretId', 'fingerprint': 'fingerprint' } + self._redacted_field_paths = [ + ['password'], + ] self._connection_type = None self._display_name = None self._description = None @@ -334,7 +337,9 @@ def password(self): Gets the password of this CreateElasticsearchConnectionDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The password of this CreateElasticsearchConnectionDetails. @@ -348,7 +353,9 @@ def password(self, password): Sets the password of this CreateElasticsearchConnectionDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param password: The password of this CreateElasticsearchConnectionDetails. @@ -419,7 +426,9 @@ def fingerprint(self, fingerprint): self._fingerprint = fingerprint def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_generic_connection_details.py b/src/oci/golden_gate/models/create_generic_connection_details.py index 075ba42b1e..cbcf2c82a5 100644 --- a/src/oci/golden_gate/models/create_generic_connection_details.py +++ b/src/oci/golden_gate/models/create_generic_connection_details.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this CreateGenericConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: diff --git a/src/oci/golden_gate/models/create_golden_gate_connection_details.py b/src/oci/golden_gate/models/create_golden_gate_connection_details.py index a99d91bbf0..320cda7850 100644 --- a/src/oci/golden_gate/models/create_golden_gate_connection_details.py +++ b/src/oci/golden_gate/models/create_golden_gate_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this CreateGoldenGateConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -166,6 +166,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret_id': 'passwordSecretId' } + self._redacted_field_paths = [ + ['password'], + ] self._connection_type = None self._display_name = None self._description = None @@ -320,7 +323,9 @@ def password(self): """ Gets the password of this CreateGoldenGateConnectionDetails. The password used to connect to the Oracle GoldenGate accessed trough this connection. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The password of this CreateGoldenGateConnectionDetails. @@ -333,7 +338,9 @@ def password(self, password): """ Sets the password of this CreateGoldenGateConnectionDetails. The password used to connect to the Oracle GoldenGate accessed trough this connection. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param password: The password of this CreateGoldenGateConnectionDetails. @@ -374,7 +381,9 @@ def password_secret_id(self, password_secret_id): self._password_secret_id = password_secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_google_big_query_connection_details.py b/src/oci/golden_gate/models/create_google_big_query_connection_details.py index 7db31a3d96..b005e7700f 100644 --- a/src/oci/golden_gate/models/create_google_big_query_connection_details.py +++ b/src/oci/golden_gate/models/create_google_big_query_connection_details.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this CreateGoogleBigQueryConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -226,7 +226,9 @@ def service_account_key_file(self): Gets the service_account_key_file of this CreateGoogleBigQueryConnectionDetails. The base64 encoded content of the service account key file containing the credentials required to use Google BigQuery. - Deprecated: This field is deprecated and replaced by \"serviceAccountKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"serviceAccountKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The service_account_key_file of this CreateGoogleBigQueryConnectionDetails. @@ -240,7 +242,9 @@ def service_account_key_file(self, service_account_key_file): Sets the service_account_key_file of this CreateGoogleBigQueryConnectionDetails. The base64 encoded content of the service account key file containing the credentials required to use Google BigQuery. - Deprecated: This field is deprecated and replaced by \"serviceAccountKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"serviceAccountKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param service_account_key_file: The service_account_key_file of this CreateGoogleBigQueryConnectionDetails. diff --git a/src/oci/golden_gate/models/create_google_cloud_storage_connection_details.py b/src/oci/golden_gate/models/create_google_cloud_storage_connection_details.py index f67cd5f01a..7ead9aaf91 100644 --- a/src/oci/golden_gate/models/create_google_cloud_storage_connection_details.py +++ b/src/oci/golden_gate/models/create_google_cloud_storage_connection_details.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this CreateGoogleCloudStorageConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -226,7 +226,9 @@ def service_account_key_file(self): Gets the service_account_key_file of this CreateGoogleCloudStorageConnectionDetails. The base64 encoded content of the service account key file containing the credentials required to use Google Cloud Storage. - Deprecated: This field is deprecated and replaced by \"serviceAccountKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"serviceAccountKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The service_account_key_file of this CreateGoogleCloudStorageConnectionDetails. @@ -240,7 +242,9 @@ def service_account_key_file(self, service_account_key_file): Sets the service_account_key_file of this CreateGoogleCloudStorageConnectionDetails. The base64 encoded content of the service account key file containing the credentials required to use Google Cloud Storage. - Deprecated: This field is deprecated and replaced by \"serviceAccountKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"serviceAccountKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param service_account_key_file: The service_account_key_file of this CreateGoogleCloudStorageConnectionDetails. diff --git a/src/oci/golden_gate/models/create_google_cloud_storage_iceberg_storage_details.py b/src/oci/golden_gate/models/create_google_cloud_storage_iceberg_storage_details.py index 52b3c04d35..39bcfeebdc 100644 --- a/src/oci/golden_gate/models/create_google_cloud_storage_iceberg_storage_details.py +++ b/src/oci/golden_gate/models/create_google_cloud_storage_iceberg_storage_details.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param storage_type: The value to assign to the storage_type property of this CreateGoogleCloudStorageIcebergStorageDetails. - Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE" + Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", "NONE", "OCI_OBJECT_STORAGE_S3_API" :type storage_type: str :param bucket: @@ -155,7 +155,9 @@ def service_account_key_file(self): Gets the service_account_key_file of this CreateGoogleCloudStorageIcebergStorageDetails. The base64 encoded content of the service account key file containing the credentials required to use Google Cloud Storage. - Deprecated: This field is deprecated and replaced by \"serviceAccountKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"serviceAccountKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The service_account_key_file of this CreateGoogleCloudStorageIcebergStorageDetails. @@ -169,7 +171,9 @@ def service_account_key_file(self, service_account_key_file): Sets the service_account_key_file of this CreateGoogleCloudStorageIcebergStorageDetails. The base64 encoded content of the service account key file containing the credentials required to use Google Cloud Storage. - Deprecated: This field is deprecated and replaced by \"serviceAccountKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"serviceAccountKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param service_account_key_file: The service_account_key_file of this CreateGoogleCloudStorageIcebergStorageDetails. diff --git a/src/oci/golden_gate/models/create_google_pub_sub_connection_details.py b/src/oci/golden_gate/models/create_google_pub_sub_connection_details.py index 98998e1168..a068598c26 100644 --- a/src/oci/golden_gate/models/create_google_pub_sub_connection_details.py +++ b/src/oci/golden_gate/models/create_google_pub_sub_connection_details.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this CreateGooglePubSubConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -193,7 +193,9 @@ def service_account_key_file(self): Gets the service_account_key_file of this CreateGooglePubSubConnectionDetails. The base64 encoded content of the service account key file containing the credentials required to use Google PubSub. - Deprecated: This field is deprecated and replaced by \"serviceAccountKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"serviceAccountKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The service_account_key_file of this CreateGooglePubSubConnectionDetails. @@ -207,7 +209,9 @@ def service_account_key_file(self, service_account_key_file): Sets the service_account_key_file of this CreateGooglePubSubConnectionDetails. The base64 encoded content of the service account key file containing the credentials required to use Google PubSub. - Deprecated: This field is deprecated and replaced by \"serviceAccountKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"serviceAccountKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param service_account_key_file: The service_account_key_file of this CreateGooglePubSubConnectionDetails. diff --git a/src/oci/golden_gate/models/create_hdfs_connection_details.py b/src/oci/golden_gate/models/create_hdfs_connection_details.py index adf13584cb..7f66f26e48 100644 --- a/src/oci/golden_gate/models/create_hdfs_connection_details.py +++ b/src/oci/golden_gate/models/create_hdfs_connection_details.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this CreateHdfsConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: diff --git a/src/oci/golden_gate/models/create_iceberg_connection_details.py b/src/oci/golden_gate/models/create_iceberg_connection_details.py index fc05836169..bbff8846e2 100644 --- a/src/oci/golden_gate/models/create_iceberg_connection_details.py +++ b/src/oci/golden_gate/models/create_iceberg_connection_details.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this CreateIcebergConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: diff --git a/src/oci/golden_gate/models/create_iceberg_storage_details.py b/src/oci/golden_gate/models/create_iceberg_storage_details.py index 1c6aeb79ca..33bce36c7f 100644 --- a/src/oci/golden_gate/models/create_iceberg_storage_details.py +++ b/src/oci/golden_gate/models/create_iceberg_storage_details.py @@ -27,20 +27,30 @@ class CreateIcebergStorageDetails(object): #: This constant has a value of "AZURE_DATA_LAKE_STORAGE" STORAGE_TYPE_AZURE_DATA_LAKE_STORAGE = "AZURE_DATA_LAKE_STORAGE" + #: A constant which can be used with the storage_type property of a CreateIcebergStorageDetails. + #: This constant has a value of "NONE" + STORAGE_TYPE_NONE = "NONE" + + #: A constant which can be used with the storage_type property of a CreateIcebergStorageDetails. + #: This constant has a value of "OCI_OBJECT_STORAGE_S3_API" + STORAGE_TYPE_OCI_OBJECT_STORAGE_S3_API = "OCI_OBJECT_STORAGE_S3_API" + def __init__(self, **kwargs): """ Initializes a new CreateIcebergStorageDetails object with values from keyword arguments. This class has the following subclasses and if you are using this class as input to a service operations then you should favor using a subclass over the base class: * :class:`~oci.golden_gate.models.CreateAzureDataLakeStorageIcebergStorageDetails` + * :class:`~oci.golden_gate.models.CreateNoIcebergStorageDetails` * :class:`~oci.golden_gate.models.CreateGoogleCloudStorageIcebergStorageDetails` * :class:`~oci.golden_gate.models.CreateAmazonS3IcebergStorageDetails` + * :class:`~oci.golden_gate.models.CreateOciObjectStorageS3ApiIcebergStorageDetails` The following keyword arguments are supported (corresponding to the getters/setters of this class): :param storage_type: The value to assign to the storage_type property of this CreateIcebergStorageDetails. - Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE" + Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", "NONE", "OCI_OBJECT_STORAGE_S3_API" :type storage_type: str """ @@ -63,11 +73,17 @@ def get_subtype(object_dictionary): if type == 'AZURE_DATA_LAKE_STORAGE': return 'CreateAzureDataLakeStorageIcebergStorageDetails' + if type == 'NONE': + return 'CreateNoIcebergStorageDetails' + if type == 'GOOGLE_CLOUD_STORAGE': return 'CreateGoogleCloudStorageIcebergStorageDetails' if type == 'AMAZON_S3': return 'CreateAmazonS3IcebergStorageDetails' + + if type == 'OCI_OBJECT_STORAGE_S3_API': + return 'CreateOciObjectStorageS3ApiIcebergStorageDetails' else: return 'CreateIcebergStorageDetails' @@ -77,7 +93,7 @@ def storage_type(self): **[Required]** Gets the storage_type of this CreateIcebergStorageDetails. The storage type used in the Iceberg connection. - Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE" + Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", "NONE", "OCI_OBJECT_STORAGE_S3_API" :return: The storage_type of this CreateIcebergStorageDetails. @@ -95,7 +111,7 @@ def storage_type(self, storage_type): :param storage_type: The storage_type of this CreateIcebergStorageDetails. :type: str """ - allowed_values = ["AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE"] + allowed_values = ["AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", "NONE", "OCI_OBJECT_STORAGE_S3_API"] if not value_allowed_none_or_none_sentinel(storage_type, allowed_values): raise ValueError( f"Invalid value for `storage_type`, must be None or one of {allowed_values}" diff --git a/src/oci/golden_gate/models/create_java_message_service_connection_details.py b/src/oci/golden_gate/models/create_java_message_service_connection_details.py index 1c12d41c2a..b9b29be9a1 100644 --- a/src/oci/golden_gate/models/create_java_message_service_connection_details.py +++ b/src/oci/golden_gate/models/create_java_message_service_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this CreateJavaMessageServiceConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -274,6 +274,13 @@ def __init__(self, **kwargs): 'ssl_key_password': 'sslKeyPassword', 'ssl_key_password_secret_id': 'sslKeyPasswordSecretId' } + self._redacted_field_paths = [ + ['jndi_security_credentials'], + ['password'], + ['trust_store_password'], + ['key_store_password'], + ['ssl_key_password'], + ] self._connection_type = None self._display_name = None self._description = None @@ -476,7 +483,9 @@ def jndi_security_credentials(self): """ Gets the jndi_security_credentials of this CreateJavaMessageServiceConnectionDetails. The password associated to the principal. - Deprecated: This field is deprecated and replaced by \"jndiSecurityCredentialsSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"jndiSecurityCredentialsSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The jndi_security_credentials of this CreateJavaMessageServiceConnectionDetails. @@ -489,7 +498,9 @@ def jndi_security_credentials(self, jndi_security_credentials): """ Sets the jndi_security_credentials of this CreateJavaMessageServiceConnectionDetails. The password associated to the principal. - Deprecated: This field is deprecated and replaced by \"jndiSecurityCredentialsSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"jndiSecurityCredentialsSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param jndi_security_credentials: The jndi_security_credentials of this CreateJavaMessageServiceConnectionDetails. @@ -612,7 +623,9 @@ def password(self): """ Gets the password of this CreateJavaMessageServiceConnectionDetails. The password Oracle GoldenGate uses to connect the associated Java Message Service. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The password of this CreateJavaMessageServiceConnectionDetails. @@ -625,7 +638,9 @@ def password(self, password): """ Sets the password of this CreateJavaMessageServiceConnectionDetails. The password Oracle GoldenGate uses to connect the associated Java Message Service. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param password: The password of this CreateJavaMessageServiceConnectionDetails. @@ -722,7 +737,9 @@ def trust_store(self): """ Gets the trust_store of this CreateJavaMessageServiceConnectionDetails. The base64 encoded content of the TrustStore file. - Deprecated: This field is deprecated and replaced by \"trustStoreSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"trustStoreSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The trust_store of this CreateJavaMessageServiceConnectionDetails. @@ -735,7 +752,9 @@ def trust_store(self, trust_store): """ Sets the trust_store of this CreateJavaMessageServiceConnectionDetails. The base64 encoded content of the TrustStore file. - Deprecated: This field is deprecated and replaced by \"trustStoreSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"trustStoreSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param trust_store: The trust_store of this CreateJavaMessageServiceConnectionDetails. @@ -778,7 +797,9 @@ def trust_store_password(self): """ Gets the trust_store_password of this CreateJavaMessageServiceConnectionDetails. The TrustStore password. - Deprecated: This field is deprecated and replaced by \"trustStorePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"trustStorePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The trust_store_password of this CreateJavaMessageServiceConnectionDetails. @@ -791,7 +812,9 @@ def trust_store_password(self, trust_store_password): """ Sets the trust_store_password of this CreateJavaMessageServiceConnectionDetails. The TrustStore password. - Deprecated: This field is deprecated and replaced by \"trustStorePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"trustStorePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param trust_store_password: The trust_store_password of this CreateJavaMessageServiceConnectionDetails. @@ -834,7 +857,9 @@ def key_store(self): """ Gets the key_store of this CreateJavaMessageServiceConnectionDetails. The base64 encoded content of the KeyStore file. - Deprecated: This field is deprecated and replaced by \"keyStoreSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"keyStoreSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The key_store of this CreateJavaMessageServiceConnectionDetails. @@ -847,7 +872,9 @@ def key_store(self, key_store): """ Sets the key_store of this CreateJavaMessageServiceConnectionDetails. The base64 encoded content of the KeyStore file. - Deprecated: This field is deprecated and replaced by \"keyStoreSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"keyStoreSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param key_store: The key_store of this CreateJavaMessageServiceConnectionDetails. @@ -890,7 +917,9 @@ def key_store_password(self): """ Gets the key_store_password of this CreateJavaMessageServiceConnectionDetails. The KeyStore password. - Deprecated: This field is deprecated and replaced by \"keyStorePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"keyStorePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The key_store_password of this CreateJavaMessageServiceConnectionDetails. @@ -903,7 +932,9 @@ def key_store_password(self, key_store_password): """ Sets the key_store_password of this CreateJavaMessageServiceConnectionDetails. The KeyStore password. - Deprecated: This field is deprecated and replaced by \"keyStorePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"keyStorePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param key_store_password: The key_store_password of this CreateJavaMessageServiceConnectionDetails. @@ -947,7 +978,9 @@ def ssl_key_password(self): Gets the ssl_key_password of this CreateJavaMessageServiceConnectionDetails. The password for the cert inside of the KeyStore. In case it differs from the KeyStore password, it should be provided. - Deprecated: This field is deprecated and replaced by \"sslKeyPasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"sslKeyPasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The ssl_key_password of this CreateJavaMessageServiceConnectionDetails. @@ -961,7 +994,9 @@ def ssl_key_password(self, ssl_key_password): Sets the ssl_key_password of this CreateJavaMessageServiceConnectionDetails. The password for the cert inside of the KeyStore. In case it differs from the KeyStore password, it should be provided. - Deprecated: This field is deprecated and replaced by \"sslKeyPasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"sslKeyPasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param ssl_key_password: The ssl_key_password of this CreateJavaMessageServiceConnectionDetails. @@ -1002,7 +1037,13 @@ def ssl_key_password_secret_id(self, ssl_key_password_secret_id): self._ssl_key_password_secret_id = ssl_key_password_secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['jndi_security_credentials']) + redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['trust_store_password']) + redact_password_field(as_dict, ['key_store_password']) + redact_password_field(as_dict, ['ssl_key_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_kafka_connection_details.py b/src/oci/golden_gate/models/create_kafka_connection_details.py index ea50f0d3c8..721155713f 100644 --- a/src/oci/golden_gate/models/create_kafka_connection_details.py +++ b/src/oci/golden_gate/models/create_kafka_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this CreateKafkaConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -250,6 +250,12 @@ def __init__(self, **kwargs): 'producer_properties': 'producerProperties', 'should_use_resource_principal': 'shouldUseResourcePrincipal' } + self._redacted_field_paths = [ + ['password'], + ['trust_store_password'], + ['key_store_password'], + ['ssl_key_password'], + ] self._connection_type = None self._display_name = None self._description = None @@ -459,7 +465,9 @@ def password(self): Gets the password of this CreateKafkaConnectionDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The password of this CreateKafkaConnectionDetails. @@ -473,7 +481,9 @@ def password(self, password): Sets the password of this CreateKafkaConnectionDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param password: The password of this CreateKafkaConnectionDetails. @@ -522,7 +532,9 @@ def trust_store(self): """ Gets the trust_store of this CreateKafkaConnectionDetails. The base64 encoded content of the TrustStore file. - Deprecated: This field is deprecated and replaced by \"trustStoreSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"trustStoreSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The trust_store of this CreateKafkaConnectionDetails. @@ -535,7 +547,9 @@ def trust_store(self, trust_store): """ Sets the trust_store of this CreateKafkaConnectionDetails. The base64 encoded content of the TrustStore file. - Deprecated: This field is deprecated and replaced by \"trustStoreSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"trustStoreSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param trust_store: The trust_store of this CreateKafkaConnectionDetails. @@ -578,7 +592,9 @@ def trust_store_password(self): """ Gets the trust_store_password of this CreateKafkaConnectionDetails. The TrustStore password. - Deprecated: This field is deprecated and replaced by \"trustStorePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"trustStorePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The trust_store_password of this CreateKafkaConnectionDetails. @@ -591,7 +607,9 @@ def trust_store_password(self, trust_store_password): """ Sets the trust_store_password of this CreateKafkaConnectionDetails. The TrustStore password. - Deprecated: This field is deprecated and replaced by \"trustStorePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"trustStorePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param trust_store_password: The trust_store_password of this CreateKafkaConnectionDetails. @@ -634,7 +652,9 @@ def key_store(self): """ Gets the key_store of this CreateKafkaConnectionDetails. The base64 encoded content of the KeyStore file. - Deprecated: This field is deprecated and replaced by \"keyStoreSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"keyStoreSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The key_store of this CreateKafkaConnectionDetails. @@ -647,7 +667,9 @@ def key_store(self, key_store): """ Sets the key_store of this CreateKafkaConnectionDetails. The base64 encoded content of the KeyStore file. - Deprecated: This field is deprecated and replaced by \"keyStoreSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"keyStoreSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param key_store: The key_store of this CreateKafkaConnectionDetails. @@ -690,7 +712,9 @@ def key_store_password(self): """ Gets the key_store_password of this CreateKafkaConnectionDetails. The KeyStore password. - Deprecated: This field is deprecated and replaced by \"keyStorePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"keyStorePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The key_store_password of this CreateKafkaConnectionDetails. @@ -703,7 +727,9 @@ def key_store_password(self, key_store_password): """ Sets the key_store_password of this CreateKafkaConnectionDetails. The KeyStore password. - Deprecated: This field is deprecated and replaced by \"keyStorePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"keyStorePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param key_store_password: The key_store_password of this CreateKafkaConnectionDetails. @@ -747,7 +773,9 @@ def ssl_key_password(self): Gets the ssl_key_password of this CreateKafkaConnectionDetails. The password for the cert inside of the KeyStore. In case it differs from the KeyStore password, it should be provided. - Deprecated: This field is deprecated and replaced by \"sslKeyPasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"sslKeyPasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The ssl_key_password of this CreateKafkaConnectionDetails. @@ -761,7 +789,9 @@ def ssl_key_password(self, ssl_key_password): Sets the ssl_key_password of this CreateKafkaConnectionDetails. The password for the cert inside of the KeyStore. In case it differs from the KeyStore password, it should be provided. - Deprecated: This field is deprecated and replaced by \"sslKeyPasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"sslKeyPasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param ssl_key_password: The ssl_key_password of this CreateKafkaConnectionDetails. @@ -880,7 +910,12 @@ def should_use_resource_principal(self, should_use_resource_principal): self._should_use_resource_principal = should_use_resource_principal def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['trust_store_password']) + redact_password_field(as_dict, ['key_store_password']) + redact_password_field(as_dict, ['ssl_key_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_kafka_schema_registry_connection_details.py b/src/oci/golden_gate/models/create_kafka_schema_registry_connection_details.py index e9007d95ea..dd20a4a463 100644 --- a/src/oci/golden_gate/models/create_kafka_schema_registry_connection_details.py +++ b/src/oci/golden_gate/models/create_kafka_schema_registry_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this CreateKafkaSchemaRegistryConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -220,6 +220,12 @@ def __init__(self, **kwargs): 'ssl_key_password': 'sslKeyPassword', 'ssl_key_password_secret_id': 'sslKeyPasswordSecretId' } + self._redacted_field_paths = [ + ['password'], + ['trust_store_password'], + ['key_store_password'], + ['ssl_key_password'], + ] self._connection_type = None self._display_name = None self._description = None @@ -360,7 +366,9 @@ def password(self): Gets the password of this CreateKafkaSchemaRegistryConnectionDetails. The password to access Schema Registry using basic authentication. This value is injected into 'schema.registry.basic.auth.user.info=user:password' configuration property. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The password of this CreateKafkaSchemaRegistryConnectionDetails. @@ -374,7 +382,9 @@ def password(self, password): Sets the password of this CreateKafkaSchemaRegistryConnectionDetails. The password to access Schema Registry using basic authentication. This value is injected into 'schema.registry.basic.auth.user.info=user:password' configuration property. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param password: The password of this CreateKafkaSchemaRegistryConnectionDetails. @@ -421,7 +431,9 @@ def trust_store(self): """ Gets the trust_store of this CreateKafkaSchemaRegistryConnectionDetails. The base64 encoded content of the TrustStore file. - Deprecated: This field is deprecated and replaced by \"trustStoreSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"trustStoreSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The trust_store of this CreateKafkaSchemaRegistryConnectionDetails. @@ -434,7 +446,9 @@ def trust_store(self, trust_store): """ Sets the trust_store of this CreateKafkaSchemaRegistryConnectionDetails. The base64 encoded content of the TrustStore file. - Deprecated: This field is deprecated and replaced by \"trustStoreSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"trustStoreSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param trust_store: The trust_store of this CreateKafkaSchemaRegistryConnectionDetails. @@ -477,7 +491,9 @@ def trust_store_password(self): """ Gets the trust_store_password of this CreateKafkaSchemaRegistryConnectionDetails. The TrustStore password. - Deprecated: This field is deprecated and replaced by \"trustStorePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"trustStorePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The trust_store_password of this CreateKafkaSchemaRegistryConnectionDetails. @@ -490,7 +506,9 @@ def trust_store_password(self, trust_store_password): """ Sets the trust_store_password of this CreateKafkaSchemaRegistryConnectionDetails. The TrustStore password. - Deprecated: This field is deprecated and replaced by \"trustStorePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"trustStorePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param trust_store_password: The trust_store_password of this CreateKafkaSchemaRegistryConnectionDetails. @@ -533,7 +551,9 @@ def key_store(self): """ Gets the key_store of this CreateKafkaSchemaRegistryConnectionDetails. The base64 encoded content of the KeyStore file. - Deprecated: This field is deprecated and replaced by \"keyStoreSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"keyStoreSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The key_store of this CreateKafkaSchemaRegistryConnectionDetails. @@ -546,7 +566,9 @@ def key_store(self, key_store): """ Sets the key_store of this CreateKafkaSchemaRegistryConnectionDetails. The base64 encoded content of the KeyStore file. - Deprecated: This field is deprecated and replaced by \"keyStoreSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"keyStoreSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param key_store: The key_store of this CreateKafkaSchemaRegistryConnectionDetails. @@ -589,7 +611,9 @@ def key_store_password(self): """ Gets the key_store_password of this CreateKafkaSchemaRegistryConnectionDetails. The KeyStore password. - Deprecated: This field is deprecated and replaced by \"keyStorePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"keyStorePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The key_store_password of this CreateKafkaSchemaRegistryConnectionDetails. @@ -602,7 +626,9 @@ def key_store_password(self, key_store_password): """ Sets the key_store_password of this CreateKafkaSchemaRegistryConnectionDetails. The KeyStore password. - Deprecated: This field is deprecated and replaced by \"keyStorePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"keyStorePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param key_store_password: The key_store_password of this CreateKafkaSchemaRegistryConnectionDetails. @@ -646,7 +672,9 @@ def ssl_key_password(self): Gets the ssl_key_password of this CreateKafkaSchemaRegistryConnectionDetails. The password for the cert inside the KeyStore. In case it differs from the KeyStore password, it should be provided. - Deprecated: This field is deprecated and replaced by \"sslKeyPasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"sslKeyPasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The ssl_key_password of this CreateKafkaSchemaRegistryConnectionDetails. @@ -660,7 +688,9 @@ def ssl_key_password(self, ssl_key_password): Sets the ssl_key_password of this CreateKafkaSchemaRegistryConnectionDetails. The password for the cert inside the KeyStore. In case it differs from the KeyStore password, it should be provided. - Deprecated: This field is deprecated and replaced by \"sslKeyPasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"sslKeyPasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param ssl_key_password: The ssl_key_password of this CreateKafkaSchemaRegistryConnectionDetails. @@ -701,7 +731,12 @@ def ssl_key_password_secret_id(self, ssl_key_password_secret_id): self._ssl_key_password_secret_id = ssl_key_password_secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['trust_store_password']) + redact_password_field(as_dict, ['key_store_password']) + redact_password_field(as_dict, ['ssl_key_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_microsoft_fabric_connection_details.py b/src/oci/golden_gate/models/create_microsoft_fabric_connection_details.py index 0d30c58364..3291faef71 100644 --- a/src/oci/golden_gate/models/create_microsoft_fabric_connection_details.py +++ b/src/oci/golden_gate/models/create_microsoft_fabric_connection_details.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this CreateMicrosoftFabricConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -265,7 +265,9 @@ def client_secret(self): """ Gets the client_secret of this CreateMicrosoftFabricConnectionDetails. Client secret associated with the client id. - Deprecated: This field is deprecated and replaced by \"clientSecretSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"clientSecretSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The client_secret of this CreateMicrosoftFabricConnectionDetails. @@ -278,7 +280,9 @@ def client_secret(self, client_secret): """ Sets the client_secret of this CreateMicrosoftFabricConnectionDetails. Client secret associated with the client id. - Deprecated: This field is deprecated and replaced by \"clientSecretSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"clientSecretSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param client_secret: The client_secret of this CreateMicrosoftFabricConnectionDetails. diff --git a/src/oci/golden_gate/models/create_microsoft_sqlserver_connection_details.py b/src/oci/golden_gate/models/create_microsoft_sqlserver_connection_details.py index e0ef7e3b26..5348f73ba3 100644 --- a/src/oci/golden_gate/models/create_microsoft_sqlserver_connection_details.py +++ b/src/oci/golden_gate/models/create_microsoft_sqlserver_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this CreateMicrosoftSqlserverConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -190,6 +190,9 @@ def __init__(self, **kwargs): 'ssl_ca': 'sslCa', 'should_validate_server_certificate': 'shouldValidateServerCertificate' } + self._redacted_field_paths = [ + ['password'], + ] self._connection_type = None self._display_name = None self._description = None @@ -346,7 +349,9 @@ def password(self): """ Gets the password of this CreateMicrosoftSqlserverConnectionDetails. The password Oracle GoldenGate uses to connect the associated Microsoft SQL Server. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The password of this CreateMicrosoftSqlserverConnectionDetails. @@ -359,7 +364,9 @@ def password(self, password): """ Sets the password of this CreateMicrosoftSqlserverConnectionDetails. The password Oracle GoldenGate uses to connect the associated Microsoft SQL Server. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param password: The password of this CreateMicrosoftSqlserverConnectionDetails. @@ -498,7 +505,9 @@ def should_validate_server_certificate(self, should_validate_server_certificate) self._should_validate_server_certificate = should_validate_server_certificate def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_mongo_db_connection_details.py b/src/oci/golden_gate/models/create_mongo_db_connection_details.py index c7f2ec4eba..b456f5609f 100644 --- a/src/oci/golden_gate/models/create_mongo_db_connection_details.py +++ b/src/oci/golden_gate/models/create_mongo_db_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this CreateMongoDbConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -196,6 +196,10 @@ def __init__(self, **kwargs): 'tls_certificate_key_file_password': 'tlsCertificateKeyFilePassword', 'tls_certificate_key_file_password_secret_id': 'tlsCertificateKeyFilePasswordSecretId' } + self._redacted_field_paths = [ + ['password'], + ['tls_certificate_key_file_password'], + ] self._connection_type = None self._display_name = None self._description = None @@ -307,7 +311,9 @@ def password(self): """ Gets the password of this CreateMongoDbConnectionDetails. The password Oracle GoldenGate uses to connect the associated database. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The password of this CreateMongoDbConnectionDetails. @@ -320,7 +326,9 @@ def password(self, password): """ Sets the password of this CreateMongoDbConnectionDetails. The password Oracle GoldenGate uses to connect the associated database. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param password: The password of this CreateMongoDbConnectionDetails. @@ -441,7 +449,9 @@ def tls_certificate_key_file(self): """ Gets the tls_certificate_key_file of this CreateMongoDbConnectionDetails. Client Certificate - The base64 encoded content of a .pem file, containing the client public key (for 2-way SSL). - Deprecated: This field is deprecated and replaced by \"tlsCertificateKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"tlsCertificateKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The tls_certificate_key_file of this CreateMongoDbConnectionDetails. @@ -454,7 +464,9 @@ def tls_certificate_key_file(self, tls_certificate_key_file): """ Sets the tls_certificate_key_file of this CreateMongoDbConnectionDetails. Client Certificate - The base64 encoded content of a .pem file, containing the client public key (for 2-way SSL). - Deprecated: This field is deprecated and replaced by \"tlsCertificateKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"tlsCertificateKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param tls_certificate_key_file: The tls_certificate_key_file of this CreateMongoDbConnectionDetails. @@ -499,7 +511,9 @@ def tls_certificate_key_file_password(self): """ Gets the tls_certificate_key_file_password of this CreateMongoDbConnectionDetails. Client Certificate key file password. - Deprecated: This field is deprecated and replaced by \"tlsCertificateKeyFilePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"tlsCertificateKeyFilePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The tls_certificate_key_file_password of this CreateMongoDbConnectionDetails. @@ -512,7 +526,9 @@ def tls_certificate_key_file_password(self, tls_certificate_key_file_password): """ Sets the tls_certificate_key_file_password of this CreateMongoDbConnectionDetails. Client Certificate key file password. - Deprecated: This field is deprecated and replaced by \"tlsCertificateKeyFilePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"tlsCertificateKeyFilePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param tls_certificate_key_file_password: The tls_certificate_key_file_password of this CreateMongoDbConnectionDetails. @@ -551,7 +567,10 @@ def tls_certificate_key_file_password_secret_id(self, tls_certificate_key_file_p self._tls_certificate_key_file_password_secret_id = tls_certificate_key_file_password_secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['tls_certificate_key_file_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_mysql_connection_details.py b/src/oci/golden_gate/models/create_mysql_connection_details.py index bc003b82ec..47f703e2b5 100644 --- a/src/oci/golden_gate/models/create_mysql_connection_details.py +++ b/src/oci/golden_gate/models/create_mysql_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this CreateMysqlConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -220,6 +220,9 @@ def __init__(self, **kwargs): 'additional_attributes': 'additionalAttributes', 'db_system_id': 'dbSystemId' } + self._redacted_field_paths = [ + ['password'], + ] self._connection_type = None self._display_name = None self._description = None @@ -312,7 +315,9 @@ def password(self): Gets the password of this CreateMysqlConnectionDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The password of this CreateMysqlConnectionDetails. @@ -326,7 +331,9 @@ def password(self, password): Sets the password of this CreateMysqlConnectionDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param password: The password of this CreateMysqlConnectionDetails. @@ -579,7 +586,9 @@ def ssl_key(self): """ Gets the ssl_key of this CreateMysqlConnectionDetails. Client Key - The base64 encoded content of a .pem or .crt file containing the client private key (for 2-way SSL). - Deprecated: This field is deprecated and replaced by \"sslKeySecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"sslKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The ssl_key of this CreateMysqlConnectionDetails. @@ -592,7 +601,9 @@ def ssl_key(self, ssl_key): """ Sets the ssl_key of this CreateMysqlConnectionDetails. Client Key - The base64 encoded content of a .pem or .crt file containing the client private key (for 2-way SSL). - Deprecated: This field is deprecated and replaced by \"sslKeySecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"sslKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param ssl_key: The ssl_key of this CreateMysqlConnectionDetails. @@ -687,7 +698,9 @@ def db_system_id(self, db_system_id): self._db_system_id = db_system_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_no_iceberg_storage_details.py b/src/oci/golden_gate/models/create_no_iceberg_storage_details.py new file mode 100644 index 0000000000..87b5771275 --- /dev/null +++ b/src/oci/golden_gate/models/create_no_iceberg_storage_details.py @@ -0,0 +1,50 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 + +from .create_iceberg_storage_details import CreateIcebergStorageDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateNoIcebergStorageDetails(CreateIcebergStorageDetails): + """ + The information indicating the absence of a storage configuration in an + Iceberg connection. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateNoIcebergStorageDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.golden_gate.models.CreateNoIcebergStorageDetails.storage_type` attribute + of this class is ``NONE`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param storage_type: + The value to assign to the storage_type property of this CreateNoIcebergStorageDetails. + Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", "NONE", "OCI_OBJECT_STORAGE_S3_API" + :type storage_type: str + + """ + self.swagger_types = { + 'storage_type': 'str' + } + self.attribute_map = { + 'storage_type': 'storageType' + } + self._storage_type = None + self._storage_type = 'NONE' + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/golden_gate/models/create_oci_gen_ai_model_auth_details.py b/src/oci/golden_gate/models/create_oci_gen_ai_model_auth_details.py new file mode 100644 index 0000000000..cb797ae8e6 --- /dev/null +++ b/src/oci/golden_gate/models/create_oci_gen_ai_model_auth_details.py @@ -0,0 +1,247 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 + +from .create_ai_model_auth_details import CreateAiModelAuthDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateOciGenAiModelAuthDetails(CreateAiModelAuthDetails): + """ + The information about new OCI Generative AI authentication details for an AI Model connection. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateOciGenAiModelAuthDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.golden_gate.models.CreateOciGenAiModelAuthDetails.auth_type` attribute + of this class is ``OCI_GEN_AI`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param auth_type: + The value to assign to the auth_type property of this CreateOciGenAiModelAuthDetails. + Allowed values for this property are: "OCI_GEN_AI", "API_KEY" + :type auth_type: str + + :param api_key: + The value to assign to the api_key property of this CreateOciGenAiModelAuthDetails. + :type api_key: str + + :param api_key_secret_id: + The value to assign to the api_key_secret_id property of this CreateOciGenAiModelAuthDetails. + :type api_key_secret_id: str + + :param key_fingerprint: + The value to assign to the key_fingerprint property of this CreateOciGenAiModelAuthDetails. + :type key_fingerprint: str + + :param region: + The value to assign to the region property of this CreateOciGenAiModelAuthDetails. + :type region: str + + :param tenancy_id: + The value to assign to the tenancy_id property of this CreateOciGenAiModelAuthDetails. + :type tenancy_id: str + + :param user_id: + The value to assign to the user_id property of this CreateOciGenAiModelAuthDetails. + :type user_id: str + + """ + self.swagger_types = { + 'auth_type': 'str', + 'api_key': 'str', + 'api_key_secret_id': 'str', + 'key_fingerprint': 'str', + 'region': 'str', + 'tenancy_id': 'str', + 'user_id': 'str' + } + self.attribute_map = { + 'auth_type': 'authType', + 'api_key': 'apiKey', + 'api_key_secret_id': 'apiKeySecretId', + 'key_fingerprint': 'keyFingerprint', + 'region': 'region', + 'tenancy_id': 'tenancyId', + 'user_id': 'userId' + } + self._auth_type = None + self._api_key = None + self._api_key_secret_id = None + self._key_fingerprint = None + self._region = None + self._tenancy_id = None + self._user_id = None + self._auth_type = 'OCI_GEN_AI' + + @property + def api_key(self): + """ + Gets the api_key of this CreateOciGenAiModelAuthDetails. + API key for the AI model connection. + Deprecated: This field is deprecated and replaced by \"apiKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + + :return: The api_key of this CreateOciGenAiModelAuthDetails. + :rtype: str + """ + return self._api_key + + @api_key.setter + def api_key(self, api_key): + """ + Sets the api_key of this CreateOciGenAiModelAuthDetails. + API key for the AI model connection. + Deprecated: This field is deprecated and replaced by \"apiKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + + :param api_key: The api_key of this CreateOciGenAiModelAuthDetails. + :type: str + """ + self._api_key = api_key + + @property + def api_key_secret_id(self): + """ + Gets the api_key_secret_id of this CreateOciGenAiModelAuthDetails. + API key secret OCID for the AI model connection. + + + :return: The api_key_secret_id of this CreateOciGenAiModelAuthDetails. + :rtype: str + """ + return self._api_key_secret_id + + @api_key_secret_id.setter + def api_key_secret_id(self, api_key_secret_id): + """ + Sets the api_key_secret_id of this CreateOciGenAiModelAuthDetails. + API key secret OCID for the AI model connection. + + + :param api_key_secret_id: The api_key_secret_id of this CreateOciGenAiModelAuthDetails. + :type: str + """ + self._api_key_secret_id = api_key_secret_id + + @property + def key_fingerprint(self): + """ + **[Required]** Gets the key_fingerprint of this CreateOciGenAiModelAuthDetails. + OCI Generative AI key fingerprint. + + + :return: The key_fingerprint of this CreateOciGenAiModelAuthDetails. + :rtype: str + """ + return self._key_fingerprint + + @key_fingerprint.setter + def key_fingerprint(self, key_fingerprint): + """ + Sets the key_fingerprint of this CreateOciGenAiModelAuthDetails. + OCI Generative AI key fingerprint. + + + :param key_fingerprint: The key_fingerprint of this CreateOciGenAiModelAuthDetails. + :type: str + """ + self._key_fingerprint = key_fingerprint + + @property + def region(self): + """ + Gets the region of this CreateOciGenAiModelAuthDetails. + The name of the region. e.g.: us-ashburn-1 + If the region is not provided, backend will default to the default region. + + + :return: The region of this CreateOciGenAiModelAuthDetails. + :rtype: str + """ + return self._region + + @region.setter + def region(self, region): + """ + Sets the region of this CreateOciGenAiModelAuthDetails. + The name of the region. e.g.: us-ashburn-1 + If the region is not provided, backend will default to the default region. + + + :param region: The region of this CreateOciGenAiModelAuthDetails. + :type: str + """ + self._region = region + + @property + def tenancy_id(self): + """ + Gets the tenancy_id of this CreateOciGenAiModelAuthDetails. + OCI Generative AI tenancy OCID. If this value is not provided, or is updated to an empty + value, it defaults to the tenancy OCID of the user who is executing the operation. + + + :return: The tenancy_id of this CreateOciGenAiModelAuthDetails. + :rtype: str + """ + return self._tenancy_id + + @tenancy_id.setter + def tenancy_id(self, tenancy_id): + """ + Sets the tenancy_id of this CreateOciGenAiModelAuthDetails. + OCI Generative AI tenancy OCID. If this value is not provided, or is updated to an empty + value, it defaults to the tenancy OCID of the user who is executing the operation. + + + :param tenancy_id: The tenancy_id of this CreateOciGenAiModelAuthDetails. + :type: str + """ + self._tenancy_id = tenancy_id + + @property + def user_id(self): + """ + Gets the user_id of this CreateOciGenAiModelAuthDetails. + OCI Generative AI user OCID. If this value is not provided, or is updated to an empty + value, it defaults to the OCID of the user who is executing the operation. + + + :return: The user_id of this CreateOciGenAiModelAuthDetails. + :rtype: str + """ + return self._user_id + + @user_id.setter + def user_id(self, user_id): + """ + Sets the user_id of this CreateOciGenAiModelAuthDetails. + OCI Generative AI user OCID. If this value is not provided, or is updated to an empty + value, it defaults to the OCID of the user who is executing the operation. + + + :param user_id: The user_id of this CreateOciGenAiModelAuthDetails. + :type: str + """ + self._user_id = user_id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/golden_gate/models/create_oci_object_storage_connection_details.py b/src/oci/golden_gate/models/create_oci_object_storage_connection_details.py index 095368e97b..ac10e2513a 100644 --- a/src/oci/golden_gate/models/create_oci_object_storage_connection_details.py +++ b/src/oci/golden_gate/models/create_oci_object_storage_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this CreateOciObjectStorageConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -184,6 +184,9 @@ def __init__(self, **kwargs): 'public_key_fingerprint': 'publicKeyFingerprint', 'should_use_resource_principal': 'shouldUseResourcePrincipal' } + self._redacted_field_paths = [ + ['private_key_passphrase'], + ] self._connection_type = None self._display_name = None self._description = None @@ -328,7 +331,9 @@ def private_key_file(self): Gets the private_key_file of this CreateOciObjectStorageConnectionDetails. The base64 encoded content of the private key file (PEM file) corresponding to the API key of the fingerprint. See documentation: https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm - Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The private_key_file of this CreateOciObjectStorageConnectionDetails. @@ -342,7 +347,9 @@ def private_key_file(self, private_key_file): Sets the private_key_file of this CreateOciObjectStorageConnectionDetails. The base64 encoded content of the private key file (PEM file) corresponding to the API key of the fingerprint. See documentation: https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm - Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param private_key_file: The private_key_file of this CreateOciObjectStorageConnectionDetails. @@ -387,7 +394,9 @@ def private_key_passphrase(self): """ Gets the private_key_passphrase of this CreateOciObjectStorageConnectionDetails. The passphrase of the private key. - Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The private_key_passphrase of this CreateOciObjectStorageConnectionDetails. @@ -400,7 +409,9 @@ def private_key_passphrase(self, private_key_passphrase): """ Sets the private_key_passphrase of this CreateOciObjectStorageConnectionDetails. The passphrase of the private key. - Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param private_key_passphrase: The private_key_passphrase of this CreateOciObjectStorageConnectionDetails. @@ -491,7 +502,9 @@ def should_use_resource_principal(self, should_use_resource_principal): self._should_use_resource_principal = should_use_resource_principal def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['private_key_passphrase']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_oci_object_storage_s3_api_iceberg_storage_details.py b/src/oci/golden_gate/models/create_oci_object_storage_s3_api_iceberg_storage_details.py new file mode 100644 index 0000000000..d359fab4dc --- /dev/null +++ b/src/oci/golden_gate/models/create_oci_object_storage_s3_api_iceberg_storage_details.py @@ -0,0 +1,229 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 + +from .create_iceberg_storage_details import CreateIcebergStorageDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateOciObjectStorageS3ApiIcebergStorageDetails(CreateIcebergStorageDetails): + """ + The information to create the OCI Object Storage (S3 Compatibility API) configuration used by the + Iceberg connection. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateOciObjectStorageS3ApiIcebergStorageDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.golden_gate.models.CreateOciObjectStorageS3ApiIcebergStorageDetails.storage_type` attribute + of this class is ``OCI_OBJECT_STORAGE_S3_API`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param storage_type: + The value to assign to the storage_type property of this CreateOciObjectStorageS3ApiIcebergStorageDetails. + Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", "NONE", "OCI_OBJECT_STORAGE_S3_API" + :type storage_type: str + + :param endpoint: + The value to assign to the endpoint property of this CreateOciObjectStorageS3ApiIcebergStorageDetails. + :type endpoint: str + + :param access_key_id: + The value to assign to the access_key_id property of this CreateOciObjectStorageS3ApiIcebergStorageDetails. + :type access_key_id: str + + :param secret_access_key_secret_id: + The value to assign to the secret_access_key_secret_id property of this CreateOciObjectStorageS3ApiIcebergStorageDetails. + :type secret_access_key_secret_id: str + + :param secret_access_key: + The value to assign to the secret_access_key property of this CreateOciObjectStorageS3ApiIcebergStorageDetails. + :type secret_access_key: str + + :param bucket: + The value to assign to the bucket property of this CreateOciObjectStorageS3ApiIcebergStorageDetails. + :type bucket: str + + """ + self.swagger_types = { + 'storage_type': 'str', + 'endpoint': 'str', + 'access_key_id': 'str', + 'secret_access_key_secret_id': 'str', + 'secret_access_key': 'str', + 'bucket': 'str' + } + self.attribute_map = { + 'storage_type': 'storageType', + 'endpoint': 'endpoint', + 'access_key_id': 'accessKeyId', + 'secret_access_key_secret_id': 'secretAccessKeySecretId', + 'secret_access_key': 'secretAccessKey', + 'bucket': 'bucket' + } + self._storage_type = None + self._endpoint = None + self._access_key_id = None + self._secret_access_key_secret_id = None + self._secret_access_key = None + self._bucket = None + self._storage_type = 'OCI_OBJECT_STORAGE_S3_API' + + @property + def endpoint(self): + """ + **[Required]** Gets the endpoint of this CreateOciObjectStorageS3ApiIcebergStorageDetails. + OCI Object Storage S3 Compatibility API endpoint URL. + Format: \"https://.compat.objectstorage..\" + Example: \"https://mynamespace.compat.objectstorage.us-ashburn-1.oraclecloud.com\" + + + :return: The endpoint of this CreateOciObjectStorageS3ApiIcebergStorageDetails. + :rtype: str + """ + return self._endpoint + + @endpoint.setter + def endpoint(self, endpoint): + """ + Sets the endpoint of this CreateOciObjectStorageS3ApiIcebergStorageDetails. + OCI Object Storage S3 Compatibility API endpoint URL. + Format: \"https://.compat.objectstorage..\" + Example: \"https://mynamespace.compat.objectstorage.us-ashburn-1.oraclecloud.com\" + + + :param endpoint: The endpoint of this CreateOciObjectStorageS3ApiIcebergStorageDetails. + :type: str + """ + self._endpoint = endpoint + + @property + def access_key_id(self): + """ + **[Required]** Gets the access_key_id of this CreateOciObjectStorageS3ApiIcebergStorageDetails. + Access Key ID from the OCI IAM user's Customer Secret Key pair used to authenticate to + OCI Object Storage via the S3 Compatibility API. + + Note: Despite the \"Id\" suffix, this value is not an OCI OCID. + + + :return: The access_key_id of this CreateOciObjectStorageS3ApiIcebergStorageDetails. + :rtype: str + """ + return self._access_key_id + + @access_key_id.setter + def access_key_id(self, access_key_id): + """ + Sets the access_key_id of this CreateOciObjectStorageS3ApiIcebergStorageDetails. + Access Key ID from the OCI IAM user's Customer Secret Key pair used to authenticate to + OCI Object Storage via the S3 Compatibility API. + + Note: Despite the \"Id\" suffix, this value is not an OCI OCID. + + + :param access_key_id: The access_key_id of this CreateOciObjectStorageS3ApiIcebergStorageDetails. + :type: str + """ + self._access_key_id = access_key_id + + @property + def secret_access_key_secret_id(self): + """ + Gets the secret_access_key_secret_id of this CreateOciObjectStorageS3ApiIcebergStorageDetails. + The `OCID`__ of the Secret where the Secret Access Key used for OCI Object Storage S3 Compatibility authentication. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The secret_access_key_secret_id of this CreateOciObjectStorageS3ApiIcebergStorageDetails. + :rtype: str + """ + return self._secret_access_key_secret_id + + @secret_access_key_secret_id.setter + def secret_access_key_secret_id(self, secret_access_key_secret_id): + """ + Sets the secret_access_key_secret_id of this CreateOciObjectStorageS3ApiIcebergStorageDetails. + The `OCID`__ of the Secret where the Secret Access Key used for OCI Object Storage S3 Compatibility authentication. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param secret_access_key_secret_id: The secret_access_key_secret_id of this CreateOciObjectStorageS3ApiIcebergStorageDetails. + :type: str + """ + self._secret_access_key_secret_id = secret_access_key_secret_id + + @property + def secret_access_key(self): + """ + Gets the secret_access_key of this CreateOciObjectStorageS3ApiIcebergStorageDetails. + Secret Access Key from the OCI IAM user's Customer Secret Key pair used to authenticate to + OCI Object Storage via the S3 Compatibility API. + Deprecated: This field is deprecated and replaced by \"secretAccessKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + + :return: The secret_access_key of this CreateOciObjectStorageS3ApiIcebergStorageDetails. + :rtype: str + """ + return self._secret_access_key + + @secret_access_key.setter + def secret_access_key(self, secret_access_key): + """ + Sets the secret_access_key of this CreateOciObjectStorageS3ApiIcebergStorageDetails. + Secret Access Key from the OCI IAM user's Customer Secret Key pair used to authenticate to + OCI Object Storage via the S3 Compatibility API. + Deprecated: This field is deprecated and replaced by \"secretAccessKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + + :param secret_access_key: The secret_access_key of this CreateOciObjectStorageS3ApiIcebergStorageDetails. + :type: str + """ + self._secret_access_key = secret_access_key + + @property + def bucket(self): + """ + **[Required]** Gets the bucket of this CreateOciObjectStorageS3ApiIcebergStorageDetails. + Target OCI Object Storage bucket name where Iceberg stores + table metadata and data files. + + + :return: The bucket of this CreateOciObjectStorageS3ApiIcebergStorageDetails. + :rtype: str + """ + return self._bucket + + @bucket.setter + def bucket(self, bucket): + """ + Sets the bucket of this CreateOciObjectStorageS3ApiIcebergStorageDetails. + Target OCI Object Storage bucket name where Iceberg stores + table metadata and data files. + + + :param bucket: The bucket of this CreateOciObjectStorageS3ApiIcebergStorageDetails. + :type: str + """ + self._bucket = bucket + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/golden_gate/models/create_ogg_deployment_details.py b/src/oci/golden_gate/models/create_ogg_deployment_details.py index 516ce3ad20..019cae91cf 100644 --- a/src/oci/golden_gate/models/create_ogg_deployment_details.py +++ b/src/oci/golden_gate/models/create_ogg_deployment_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -100,6 +100,9 @@ def __init__(self, **kwargs): 'ogg_version': 'oggVersion', 'group_to_roles_mapping': 'groupToRolesMapping' } + self._redacted_field_paths = [ + ['admin_password'], + ] self._deployment_name = None self._credential_store = None self._identity_domain_id = None @@ -402,7 +405,9 @@ def group_to_roles_mapping(self, group_to_roles_mapping): self._group_to_roles_mapping = group_to_roles_mapping def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_oracle_ai_data_platform_connection_details.py b/src/oci/golden_gate/models/create_oracle_ai_data_platform_connection_details.py index 4e92e6bd8b..c188a01695 100644 --- a/src/oci/golden_gate/models/create_oracle_ai_data_platform_connection_details.py +++ b/src/oci/golden_gate/models/create_oracle_ai_data_platform_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this CreateOracleAiDataPlatformConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -190,6 +190,9 @@ def __init__(self, **kwargs): 'public_key_fingerprint': 'publicKeyFingerprint', 'should_use_resource_principal': 'shouldUseResourcePrincipal' } + self._redacted_field_paths = [ + ['private_key_passphrase'], + ] self._connection_type = None self._display_name = None self._description = None @@ -423,7 +426,9 @@ def private_key_file(self): Gets the private_key_file of this CreateOracleAiDataPlatformConnectionDetails. The base64 encoded content of the private key file (PEM file) corresponding to the API key of the fingerprint. See documentation: https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm - Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The private_key_file of this CreateOracleAiDataPlatformConnectionDetails. @@ -437,7 +442,9 @@ def private_key_file(self, private_key_file): Sets the private_key_file of this CreateOracleAiDataPlatformConnectionDetails. The base64 encoded content of the private key file (PEM file) corresponding to the API key of the fingerprint. See documentation: https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm - Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param private_key_file: The private_key_file of this CreateOracleAiDataPlatformConnectionDetails. @@ -450,7 +457,9 @@ def private_key_passphrase(self): """ Gets the private_key_passphrase of this CreateOracleAiDataPlatformConnectionDetails. The passphrase of the private key. - Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The private_key_passphrase of this CreateOracleAiDataPlatformConnectionDetails. @@ -463,7 +472,9 @@ def private_key_passphrase(self, private_key_passphrase): """ Sets the private_key_passphrase of this CreateOracleAiDataPlatformConnectionDetails. The passphrase of the private key. - Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param private_key_passphrase: The private_key_passphrase of this CreateOracleAiDataPlatformConnectionDetails. @@ -524,7 +535,9 @@ def should_use_resource_principal(self, should_use_resource_principal): self._should_use_resource_principal = should_use_resource_principal def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['private_key_passphrase']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_oracle_connection_details.py b/src/oci/golden_gate/models/create_oracle_connection_details.py index 4a6e82edb9..6be5b1ba2d 100644 --- a/src/oci/golden_gate/models/create_oracle_connection_details.py +++ b/src/oci/golden_gate/models/create_oracle_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this CreateOracleConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -184,6 +184,9 @@ def __init__(self, **kwargs): 'session_mode': 'sessionMode', 'database_id': 'databaseId' } + self._redacted_field_paths = [ + ['password'], + ] self._connection_type = None self._display_name = None self._description = None @@ -270,7 +273,9 @@ def password(self): Gets the password of this CreateOracleConnectionDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The password of this CreateOracleConnectionDetails. @@ -284,7 +289,9 @@ def password(self, password): Sets the password of this CreateOracleConnectionDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param password: The password of this CreateOracleConnectionDetails. @@ -384,7 +391,9 @@ def wallet(self): Gets the wallet of this CreateOracleConnectionDetails. The wallet contents Oracle GoldenGate uses to make connections to a database. This attribute is expected to be base64 encoded. - Deprecated: This field is deprecated and replaced by \"walletSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"walletSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The wallet of this CreateOracleConnectionDetails. @@ -398,7 +407,9 @@ def wallet(self, wallet): Sets the wallet of this CreateOracleConnectionDetails. The wallet contents Oracle GoldenGate uses to make connections to a database. This attribute is expected to be base64 encoded. - Deprecated: This field is deprecated and replaced by \"walletSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"walletSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param wallet: The wallet of this CreateOracleConnectionDetails. @@ -451,7 +462,7 @@ def session_mode(self): The default is DIRECT, except when databaseId is provided and the discovered database relies on the SCAN listener. In this case, the default is REDIRECT. - Deprecated: Defaulting to the REDIRECT session mode will be removed after March 1, 2027. + Deprecated: Defaulting to the REDIRECT session mode will be removed after April 21, 2027. :return: The session_mode of this CreateOracleConnectionDetails. @@ -472,7 +483,7 @@ def session_mode(self, session_mode): The default is DIRECT, except when databaseId is provided and the discovered database relies on the SCAN listener. In this case, the default is REDIRECT. - Deprecated: Defaulting to the REDIRECT session mode will be removed after March 1, 2027. + Deprecated: Defaulting to the REDIRECT session mode will be removed after April 21, 2027. :param session_mode: The session_mode of this CreateOracleConnectionDetails. @@ -509,7 +520,9 @@ def database_id(self, database_id): self._database_id = database_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_oracle_nosql_connection_details.py b/src/oci/golden_gate/models/create_oracle_nosql_connection_details.py index 93a372e149..a46cb29861 100644 --- a/src/oci/golden_gate/models/create_oracle_nosql_connection_details.py +++ b/src/oci/golden_gate/models/create_oracle_nosql_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this CreateOracleNosqlConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -184,6 +184,9 @@ def __init__(self, **kwargs): 'public_key_fingerprint': 'publicKeyFingerprint', 'should_use_resource_principal': 'shouldUseResourcePrincipal' } + self._redacted_field_paths = [ + ['private_key_passphrase'], + ] self._connection_type = None self._display_name = None self._description = None @@ -328,7 +331,9 @@ def private_key_file(self): Gets the private_key_file of this CreateOracleNosqlConnectionDetails. The base64 encoded content of the private key file (PEM file) corresponding to the API key of the fingerprint. See documentation: https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm - Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The private_key_file of this CreateOracleNosqlConnectionDetails. @@ -342,7 +347,9 @@ def private_key_file(self, private_key_file): Sets the private_key_file of this CreateOracleNosqlConnectionDetails. The base64 encoded content of the private key file (PEM file) corresponding to the API key of the fingerprint. See documentation: https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm - Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param private_key_file: The private_key_file of this CreateOracleNosqlConnectionDetails. @@ -387,7 +394,9 @@ def private_key_passphrase(self): """ Gets the private_key_passphrase of this CreateOracleNosqlConnectionDetails. The passphrase of the private key. - Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The private_key_passphrase of this CreateOracleNosqlConnectionDetails. @@ -400,7 +409,9 @@ def private_key_passphrase(self, private_key_passphrase): """ Sets the private_key_passphrase of this CreateOracleNosqlConnectionDetails. The passphrase of the private key. - Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param private_key_passphrase: The private_key_passphrase of this CreateOracleNosqlConnectionDetails. @@ -491,7 +502,9 @@ def should_use_resource_principal(self, should_use_resource_principal): self._should_use_resource_principal = should_use_resource_principal def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['private_key_passphrase']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_polaris_iceberg_catalog_details.py b/src/oci/golden_gate/models/create_polaris_iceberg_catalog_details.py index 6badd743f6..22e64e20f5 100644 --- a/src/oci/golden_gate/models/create_polaris_iceberg_catalog_details.py +++ b/src/oci/golden_gate/models/create_polaris_iceberg_catalog_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .create_iceberg_catalog_details import CreateIcebergCatalogDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -69,6 +69,9 @@ def __init__(self, **kwargs): 'client_secret': 'clientSecret', 'principal_role': 'principalRole' } + self._redacted_field_paths = [ + ['client_secret'], + ] self._catalog_type = None self._uri = None self._name = None @@ -229,7 +232,9 @@ def principal_role(self, principal_role): self._principal_role = principal_role def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['client_secret']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_postgresql_connection_details.py b/src/oci/golden_gate/models/create_postgresql_connection_details.py index 08453073d7..e50880d2b1 100644 --- a/src/oci/golden_gate/models/create_postgresql_connection_details.py +++ b/src/oci/golden_gate/models/create_postgresql_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this CreatePostgresqlConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -220,6 +220,9 @@ def __init__(self, **kwargs): 'ssl_key_secret_id': 'sslKeySecretId', 'db_system_id': 'dbSystemId' } + self._redacted_field_paths = [ + ['password'], + ] self._connection_type = None self._display_name = None self._description = None @@ -384,7 +387,9 @@ def password(self): Gets the password of this CreatePostgresqlConnectionDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The password of this CreatePostgresqlConnectionDetails. @@ -398,7 +403,9 @@ def password(self, password): Sets the password of this CreatePostgresqlConnectionDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param password: The password of this CreatePostgresqlConnectionDetails. @@ -601,7 +608,9 @@ def ssl_key(self): """ Gets the ssl_key of this CreatePostgresqlConnectionDetails. The base64 encoded private key of the PostgreSQL server. The supported file formats are .pem and .crt. - Deprecated: This field is deprecated and replaced by \"sslKeySecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"sslKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The ssl_key of this CreatePostgresqlConnectionDetails. @@ -614,7 +623,9 @@ def ssl_key(self, ssl_key): """ Sets the ssl_key of this CreatePostgresqlConnectionDetails. The base64 encoded private key of the PostgreSQL server. The supported file formats are .pem and .crt. - Deprecated: This field is deprecated and replaced by \"sslKeySecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"sslKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param ssl_key: The ssl_key of this CreatePostgresqlConnectionDetails. @@ -681,7 +692,9 @@ def db_system_id(self, db_system_id): self._db_system_id = db_system_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_redis_connection_details.py b/src/oci/golden_gate/models/create_redis_connection_details.py index 79d734fc50..b7e7ff69af 100644 --- a/src/oci/golden_gate/models/create_redis_connection_details.py +++ b/src/oci/golden_gate/models/create_redis_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this CreateRedisConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -220,6 +220,11 @@ def __init__(self, **kwargs): 'key_store_password_secret_id': 'keyStorePasswordSecretId', 'redis_cluster_id': 'redisClusterId' } + self._redacted_field_paths = [ + ['password'], + ['trust_store_password'], + ['key_store_password'], + ] self._connection_type = None self._display_name = None self._description = None @@ -390,7 +395,9 @@ def password(self): Gets the password of this CreateRedisConnectionDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The password of this CreateRedisConnectionDetails. @@ -404,7 +411,9 @@ def password(self, password): Sets the password of this CreateRedisConnectionDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param password: The password of this CreateRedisConnectionDetails. @@ -453,7 +462,9 @@ def trust_store(self): """ Gets the trust_store of this CreateRedisConnectionDetails. The base64 encoded content of the TrustStore file. - Deprecated: This field is deprecated and replaced by \"trustStoreSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"trustStoreSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The trust_store of this CreateRedisConnectionDetails. @@ -466,7 +477,9 @@ def trust_store(self, trust_store): """ Sets the trust_store of this CreateRedisConnectionDetails. The base64 encoded content of the TrustStore file. - Deprecated: This field is deprecated and replaced by \"trustStoreSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"trustStoreSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param trust_store: The trust_store of this CreateRedisConnectionDetails. @@ -509,7 +522,9 @@ def trust_store_password(self): """ Gets the trust_store_password of this CreateRedisConnectionDetails. The TrustStore password. - Deprecated: This field is deprecated and replaced by \"trustStorePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"trustStorePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The trust_store_password of this CreateRedisConnectionDetails. @@ -522,7 +537,9 @@ def trust_store_password(self, trust_store_password): """ Sets the trust_store_password of this CreateRedisConnectionDetails. The TrustStore password. - Deprecated: This field is deprecated and replaced by \"trustStorePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"trustStorePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param trust_store_password: The trust_store_password of this CreateRedisConnectionDetails. @@ -565,7 +582,9 @@ def key_store(self): """ Gets the key_store of this CreateRedisConnectionDetails. The base64 encoded content of the KeyStore file. - Deprecated: This field is deprecated and replaced by \"keyStoreSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"keyStoreSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The key_store of this CreateRedisConnectionDetails. @@ -578,7 +597,9 @@ def key_store(self, key_store): """ Sets the key_store of this CreateRedisConnectionDetails. The base64 encoded content of the KeyStore file. - Deprecated: This field is deprecated and replaced by \"keyStoreSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"keyStoreSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param key_store: The key_store of this CreateRedisConnectionDetails. @@ -621,7 +642,9 @@ def key_store_password(self): """ Gets the key_store_password of this CreateRedisConnectionDetails. The KeyStore password. - Deprecated: This field is deprecated and replaced by \"keyStorePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"keyStorePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The key_store_password of this CreateRedisConnectionDetails. @@ -634,7 +657,9 @@ def key_store_password(self, key_store_password): """ Sets the key_store_password of this CreateRedisConnectionDetails. The KeyStore password. - Deprecated: This field is deprecated and replaced by \"keyStorePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"keyStorePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param key_store_password: The key_store_password of this CreateRedisConnectionDetails. @@ -701,7 +726,11 @@ def redis_cluster_id(self, redis_cluster_id): self._redis_cluster_id = redis_cluster_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['trust_store_password']) + redact_password_field(as_dict, ['key_store_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_snowflake_connection_details.py b/src/oci/golden_gate/models/create_snowflake_connection_details.py index 4f8833fcf6..83e83149cc 100644 --- a/src/oci/golden_gate/models/create_snowflake_connection_details.py +++ b/src/oci/golden_gate/models/create_snowflake_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this CreateSnowflakeConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -184,6 +184,10 @@ def __init__(self, **kwargs): 'private_key_passphrase': 'privateKeyPassphrase', 'private_key_passphrase_secret_id': 'privateKeyPassphraseSecretId' } + self._redacted_field_paths = [ + ['password'], + ['private_key_passphrase'], + ] self._connection_type = None self._display_name = None self._description = None @@ -317,7 +321,9 @@ def password(self): """ Gets the password of this CreateSnowflakeConnectionDetails. The password Oracle GoldenGate uses to connect to Snowflake platform. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The password of this CreateSnowflakeConnectionDetails. @@ -330,7 +336,9 @@ def password(self, password): """ Sets the password of this CreateSnowflakeConnectionDetails. The password Oracle GoldenGate uses to connect to Snowflake platform. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param password: The password of this CreateSnowflakeConnectionDetails. @@ -379,7 +387,9 @@ def private_key_file(self): """ Gets the private_key_file of this CreateSnowflakeConnectionDetails. The base64 encoded content of private key file in PEM format. - Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The private_key_file of this CreateSnowflakeConnectionDetails. @@ -392,7 +402,9 @@ def private_key_file(self, private_key_file): """ Sets the private_key_file of this CreateSnowflakeConnectionDetails. The base64 encoded content of private key file in PEM format. - Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param private_key_file: The private_key_file of this CreateSnowflakeConnectionDetails. @@ -437,7 +449,9 @@ def private_key_passphrase(self): """ Gets the private_key_passphrase of this CreateSnowflakeConnectionDetails. Password if the private key file is encrypted. - Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The private_key_passphrase of this CreateSnowflakeConnectionDetails. @@ -450,7 +464,9 @@ def private_key_passphrase(self, private_key_passphrase): """ Sets the private_key_passphrase of this CreateSnowflakeConnectionDetails. Password if the private key file is encrypted. - Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param private_key_passphrase: The private_key_passphrase of this CreateSnowflakeConnectionDetails. @@ -489,7 +505,10 @@ def private_key_passphrase_secret_id(self, private_key_passphrase_secret_id): self._private_key_passphrase_secret_id = private_key_passphrase_secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['private_key_passphrase']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/databricks_connection.py b/src/oci/golden_gate/models/databricks_connection.py index 7bc75c23bb..5774cc412b 100644 --- a/src/oci/golden_gate/models/databricks_connection.py +++ b/src/oci/golden_gate/models/databricks_connection.py @@ -35,7 +35,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this DatabricksConnection. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type connection_type: str @@ -69,7 +69,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this DatabricksConnection. - Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str diff --git a/src/oci/golden_gate/models/databricks_connection_summary.py b/src/oci/golden_gate/models/databricks_connection_summary.py index 22f3d09282..d5f1044f6c 100644 --- a/src/oci/golden_gate/models/databricks_connection_summary.py +++ b/src/oci/golden_gate/models/databricks_connection_summary.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this DatabricksConnectionSummary. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param id: diff --git a/src/oci/golden_gate/models/db2_connection.py b/src/oci/golden_gate/models/db2_connection.py index e25b14ea14..cb1612d819 100644 --- a/src/oci/golden_gate/models/db2_connection.py +++ b/src/oci/golden_gate/models/db2_connection.py @@ -39,7 +39,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this Db2Connection. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type connection_type: str @@ -73,7 +73,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this Db2Connection. - Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str diff --git a/src/oci/golden_gate/models/db2_connection_summary.py b/src/oci/golden_gate/models/db2_connection_summary.py index ee5e6afc2a..0f8739f038 100644 --- a/src/oci/golden_gate/models/db2_connection_summary.py +++ b/src/oci/golden_gate/models/db2_connection_summary.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this Db2ConnectionSummary. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param id: diff --git a/src/oci/golden_gate/models/deployment_type_summary.py b/src/oci/golden_gate/models/deployment_type_summary.py index 555be39206..90743efa11 100644 --- a/src/oci/golden_gate/models/deployment_type_summary.py +++ b/src/oci/golden_gate/models/deployment_type_summary.py @@ -198,6 +198,10 @@ class DeploymentTypeSummary(object): #: This constant has a value of "ICEBERG" CONNECTION_TYPES_ICEBERG = "ICEBERG" + #: A constant which can be used with the connection_types property of a DeploymentTypeSummary. + #: This constant has a value of "AI_MODEL" + CONNECTION_TYPES_AI_MODEL = "AI_MODEL" + #: A constant which can be used with the supported_capabilities property of a DeploymentTypeSummary. #: This constant has a value of "GROUP_TO_ROLE" SUPPORTED_CAPABILITIES_GROUP_TO_ROLE = "GROUP_TO_ROLE" @@ -281,7 +285,7 @@ def __init__(self, **kwargs): :param connection_types: The value to assign to the connection_types property of this DeploymentTypeSummary. - Allowed values for items in this list are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for items in this list are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type connection_types: list[str] @@ -450,7 +454,7 @@ def connection_types(self): Gets the connection_types of this DeploymentTypeSummary. An array of connectionTypes. - Allowed values for items in this list are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for items in this list are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -469,7 +473,7 @@ def connection_types(self, connection_types): :param connection_types: The connection_types of this DeploymentTypeSummary. :type: list[str] """ - allowed_values = ["GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG"] + allowed_values = ["GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL"] if connection_types: connection_types[:] = ['UNKNOWN_ENUM_VALUE' if not value_allowed_none_or_none_sentinel(x, allowed_values) else x for x in connection_types] self._connection_types = connection_types diff --git a/src/oci/golden_gate/models/elasticsearch_connection.py b/src/oci/golden_gate/models/elasticsearch_connection.py index 4c3bddb477..47b2ce3466 100644 --- a/src/oci/golden_gate/models/elasticsearch_connection.py +++ b/src/oci/golden_gate/models/elasticsearch_connection.py @@ -43,7 +43,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this ElasticsearchConnection. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type connection_type: str @@ -77,7 +77,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this ElasticsearchConnection. - Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str diff --git a/src/oci/golden_gate/models/elasticsearch_connection_summary.py b/src/oci/golden_gate/models/elasticsearch_connection_summary.py index 6ba042f534..faa138a7bc 100644 --- a/src/oci/golden_gate/models/elasticsearch_connection_summary.py +++ b/src/oci/golden_gate/models/elasticsearch_connection_summary.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this ElasticsearchConnectionSummary. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param id: diff --git a/src/oci/golden_gate/models/generic_connection.py b/src/oci/golden_gate/models/generic_connection.py index 73d836dc2b..f244237fb6 100644 --- a/src/oci/golden_gate/models/generic_connection.py +++ b/src/oci/golden_gate/models/generic_connection.py @@ -27,7 +27,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this GenericConnection. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type connection_type: str @@ -61,7 +61,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this GenericConnection. - Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str diff --git a/src/oci/golden_gate/models/generic_connection_summary.py b/src/oci/golden_gate/models/generic_connection_summary.py index 4659dc434a..f155295b45 100644 --- a/src/oci/golden_gate/models/generic_connection_summary.py +++ b/src/oci/golden_gate/models/generic_connection_summary.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this GenericConnectionSummary. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param id: diff --git a/src/oci/golden_gate/models/golden_gate_connection.py b/src/oci/golden_gate/models/golden_gate_connection.py index 87ed5bc6b2..2bf2c74c4f 100644 --- a/src/oci/golden_gate/models/golden_gate_connection.py +++ b/src/oci/golden_gate/models/golden_gate_connection.py @@ -27,7 +27,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this GoldenGateConnection. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type connection_type: str @@ -61,7 +61,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this GoldenGateConnection. - Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str diff --git a/src/oci/golden_gate/models/golden_gate_connection_summary.py b/src/oci/golden_gate/models/golden_gate_connection_summary.py index 7c3af12cb4..2bff71f019 100644 --- a/src/oci/golden_gate/models/golden_gate_connection_summary.py +++ b/src/oci/golden_gate/models/golden_gate_connection_summary.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this GoldenGateConnectionSummary. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param id: diff --git a/src/oci/golden_gate/models/google_big_query_connection.py b/src/oci/golden_gate/models/google_big_query_connection.py index eb873aaa17..13a9fe1b83 100644 --- a/src/oci/golden_gate/models/google_big_query_connection.py +++ b/src/oci/golden_gate/models/google_big_query_connection.py @@ -27,7 +27,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this GoogleBigQueryConnection. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type connection_type: str @@ -61,7 +61,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this GoogleBigQueryConnection. - Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str diff --git a/src/oci/golden_gate/models/google_big_query_connection_summary.py b/src/oci/golden_gate/models/google_big_query_connection_summary.py index d3c557ce27..c443eb431d 100644 --- a/src/oci/golden_gate/models/google_big_query_connection_summary.py +++ b/src/oci/golden_gate/models/google_big_query_connection_summary.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this GoogleBigQueryConnectionSummary. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param id: diff --git a/src/oci/golden_gate/models/google_cloud_storage_connection.py b/src/oci/golden_gate/models/google_cloud_storage_connection.py index 8e6c93f79e..95d27b0128 100644 --- a/src/oci/golden_gate/models/google_cloud_storage_connection.py +++ b/src/oci/golden_gate/models/google_cloud_storage_connection.py @@ -27,7 +27,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this GoogleCloudStorageConnection. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type connection_type: str @@ -61,7 +61,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this GoogleCloudStorageConnection. - Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str diff --git a/src/oci/golden_gate/models/google_cloud_storage_connection_summary.py b/src/oci/golden_gate/models/google_cloud_storage_connection_summary.py index fa642c11ff..8284bf5f8f 100644 --- a/src/oci/golden_gate/models/google_cloud_storage_connection_summary.py +++ b/src/oci/golden_gate/models/google_cloud_storage_connection_summary.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this GoogleCloudStorageConnectionSummary. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param id: diff --git a/src/oci/golden_gate/models/google_cloud_storage_iceberg_storage.py b/src/oci/golden_gate/models/google_cloud_storage_iceberg_storage.py index b64c40e951..150bfd3279 100644 --- a/src/oci/golden_gate/models/google_cloud_storage_iceberg_storage.py +++ b/src/oci/golden_gate/models/google_cloud_storage_iceberg_storage.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param storage_type: The value to assign to the storage_type property of this GoogleCloudStorageIcebergStorage. - Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE" + Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", "NONE", "OCI_OBJECT_STORAGE_S3_API" :type storage_type: str :param bucket: diff --git a/src/oci/golden_gate/models/google_cloud_storage_iceberg_storage_summary.py b/src/oci/golden_gate/models/google_cloud_storage_iceberg_storage_summary.py index 0a8e9cbed5..e5a38fadb5 100644 --- a/src/oci/golden_gate/models/google_cloud_storage_iceberg_storage_summary.py +++ b/src/oci/golden_gate/models/google_cloud_storage_iceberg_storage_summary.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param storage_type: The value to assign to the storage_type property of this GoogleCloudStorageIcebergStorageSummary. - Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE" + Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", "NONE", "OCI_OBJECT_STORAGE_S3_API" :type storage_type: str :param bucket: diff --git a/src/oci/golden_gate/models/google_pub_sub_connection.py b/src/oci/golden_gate/models/google_pub_sub_connection.py index 8709f757a2..5693b35f67 100644 --- a/src/oci/golden_gate/models/google_pub_sub_connection.py +++ b/src/oci/golden_gate/models/google_pub_sub_connection.py @@ -27,7 +27,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this GooglePubSubConnection. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type connection_type: str @@ -61,7 +61,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this GooglePubSubConnection. - Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str diff --git a/src/oci/golden_gate/models/google_pub_sub_connection_summary.py b/src/oci/golden_gate/models/google_pub_sub_connection_summary.py index f952b96b0a..e83757b7a0 100644 --- a/src/oci/golden_gate/models/google_pub_sub_connection_summary.py +++ b/src/oci/golden_gate/models/google_pub_sub_connection_summary.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this GooglePubSubConnectionSummary. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param id: diff --git a/src/oci/golden_gate/models/hdfs_connection.py b/src/oci/golden_gate/models/hdfs_connection.py index 378d914f4b..d93dd66de6 100644 --- a/src/oci/golden_gate/models/hdfs_connection.py +++ b/src/oci/golden_gate/models/hdfs_connection.py @@ -27,7 +27,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this HdfsConnection. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type connection_type: str @@ -61,7 +61,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this HdfsConnection. - Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str diff --git a/src/oci/golden_gate/models/hdfs_connection_summary.py b/src/oci/golden_gate/models/hdfs_connection_summary.py index beb4541022..2ae28f4a41 100644 --- a/src/oci/golden_gate/models/hdfs_connection_summary.py +++ b/src/oci/golden_gate/models/hdfs_connection_summary.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this HdfsConnectionSummary. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param id: diff --git a/src/oci/golden_gate/models/iceberg_connection.py b/src/oci/golden_gate/models/iceberg_connection.py index cbd1d9507b..d0e7cf34c2 100644 --- a/src/oci/golden_gate/models/iceberg_connection.py +++ b/src/oci/golden_gate/models/iceberg_connection.py @@ -27,7 +27,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this IcebergConnection. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type connection_type: str @@ -61,7 +61,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this IcebergConnection. - Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str diff --git a/src/oci/golden_gate/models/iceberg_connection_summary.py b/src/oci/golden_gate/models/iceberg_connection_summary.py index ee69006410..40d4001c14 100644 --- a/src/oci/golden_gate/models/iceberg_connection_summary.py +++ b/src/oci/golden_gate/models/iceberg_connection_summary.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this IcebergConnectionSummary. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param id: diff --git a/src/oci/golden_gate/models/iceberg_storage.py b/src/oci/golden_gate/models/iceberg_storage.py index b1ba9e2652..d350b4247f 100644 --- a/src/oci/golden_gate/models/iceberg_storage.py +++ b/src/oci/golden_gate/models/iceberg_storage.py @@ -27,20 +27,30 @@ class IcebergStorage(object): #: This constant has a value of "AZURE_DATA_LAKE_STORAGE" STORAGE_TYPE_AZURE_DATA_LAKE_STORAGE = "AZURE_DATA_LAKE_STORAGE" + #: A constant which can be used with the storage_type property of a IcebergStorage. + #: This constant has a value of "NONE" + STORAGE_TYPE_NONE = "NONE" + + #: A constant which can be used with the storage_type property of a IcebergStorage. + #: This constant has a value of "OCI_OBJECT_STORAGE_S3_API" + STORAGE_TYPE_OCI_OBJECT_STORAGE_S3_API = "OCI_OBJECT_STORAGE_S3_API" + def __init__(self, **kwargs): """ Initializes a new IcebergStorage object with values from keyword arguments. This class has the following subclasses and if you are using this class as input to a service operations then you should favor using a subclass over the base class: + * :class:`~oci.golden_gate.models.OciObjectStorageS3ApiIcebergStorage` * :class:`~oci.golden_gate.models.AmazonS3IcebergStorage` * :class:`~oci.golden_gate.models.AzureDataLakeStorageIcebergStorage` + * :class:`~oci.golden_gate.models.NoIcebergStorage` * :class:`~oci.golden_gate.models.GoogleCloudStorageIcebergStorage` The following keyword arguments are supported (corresponding to the getters/setters of this class): :param storage_type: The value to assign to the storage_type property of this IcebergStorage. - Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", "NONE", "OCI_OBJECT_STORAGE_S3_API", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type storage_type: str @@ -61,12 +71,18 @@ def get_subtype(object_dictionary): """ type = object_dictionary['storageType'] + if type == 'OCI_OBJECT_STORAGE_S3_API': + return 'OciObjectStorageS3ApiIcebergStorage' + if type == 'AMAZON_S3': return 'AmazonS3IcebergStorage' if type == 'AZURE_DATA_LAKE_STORAGE': return 'AzureDataLakeStorageIcebergStorage' + if type == 'NONE': + return 'NoIcebergStorage' + if type == 'GOOGLE_CLOUD_STORAGE': return 'GoogleCloudStorageIcebergStorage' else: @@ -78,7 +94,7 @@ def storage_type(self): **[Required]** Gets the storage_type of this IcebergStorage. The storage type used in the Iceberg connection. - Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", "NONE", "OCI_OBJECT_STORAGE_S3_API", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -97,7 +113,7 @@ def storage_type(self, storage_type): :param storage_type: The storage_type of this IcebergStorage. :type: str """ - allowed_values = ["AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE"] + allowed_values = ["AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", "NONE", "OCI_OBJECT_STORAGE_S3_API"] if not value_allowed_none_or_none_sentinel(storage_type, allowed_values): storage_type = 'UNKNOWN_ENUM_VALUE' self._storage_type = storage_type diff --git a/src/oci/golden_gate/models/iceberg_storage_summary.py b/src/oci/golden_gate/models/iceberg_storage_summary.py index 5109697d32..7757358f00 100644 --- a/src/oci/golden_gate/models/iceberg_storage_summary.py +++ b/src/oci/golden_gate/models/iceberg_storage_summary.py @@ -27,20 +27,30 @@ class IcebergStorageSummary(object): #: This constant has a value of "AZURE_DATA_LAKE_STORAGE" STORAGE_TYPE_AZURE_DATA_LAKE_STORAGE = "AZURE_DATA_LAKE_STORAGE" + #: A constant which can be used with the storage_type property of a IcebergStorageSummary. + #: This constant has a value of "NONE" + STORAGE_TYPE_NONE = "NONE" + + #: A constant which can be used with the storage_type property of a IcebergStorageSummary. + #: This constant has a value of "OCI_OBJECT_STORAGE_S3_API" + STORAGE_TYPE_OCI_OBJECT_STORAGE_S3_API = "OCI_OBJECT_STORAGE_S3_API" + def __init__(self, **kwargs): """ Initializes a new IcebergStorageSummary object with values from keyword arguments. This class has the following subclasses and if you are using this class as input to a service operations then you should favor using a subclass over the base class: * :class:`~oci.golden_gate.models.GoogleCloudStorageIcebergStorageSummary` + * :class:`~oci.golden_gate.models.OciObjectStorageS3ApiIcebergStorageSummary` * :class:`~oci.golden_gate.models.AzureDataLakeStorageIcebergStorageSummary` + * :class:`~oci.golden_gate.models.NoIcebergStorageSummary` * :class:`~oci.golden_gate.models.AmazonS3IcebergStorageSummary` The following keyword arguments are supported (corresponding to the getters/setters of this class): :param storage_type: The value to assign to the storage_type property of this IcebergStorageSummary. - Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", "NONE", "OCI_OBJECT_STORAGE_S3_API", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type storage_type: str @@ -64,9 +74,15 @@ def get_subtype(object_dictionary): if type == 'GOOGLE_CLOUD_STORAGE': return 'GoogleCloudStorageIcebergStorageSummary' + if type == 'OCI_OBJECT_STORAGE_S3_API': + return 'OciObjectStorageS3ApiIcebergStorageSummary' + if type == 'AZURE_DATA_LAKE_STORAGE': return 'AzureDataLakeStorageIcebergStorageSummary' + if type == 'NONE': + return 'NoIcebergStorageSummary' + if type == 'AMAZON_S3': return 'AmazonS3IcebergStorageSummary' else: @@ -78,7 +94,7 @@ def storage_type(self): **[Required]** Gets the storage_type of this IcebergStorageSummary. The storage type used in the Iceberg connection. - Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", "NONE", "OCI_OBJECT_STORAGE_S3_API", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -97,7 +113,7 @@ def storage_type(self, storage_type): :param storage_type: The storage_type of this IcebergStorageSummary. :type: str """ - allowed_values = ["AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE"] + allowed_values = ["AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", "NONE", "OCI_OBJECT_STORAGE_S3_API"] if not value_allowed_none_or_none_sentinel(storage_type, allowed_values): storage_type = 'UNKNOWN_ENUM_VALUE' self._storage_type = storage_type diff --git a/src/oci/golden_gate/models/java_message_service_connection.py b/src/oci/golden_gate/models/java_message_service_connection.py index 1868e3d3c7..c45e21f363 100644 --- a/src/oci/golden_gate/models/java_message_service_connection.py +++ b/src/oci/golden_gate/models/java_message_service_connection.py @@ -47,7 +47,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this JavaMessageServiceConnection. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type connection_type: str @@ -81,7 +81,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this JavaMessageServiceConnection. - Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str diff --git a/src/oci/golden_gate/models/java_message_service_connection_summary.py b/src/oci/golden_gate/models/java_message_service_connection_summary.py index a27deaf9c7..12f1592ae1 100644 --- a/src/oci/golden_gate/models/java_message_service_connection_summary.py +++ b/src/oci/golden_gate/models/java_message_service_connection_summary.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this JavaMessageServiceConnectionSummary. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param id: diff --git a/src/oci/golden_gate/models/kafka_connection.py b/src/oci/golden_gate/models/kafka_connection.py index 421ef6caa9..a3f917e798 100644 --- a/src/oci/golden_gate/models/kafka_connection.py +++ b/src/oci/golden_gate/models/kafka_connection.py @@ -27,6 +27,10 @@ class KafkaConnection(Connection): #: This constant has a value of "CONFLUENT_KAFKA" TECHNOLOGY_TYPE_CONFLUENT_KAFKA = "CONFLUENT_KAFKA" + #: A constant which can be used with the technology_type property of a KafkaConnection. + #: This constant has a value of "GOOGLE_CLOUD_MANAGED_SERVICE_FOR_APACHE_KAFKA" + TECHNOLOGY_TYPE_GOOGLE_CLOUD_MANAGED_SERVICE_FOR_APACHE_KAFKA = "GOOGLE_CLOUD_MANAGED_SERVICE_FOR_APACHE_KAFKA" + #: A constant which can be used with the technology_type property of a KafkaConnection. #: This constant has a value of "MICROSOFT_FABRIC_EVENTSTREAM" TECHNOLOGY_TYPE_MICROSOFT_FABRIC_EVENTSTREAM = "MICROSOFT_FABRIC_EVENTSTREAM" @@ -63,7 +67,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this KafkaConnection. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type connection_type: str @@ -97,7 +101,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this KafkaConnection. - Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str @@ -161,7 +165,7 @@ def __init__(self, **kwargs): :param technology_type: The value to assign to the technology_type property of this KafkaConnection. - Allowed values for this property are: "APACHE_KAFKA", "AZURE_EVENT_HUBS", "CONFLUENT_KAFKA", "MICROSOFT_FABRIC_EVENTSTREAM", "OCI_STREAMING", "OCI_STREAMING_WITH_APACHE_KAFKA", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "APACHE_KAFKA", "AZURE_EVENT_HUBS", "CONFLUENT_KAFKA", "GOOGLE_CLOUD_MANAGED_SERVICE_FOR_APACHE_KAFKA", "MICROSOFT_FABRIC_EVENTSTREAM", "OCI_STREAMING", "OCI_STREAMING_WITH_APACHE_KAFKA", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type technology_type: str @@ -350,7 +354,7 @@ def technology_type(self): **[Required]** Gets the technology_type of this KafkaConnection. The Kafka technology type. - Allowed values for this property are: "APACHE_KAFKA", "AZURE_EVENT_HUBS", "CONFLUENT_KAFKA", "MICROSOFT_FABRIC_EVENTSTREAM", "OCI_STREAMING", "OCI_STREAMING_WITH_APACHE_KAFKA", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "APACHE_KAFKA", "AZURE_EVENT_HUBS", "CONFLUENT_KAFKA", "GOOGLE_CLOUD_MANAGED_SERVICE_FOR_APACHE_KAFKA", "MICROSOFT_FABRIC_EVENTSTREAM", "OCI_STREAMING", "OCI_STREAMING_WITH_APACHE_KAFKA", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -369,7 +373,7 @@ def technology_type(self, technology_type): :param technology_type: The technology_type of this KafkaConnection. :type: str """ - allowed_values = ["APACHE_KAFKA", "AZURE_EVENT_HUBS", "CONFLUENT_KAFKA", "MICROSOFT_FABRIC_EVENTSTREAM", "OCI_STREAMING", "OCI_STREAMING_WITH_APACHE_KAFKA"] + allowed_values = ["APACHE_KAFKA", "AZURE_EVENT_HUBS", "CONFLUENT_KAFKA", "GOOGLE_CLOUD_MANAGED_SERVICE_FOR_APACHE_KAFKA", "MICROSOFT_FABRIC_EVENTSTREAM", "OCI_STREAMING", "OCI_STREAMING_WITH_APACHE_KAFKA"] if not value_allowed_none_or_none_sentinel(technology_type, allowed_values): technology_type = 'UNKNOWN_ENUM_VALUE' self._technology_type = technology_type diff --git a/src/oci/golden_gate/models/kafka_connection_summary.py b/src/oci/golden_gate/models/kafka_connection_summary.py index dd844672ce..90558a3f1d 100644 --- a/src/oci/golden_gate/models/kafka_connection_summary.py +++ b/src/oci/golden_gate/models/kafka_connection_summary.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this KafkaConnectionSummary. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param id: diff --git a/src/oci/golden_gate/models/kafka_schema_registry_connection.py b/src/oci/golden_gate/models/kafka_schema_registry_connection.py index 8330ccb3e6..6c3c532ae0 100644 --- a/src/oci/golden_gate/models/kafka_schema_registry_connection.py +++ b/src/oci/golden_gate/models/kafka_schema_registry_connection.py @@ -39,7 +39,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this KafkaSchemaRegistryConnection. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type connection_type: str @@ -73,7 +73,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this KafkaSchemaRegistryConnection. - Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str diff --git a/src/oci/golden_gate/models/kafka_schema_registry_connection_summary.py b/src/oci/golden_gate/models/kafka_schema_registry_connection_summary.py index 3e20d2c0f1..640950320b 100644 --- a/src/oci/golden_gate/models/kafka_schema_registry_connection_summary.py +++ b/src/oci/golden_gate/models/kafka_schema_registry_connection_summary.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this KafkaSchemaRegistryConnectionSummary. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param id: diff --git a/src/oci/golden_gate/models/microsoft_fabric_connection.py b/src/oci/golden_gate/models/microsoft_fabric_connection.py index 85f4f93bf6..3f7c2f3b9c 100644 --- a/src/oci/golden_gate/models/microsoft_fabric_connection.py +++ b/src/oci/golden_gate/models/microsoft_fabric_connection.py @@ -31,7 +31,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this MicrosoftFabricConnection. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type connection_type: str @@ -65,7 +65,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this MicrosoftFabricConnection. - Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str diff --git a/src/oci/golden_gate/models/microsoft_fabric_connection_summary.py b/src/oci/golden_gate/models/microsoft_fabric_connection_summary.py index cb9e3ed27f..a9b2b70169 100644 --- a/src/oci/golden_gate/models/microsoft_fabric_connection_summary.py +++ b/src/oci/golden_gate/models/microsoft_fabric_connection_summary.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this MicrosoftFabricConnectionSummary. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param id: diff --git a/src/oci/golden_gate/models/microsoft_sqlserver_connection.py b/src/oci/golden_gate/models/microsoft_sqlserver_connection.py index 86c174c0b1..235eaec820 100644 --- a/src/oci/golden_gate/models/microsoft_sqlserver_connection.py +++ b/src/oci/golden_gate/models/microsoft_sqlserver_connection.py @@ -51,7 +51,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this MicrosoftSqlserverConnection. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type connection_type: str @@ -85,7 +85,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this MicrosoftSqlserverConnection. - Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str diff --git a/src/oci/golden_gate/models/microsoft_sqlserver_connection_summary.py b/src/oci/golden_gate/models/microsoft_sqlserver_connection_summary.py index 54d7d4dad9..643a631167 100644 --- a/src/oci/golden_gate/models/microsoft_sqlserver_connection_summary.py +++ b/src/oci/golden_gate/models/microsoft_sqlserver_connection_summary.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this MicrosoftSqlserverConnectionSummary. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param id: diff --git a/src/oci/golden_gate/models/mongo_db_connection.py b/src/oci/golden_gate/models/mongo_db_connection.py index 285904771b..d8b4324b11 100644 --- a/src/oci/golden_gate/models/mongo_db_connection.py +++ b/src/oci/golden_gate/models/mongo_db_connection.py @@ -59,7 +59,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this MongoDbConnection. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type connection_type: str @@ -93,7 +93,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this MongoDbConnection. - Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str diff --git a/src/oci/golden_gate/models/mongo_db_connection_summary.py b/src/oci/golden_gate/models/mongo_db_connection_summary.py index 47227a06e4..2c004cf63f 100644 --- a/src/oci/golden_gate/models/mongo_db_connection_summary.py +++ b/src/oci/golden_gate/models/mongo_db_connection_summary.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this MongoDbConnectionSummary. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param id: diff --git a/src/oci/golden_gate/models/mysql_connection.py b/src/oci/golden_gate/models/mysql_connection.py index 8a06d99791..8788ab7880 100644 --- a/src/oci/golden_gate/models/mysql_connection.py +++ b/src/oci/golden_gate/models/mysql_connection.py @@ -103,7 +103,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this MysqlConnection. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type connection_type: str @@ -137,7 +137,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this MysqlConnection. - Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str diff --git a/src/oci/golden_gate/models/mysql_connection_summary.py b/src/oci/golden_gate/models/mysql_connection_summary.py index 72718a9b6b..b6c6792801 100644 --- a/src/oci/golden_gate/models/mysql_connection_summary.py +++ b/src/oci/golden_gate/models/mysql_connection_summary.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this MysqlConnectionSummary. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param id: diff --git a/src/oci/golden_gate/models/no_iceberg_storage.py b/src/oci/golden_gate/models/no_iceberg_storage.py new file mode 100644 index 0000000000..4c1f40a643 --- /dev/null +++ b/src/oci/golden_gate/models/no_iceberg_storage.py @@ -0,0 +1,50 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 + +from .iceberg_storage import IcebergStorage +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class NoIcebergStorage(IcebergStorage): + """ + Represents the absence of a storage configuration in an Iceberg + connection. + """ + + def __init__(self, **kwargs): + """ + Initializes a new NoIcebergStorage object with values from keyword arguments. The default value of the :py:attr:`~oci.golden_gate.models.NoIcebergStorage.storage_type` attribute + of this class is ``NONE`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param storage_type: + The value to assign to the storage_type property of this NoIcebergStorage. + Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", "NONE", "OCI_OBJECT_STORAGE_S3_API" + :type storage_type: str + + """ + self.swagger_types = { + 'storage_type': 'str' + } + self.attribute_map = { + 'storage_type': 'storageType' + } + self._storage_type = None + self._storage_type = 'NONE' + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/golden_gate/models/no_iceberg_storage_summary.py b/src/oci/golden_gate/models/no_iceberg_storage_summary.py new file mode 100644 index 0000000000..ad0c9ef6a1 --- /dev/null +++ b/src/oci/golden_gate/models/no_iceberg_storage_summary.py @@ -0,0 +1,50 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 + +from .iceberg_storage_summary import IcebergStorageSummary +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class NoIcebergStorageSummary(IcebergStorageSummary): + """ + Summary of the absence of a storage configuration in an Iceberg + connection. + """ + + def __init__(self, **kwargs): + """ + Initializes a new NoIcebergStorageSummary object with values from keyword arguments. The default value of the :py:attr:`~oci.golden_gate.models.NoIcebergStorageSummary.storage_type` attribute + of this class is ``NONE`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param storage_type: + The value to assign to the storage_type property of this NoIcebergStorageSummary. + Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", "NONE", "OCI_OBJECT_STORAGE_S3_API" + :type storage_type: str + + """ + self.swagger_types = { + 'storage_type': 'str' + } + self.attribute_map = { + 'storage_type': 'storageType' + } + self._storage_type = None + self._storage_type = 'NONE' + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/golden_gate/models/oci_gen_ai_model_auth_details.py b/src/oci/golden_gate/models/oci_gen_ai_model_auth_details.py new file mode 100644 index 0000000000..a3b56eb3dc --- /dev/null +++ b/src/oci/golden_gate/models/oci_gen_ai_model_auth_details.py @@ -0,0 +1,247 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 + +from .ai_model_auth_details import AiModelAuthDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class OciGenAiModelAuthDetails(AiModelAuthDetails): + """ + OCI Generative AI authentication details for an AI Model connection. + """ + + def __init__(self, **kwargs): + """ + Initializes a new OciGenAiModelAuthDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.golden_gate.models.OciGenAiModelAuthDetails.auth_type` attribute + of this class is ``OCI_GEN_AI`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param auth_type: + The value to assign to the auth_type property of this OciGenAiModelAuthDetails. + Allowed values for this property are: "OCI_GEN_AI", "API_KEY" + :type auth_type: str + + :param api_key: + The value to assign to the api_key property of this OciGenAiModelAuthDetails. + :type api_key: str + + :param api_key_secret_id: + The value to assign to the api_key_secret_id property of this OciGenAiModelAuthDetails. + :type api_key_secret_id: str + + :param key_fingerprint: + The value to assign to the key_fingerprint property of this OciGenAiModelAuthDetails. + :type key_fingerprint: str + + :param region: + The value to assign to the region property of this OciGenAiModelAuthDetails. + :type region: str + + :param tenancy_id: + The value to assign to the tenancy_id property of this OciGenAiModelAuthDetails. + :type tenancy_id: str + + :param user_id: + The value to assign to the user_id property of this OciGenAiModelAuthDetails. + :type user_id: str + + """ + self.swagger_types = { + 'auth_type': 'str', + 'api_key': 'str', + 'api_key_secret_id': 'str', + 'key_fingerprint': 'str', + 'region': 'str', + 'tenancy_id': 'str', + 'user_id': 'str' + } + self.attribute_map = { + 'auth_type': 'authType', + 'api_key': 'apiKey', + 'api_key_secret_id': 'apiKeySecretId', + 'key_fingerprint': 'keyFingerprint', + 'region': 'region', + 'tenancy_id': 'tenancyId', + 'user_id': 'userId' + } + self._auth_type = None + self._api_key = None + self._api_key_secret_id = None + self._key_fingerprint = None + self._region = None + self._tenancy_id = None + self._user_id = None + self._auth_type = 'OCI_GEN_AI' + + @property + def api_key(self): + """ + Gets the api_key of this OciGenAiModelAuthDetails. + API key for the AI model connection. + Deprecated: This field is deprecated and replaced by \"apiKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + + :return: The api_key of this OciGenAiModelAuthDetails. + :rtype: str + """ + return self._api_key + + @api_key.setter + def api_key(self, api_key): + """ + Sets the api_key of this OciGenAiModelAuthDetails. + API key for the AI model connection. + Deprecated: This field is deprecated and replaced by \"apiKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + + :param api_key: The api_key of this OciGenAiModelAuthDetails. + :type: str + """ + self._api_key = api_key + + @property + def api_key_secret_id(self): + """ + Gets the api_key_secret_id of this OciGenAiModelAuthDetails. + API key secret OCID for the AI model connection. + + + :return: The api_key_secret_id of this OciGenAiModelAuthDetails. + :rtype: str + """ + return self._api_key_secret_id + + @api_key_secret_id.setter + def api_key_secret_id(self, api_key_secret_id): + """ + Sets the api_key_secret_id of this OciGenAiModelAuthDetails. + API key secret OCID for the AI model connection. + + + :param api_key_secret_id: The api_key_secret_id of this OciGenAiModelAuthDetails. + :type: str + """ + self._api_key_secret_id = api_key_secret_id + + @property + def key_fingerprint(self): + """ + **[Required]** Gets the key_fingerprint of this OciGenAiModelAuthDetails. + OCI Generative AI key fingerprint. + + + :return: The key_fingerprint of this OciGenAiModelAuthDetails. + :rtype: str + """ + return self._key_fingerprint + + @key_fingerprint.setter + def key_fingerprint(self, key_fingerprint): + """ + Sets the key_fingerprint of this OciGenAiModelAuthDetails. + OCI Generative AI key fingerprint. + + + :param key_fingerprint: The key_fingerprint of this OciGenAiModelAuthDetails. + :type: str + """ + self._key_fingerprint = key_fingerprint + + @property + def region(self): + """ + Gets the region of this OciGenAiModelAuthDetails. + The name of the region. e.g.: us-ashburn-1 + If the region is not provided, backend will default to the default region. + + + :return: The region of this OciGenAiModelAuthDetails. + :rtype: str + """ + return self._region + + @region.setter + def region(self, region): + """ + Sets the region of this OciGenAiModelAuthDetails. + The name of the region. e.g.: us-ashburn-1 + If the region is not provided, backend will default to the default region. + + + :param region: The region of this OciGenAiModelAuthDetails. + :type: str + """ + self._region = region + + @property + def tenancy_id(self): + """ + Gets the tenancy_id of this OciGenAiModelAuthDetails. + OCI Generative AI tenancy OCID. If this value is not provided, or is updated to an empty + value, it defaults to the tenancy OCID of the user who is executing the operation. + + + :return: The tenancy_id of this OciGenAiModelAuthDetails. + :rtype: str + """ + return self._tenancy_id + + @tenancy_id.setter + def tenancy_id(self, tenancy_id): + """ + Sets the tenancy_id of this OciGenAiModelAuthDetails. + OCI Generative AI tenancy OCID. If this value is not provided, or is updated to an empty + value, it defaults to the tenancy OCID of the user who is executing the operation. + + + :param tenancy_id: The tenancy_id of this OciGenAiModelAuthDetails. + :type: str + """ + self._tenancy_id = tenancy_id + + @property + def user_id(self): + """ + Gets the user_id of this OciGenAiModelAuthDetails. + OCI Generative AI user OCID. If this value is not provided, or is updated to an empty + value, it defaults to the OCID of the user who is executing the operation. + + + :return: The user_id of this OciGenAiModelAuthDetails. + :rtype: str + """ + return self._user_id + + @user_id.setter + def user_id(self, user_id): + """ + Sets the user_id of this OciGenAiModelAuthDetails. + OCI Generative AI user OCID. If this value is not provided, or is updated to an empty + value, it defaults to the OCID of the user who is executing the operation. + + + :param user_id: The user_id of this OciGenAiModelAuthDetails. + :type: str + """ + self._user_id = user_id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/golden_gate/models/oci_gen_ai_model_auth_details_summary.py b/src/oci/golden_gate/models/oci_gen_ai_model_auth_details_summary.py new file mode 100644 index 0000000000..98cc21a4c3 --- /dev/null +++ b/src/oci/golden_gate/models/oci_gen_ai_model_auth_details_summary.py @@ -0,0 +1,210 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 + +from .ai_model_auth_details_summary import AiModelAuthDetailsSummary +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class OciGenAiModelAuthDetailsSummary(AiModelAuthDetailsSummary): + """ + Summary of OCI Generative AI authentication details for an AI Model connection. + """ + + def __init__(self, **kwargs): + """ + Initializes a new OciGenAiModelAuthDetailsSummary object with values from keyword arguments. The default value of the :py:attr:`~oci.golden_gate.models.OciGenAiModelAuthDetailsSummary.auth_type` attribute + of this class is ``OCI_GEN_AI`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param auth_type: + The value to assign to the auth_type property of this OciGenAiModelAuthDetailsSummary. + Allowed values for this property are: "OCI_GEN_AI", "API_KEY" + :type auth_type: str + + :param api_key_secret_id: + The value to assign to the api_key_secret_id property of this OciGenAiModelAuthDetailsSummary. + :type api_key_secret_id: str + + :param key_fingerprint: + The value to assign to the key_fingerprint property of this OciGenAiModelAuthDetailsSummary. + :type key_fingerprint: str + + :param region: + The value to assign to the region property of this OciGenAiModelAuthDetailsSummary. + :type region: str + + :param tenancy_id: + The value to assign to the tenancy_id property of this OciGenAiModelAuthDetailsSummary. + :type tenancy_id: str + + :param user_id: + The value to assign to the user_id property of this OciGenAiModelAuthDetailsSummary. + :type user_id: str + + """ + self.swagger_types = { + 'auth_type': 'str', + 'api_key_secret_id': 'str', + 'key_fingerprint': 'str', + 'region': 'str', + 'tenancy_id': 'str', + 'user_id': 'str' + } + self.attribute_map = { + 'auth_type': 'authType', + 'api_key_secret_id': 'apiKeySecretId', + 'key_fingerprint': 'keyFingerprint', + 'region': 'region', + 'tenancy_id': 'tenancyId', + 'user_id': 'userId' + } + self._auth_type = None + self._api_key_secret_id = None + self._key_fingerprint = None + self._region = None + self._tenancy_id = None + self._user_id = None + self._auth_type = 'OCI_GEN_AI' + + @property + def api_key_secret_id(self): + """ + Gets the api_key_secret_id of this OciGenAiModelAuthDetailsSummary. + API key secret OCID for the AI model connection. + + + :return: The api_key_secret_id of this OciGenAiModelAuthDetailsSummary. + :rtype: str + """ + return self._api_key_secret_id + + @api_key_secret_id.setter + def api_key_secret_id(self, api_key_secret_id): + """ + Sets the api_key_secret_id of this OciGenAiModelAuthDetailsSummary. + API key secret OCID for the AI model connection. + + + :param api_key_secret_id: The api_key_secret_id of this OciGenAiModelAuthDetailsSummary. + :type: str + """ + self._api_key_secret_id = api_key_secret_id + + @property + def key_fingerprint(self): + """ + **[Required]** Gets the key_fingerprint of this OciGenAiModelAuthDetailsSummary. + OCI Generative AI key fingerprint. + + + :return: The key_fingerprint of this OciGenAiModelAuthDetailsSummary. + :rtype: str + """ + return self._key_fingerprint + + @key_fingerprint.setter + def key_fingerprint(self, key_fingerprint): + """ + Sets the key_fingerprint of this OciGenAiModelAuthDetailsSummary. + OCI Generative AI key fingerprint. + + + :param key_fingerprint: The key_fingerprint of this OciGenAiModelAuthDetailsSummary. + :type: str + """ + self._key_fingerprint = key_fingerprint + + @property + def region(self): + """ + Gets the region of this OciGenAiModelAuthDetailsSummary. + The name of the region. e.g.: us-ashburn-1 + If the region is not provided, backend will default to the default region. + + + :return: The region of this OciGenAiModelAuthDetailsSummary. + :rtype: str + """ + return self._region + + @region.setter + def region(self, region): + """ + Sets the region of this OciGenAiModelAuthDetailsSummary. + The name of the region. e.g.: us-ashburn-1 + If the region is not provided, backend will default to the default region. + + + :param region: The region of this OciGenAiModelAuthDetailsSummary. + :type: str + """ + self._region = region + + @property + def tenancy_id(self): + """ + Gets the tenancy_id of this OciGenAiModelAuthDetailsSummary. + OCI Generative AI tenancy OCID. If this value is not provided, or is updated to an empty + value, it defaults to the tenancy OCID of the user who is executing the operation. + + + :return: The tenancy_id of this OciGenAiModelAuthDetailsSummary. + :rtype: str + """ + return self._tenancy_id + + @tenancy_id.setter + def tenancy_id(self, tenancy_id): + """ + Sets the tenancy_id of this OciGenAiModelAuthDetailsSummary. + OCI Generative AI tenancy OCID. If this value is not provided, or is updated to an empty + value, it defaults to the tenancy OCID of the user who is executing the operation. + + + :param tenancy_id: The tenancy_id of this OciGenAiModelAuthDetailsSummary. + :type: str + """ + self._tenancy_id = tenancy_id + + @property + def user_id(self): + """ + Gets the user_id of this OciGenAiModelAuthDetailsSummary. + OCI Generative AI user OCID. If this value is not provided, or is updated to an empty + value, it defaults to the OCID of the user who is executing the operation. + + + :return: The user_id of this OciGenAiModelAuthDetailsSummary. + :rtype: str + """ + return self._user_id + + @user_id.setter + def user_id(self, user_id): + """ + Sets the user_id of this OciGenAiModelAuthDetailsSummary. + OCI Generative AI user OCID. If this value is not provided, or is updated to an empty + value, it defaults to the OCID of the user who is executing the operation. + + + :param user_id: The user_id of this OciGenAiModelAuthDetailsSummary. + :type: str + """ + self._user_id = user_id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/golden_gate/models/oci_object_storage_connection.py b/src/oci/golden_gate/models/oci_object_storage_connection.py index f326783b2e..7357b18271 100644 --- a/src/oci/golden_gate/models/oci_object_storage_connection.py +++ b/src/oci/golden_gate/models/oci_object_storage_connection.py @@ -27,7 +27,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this OciObjectStorageConnection. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type connection_type: str @@ -61,7 +61,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this OciObjectStorageConnection. - Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str diff --git a/src/oci/golden_gate/models/oci_object_storage_connection_summary.py b/src/oci/golden_gate/models/oci_object_storage_connection_summary.py index 39caaabbaf..4c9ad28cc9 100644 --- a/src/oci/golden_gate/models/oci_object_storage_connection_summary.py +++ b/src/oci/golden_gate/models/oci_object_storage_connection_summary.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this OciObjectStorageConnectionSummary. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param id: diff --git a/src/oci/golden_gate/models/oci_object_storage_s3_api_iceberg_storage.py b/src/oci/golden_gate/models/oci_object_storage_s3_api_iceberg_storage.py new file mode 100644 index 0000000000..823565e7bf --- /dev/null +++ b/src/oci/golden_gate/models/oci_object_storage_s3_api_iceberg_storage.py @@ -0,0 +1,190 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 + +from .iceberg_storage import IcebergStorage +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class OciObjectStorageS3ApiIcebergStorage(IcebergStorage): + """ + Connection details of the OCI Object Storage (S3 Compatibility API) configuration used by the + Iceberg connection. + """ + + def __init__(self, **kwargs): + """ + Initializes a new OciObjectStorageS3ApiIcebergStorage object with values from keyword arguments. The default value of the :py:attr:`~oci.golden_gate.models.OciObjectStorageS3ApiIcebergStorage.storage_type` attribute + of this class is ``OCI_OBJECT_STORAGE_S3_API`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param storage_type: + The value to assign to the storage_type property of this OciObjectStorageS3ApiIcebergStorage. + Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", "NONE", "OCI_OBJECT_STORAGE_S3_API" + :type storage_type: str + + :param endpoint: + The value to assign to the endpoint property of this OciObjectStorageS3ApiIcebergStorage. + :type endpoint: str + + :param access_key_id: + The value to assign to the access_key_id property of this OciObjectStorageS3ApiIcebergStorage. + :type access_key_id: str + + :param secret_access_key_secret_id: + The value to assign to the secret_access_key_secret_id property of this OciObjectStorageS3ApiIcebergStorage. + :type secret_access_key_secret_id: str + + :param bucket: + The value to assign to the bucket property of this OciObjectStorageS3ApiIcebergStorage. + :type bucket: str + + """ + self.swagger_types = { + 'storage_type': 'str', + 'endpoint': 'str', + 'access_key_id': 'str', + 'secret_access_key_secret_id': 'str', + 'bucket': 'str' + } + self.attribute_map = { + 'storage_type': 'storageType', + 'endpoint': 'endpoint', + 'access_key_id': 'accessKeyId', + 'secret_access_key_secret_id': 'secretAccessKeySecretId', + 'bucket': 'bucket' + } + self._storage_type = None + self._endpoint = None + self._access_key_id = None + self._secret_access_key_secret_id = None + self._bucket = None + self._storage_type = 'OCI_OBJECT_STORAGE_S3_API' + + @property + def endpoint(self): + """ + **[Required]** Gets the endpoint of this OciObjectStorageS3ApiIcebergStorage. + OCI Object Storage S3 Compatibility API endpoint URL. + Format: \"https://.compat.objectstorage..\" + Example: \"https://mynamespace.compat.objectstorage.us-ashburn-1.oraclecloud.com\" + + + :return: The endpoint of this OciObjectStorageS3ApiIcebergStorage. + :rtype: str + """ + return self._endpoint + + @endpoint.setter + def endpoint(self, endpoint): + """ + Sets the endpoint of this OciObjectStorageS3ApiIcebergStorage. + OCI Object Storage S3 Compatibility API endpoint URL. + Format: \"https://.compat.objectstorage..\" + Example: \"https://mynamespace.compat.objectstorage.us-ashburn-1.oraclecloud.com\" + + + :param endpoint: The endpoint of this OciObjectStorageS3ApiIcebergStorage. + :type: str + """ + self._endpoint = endpoint + + @property + def access_key_id(self): + """ + **[Required]** Gets the access_key_id of this OciObjectStorageS3ApiIcebergStorage. + Access Key ID from the OCI IAM user's Customer Secret Key pair used to authenticate to + OCI Object Storage via the S3 Compatibility API. + + Note: Despite the \"Id\" suffix, this value is not an OCI OCID. + + + :return: The access_key_id of this OciObjectStorageS3ApiIcebergStorage. + :rtype: str + """ + return self._access_key_id + + @access_key_id.setter + def access_key_id(self, access_key_id): + """ + Sets the access_key_id of this OciObjectStorageS3ApiIcebergStorage. + Access Key ID from the OCI IAM user's Customer Secret Key pair used to authenticate to + OCI Object Storage via the S3 Compatibility API. + + Note: Despite the \"Id\" suffix, this value is not an OCI OCID. + + + :param access_key_id: The access_key_id of this OciObjectStorageS3ApiIcebergStorage. + :type: str + """ + self._access_key_id = access_key_id + + @property + def secret_access_key_secret_id(self): + """ + Gets the secret_access_key_secret_id of this OciObjectStorageS3ApiIcebergStorage. + The `OCID`__ of the Secret where the Secret Access Key used for OCI Object Storage S3 Compatibility authentication. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The secret_access_key_secret_id of this OciObjectStorageS3ApiIcebergStorage. + :rtype: str + """ + return self._secret_access_key_secret_id + + @secret_access_key_secret_id.setter + def secret_access_key_secret_id(self, secret_access_key_secret_id): + """ + Sets the secret_access_key_secret_id of this OciObjectStorageS3ApiIcebergStorage. + The `OCID`__ of the Secret where the Secret Access Key used for OCI Object Storage S3 Compatibility authentication. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param secret_access_key_secret_id: The secret_access_key_secret_id of this OciObjectStorageS3ApiIcebergStorage. + :type: str + """ + self._secret_access_key_secret_id = secret_access_key_secret_id + + @property + def bucket(self): + """ + **[Required]** Gets the bucket of this OciObjectStorageS3ApiIcebergStorage. + Target OCI Object Storage bucket name where Iceberg stores + table metadata and data files. + + + :return: The bucket of this OciObjectStorageS3ApiIcebergStorage. + :rtype: str + """ + return self._bucket + + @bucket.setter + def bucket(self, bucket): + """ + Sets the bucket of this OciObjectStorageS3ApiIcebergStorage. + Target OCI Object Storage bucket name where Iceberg stores + table metadata and data files. + + + :param bucket: The bucket of this OciObjectStorageS3ApiIcebergStorage. + :type: str + """ + self._bucket = bucket + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/golden_gate/models/oci_object_storage_s3_api_iceberg_storage_summary.py b/src/oci/golden_gate/models/oci_object_storage_s3_api_iceberg_storage_summary.py new file mode 100644 index 0000000000..663c2d8d52 --- /dev/null +++ b/src/oci/golden_gate/models/oci_object_storage_s3_api_iceberg_storage_summary.py @@ -0,0 +1,190 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 + +from .iceberg_storage_summary import IcebergStorageSummary +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class OciObjectStorageS3ApiIcebergStorageSummary(IcebergStorageSummary): + """ + Summary of the OCI Object Storage (S3 Compatibility API) configuration used by the + Iceberg connection. + """ + + def __init__(self, **kwargs): + """ + Initializes a new OciObjectStorageS3ApiIcebergStorageSummary object with values from keyword arguments. The default value of the :py:attr:`~oci.golden_gate.models.OciObjectStorageS3ApiIcebergStorageSummary.storage_type` attribute + of this class is ``OCI_OBJECT_STORAGE_S3_API`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param storage_type: + The value to assign to the storage_type property of this OciObjectStorageS3ApiIcebergStorageSummary. + Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", "NONE", "OCI_OBJECT_STORAGE_S3_API" + :type storage_type: str + + :param endpoint: + The value to assign to the endpoint property of this OciObjectStorageS3ApiIcebergStorageSummary. + :type endpoint: str + + :param access_key_id: + The value to assign to the access_key_id property of this OciObjectStorageS3ApiIcebergStorageSummary. + :type access_key_id: str + + :param secret_access_key_secret_id: + The value to assign to the secret_access_key_secret_id property of this OciObjectStorageS3ApiIcebergStorageSummary. + :type secret_access_key_secret_id: str + + :param bucket: + The value to assign to the bucket property of this OciObjectStorageS3ApiIcebergStorageSummary. + :type bucket: str + + """ + self.swagger_types = { + 'storage_type': 'str', + 'endpoint': 'str', + 'access_key_id': 'str', + 'secret_access_key_secret_id': 'str', + 'bucket': 'str' + } + self.attribute_map = { + 'storage_type': 'storageType', + 'endpoint': 'endpoint', + 'access_key_id': 'accessKeyId', + 'secret_access_key_secret_id': 'secretAccessKeySecretId', + 'bucket': 'bucket' + } + self._storage_type = None + self._endpoint = None + self._access_key_id = None + self._secret_access_key_secret_id = None + self._bucket = None + self._storage_type = 'OCI_OBJECT_STORAGE_S3_API' + + @property + def endpoint(self): + """ + **[Required]** Gets the endpoint of this OciObjectStorageS3ApiIcebergStorageSummary. + OCI Object Storage S3 Compatibility API endpoint URL. + Format: \"https://.compat.objectstorage..\" + Example: \"https://mynamespace.compat.objectstorage.us-ashburn-1.oraclecloud.com\" + + + :return: The endpoint of this OciObjectStorageS3ApiIcebergStorageSummary. + :rtype: str + """ + return self._endpoint + + @endpoint.setter + def endpoint(self, endpoint): + """ + Sets the endpoint of this OciObjectStorageS3ApiIcebergStorageSummary. + OCI Object Storage S3 Compatibility API endpoint URL. + Format: \"https://.compat.objectstorage..\" + Example: \"https://mynamespace.compat.objectstorage.us-ashburn-1.oraclecloud.com\" + + + :param endpoint: The endpoint of this OciObjectStorageS3ApiIcebergStorageSummary. + :type: str + """ + self._endpoint = endpoint + + @property + def access_key_id(self): + """ + **[Required]** Gets the access_key_id of this OciObjectStorageS3ApiIcebergStorageSummary. + Access Key ID from the OCI IAM user's Customer Secret Key pair used to authenticate to + OCI Object Storage via the S3 Compatibility API. + + Note: Despite the \"Id\" suffix, this value is not an OCI OCID. + + + :return: The access_key_id of this OciObjectStorageS3ApiIcebergStorageSummary. + :rtype: str + """ + return self._access_key_id + + @access_key_id.setter + def access_key_id(self, access_key_id): + """ + Sets the access_key_id of this OciObjectStorageS3ApiIcebergStorageSummary. + Access Key ID from the OCI IAM user's Customer Secret Key pair used to authenticate to + OCI Object Storage via the S3 Compatibility API. + + Note: Despite the \"Id\" suffix, this value is not an OCI OCID. + + + :param access_key_id: The access_key_id of this OciObjectStorageS3ApiIcebergStorageSummary. + :type: str + """ + self._access_key_id = access_key_id + + @property + def secret_access_key_secret_id(self): + """ + Gets the secret_access_key_secret_id of this OciObjectStorageS3ApiIcebergStorageSummary. + The `OCID`__ of the Secret where the Secret Access Key used for OCI Object Storage S3 Compatibility authentication. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The secret_access_key_secret_id of this OciObjectStorageS3ApiIcebergStorageSummary. + :rtype: str + """ + return self._secret_access_key_secret_id + + @secret_access_key_secret_id.setter + def secret_access_key_secret_id(self, secret_access_key_secret_id): + """ + Sets the secret_access_key_secret_id of this OciObjectStorageS3ApiIcebergStorageSummary. + The `OCID`__ of the Secret where the Secret Access Key used for OCI Object Storage S3 Compatibility authentication. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param secret_access_key_secret_id: The secret_access_key_secret_id of this OciObjectStorageS3ApiIcebergStorageSummary. + :type: str + """ + self._secret_access_key_secret_id = secret_access_key_secret_id + + @property + def bucket(self): + """ + **[Required]** Gets the bucket of this OciObjectStorageS3ApiIcebergStorageSummary. + Target OCI Object Storage bucket name where Iceberg stores + table metadata and data files. + + + :return: The bucket of this OciObjectStorageS3ApiIcebergStorageSummary. + :rtype: str + """ + return self._bucket + + @bucket.setter + def bucket(self, bucket): + """ + Sets the bucket of this OciObjectStorageS3ApiIcebergStorageSummary. + Target OCI Object Storage bucket name where Iceberg stores + table metadata and data files. + + + :param bucket: The bucket of this OciObjectStorageS3ApiIcebergStorageSummary. + :type: str + """ + self._bucket = bucket + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/golden_gate/models/oracle_ai_data_platform_connection.py b/src/oci/golden_gate/models/oracle_ai_data_platform_connection.py index 29cb179d73..fb1f031ef9 100644 --- a/src/oci/golden_gate/models/oracle_ai_data_platform_connection.py +++ b/src/oci/golden_gate/models/oracle_ai_data_platform_connection.py @@ -27,7 +27,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this OracleAiDataPlatformConnection. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type connection_type: str @@ -61,7 +61,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this OracleAiDataPlatformConnection. - Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str diff --git a/src/oci/golden_gate/models/oracle_ai_data_platform_connection_summary.py b/src/oci/golden_gate/models/oracle_ai_data_platform_connection_summary.py index 7a1071a360..1f542db9a2 100644 --- a/src/oci/golden_gate/models/oracle_ai_data_platform_connection_summary.py +++ b/src/oci/golden_gate/models/oracle_ai_data_platform_connection_summary.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this OracleAiDataPlatformConnectionSummary. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param id: diff --git a/src/oci/golden_gate/models/oracle_connection.py b/src/oci/golden_gate/models/oracle_connection.py index 58fd2f2c33..0e69b9428d 100644 --- a/src/oci/golden_gate/models/oracle_connection.py +++ b/src/oci/golden_gate/models/oracle_connection.py @@ -31,10 +31,18 @@ class OracleConnection(Connection): #: This constant has a value of "ORACLE_EXADATA" TECHNOLOGY_TYPE_ORACLE_EXADATA = "ORACLE_EXADATA" + #: A constant which can be used with the technology_type property of a OracleConnection. + #: This constant has a value of "ORACLE_EXADATA_EXASCALE" + TECHNOLOGY_TYPE_ORACLE_EXADATA_EXASCALE = "ORACLE_EXADATA_EXASCALE" + #: A constant which can be used with the technology_type property of a OracleConnection. #: This constant has a value of "ORACLE_EXADATA_DATABASE_AT_AZURE" TECHNOLOGY_TYPE_ORACLE_EXADATA_DATABASE_AT_AZURE = "ORACLE_EXADATA_DATABASE_AT_AZURE" + #: A constant which can be used with the technology_type property of a OracleConnection. + #: This constant has a value of "ORACLE_EXADATA_EXASCALE_AT_AZURE" + TECHNOLOGY_TYPE_ORACLE_EXADATA_EXASCALE_AT_AZURE = "ORACLE_EXADATA_EXASCALE_AT_AZURE" + #: A constant which can be used with the technology_type property of a OracleConnection. #: This constant has a value of "ORACLE_AUTONOMOUS_DATABASE_AT_AZURE" TECHNOLOGY_TYPE_ORACLE_AUTONOMOUS_DATABASE_AT_AZURE = "ORACLE_AUTONOMOUS_DATABASE_AT_AZURE" @@ -43,6 +51,10 @@ class OracleConnection(Connection): #: This constant has a value of "ORACLE_EXADATA_DATABASE_AT_GOOGLE_CLOUD" TECHNOLOGY_TYPE_ORACLE_EXADATA_DATABASE_AT_GOOGLE_CLOUD = "ORACLE_EXADATA_DATABASE_AT_GOOGLE_CLOUD" + #: A constant which can be used with the technology_type property of a OracleConnection. + #: This constant has a value of "ORACLE_EXADATA_EXASCALE_AT_GOOGLE_CLOUD" + TECHNOLOGY_TYPE_ORACLE_EXADATA_EXASCALE_AT_GOOGLE_CLOUD = "ORACLE_EXADATA_EXASCALE_AT_GOOGLE_CLOUD" + #: A constant which can be used with the technology_type property of a OracleConnection. #: This constant has a value of "ORACLE_AUTONOMOUS_DATABASE_AT_GOOGLE_CLOUD" TECHNOLOGY_TYPE_ORACLE_AUTONOMOUS_DATABASE_AT_GOOGLE_CLOUD = "ORACLE_AUTONOMOUS_DATABASE_AT_GOOGLE_CLOUD" @@ -79,7 +91,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this OracleConnection. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type connection_type: str @@ -113,7 +125,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this OracleConnection. - Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str @@ -177,7 +189,7 @@ def __init__(self, **kwargs): :param technology_type: The value to assign to the technology_type property of this OracleConnection. - Allowed values for this property are: "AMAZON_RDS_ORACLE", "OCI_AUTONOMOUS_DATABASE", "ORACLE_DATABASE", "ORACLE_EXADATA", "ORACLE_EXADATA_DATABASE_AT_AZURE", "ORACLE_AUTONOMOUS_DATABASE_AT_AZURE", "ORACLE_EXADATA_DATABASE_AT_GOOGLE_CLOUD", "ORACLE_AUTONOMOUS_DATABASE_AT_GOOGLE_CLOUD", "ORACLE_EXADATA_DATABASE_AT_AWS", "ORACLE_AUTONOMOUS_DATABASE_AT_AWS", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "AMAZON_RDS_ORACLE", "OCI_AUTONOMOUS_DATABASE", "ORACLE_DATABASE", "ORACLE_EXADATA", "ORACLE_EXADATA_EXASCALE", "ORACLE_EXADATA_DATABASE_AT_AZURE", "ORACLE_EXADATA_EXASCALE_AT_AZURE", "ORACLE_AUTONOMOUS_DATABASE_AT_AZURE", "ORACLE_EXADATA_DATABASE_AT_GOOGLE_CLOUD", "ORACLE_EXADATA_EXASCALE_AT_GOOGLE_CLOUD", "ORACLE_AUTONOMOUS_DATABASE_AT_GOOGLE_CLOUD", "ORACLE_EXADATA_DATABASE_AT_AWS", "ORACLE_AUTONOMOUS_DATABASE_AT_AWS", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type technology_type: str @@ -326,7 +338,7 @@ def technology_type(self): **[Required]** Gets the technology_type of this OracleConnection. The Oracle technology type. - Allowed values for this property are: "AMAZON_RDS_ORACLE", "OCI_AUTONOMOUS_DATABASE", "ORACLE_DATABASE", "ORACLE_EXADATA", "ORACLE_EXADATA_DATABASE_AT_AZURE", "ORACLE_AUTONOMOUS_DATABASE_AT_AZURE", "ORACLE_EXADATA_DATABASE_AT_GOOGLE_CLOUD", "ORACLE_AUTONOMOUS_DATABASE_AT_GOOGLE_CLOUD", "ORACLE_EXADATA_DATABASE_AT_AWS", "ORACLE_AUTONOMOUS_DATABASE_AT_AWS", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "AMAZON_RDS_ORACLE", "OCI_AUTONOMOUS_DATABASE", "ORACLE_DATABASE", "ORACLE_EXADATA", "ORACLE_EXADATA_EXASCALE", "ORACLE_EXADATA_DATABASE_AT_AZURE", "ORACLE_EXADATA_EXASCALE_AT_AZURE", "ORACLE_AUTONOMOUS_DATABASE_AT_AZURE", "ORACLE_EXADATA_DATABASE_AT_GOOGLE_CLOUD", "ORACLE_EXADATA_EXASCALE_AT_GOOGLE_CLOUD", "ORACLE_AUTONOMOUS_DATABASE_AT_GOOGLE_CLOUD", "ORACLE_EXADATA_DATABASE_AT_AWS", "ORACLE_AUTONOMOUS_DATABASE_AT_AWS", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -345,7 +357,7 @@ def technology_type(self, technology_type): :param technology_type: The technology_type of this OracleConnection. :type: str """ - allowed_values = ["AMAZON_RDS_ORACLE", "OCI_AUTONOMOUS_DATABASE", "ORACLE_DATABASE", "ORACLE_EXADATA", "ORACLE_EXADATA_DATABASE_AT_AZURE", "ORACLE_AUTONOMOUS_DATABASE_AT_AZURE", "ORACLE_EXADATA_DATABASE_AT_GOOGLE_CLOUD", "ORACLE_AUTONOMOUS_DATABASE_AT_GOOGLE_CLOUD", "ORACLE_EXADATA_DATABASE_AT_AWS", "ORACLE_AUTONOMOUS_DATABASE_AT_AWS"] + allowed_values = ["AMAZON_RDS_ORACLE", "OCI_AUTONOMOUS_DATABASE", "ORACLE_DATABASE", "ORACLE_EXADATA", "ORACLE_EXADATA_EXASCALE", "ORACLE_EXADATA_DATABASE_AT_AZURE", "ORACLE_EXADATA_EXASCALE_AT_AZURE", "ORACLE_AUTONOMOUS_DATABASE_AT_AZURE", "ORACLE_EXADATA_DATABASE_AT_GOOGLE_CLOUD", "ORACLE_EXADATA_EXASCALE_AT_GOOGLE_CLOUD", "ORACLE_AUTONOMOUS_DATABASE_AT_GOOGLE_CLOUD", "ORACLE_EXADATA_DATABASE_AT_AWS", "ORACLE_AUTONOMOUS_DATABASE_AT_AWS"] if not value_allowed_none_or_none_sentinel(technology_type, allowed_values): technology_type = 'UNKNOWN_ENUM_VALUE' self._technology_type = technology_type @@ -447,7 +459,7 @@ def session_mode(self): The default is DIRECT, except when databaseId is provided and the discovered database relies on the SCAN listener. In this case, the default is REDIRECT. - Deprecated: Defaulting to the REDIRECT session mode will be removed after March 1, 2027. + Deprecated: Defaulting to the REDIRECT session mode will be removed after April 21, 2027. Allowed values for this property are: "DIRECT", "REDIRECT", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -471,7 +483,7 @@ def session_mode(self, session_mode): The default is DIRECT, except when databaseId is provided and the discovered database relies on the SCAN listener. In this case, the default is REDIRECT. - Deprecated: Defaulting to the REDIRECT session mode will be removed after March 1, 2027. + Deprecated: Defaulting to the REDIRECT session mode will be removed after April 21, 2027. :param session_mode: The session_mode of this OracleConnection. diff --git a/src/oci/golden_gate/models/oracle_connection_summary.py b/src/oci/golden_gate/models/oracle_connection_summary.py index 7cceabb893..8540cd188f 100644 --- a/src/oci/golden_gate/models/oracle_connection_summary.py +++ b/src/oci/golden_gate/models/oracle_connection_summary.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this OracleConnectionSummary. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param id: @@ -369,7 +369,7 @@ def session_mode(self): The default is DIRECT, except when databaseId is provided and the discovered database relies on the SCAN listener. In this case, the default is REDIRECT. - Deprecated: Defaulting to the REDIRECT session mode will be removed after March 1, 2027. + Deprecated: Defaulting to the REDIRECT session mode will be removed after April 21, 2027. :return: The session_mode of this OracleConnectionSummary. @@ -390,7 +390,7 @@ def session_mode(self, session_mode): The default is DIRECT, except when databaseId is provided and the discovered database relies on the SCAN listener. In this case, the default is REDIRECT. - Deprecated: Defaulting to the REDIRECT session mode will be removed after March 1, 2027. + Deprecated: Defaulting to the REDIRECT session mode will be removed after April 21, 2027. :param session_mode: The session_mode of this OracleConnectionSummary. diff --git a/src/oci/golden_gate/models/oracle_nosql_connection.py b/src/oci/golden_gate/models/oracle_nosql_connection.py index 8c8f7816e7..5e220ff38b 100644 --- a/src/oci/golden_gate/models/oracle_nosql_connection.py +++ b/src/oci/golden_gate/models/oracle_nosql_connection.py @@ -27,7 +27,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this OracleNosqlConnection. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type connection_type: str @@ -61,7 +61,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this OracleNosqlConnection. - Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str diff --git a/src/oci/golden_gate/models/oracle_nosql_connection_summary.py b/src/oci/golden_gate/models/oracle_nosql_connection_summary.py index dd4cea9006..e00ad9ca84 100644 --- a/src/oci/golden_gate/models/oracle_nosql_connection_summary.py +++ b/src/oci/golden_gate/models/oracle_nosql_connection_summary.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this OracleNosqlConnectionSummary. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param id: diff --git a/src/oci/golden_gate/models/postgresql_connection.py b/src/oci/golden_gate/models/postgresql_connection.py index 872ca388fc..5f06040681 100644 --- a/src/oci/golden_gate/models/postgresql_connection.py +++ b/src/oci/golden_gate/models/postgresql_connection.py @@ -91,7 +91,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this PostgresqlConnection. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type connection_type: str @@ -125,7 +125,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this PostgresqlConnection. - Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str diff --git a/src/oci/golden_gate/models/postgresql_connection_summary.py b/src/oci/golden_gate/models/postgresql_connection_summary.py index ace6e28399..4aa05b8cbf 100644 --- a/src/oci/golden_gate/models/postgresql_connection_summary.py +++ b/src/oci/golden_gate/models/postgresql_connection_summary.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this PostgresqlConnectionSummary. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param id: diff --git a/src/oci/golden_gate/models/redis_connection.py b/src/oci/golden_gate/models/redis_connection.py index 325e0ace41..06621ccd0a 100644 --- a/src/oci/golden_gate/models/redis_connection.py +++ b/src/oci/golden_gate/models/redis_connection.py @@ -51,7 +51,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this RedisConnection. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type connection_type: str @@ -85,7 +85,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this RedisConnection. - Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str diff --git a/src/oci/golden_gate/models/redis_connection_summary.py b/src/oci/golden_gate/models/redis_connection_summary.py index 50f2dab7cc..49d5686f6d 100644 --- a/src/oci/golden_gate/models/redis_connection_summary.py +++ b/src/oci/golden_gate/models/redis_connection_summary.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this RedisConnectionSummary. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param id: diff --git a/src/oci/golden_gate/models/snowflake_connection.py b/src/oci/golden_gate/models/snowflake_connection.py index f9d1911451..dda308f5cd 100644 --- a/src/oci/golden_gate/models/snowflake_connection.py +++ b/src/oci/golden_gate/models/snowflake_connection.py @@ -35,7 +35,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this SnowflakeConnection. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type connection_type: str @@ -69,7 +69,7 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this SnowflakeConnection. - Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str diff --git a/src/oci/golden_gate/models/snowflake_connection_summary.py b/src/oci/golden_gate/models/snowflake_connection_summary.py index b12fe64861..cb315771ab 100644 --- a/src/oci/golden_gate/models/snowflake_connection_summary.py +++ b/src/oci/golden_gate/models/snowflake_connection_summary.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this SnowflakeConnectionSummary. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param id: diff --git a/src/oci/golden_gate/models/update_ai_model_auth_details.py b/src/oci/golden_gate/models/update_ai_model_auth_details.py new file mode 100644 index 0000000000..6dce105e0f --- /dev/null +++ b/src/oci/golden_gate/models/update_ai_model_auth_details.py @@ -0,0 +1,107 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class UpdateAiModelAuthDetails(object): + """ + The information to update authentication details for an AI Model connection. + """ + + #: A constant which can be used with the auth_type property of a UpdateAiModelAuthDetails. + #: This constant has a value of "OCI_GEN_AI" + AUTH_TYPE_OCI_GEN_AI = "OCI_GEN_AI" + + #: A constant which can be used with the auth_type property of a UpdateAiModelAuthDetails. + #: This constant has a value of "API_KEY" + AUTH_TYPE_API_KEY = "API_KEY" + + def __init__(self, **kwargs): + """ + Initializes a new UpdateAiModelAuthDetails object with values from keyword arguments. This class has the following subclasses and if you are using this class as input + to a service operations then you should favor using a subclass over the base class: + + * :class:`~oci.golden_gate.models.UpdateOciGenAiModelAuthDetails` + * :class:`~oci.golden_gate.models.UpdateApiKeyAiModelAuthDetails` + + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param auth_type: + The value to assign to the auth_type property of this UpdateAiModelAuthDetails. + Allowed values for this property are: "OCI_GEN_AI", "API_KEY" + :type auth_type: str + + """ + self.swagger_types = { + 'auth_type': 'str' + } + self.attribute_map = { + 'auth_type': 'authType' + } + self._auth_type = None + + @staticmethod + def get_subtype(object_dictionary): + """ + Given the hash representation of a subtype of this class, + use the info in the hash to return the class of the subtype. + """ + type = object_dictionary['authType'] + + if type == 'OCI_GEN_AI': + return 'UpdateOciGenAiModelAuthDetails' + + if type == 'API_KEY': + return 'UpdateApiKeyAiModelAuthDetails' + else: + return 'UpdateAiModelAuthDetails' + + @property + def auth_type(self): + """ + **[Required]** Gets the auth_type of this UpdateAiModelAuthDetails. + Authentication type used by the AI model connection. + + Allowed values for this property are: "OCI_GEN_AI", "API_KEY" + + + :return: The auth_type of this UpdateAiModelAuthDetails. + :rtype: str + """ + return self._auth_type + + @auth_type.setter + def auth_type(self, auth_type): + """ + Sets the auth_type of this UpdateAiModelAuthDetails. + Authentication type used by the AI model connection. + + + :param auth_type: The auth_type of this UpdateAiModelAuthDetails. + :type: str + """ + allowed_values = ["OCI_GEN_AI", "API_KEY"] + if not value_allowed_none_or_none_sentinel(auth_type, allowed_values): + raise ValueError( + f"Invalid value for `auth_type`, must be None or one of {allowed_values}" + ) + self._auth_type = auth_type + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/golden_gate/models/update_ai_model_connection_details.py b/src/oci/golden_gate/models/update_ai_model_connection_details.py new file mode 100644 index 0000000000..041552dc91 --- /dev/null +++ b/src/oci/golden_gate/models/update_ai_model_connection_details.py @@ -0,0 +1,216 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 + +from .update_connection_details import UpdateConnectionDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class UpdateAiModelConnectionDetails(UpdateConnectionDetails): + """ + The information to update an AI Model Connection. + """ + + def __init__(self, **kwargs): + """ + Initializes a new UpdateAiModelConnectionDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.golden_gate.models.UpdateAiModelConnectionDetails.connection_type` attribute + of this class is ``AI_MODEL`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param connection_type: + The value to assign to the connection_type property of this UpdateAiModelConnectionDetails. + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" + :type connection_type: str + + :param display_name: + The value to assign to the display_name property of this UpdateAiModelConnectionDetails. + :type display_name: str + + :param description: + The value to assign to the description property of this UpdateAiModelConnectionDetails. + :type description: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this UpdateAiModelConnectionDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this UpdateAiModelConnectionDetails. + :type defined_tags: dict(str, dict(str, object)) + + :param vault_id: + The value to assign to the vault_id property of this UpdateAiModelConnectionDetails. + :type vault_id: str + + :param key_id: + The value to assign to the key_id property of this UpdateAiModelConnectionDetails. + :type key_id: str + + :param nsg_ids: + The value to assign to the nsg_ids property of this UpdateAiModelConnectionDetails. + :type nsg_ids: list[str] + + :param subnet_id: + The value to assign to the subnet_id property of this UpdateAiModelConnectionDetails. + :type subnet_id: str + + :param routing_method: + The value to assign to the routing_method property of this UpdateAiModelConnectionDetails. + Allowed values for this property are: "SHARED_SERVICE_ENDPOINT", "SHARED_DEPLOYMENT_ENDPOINT", "DEDICATED_ENDPOINT" + :type routing_method: str + + :param does_use_secret_ids: + The value to assign to the does_use_secret_ids property of this UpdateAiModelConnectionDetails. + :type does_use_secret_ids: bool + + :param security_attributes: + The value to assign to the security_attributes property of this UpdateAiModelConnectionDetails. + :type security_attributes: dict(str, dict(str, object)) + + :param model_key: + The value to assign to the model_key property of this UpdateAiModelConnectionDetails. + :type model_key: str + + :param max_input_chars: + The value to assign to the max_input_chars property of this UpdateAiModelConnectionDetails. + :type max_input_chars: int + + :param auth_details: + The value to assign to the auth_details property of this UpdateAiModelConnectionDetails. + :type auth_details: oci.golden_gate.models.UpdateAiModelAuthDetails + + """ + self.swagger_types = { + 'connection_type': 'str', + 'display_name': 'str', + 'description': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'vault_id': 'str', + 'key_id': 'str', + 'nsg_ids': 'list[str]', + 'subnet_id': 'str', + 'routing_method': 'str', + 'does_use_secret_ids': 'bool', + 'security_attributes': 'dict(str, dict(str, object))', + 'model_key': 'str', + 'max_input_chars': 'int', + 'auth_details': 'UpdateAiModelAuthDetails' + } + self.attribute_map = { + 'connection_type': 'connectionType', + 'display_name': 'displayName', + 'description': 'description', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'vault_id': 'vaultId', + 'key_id': 'keyId', + 'nsg_ids': 'nsgIds', + 'subnet_id': 'subnetId', + 'routing_method': 'routingMethod', + 'does_use_secret_ids': 'doesUseSecretIds', + 'security_attributes': 'securityAttributes', + 'model_key': 'modelKey', + 'max_input_chars': 'maxInputChars', + 'auth_details': 'authDetails' + } + self._connection_type = None + self._display_name = None + self._description = None + self._freeform_tags = None + self._defined_tags = None + self._vault_id = None + self._key_id = None + self._nsg_ids = None + self._subnet_id = None + self._routing_method = None + self._does_use_secret_ids = None + self._security_attributes = None + self._model_key = None + self._max_input_chars = None + self._auth_details = None + self._connection_type = 'AI_MODEL' + + @property + def model_key(self): + """ + Gets the model_key of this UpdateAiModelConnectionDetails. + AI model identifier. + + + :return: The model_key of this UpdateAiModelConnectionDetails. + :rtype: str + """ + return self._model_key + + @model_key.setter + def model_key(self, model_key): + """ + Sets the model_key of this UpdateAiModelConnectionDetails. + AI model identifier. + + + :param model_key: The model_key of this UpdateAiModelConnectionDetails. + :type: str + """ + self._model_key = model_key + + @property + def max_input_chars(self): + """ + Gets the max_input_chars of this UpdateAiModelConnectionDetails. + Maximum number of input characters supported by this AI model connection. + + + :return: The max_input_chars of this UpdateAiModelConnectionDetails. + :rtype: int + """ + return self._max_input_chars + + @max_input_chars.setter + def max_input_chars(self, max_input_chars): + """ + Sets the max_input_chars of this UpdateAiModelConnectionDetails. + Maximum number of input characters supported by this AI model connection. + + + :param max_input_chars: The max_input_chars of this UpdateAiModelConnectionDetails. + :type: int + """ + self._max_input_chars = max_input_chars + + @property + def auth_details(self): + """ + Gets the auth_details of this UpdateAiModelConnectionDetails. + + :return: The auth_details of this UpdateAiModelConnectionDetails. + :rtype: oci.golden_gate.models.UpdateAiModelAuthDetails + """ + return self._auth_details + + @auth_details.setter + def auth_details(self, auth_details): + """ + Sets the auth_details of this UpdateAiModelConnectionDetails. + + :param auth_details: The auth_details of this UpdateAiModelConnectionDetails. + :type: oci.golden_gate.models.UpdateAiModelAuthDetails + """ + self._auth_details = auth_details + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/golden_gate/models/update_amazon_kinesis_connection_details.py b/src/oci/golden_gate/models/update_amazon_kinesis_connection_details.py index 8c44f1b3e4..fcb72a250c 100644 --- a/src/oci/golden_gate/models/update_amazon_kinesis_connection_details.py +++ b/src/oci/golden_gate/models/update_amazon_kinesis_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this UpdateAmazonKinesisConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -130,6 +130,9 @@ def __init__(self, **kwargs): 'endpoint': 'endpoint', 'region': 'region' } + self._redacted_field_paths = [ + ['secret_access_key'], + ] self._connection_type = None self._display_name = None self._description = None @@ -154,6 +157,7 @@ def access_key_id(self): """ Gets the access_key_id of this UpdateAmazonKinesisConnectionDetails. Access key ID to access the Amazon Kinesis. + Note: Despite the \"Id\" suffix, this value is not an OCI OCID. :return: The access_key_id of this UpdateAmazonKinesisConnectionDetails. @@ -166,6 +170,7 @@ def access_key_id(self, access_key_id): """ Sets the access_key_id of this UpdateAmazonKinesisConnectionDetails. Access key ID to access the Amazon Kinesis. + Note: Despite the \"Id\" suffix, this value is not an OCI OCID. :param access_key_id: The access_key_id of this UpdateAmazonKinesisConnectionDetails. @@ -178,7 +183,9 @@ def secret_access_key(self): """ Gets the secret_access_key of this UpdateAmazonKinesisConnectionDetails. Secret access key to access the Amazon Kinesis. - Deprecated: This field is deprecated and replaced by \"secretAccessKeySecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"secretAccessKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The secret_access_key of this UpdateAmazonKinesisConnectionDetails. @@ -191,7 +198,9 @@ def secret_access_key(self, secret_access_key): """ Sets the secret_access_key of this UpdateAmazonKinesisConnectionDetails. Secret access key to access the Amazon Kinesis. - Deprecated: This field is deprecated and replaced by \"secretAccessKeySecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"secretAccessKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param secret_access_key: The secret_access_key of this UpdateAmazonKinesisConnectionDetails. @@ -286,7 +295,9 @@ def region(self, region): self._region = region def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['secret_access_key']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_amazon_redshift_connection_details.py b/src/oci/golden_gate/models/update_amazon_redshift_connection_details.py index 0c272e03f8..f97c11c7d1 100644 --- a/src/oci/golden_gate/models/update_amazon_redshift_connection_details.py +++ b/src/oci/golden_gate/models/update_amazon_redshift_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this UpdateAmazonRedshiftConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -124,6 +124,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret_id': 'passwordSecretId' } + self._redacted_field_paths = [ + ['password'], + ] self._connection_type = None self._display_name = None self._description = None @@ -202,7 +205,9 @@ def password(self): Gets the password of this UpdateAmazonRedshiftConnectionDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The password of this UpdateAmazonRedshiftConnectionDetails. @@ -216,7 +221,9 @@ def password(self, password): Sets the password of this UpdateAmazonRedshiftConnectionDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param password: The password of this UpdateAmazonRedshiftConnectionDetails. @@ -261,7 +268,9 @@ def password_secret_id(self, password_secret_id): self._password_secret_id = password_secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_amazon_s3_connection_details.py b/src/oci/golden_gate/models/update_amazon_s3_connection_details.py index d14e5648d8..144c1591c9 100644 --- a/src/oci/golden_gate/models/update_amazon_s3_connection_details.py +++ b/src/oci/golden_gate/models/update_amazon_s3_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this UpdateAmazonS3ConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -130,6 +130,9 @@ def __init__(self, **kwargs): 'endpoint': 'endpoint', 'region': 'region' } + self._redacted_field_paths = [ + ['secret_access_key'], + ] self._connection_type = None self._display_name = None self._description = None @@ -154,7 +157,7 @@ def access_key_id(self): """ Gets the access_key_id of this UpdateAmazonS3ConnectionDetails. Access key ID to access the Amazon S3 bucket. - e.g.: \"this-is-not-the-secret\" + Note: Despite the \"Id\" suffix, this value is not an OCI OCID. :return: The access_key_id of this UpdateAmazonS3ConnectionDetails. @@ -167,7 +170,7 @@ def access_key_id(self, access_key_id): """ Sets the access_key_id of this UpdateAmazonS3ConnectionDetails. Access key ID to access the Amazon S3 bucket. - e.g.: \"this-is-not-the-secret\" + Note: Despite the \"Id\" suffix, this value is not an OCI OCID. :param access_key_id: The access_key_id of this UpdateAmazonS3ConnectionDetails. @@ -180,8 +183,10 @@ def secret_access_key(self): """ Gets the secret_access_key of this UpdateAmazonS3ConnectionDetails. Secret access key to access the Amazon S3 bucket. - e.g.: \"this-is-not-the-secret\" - Deprecated: This field is deprecated and replaced by \"secretAccessKeySecretId\". This field will be removed after February 15 2026. + + Deprecated: This field is deprecated and replaced by \"secretAccessKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The secret_access_key of this UpdateAmazonS3ConnectionDetails. @@ -194,8 +199,10 @@ def secret_access_key(self, secret_access_key): """ Sets the secret_access_key of this UpdateAmazonS3ConnectionDetails. Secret access key to access the Amazon S3 bucket. - e.g.: \"this-is-not-the-secret\" - Deprecated: This field is deprecated and replaced by \"secretAccessKeySecretId\". This field will be removed after February 15 2026. + + Deprecated: This field is deprecated and replaced by \"secretAccessKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param secret_access_key: The secret_access_key of this UpdateAmazonS3ConnectionDetails. @@ -290,7 +297,9 @@ def region(self, region): self._region = region def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['secret_access_key']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_amazon_s3_iceberg_storage_details.py b/src/oci/golden_gate/models/update_amazon_s3_iceberg_storage_details.py index f3bfd8613c..4611e68c18 100644 --- a/src/oci/golden_gate/models/update_amazon_s3_iceberg_storage_details.py +++ b/src/oci/golden_gate/models/update_amazon_s3_iceberg_storage_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .update_iceberg_storage_details import UpdateIcebergStorageDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param storage_type: The value to assign to the storage_type property of this UpdateAmazonS3IcebergStorageDetails. - Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE" + Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", "NONE", "OCI_OBJECT_STORAGE_S3_API" :type storage_type: str :param scheme_type: @@ -75,6 +75,9 @@ def __init__(self, **kwargs): 'region': 'region', 'bucket': 'bucket' } + self._redacted_field_paths = [ + ['secret_access_key'], + ] self._storage_type = None self._scheme_type = None self._endpoint = None @@ -140,6 +143,7 @@ def access_key_id(self): """ Gets the access_key_id of this UpdateAmazonS3IcebergStorageDetails. Access key ID to access the Amazon S3 bucket. + Note: Despite the \"Id\" suffix, this value is not an OCI OCID. :return: The access_key_id of this UpdateAmazonS3IcebergStorageDetails. @@ -152,6 +156,7 @@ def access_key_id(self, access_key_id): """ Sets the access_key_id of this UpdateAmazonS3IcebergStorageDetails. Access key ID to access the Amazon S3 bucket. + Note: Despite the \"Id\" suffix, this value is not an OCI OCID. :param access_key_id: The access_key_id of this UpdateAmazonS3IcebergStorageDetails. @@ -192,8 +197,10 @@ def secret_access_key(self): """ Gets the secret_access_key of this UpdateAmazonS3IcebergStorageDetails. Secret access key to access the Amazon S3 bucket. - e.g.: \"this-is-not-the-secret\" - Deprecated: This field is deprecated and replaced by \"secretAccessKeySecretId\". This field will be removed after February 15 2026. + + Deprecated: This field is deprecated and replaced by \"secretAccessKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The secret_access_key of this UpdateAmazonS3IcebergStorageDetails. @@ -206,8 +213,10 @@ def secret_access_key(self, secret_access_key): """ Sets the secret_access_key of this UpdateAmazonS3IcebergStorageDetails. Secret access key to access the Amazon S3 bucket. - e.g.: \"this-is-not-the-secret\" - Deprecated: This field is deprecated and replaced by \"secretAccessKeySecretId\". This field will be removed after February 15 2026. + + Deprecated: This field is deprecated and replaced by \"secretAccessKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param secret_access_key: The secret_access_key of this UpdateAmazonS3IcebergStorageDetails. @@ -266,7 +275,9 @@ def bucket(self, bucket): self._bucket = bucket def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['secret_access_key']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_api_key_ai_model_auth_details.py b/src/oci/golden_gate/models/update_api_key_ai_model_auth_details.py new file mode 100644 index 0000000000..8a8031b9db --- /dev/null +++ b/src/oci/golden_gate/models/update_api_key_ai_model_auth_details.py @@ -0,0 +1,150 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 + +from .update_ai_model_auth_details import UpdateAiModelAuthDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class UpdateApiKeyAiModelAuthDetails(UpdateAiModelAuthDetails): + """ + The information to update API key authentication details for an AI Model connection. + """ + + def __init__(self, **kwargs): + """ + Initializes a new UpdateApiKeyAiModelAuthDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.golden_gate.models.UpdateApiKeyAiModelAuthDetails.auth_type` attribute + of this class is ``API_KEY`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param auth_type: + The value to assign to the auth_type property of this UpdateApiKeyAiModelAuthDetails. + Allowed values for this property are: "OCI_GEN_AI", "API_KEY" + :type auth_type: str + + :param base_url: + The value to assign to the base_url property of this UpdateApiKeyAiModelAuthDetails. + :type base_url: str + + :param api_key: + The value to assign to the api_key property of this UpdateApiKeyAiModelAuthDetails. + :type api_key: str + + :param api_key_secret_id: + The value to assign to the api_key_secret_id property of this UpdateApiKeyAiModelAuthDetails. + :type api_key_secret_id: str + + """ + self.swagger_types = { + 'auth_type': 'str', + 'base_url': 'str', + 'api_key': 'str', + 'api_key_secret_id': 'str' + } + self.attribute_map = { + 'auth_type': 'authType', + 'base_url': 'baseUrl', + 'api_key': 'apiKey', + 'api_key_secret_id': 'apiKeySecretId' + } + self._auth_type = None + self._base_url = None + self._api_key = None + self._api_key_secret_id = None + self._auth_type = 'API_KEY' + + @property + def base_url(self): + """ + Gets the base_url of this UpdateApiKeyAiModelAuthDetails. + Base URL of the AI model endpoint. + If not specified, the default base URL for the selected AI provider will be used. + + + :return: The base_url of this UpdateApiKeyAiModelAuthDetails. + :rtype: str + """ + return self._base_url + + @base_url.setter + def base_url(self, base_url): + """ + Sets the base_url of this UpdateApiKeyAiModelAuthDetails. + Base URL of the AI model endpoint. + If not specified, the default base URL for the selected AI provider will be used. + + + :param base_url: The base_url of this UpdateApiKeyAiModelAuthDetails. + :type: str + """ + self._base_url = base_url + + @property + def api_key(self): + """ + Gets the api_key of this UpdateApiKeyAiModelAuthDetails. + API key for the AI model connection. + Deprecated: This field is deprecated and replaced by \"apiKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + + :return: The api_key of this UpdateApiKeyAiModelAuthDetails. + :rtype: str + """ + return self._api_key + + @api_key.setter + def api_key(self, api_key): + """ + Sets the api_key of this UpdateApiKeyAiModelAuthDetails. + API key for the AI model connection. + Deprecated: This field is deprecated and replaced by \"apiKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + + :param api_key: The api_key of this UpdateApiKeyAiModelAuthDetails. + :type: str + """ + self._api_key = api_key + + @property + def api_key_secret_id(self): + """ + Gets the api_key_secret_id of this UpdateApiKeyAiModelAuthDetails. + API key secret OCID for the AI model connection. + + + :return: The api_key_secret_id of this UpdateApiKeyAiModelAuthDetails. + :rtype: str + """ + return self._api_key_secret_id + + @api_key_secret_id.setter + def api_key_secret_id(self, api_key_secret_id): + """ + Sets the api_key_secret_id of this UpdateApiKeyAiModelAuthDetails. + API key secret OCID for the AI model connection. + + + :param api_key_secret_id: The api_key_secret_id of this UpdateApiKeyAiModelAuthDetails. + :type: str + """ + self._api_key_secret_id = api_key_secret_id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/golden_gate/models/update_azure_data_lake_storage_connection_details.py b/src/oci/golden_gate/models/update_azure_data_lake_storage_connection_details.py index aed5aa64fc..aa0862faa9 100644 --- a/src/oci/golden_gate/models/update_azure_data_lake_storage_connection_details.py +++ b/src/oci/golden_gate/models/update_azure_data_lake_storage_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this UpdateAzureDataLakeStorageConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -172,6 +172,11 @@ def __init__(self, **kwargs): 'endpoint': 'endpoint', 'azure_authority_host': 'azureAuthorityHost' } + self._redacted_field_paths = [ + ['account_key'], + ['sas_token'], + ['client_secret'], + ] self._connection_type = None self._display_name = None self._description = None @@ -252,7 +257,9 @@ def account_key(self): Gets the account_key of this UpdateAzureDataLakeStorageConnectionDetails. Azure storage account key. This property is required when 'authenticationType' is set to 'SHARED_KEY'. e.g.: pa3WbhVATzj56xD4DH1VjOUhApRGEGHvOo58eQJVWIzX+j8j4CUVFcTjpIqDSRaSa1Wo2LbWY5at+AStEgLOIQ== - Deprecated: This field is deprecated and replaced by \"accountKeySecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"accountKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The account_key of this UpdateAzureDataLakeStorageConnectionDetails. @@ -266,7 +273,9 @@ def account_key(self, account_key): Sets the account_key of this UpdateAzureDataLakeStorageConnectionDetails. Azure storage account key. This property is required when 'authenticationType' is set to 'SHARED_KEY'. e.g.: pa3WbhVATzj56xD4DH1VjOUhApRGEGHvOo58eQJVWIzX+j8j4CUVFcTjpIqDSRaSa1Wo2LbWY5at+AStEgLOIQ== - Deprecated: This field is deprecated and replaced by \"accountKeySecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"accountKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param account_key: The account_key of this UpdateAzureDataLakeStorageConnectionDetails. @@ -311,7 +320,9 @@ def sas_token(self): Credential that uses a shared access signature (SAS) to authenticate to an Azure Service. This property is required when 'authenticationType' is set to 'SHARED_ACCESS_SIGNATURE'. e.g.: ?sv=2020-06-08&ss=bfqt&srt=sco&sp=rwdlacupyx&se=2020-09-10T20:27:28Z&st=2022-08-05T12:27:28Z&spr=https&sig=C1IgHsiLBmTSStYkXXGLTP8it0xBrArcgCqOsZbXwIQ%3D - Deprecated: This field is deprecated and replaced by \"sasTokenSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"sasTokenSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The sas_token of this UpdateAzureDataLakeStorageConnectionDetails. @@ -326,7 +337,9 @@ def sas_token(self, sas_token): Credential that uses a shared access signature (SAS) to authenticate to an Azure Service. This property is required when 'authenticationType' is set to 'SHARED_ACCESS_SIGNATURE'. e.g.: ?sv=2020-06-08&ss=bfqt&srt=sco&sp=rwdlacupyx&se=2020-09-10T20:27:28Z&st=2022-08-05T12:27:28Z&spr=https&sig=C1IgHsiLBmTSStYkXXGLTP8it0xBrArcgCqOsZbXwIQ%3D - Deprecated: This field is deprecated and replaced by \"sasTokenSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"sasTokenSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param sas_token: The sas_token of this UpdateAzureDataLakeStorageConnectionDetails. @@ -422,7 +435,9 @@ def client_secret(self): Gets the client_secret of this UpdateAzureDataLakeStorageConnectionDetails. Azure client secret (aka application password) for authentication. This property is required when 'authenticationType' is set to 'AZURE_ACTIVE_DIRECTORY'. e.g.: dO29Q~F5-VwnA.lZdd11xFF_t5NAXCaGwDl9NbT1 - Deprecated: This field is deprecated and replaced by \"clientSecretSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"clientSecretSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The client_secret of this UpdateAzureDataLakeStorageConnectionDetails. @@ -436,7 +451,9 @@ def client_secret(self, client_secret): Sets the client_secret of this UpdateAzureDataLakeStorageConnectionDetails. Azure client secret (aka application password) for authentication. This property is required when 'authenticationType' is set to 'AZURE_ACTIVE_DIRECTORY'. e.g.: dO29Q~F5-VwnA.lZdd11xFF_t5NAXCaGwDl9NbT1 - Deprecated: This field is deprecated and replaced by \"clientSecretSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"clientSecretSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param client_secret: The client_secret of this UpdateAzureDataLakeStorageConnectionDetails. @@ -533,7 +550,11 @@ def azure_authority_host(self, azure_authority_host): self._azure_authority_host = azure_authority_host def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['account_key']) + redact_password_field(as_dict, ['sas_token']) + redact_password_field(as_dict, ['client_secret']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_azure_data_lake_storage_iceberg_storage_details.py b/src/oci/golden_gate/models/update_azure_data_lake_storage_iceberg_storage_details.py index 476b0d78a5..41202e88c5 100644 --- a/src/oci/golden_gate/models/update_azure_data_lake_storage_iceberg_storage_details.py +++ b/src/oci/golden_gate/models/update_azure_data_lake_storage_iceberg_storage_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .update_iceberg_storage_details import UpdateIcebergStorageDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param storage_type: The value to assign to the storage_type property of this UpdateAzureDataLakeStorageIcebergStorageDetails. - Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE" + Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", "NONE", "OCI_OBJECT_STORAGE_S3_API" :type storage_type: str :param account_name: @@ -63,6 +63,9 @@ def __init__(self, **kwargs): 'account_key': 'accountKey', 'endpoint': 'endpoint' } + self._redacted_field_paths = [ + ['account_key'], + ] self._storage_type = None self._account_name = None self._container = None @@ -153,7 +156,9 @@ def account_key(self): Gets the account_key of this UpdateAzureDataLakeStorageIcebergStorageDetails. Azure storage account key. This property is required when 'authenticationType' is set to 'SHARED_KEY'. e.g.: pa3WbhVATzj56xD4DH1VjOUhApRGEGHvOo58eQJVWIzX+j8j4CUVFcTjpIqDSRaSa1Wo2LbWY5at+AStEgLOIQ== - Deprecated: This field is deprecated and replaced by \"accountKeySecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"accountKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The account_key of this UpdateAzureDataLakeStorageIcebergStorageDetails. @@ -167,7 +172,9 @@ def account_key(self, account_key): Sets the account_key of this UpdateAzureDataLakeStorageIcebergStorageDetails. Azure storage account key. This property is required when 'authenticationType' is set to 'SHARED_KEY'. e.g.: pa3WbhVATzj56xD4DH1VjOUhApRGEGHvOo58eQJVWIzX+j8j4CUVFcTjpIqDSRaSa1Wo2LbWY5at+AStEgLOIQ== - Deprecated: This field is deprecated and replaced by \"accountKeySecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"accountKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param account_key: The account_key of this UpdateAzureDataLakeStorageIcebergStorageDetails. @@ -202,7 +209,9 @@ def endpoint(self, endpoint): self._endpoint = endpoint def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['account_key']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_azure_synapse_connection_details.py b/src/oci/golden_gate/models/update_azure_synapse_connection_details.py index 3ff2d45917..55b92e8448 100644 --- a/src/oci/golden_gate/models/update_azure_synapse_connection_details.py +++ b/src/oci/golden_gate/models/update_azure_synapse_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this UpdateAzureSynapseConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -124,6 +124,9 @@ def __init__(self, **kwargs): 'password': 'password', 'password_secret_id': 'passwordSecretId' } + self._redacted_field_paths = [ + ['password'], + ] self._connection_type = None self._display_name = None self._description = None @@ -202,7 +205,9 @@ def password(self): Gets the password of this UpdateAzureSynapseConnectionDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The password of this UpdateAzureSynapseConnectionDetails. @@ -216,7 +221,9 @@ def password(self, password): Sets the password of this UpdateAzureSynapseConnectionDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param password: The password of this UpdateAzureSynapseConnectionDetails. @@ -261,7 +268,9 @@ def password_secret_id(self, password_secret_id): self._password_secret_id = password_secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_connection_details.py b/src/oci/golden_gate/models/update_connection_details.py index 4a9398308a..5e167a6c49 100644 --- a/src/oci/golden_gate/models/update_connection_details.py +++ b/src/oci/golden_gate/models/update_connection_details.py @@ -131,6 +131,10 @@ class UpdateConnectionDetails(object): #: This constant has a value of "ICEBERG" CONNECTION_TYPE_ICEBERG = "ICEBERG" + #: A constant which can be used with the connection_type property of a UpdateConnectionDetails. + #: This constant has a value of "AI_MODEL" + CONNECTION_TYPE_AI_MODEL = "AI_MODEL" + #: A constant which can be used with the routing_method property of a UpdateConnectionDetails. #: This constant has a value of "SHARED_SERVICE_ENDPOINT" ROUTING_METHOD_SHARED_SERVICE_ENDPOINT = "SHARED_SERVICE_ENDPOINT" @@ -157,6 +161,7 @@ def __init__(self, **kwargs): * :class:`~oci.golden_gate.models.UpdateMongoDbConnectionDetails` * :class:`~oci.golden_gate.models.UpdateGoogleCloudStorageConnectionDetails` * :class:`~oci.golden_gate.models.UpdateOracleAiDataPlatformConnectionDetails` + * :class:`~oci.golden_gate.models.UpdateAiModelConnectionDetails` * :class:`~oci.golden_gate.models.UpdateMicrosoftFabricConnectionDetails` * :class:`~oci.golden_gate.models.UpdatePostgresqlConnectionDetails` * :class:`~oci.golden_gate.models.UpdateMicrosoftSqlserverConnectionDetails` @@ -182,7 +187,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this UpdateConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -307,6 +312,9 @@ def get_subtype(object_dictionary): if type == 'ORACLE_AI_DATA_PLATFORM': return 'UpdateOracleAiDataPlatformConnectionDetails' + if type == 'AI_MODEL': + return 'UpdateAiModelConnectionDetails' + if type == 'MICROSOFT_FABRIC': return 'UpdateMicrosoftFabricConnectionDetails' @@ -375,7 +383,7 @@ def connection_type(self): Gets the connection_type of this UpdateConnectionDetails. The connection type. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :return: The connection_type of this UpdateConnectionDetails. @@ -393,7 +401,7 @@ def connection_type(self, connection_type): :param connection_type: The connection_type of this UpdateConnectionDetails. :type: str """ - allowed_values = ["GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG"] + allowed_values = ["GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL"] if not value_allowed_none_or_none_sentinel(connection_type, allowed_values): raise ValueError( f"Invalid value for `connection_type`, must be None or one of {allowed_values}" @@ -510,9 +518,15 @@ def defined_tags(self, defined_tags): def vault_id(self): """ Gets the vault_id of this UpdateConnectionDetails. - Refers to the customer's vault OCID. - If provided, it references a vault where GoldenGate can manage secrets. Customers must add policies to permit GoldenGate - to manage secrets contained within this vault. + References the OCI Vault that contains the customer-managed encryption key identified by `keyId`. + + Deprecated: This field is deprecated for GoldenGate connections. Sensitive attributes should be provided using the + corresponding Secret OCID attributes of the connection (for example, `passwordSecretId`) instead of plain-text + attributes encrypted with `vaultId` and `keyId`. This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + This field is applicable only when `doesUseSecretIds` is set to `false`. + If `vaultId` is provided, `keyId` must also be provided. :return: The vault_id of this UpdateConnectionDetails. @@ -524,9 +538,15 @@ def vault_id(self): def vault_id(self, vault_id): """ Sets the vault_id of this UpdateConnectionDetails. - Refers to the customer's vault OCID. - If provided, it references a vault where GoldenGate can manage secrets. Customers must add policies to permit GoldenGate - to manage secrets contained within this vault. + References the OCI Vault that contains the customer-managed encryption key identified by `keyId`. + + Deprecated: This field is deprecated for GoldenGate connections. Sensitive attributes should be provided using the + corresponding Secret OCID attributes of the connection (for example, `passwordSecretId`) instead of plain-text + attributes encrypted with `vaultId` and `keyId`. This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + This field is applicable only when `doesUseSecretIds` is set to `false`. + If `vaultId` is provided, `keyId` must also be provided. :param vault_id: The vault_id of this UpdateConnectionDetails. @@ -538,8 +558,17 @@ def vault_id(self, vault_id): def key_id(self): """ Gets the key_id of this UpdateConnectionDetails. - Refers to the customer's master key OCID. - If provided, it references a key to manage secrets. Customers must add policies to permit GoldenGate to use this key. + References the OCI Vault key in the OCI Vault identified by `vaultId`. + + Deprecated: This field is deprecated for GoldenGate connections. Sensitive attributes should be provided using the + corresponding Secret OCID attributes of the connection (for example, `passwordSecretId`) instead of plain-text + attributes encrypted with `vaultId` and `keyId`. This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + The GoldenGate service uses this key to encrypt sensitive information (for example, `password`) that is provided in plain-text connection attributes through the API. + This field is applicable only when `doesUseSecretIds` is set to `false`. If both `vaultId` and `keyId` are provided, + the GoldenGate service uses the specified customer-managed key to encrypt the sensitive data. + If neither `vaultId` nor `keyId` is provided, the GoldenGate service uses Oracle-managed encryption keys. :return: The key_id of this UpdateConnectionDetails. @@ -551,8 +580,17 @@ def key_id(self): def key_id(self, key_id): """ Sets the key_id of this UpdateConnectionDetails. - Refers to the customer's master key OCID. - If provided, it references a key to manage secrets. Customers must add policies to permit GoldenGate to use this key. + References the OCI Vault key in the OCI Vault identified by `vaultId`. + + Deprecated: This field is deprecated for GoldenGate connections. Sensitive attributes should be provided using the + corresponding Secret OCID attributes of the connection (for example, `passwordSecretId`) instead of plain-text + attributes encrypted with `vaultId` and `keyId`. This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + The GoldenGate service uses this key to encrypt sensitive information (for example, `password`) that is provided in plain-text connection attributes through the API. + This field is applicable only when `doesUseSecretIds` is set to `false`. If both `vaultId` and `keyId` are provided, + the GoldenGate service uses the specified customer-managed key to encrypt the sensitive data. + If neither `vaultId` nor `keyId` is provided, the GoldenGate service uses Oracle-managed encryption keys. :param key_id: The key_id of this UpdateConnectionDetails. @@ -617,9 +655,13 @@ def routing_method(self): """ Gets the routing_method of this UpdateConnectionDetails. Controls the network traffic direction to the target: - SHARED_SERVICE_ENDPOINT: Traffic flows through the Goldengate Service's network to public hosts. Cannot be used for private targets. SHARED_DEPLOYMENT_ENDPOINT: Network traffic flows from the assigned deployment's private endpoint through the deployment's subnet. DEDICATED_ENDPOINT: A dedicated private endpoint is created in the target VCN subnet for the connection. The subnetId is required when DEDICATED_ENDPOINT networking is selected. + SHARED_SERVICE_ENDPOINT: Traffic flows through the Goldengate Service's network to public hosts. Cannot be used for private targets. + + Deprecated: SHARED_SERVICE_ENDPOINT is deprecated. Use another supported routingMethod value, or update existing connections to use a supported routing method. + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate Allowed values for this property are: "SHARED_SERVICE_ENDPOINT", "SHARED_DEPLOYMENT_ENDPOINT", "DEDICATED_ENDPOINT" @@ -634,9 +676,13 @@ def routing_method(self, routing_method): """ Sets the routing_method of this UpdateConnectionDetails. Controls the network traffic direction to the target: - SHARED_SERVICE_ENDPOINT: Traffic flows through the Goldengate Service's network to public hosts. Cannot be used for private targets. SHARED_DEPLOYMENT_ENDPOINT: Network traffic flows from the assigned deployment's private endpoint through the deployment's subnet. DEDICATED_ENDPOINT: A dedicated private endpoint is created in the target VCN subnet for the connection. The subnetId is required when DEDICATED_ENDPOINT networking is selected. + SHARED_SERVICE_ENDPOINT: Traffic flows through the Goldengate Service's network to public hosts. Cannot be used for private targets. + + Deprecated: SHARED_SERVICE_ENDPOINT is deprecated. Use another supported routingMethod value, or update existing connections to use a supported routing method. + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param routing_method: The routing_method of this UpdateConnectionDetails. @@ -655,6 +701,21 @@ def does_use_secret_ids(self): Gets the does_use_secret_ids of this UpdateConnectionDetails. Indicates that sensitive attributes are provided via Secrets. + Deprecated: This field is deprecated. Sensitive attributes should be provided using the corresponding Secret OCID + attributes of the connection (for example, `passwordSecretId`) instead of plain-text attributes. This change follows + the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + When set to `true`, all sensitive information must be provided as OCI Vault secrets using the corresponding + `*SecretId` attributes of the connection (for example, `passwordSecretId`). Plain-text sensitive attributes (for example, `password`) must not be used. + This ensures that sensitive information remains stored and managed in the customer's OCI Vault rather than by the GoldenGate service. + + When set to false, sensitive information must be provided in the corresponding plain-text attributes (for example, `password`) rather than in secret OCID attributes. + In this mode, the sensitive information is stored by the GoldenGate service. If `vaultId` and `keyId` are not specified, + the GoldenGate service uses Oracle-managed encryption keys to encrypt the stored data. + + If `vaultId` and `keyId` are provided, the specified customer-managed key is used. + :return: The does_use_secret_ids of this UpdateConnectionDetails. :rtype: bool @@ -667,6 +728,21 @@ def does_use_secret_ids(self, does_use_secret_ids): Sets the does_use_secret_ids of this UpdateConnectionDetails. Indicates that sensitive attributes are provided via Secrets. + Deprecated: This field is deprecated. Sensitive attributes should be provided using the corresponding Secret OCID + attributes of the connection (for example, `passwordSecretId`) instead of plain-text attributes. This change follows + the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + When set to `true`, all sensitive information must be provided as OCI Vault secrets using the corresponding + `*SecretId` attributes of the connection (for example, `passwordSecretId`). Plain-text sensitive attributes (for example, `password`) must not be used. + This ensures that sensitive information remains stored and managed in the customer's OCI Vault rather than by the GoldenGate service. + + When set to false, sensitive information must be provided in the corresponding plain-text attributes (for example, `password`) rather than in secret OCID attributes. + In this mode, the sensitive information is stored by the GoldenGate service. If `vaultId` and `keyId` are not specified, + the GoldenGate service uses Oracle-managed encryption keys to encrypt the stored data. + + If `vaultId` and `keyId` are provided, the specified customer-managed key is used. + :param does_use_secret_ids: The does_use_secret_ids of this UpdateConnectionDetails. :type: bool diff --git a/src/oci/golden_gate/models/update_database_registration_details.py b/src/oci/golden_gate/models/update_database_registration_details.py index b588301885..862eafaffd 100644 --- a/src/oci/golden_gate/models/update_database_registration_details.py +++ b/src/oci/golden_gate/models/update_database_registration_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -100,6 +100,9 @@ def __init__(self, **kwargs): 'wallet': 'wallet', 'alias_name': 'aliasName' } + self._redacted_field_paths = [ + ['password'], + ] self._display_name = None self._description = None self._freeform_tags = None @@ -276,7 +279,9 @@ def password(self): Gets the password of this UpdateDatabaseRegistrationDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The password of this UpdateDatabaseRegistrationDetails. @@ -290,7 +295,9 @@ def password(self, password): Sets the password of this UpdateDatabaseRegistrationDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param password: The password of this UpdateDatabaseRegistrationDetails. @@ -365,7 +372,9 @@ def wallet(self): Gets the wallet of this UpdateDatabaseRegistrationDetails. The wallet contents Oracle GoldenGate uses to make connections to a database. This attribute is expected to be base64 encoded. - Deprecated: This field is deprecated and replaced by \"walletSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"walletSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The wallet of this UpdateDatabaseRegistrationDetails. @@ -379,7 +388,9 @@ def wallet(self, wallet): Sets the wallet of this UpdateDatabaseRegistrationDetails. The wallet contents Oracle GoldenGate uses to make connections to a database. This attribute is expected to be base64 encoded. - Deprecated: This field is deprecated and replaced by \"walletSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"walletSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param wallet: The wallet of this UpdateDatabaseRegistrationDetails. @@ -412,7 +423,9 @@ def alias_name(self, alias_name): self._alias_name = alias_name def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_databricks_connection_details.py b/src/oci/golden_gate/models/update_databricks_connection_details.py index 3888dba47c..4e2809b202 100644 --- a/src/oci/golden_gate/models/update_databricks_connection_details.py +++ b/src/oci/golden_gate/models/update_databricks_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this UpdateDatabricksConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -148,6 +148,10 @@ def __init__(self, **kwargs): 'client_secret_secret_id': 'clientSecretSecretId', 'storage_credential_name': 'storageCredentialName' } + self._redacted_field_paths = [ + ['password'], + ['client_secret'], + ] self._connection_type = None self._display_name = None self._description = None @@ -226,7 +230,9 @@ def password(self): Gets the password of this UpdateDatabricksConnectionDetails. The password used to connect to Databricks. Only applicable for authenticationType == PERSONAL_ACCESS_TOKEN. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The password of this UpdateDatabricksConnectionDetails. @@ -240,7 +246,9 @@ def password(self, password): Sets the password of this UpdateDatabricksConnectionDetails. The password used to connect to Databricks. Only applicable for authenticationType == PERSONAL_ACCESS_TOKEN. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param password: The password of this UpdateDatabricksConnectionDetails. @@ -307,7 +315,9 @@ def client_secret(self): """ Gets the client_secret of this UpdateDatabricksConnectionDetails. OAuth client secret, only applicable for authenticationType == OAUTH_M2M - Deprecated: This field is deprecated and replaced by \"clientSecretSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"clientSecretSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The client_secret of this UpdateDatabricksConnectionDetails. @@ -320,7 +330,9 @@ def client_secret(self, client_secret): """ Sets the client_secret of this UpdateDatabricksConnectionDetails. OAuth client secret, only applicable for authenticationType == OAUTH_M2M - Deprecated: This field is deprecated and replaced by \"clientSecretSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"clientSecretSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param client_secret: The client_secret of this UpdateDatabricksConnectionDetails. @@ -385,7 +397,10 @@ def storage_credential_name(self, storage_credential_name): self._storage_credential_name = storage_credential_name def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['client_secret']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_db2_connection_details.py b/src/oci/golden_gate/models/update_db2_connection_details.py index 2b065f4c37..4fdb06aa5e 100644 --- a/src/oci/golden_gate/models/update_db2_connection_details.py +++ b/src/oci/golden_gate/models/update_db2_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this UpdateDb2ConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -178,6 +178,9 @@ def __init__(self, **kwargs): 'ssl_client_keystash_secret_id': 'sslClientKeystashSecretId', 'ssl_server_certificate': 'sslServerCertificate' } + self._redacted_field_paths = [ + ['password'], + ] self._connection_type = None self._display_name = None self._description = None @@ -308,7 +311,9 @@ def password(self): """ Gets the password of this UpdateDb2ConnectionDetails. The password Oracle GoldenGate uses to connect the associated DB2 database. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The password of this UpdateDb2ConnectionDetails. @@ -321,7 +326,9 @@ def password(self, password): """ Sets the password of this UpdateDb2ConnectionDetails. The password Oracle GoldenGate uses to connect the associated DB2 database. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param password: The password of this UpdateDb2ConnectionDetails. @@ -418,7 +425,9 @@ def ssl_client_keystoredb(self): The base64 encoded keystore file created at the client containing the server certificate / CA root certificate. This property is not supported for IBM Db2 for i, as client TLS mode is not available. - Deprecated: This field is deprecated and replaced by \"sslClientKeystoredbSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"sslClientKeystoredbSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The ssl_client_keystoredb of this UpdateDb2ConnectionDetails. @@ -433,7 +442,9 @@ def ssl_client_keystoredb(self, ssl_client_keystoredb): The base64 encoded keystore file created at the client containing the server certificate / CA root certificate. This property is not supported for IBM Db2 for i, as client TLS mode is not available. - Deprecated: This field is deprecated and replaced by \"sslClientKeystoredbSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"sslClientKeystoredbSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param ssl_client_keystoredb: The ssl_client_keystoredb of this UpdateDb2ConnectionDetails. @@ -484,7 +495,9 @@ def ssl_client_keystash(self): The base64 encoded keystash file which contains the encrypted password to the key database file. This property is not supported for IBM Db2 for i, as client TLS mode is not available. - Deprecated: This field is deprecated and replaced by \"sslClientKeystashSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"sslClientKeystashSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The ssl_client_keystash of this UpdateDb2ConnectionDetails. @@ -499,7 +512,9 @@ def ssl_client_keystash(self, ssl_client_keystash): The base64 encoded keystash file which contains the encrypted password to the key database file. This property is not supported for IBM Db2 for i, as client TLS mode is not available. - Deprecated: This field is deprecated and replaced by \"sslClientKeystashSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"sslClientKeystashSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param ssl_client_keystash: The ssl_client_keystash of this UpdateDb2ConnectionDetails. @@ -570,7 +585,9 @@ def ssl_server_certificate(self, ssl_server_certificate): self._ssl_server_certificate = ssl_server_certificate def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_deployment_details.py b/src/oci/golden_gate/models/update_deployment_details.py index 944a1b5601..94ffce0c81 100644 --- a/src/oci/golden_gate/models/update_deployment_details.py +++ b/src/oci/golden_gate/models/update_deployment_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -169,6 +169,9 @@ def __init__(self, **kwargs): 'maintenance_configuration': 'maintenanceConfiguration', 'backup_schedule': 'backupSchedule' } + self._redacted_field_paths = [ + ['ogg_data', 'admin_password'], + ] self._display_name = None self._license_model = None self._is_byol_cpu_core_count_limit_enabled = None @@ -752,7 +755,9 @@ def backup_schedule(self, backup_schedule): self._backup_schedule = backup_schedule def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['ogg_data', 'admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_elasticsearch_connection_details.py b/src/oci/golden_gate/models/update_elasticsearch_connection_details.py index 1e3c05c93b..cccfded6a6 100644 --- a/src/oci/golden_gate/models/update_elasticsearch_connection_details.py +++ b/src/oci/golden_gate/models/update_elasticsearch_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this UpdateElasticsearchConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -142,6 +142,9 @@ def __init__(self, **kwargs): 'password_secret_id': 'passwordSecretId', 'fingerprint': 'fingerprint' } + self._redacted_field_paths = [ + ['password'], + ] self._connection_type = None self._display_name = None self._description = None @@ -275,7 +278,9 @@ def password(self): Gets the password of this UpdateElasticsearchConnectionDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The password of this UpdateElasticsearchConnectionDetails. @@ -289,7 +294,9 @@ def password(self, password): Sets the password of this UpdateElasticsearchConnectionDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param password: The password of this UpdateElasticsearchConnectionDetails. @@ -360,7 +367,9 @@ def fingerprint(self, fingerprint): self._fingerprint = fingerprint def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_generic_connection_details.py b/src/oci/golden_gate/models/update_generic_connection_details.py index 586612a4ec..3c8dcd0ebb 100644 --- a/src/oci/golden_gate/models/update_generic_connection_details.py +++ b/src/oci/golden_gate/models/update_generic_connection_details.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this UpdateGenericConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: diff --git a/src/oci/golden_gate/models/update_golden_gate_connection_details.py b/src/oci/golden_gate/models/update_golden_gate_connection_details.py index 87c6f92750..f245366564 100644 --- a/src/oci/golden_gate/models/update_golden_gate_connection_details.py +++ b/src/oci/golden_gate/models/update_golden_gate_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this UpdateGoldenGateConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -142,6 +142,9 @@ def __init__(self, **kwargs): 'password_secret_id': 'passwordSecretId', 'private_ip': 'privateIp' } + self._redacted_field_paths = [ + ['password'], + ] self._connection_type = None self._display_name = None self._description = None @@ -268,7 +271,9 @@ def password(self): """ Gets the password of this UpdateGoldenGateConnectionDetails. The password used to connect to the Oracle GoldenGate accessed trough this connection. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The password of this UpdateGoldenGateConnectionDetails. @@ -281,7 +286,9 @@ def password(self, password): """ Sets the password of this UpdateGoldenGateConnectionDetails. The password used to connect to the Oracle GoldenGate accessed trough this connection. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param password: The password of this UpdateGoldenGateConnectionDetails. @@ -350,7 +357,9 @@ def private_ip(self, private_ip): self._private_ip = private_ip def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_google_big_query_connection_details.py b/src/oci/golden_gate/models/update_google_big_query_connection_details.py index 43bd861b28..ab74ae9bfe 100644 --- a/src/oci/golden_gate/models/update_google_big_query_connection_details.py +++ b/src/oci/golden_gate/models/update_google_big_query_connection_details.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this UpdateGoogleBigQueryConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -167,7 +167,9 @@ def service_account_key_file(self): Gets the service_account_key_file of this UpdateGoogleBigQueryConnectionDetails. The base64 encoded content of the service account key file containing the credentials required to use Google BigQuery. - Deprecated: This field is deprecated and replaced by \"serviceAccountKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"serviceAccountKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The service_account_key_file of this UpdateGoogleBigQueryConnectionDetails. @@ -181,7 +183,9 @@ def service_account_key_file(self, service_account_key_file): Sets the service_account_key_file of this UpdateGoogleBigQueryConnectionDetails. The base64 encoded content of the service account key file containing the credentials required to use Google BigQuery. - Deprecated: This field is deprecated and replaced by \"serviceAccountKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"serviceAccountKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param service_account_key_file: The service_account_key_file of this UpdateGoogleBigQueryConnectionDetails. diff --git a/src/oci/golden_gate/models/update_google_cloud_storage_connection_details.py b/src/oci/golden_gate/models/update_google_cloud_storage_connection_details.py index afc53c4626..c048b67181 100644 --- a/src/oci/golden_gate/models/update_google_cloud_storage_connection_details.py +++ b/src/oci/golden_gate/models/update_google_cloud_storage_connection_details.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this UpdateGoogleCloudStorageConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -167,7 +167,9 @@ def service_account_key_file(self): Gets the service_account_key_file of this UpdateGoogleCloudStorageConnectionDetails. The base64 encoded content of the service account key file containing the credentials required to use Google Cloud Storage. - Deprecated: This field is deprecated and replaced by \"serviceAccountKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"serviceAccountKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The service_account_key_file of this UpdateGoogleCloudStorageConnectionDetails. @@ -181,7 +183,9 @@ def service_account_key_file(self, service_account_key_file): Sets the service_account_key_file of this UpdateGoogleCloudStorageConnectionDetails. The base64 encoded content of the service account key file containing the credentials required to use Google Cloud Storage. - Deprecated: This field is deprecated and replaced by \"serviceAccountKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"serviceAccountKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param service_account_key_file: The service_account_key_file of this UpdateGoogleCloudStorageConnectionDetails. diff --git a/src/oci/golden_gate/models/update_google_cloud_storage_iceberg_storage_details.py b/src/oci/golden_gate/models/update_google_cloud_storage_iceberg_storage_details.py index 6555b07552..18992e62f8 100644 --- a/src/oci/golden_gate/models/update_google_cloud_storage_iceberg_storage_details.py +++ b/src/oci/golden_gate/models/update_google_cloud_storage_iceberg_storage_details.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param storage_type: The value to assign to the storage_type property of this UpdateGoogleCloudStorageIcebergStorageDetails. - Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE" + Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", "NONE", "OCI_OBJECT_STORAGE_S3_API" :type storage_type: str :param bucket: @@ -155,7 +155,9 @@ def service_account_key_file(self): Gets the service_account_key_file of this UpdateGoogleCloudStorageIcebergStorageDetails. The base64 encoded content of the service account key file containing the credentials required to use Google Cloud Storage. - Deprecated: This field is deprecated and replaced by \"serviceAccountKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"serviceAccountKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The service_account_key_file of this UpdateGoogleCloudStorageIcebergStorageDetails. @@ -169,7 +171,9 @@ def service_account_key_file(self, service_account_key_file): Sets the service_account_key_file of this UpdateGoogleCloudStorageIcebergStorageDetails. The base64 encoded content of the service account key file containing the credentials required to use Google Cloud Storage. - Deprecated: This field is deprecated and replaced by \"serviceAccountKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"serviceAccountKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param service_account_key_file: The service_account_key_file of this UpdateGoogleCloudStorageIcebergStorageDetails. diff --git a/src/oci/golden_gate/models/update_google_pub_sub_connection_details.py b/src/oci/golden_gate/models/update_google_pub_sub_connection_details.py index 435621aae7..7d75bb35cc 100644 --- a/src/oci/golden_gate/models/update_google_pub_sub_connection_details.py +++ b/src/oci/golden_gate/models/update_google_pub_sub_connection_details.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this UpdateGooglePubSubConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -134,7 +134,9 @@ def service_account_key_file(self): Gets the service_account_key_file of this UpdateGooglePubSubConnectionDetails. The base64 encoded content of the service account key file containing the credentials required to use Google PubSub. - Deprecated: This field is deprecated and replaced by \"serviceAccountKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"serviceAccountKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The service_account_key_file of this UpdateGooglePubSubConnectionDetails. @@ -148,7 +150,9 @@ def service_account_key_file(self, service_account_key_file): Sets the service_account_key_file of this UpdateGooglePubSubConnectionDetails. The base64 encoded content of the service account key file containing the credentials required to use Google PubSub. - Deprecated: This field is deprecated and replaced by \"serviceAccountKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"serviceAccountKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param service_account_key_file: The service_account_key_file of this UpdateGooglePubSubConnectionDetails. diff --git a/src/oci/golden_gate/models/update_hdfs_connection_details.py b/src/oci/golden_gate/models/update_hdfs_connection_details.py index 3e747c845d..c2e1fd0a3f 100644 --- a/src/oci/golden_gate/models/update_hdfs_connection_details.py +++ b/src/oci/golden_gate/models/update_hdfs_connection_details.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this UpdateHdfsConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: diff --git a/src/oci/golden_gate/models/update_iceberg_connection_details.py b/src/oci/golden_gate/models/update_iceberg_connection_details.py index a71860a090..158087bcde 100644 --- a/src/oci/golden_gate/models/update_iceberg_connection_details.py +++ b/src/oci/golden_gate/models/update_iceberg_connection_details.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this UpdateIcebergConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: diff --git a/src/oci/golden_gate/models/update_iceberg_storage_details.py b/src/oci/golden_gate/models/update_iceberg_storage_details.py index 6b3c651c3a..43acb013e8 100644 --- a/src/oci/golden_gate/models/update_iceberg_storage_details.py +++ b/src/oci/golden_gate/models/update_iceberg_storage_details.py @@ -27,12 +27,22 @@ class UpdateIcebergStorageDetails(object): #: This constant has a value of "AZURE_DATA_LAKE_STORAGE" STORAGE_TYPE_AZURE_DATA_LAKE_STORAGE = "AZURE_DATA_LAKE_STORAGE" + #: A constant which can be used with the storage_type property of a UpdateIcebergStorageDetails. + #: This constant has a value of "NONE" + STORAGE_TYPE_NONE = "NONE" + + #: A constant which can be used with the storage_type property of a UpdateIcebergStorageDetails. + #: This constant has a value of "OCI_OBJECT_STORAGE_S3_API" + STORAGE_TYPE_OCI_OBJECT_STORAGE_S3_API = "OCI_OBJECT_STORAGE_S3_API" + def __init__(self, **kwargs): """ Initializes a new UpdateIcebergStorageDetails object with values from keyword arguments. This class has the following subclasses and if you are using this class as input to a service operations then you should favor using a subclass over the base class: * :class:`~oci.golden_gate.models.UpdateAmazonS3IcebergStorageDetails` + * :class:`~oci.golden_gate.models.UpdateOciObjectStorageS3ApiIcebergStorageDetails` + * :class:`~oci.golden_gate.models.UpdateNoIcebergStorageDetails` * :class:`~oci.golden_gate.models.UpdateGoogleCloudStorageIcebergStorageDetails` * :class:`~oci.golden_gate.models.UpdateAzureDataLakeStorageIcebergStorageDetails` @@ -40,7 +50,7 @@ def __init__(self, **kwargs): :param storage_type: The value to assign to the storage_type property of this UpdateIcebergStorageDetails. - Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE" + Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", "NONE", "OCI_OBJECT_STORAGE_S3_API" :type storage_type: str """ @@ -63,6 +73,12 @@ def get_subtype(object_dictionary): if type == 'AMAZON_S3': return 'UpdateAmazonS3IcebergStorageDetails' + if type == 'OCI_OBJECT_STORAGE_S3_API': + return 'UpdateOciObjectStorageS3ApiIcebergStorageDetails' + + if type == 'NONE': + return 'UpdateNoIcebergStorageDetails' + if type == 'GOOGLE_CLOUD_STORAGE': return 'UpdateGoogleCloudStorageIcebergStorageDetails' @@ -77,7 +93,7 @@ def storage_type(self): **[Required]** Gets the storage_type of this UpdateIcebergStorageDetails. The storage type used in the Iceberg connection. - Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE" + Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", "NONE", "OCI_OBJECT_STORAGE_S3_API" :return: The storage_type of this UpdateIcebergStorageDetails. @@ -95,7 +111,7 @@ def storage_type(self, storage_type): :param storage_type: The storage_type of this UpdateIcebergStorageDetails. :type: str """ - allowed_values = ["AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE"] + allowed_values = ["AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", "NONE", "OCI_OBJECT_STORAGE_S3_API"] if not value_allowed_none_or_none_sentinel(storage_type, allowed_values): raise ValueError( f"Invalid value for `storage_type`, must be None or one of {allowed_values}" diff --git a/src/oci/golden_gate/models/update_java_message_service_connection_details.py b/src/oci/golden_gate/models/update_java_message_service_connection_details.py index ac0c317d93..d40dee106d 100644 --- a/src/oci/golden_gate/models/update_java_message_service_connection_details.py +++ b/src/oci/golden_gate/models/update_java_message_service_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this UpdateJavaMessageServiceConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -250,6 +250,13 @@ def __init__(self, **kwargs): 'ssl_key_password_secret_id': 'sslKeyPasswordSecretId', 'private_ip': 'privateIp' } + self._redacted_field_paths = [ + ['jndi_security_credentials'], + ['password'], + ['trust_store_password'], + ['key_store_password'], + ['ssl_key_password'], + ] self._connection_type = None self._display_name = None self._description = None @@ -424,7 +431,9 @@ def jndi_security_credentials(self): """ Gets the jndi_security_credentials of this UpdateJavaMessageServiceConnectionDetails. The password associated to the principal. - Deprecated: This field is deprecated and replaced by \"jndiSecurityCredentialsSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"jndiSecurityCredentialsSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The jndi_security_credentials of this UpdateJavaMessageServiceConnectionDetails. @@ -437,7 +446,9 @@ def jndi_security_credentials(self, jndi_security_credentials): """ Sets the jndi_security_credentials of this UpdateJavaMessageServiceConnectionDetails. The password associated to the principal. - Deprecated: This field is deprecated and replaced by \"jndiSecurityCredentialsSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"jndiSecurityCredentialsSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param jndi_security_credentials: The jndi_security_credentials of this UpdateJavaMessageServiceConnectionDetails. @@ -560,7 +571,9 @@ def password(self): """ Gets the password of this UpdateJavaMessageServiceConnectionDetails. The password Oracle GoldenGate uses to connect the associated Java Message Service. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The password of this UpdateJavaMessageServiceConnectionDetails. @@ -573,7 +586,9 @@ def password(self, password): """ Sets the password of this UpdateJavaMessageServiceConnectionDetails. The password Oracle GoldenGate uses to connect the associated Java Message Service. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param password: The password of this UpdateJavaMessageServiceConnectionDetails. @@ -670,7 +685,9 @@ def trust_store(self): """ Gets the trust_store of this UpdateJavaMessageServiceConnectionDetails. The base64 encoded content of the TrustStore file. - Deprecated: This field is deprecated and replaced by \"trustStoreSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"trustStoreSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The trust_store of this UpdateJavaMessageServiceConnectionDetails. @@ -683,7 +700,9 @@ def trust_store(self, trust_store): """ Sets the trust_store of this UpdateJavaMessageServiceConnectionDetails. The base64 encoded content of the TrustStore file. - Deprecated: This field is deprecated and replaced by \"trustStoreSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"trustStoreSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param trust_store: The trust_store of this UpdateJavaMessageServiceConnectionDetails. @@ -726,7 +745,9 @@ def trust_store_password(self): """ Gets the trust_store_password of this UpdateJavaMessageServiceConnectionDetails. The TrustStore password. - Deprecated: This field is deprecated and replaced by \"trustStorePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"trustStorePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The trust_store_password of this UpdateJavaMessageServiceConnectionDetails. @@ -739,7 +760,9 @@ def trust_store_password(self, trust_store_password): """ Sets the trust_store_password of this UpdateJavaMessageServiceConnectionDetails. The TrustStore password. - Deprecated: This field is deprecated and replaced by \"trustStorePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"trustStorePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param trust_store_password: The trust_store_password of this UpdateJavaMessageServiceConnectionDetails. @@ -782,7 +805,9 @@ def key_store(self): """ Gets the key_store of this UpdateJavaMessageServiceConnectionDetails. The base64 encoded content of the KeyStore file. - Deprecated: This field is deprecated and replaced by \"keyStoreSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"keyStoreSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The key_store of this UpdateJavaMessageServiceConnectionDetails. @@ -795,7 +820,9 @@ def key_store(self, key_store): """ Sets the key_store of this UpdateJavaMessageServiceConnectionDetails. The base64 encoded content of the KeyStore file. - Deprecated: This field is deprecated and replaced by \"keyStoreSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"keyStoreSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param key_store: The key_store of this UpdateJavaMessageServiceConnectionDetails. @@ -838,7 +865,9 @@ def key_store_password(self): """ Gets the key_store_password of this UpdateJavaMessageServiceConnectionDetails. The KeyStore password. - Deprecated: This field is deprecated and replaced by \"keyStorePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"keyStorePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The key_store_password of this UpdateJavaMessageServiceConnectionDetails. @@ -851,7 +880,9 @@ def key_store_password(self, key_store_password): """ Sets the key_store_password of this UpdateJavaMessageServiceConnectionDetails. The KeyStore password. - Deprecated: This field is deprecated and replaced by \"keyStorePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"keyStorePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param key_store_password: The key_store_password of this UpdateJavaMessageServiceConnectionDetails. @@ -895,7 +926,9 @@ def ssl_key_password(self): Gets the ssl_key_password of this UpdateJavaMessageServiceConnectionDetails. The password for the cert inside of the KeyStore. In case it differs from the KeyStore password, it should be provided. - Deprecated: This field is deprecated and replaced by \"sslKeyPasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"sslKeyPasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The ssl_key_password of this UpdateJavaMessageServiceConnectionDetails. @@ -909,7 +942,9 @@ def ssl_key_password(self, ssl_key_password): Sets the ssl_key_password of this UpdateJavaMessageServiceConnectionDetails. The password for the cert inside of the KeyStore. In case it differs from the KeyStore password, it should be provided. - Deprecated: This field is deprecated and replaced by \"sslKeyPasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"sslKeyPasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param ssl_key_password: The ssl_key_password of this UpdateJavaMessageServiceConnectionDetails. @@ -978,7 +1013,13 @@ def private_ip(self, private_ip): self._private_ip = private_ip def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['jndi_security_credentials']) + redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['trust_store_password']) + redact_password_field(as_dict, ['key_store_password']) + redact_password_field(as_dict, ['ssl_key_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_kafka_connection_details.py b/src/oci/golden_gate/models/update_kafka_connection_details.py index 6b12baedac..4c620d3efe 100644 --- a/src/oci/golden_gate/models/update_kafka_connection_details.py +++ b/src/oci/golden_gate/models/update_kafka_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this UpdateKafkaConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -220,6 +220,12 @@ def __init__(self, **kwargs): 'producer_properties': 'producerProperties', 'should_use_resource_principal': 'shouldUseResourcePrincipal' } + self._redacted_field_paths = [ + ['password'], + ['trust_store_password'], + ['key_store_password'], + ['ssl_key_password'], + ] self._connection_type = None self._display_name = None self._description = None @@ -400,7 +406,9 @@ def password(self): Gets the password of this UpdateKafkaConnectionDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The password of this UpdateKafkaConnectionDetails. @@ -414,7 +422,9 @@ def password(self, password): Sets the password of this UpdateKafkaConnectionDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param password: The password of this UpdateKafkaConnectionDetails. @@ -463,7 +473,9 @@ def trust_store(self): """ Gets the trust_store of this UpdateKafkaConnectionDetails. The base64 encoded content of the TrustStore file. - Deprecated: This field is deprecated and replaced by \"trustStoreSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"trustStoreSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The trust_store of this UpdateKafkaConnectionDetails. @@ -476,7 +488,9 @@ def trust_store(self, trust_store): """ Sets the trust_store of this UpdateKafkaConnectionDetails. The base64 encoded content of the TrustStore file. - Deprecated: This field is deprecated and replaced by \"trustStoreSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"trustStoreSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param trust_store: The trust_store of this UpdateKafkaConnectionDetails. @@ -519,7 +533,9 @@ def trust_store_password(self): """ Gets the trust_store_password of this UpdateKafkaConnectionDetails. The TrustStore password. - Deprecated: This field is deprecated and replaced by \"trustStorePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"trustStorePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The trust_store_password of this UpdateKafkaConnectionDetails. @@ -532,7 +548,9 @@ def trust_store_password(self, trust_store_password): """ Sets the trust_store_password of this UpdateKafkaConnectionDetails. The TrustStore password. - Deprecated: This field is deprecated and replaced by \"trustStorePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"trustStorePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param trust_store_password: The trust_store_password of this UpdateKafkaConnectionDetails. @@ -575,7 +593,9 @@ def key_store(self): """ Gets the key_store of this UpdateKafkaConnectionDetails. The base64 encoded content of the KeyStore file. - Deprecated: This field is deprecated and replaced by \"keyStoreSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"keyStoreSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The key_store of this UpdateKafkaConnectionDetails. @@ -588,7 +608,9 @@ def key_store(self, key_store): """ Sets the key_store of this UpdateKafkaConnectionDetails. The base64 encoded content of the KeyStore file. - Deprecated: This field is deprecated and replaced by \"keyStoreSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"keyStoreSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param key_store: The key_store of this UpdateKafkaConnectionDetails. @@ -631,7 +653,9 @@ def key_store_password(self): """ Gets the key_store_password of this UpdateKafkaConnectionDetails. The KeyStore password. - Deprecated: This field is deprecated and replaced by \"keyStorePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"keyStorePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The key_store_password of this UpdateKafkaConnectionDetails. @@ -644,7 +668,9 @@ def key_store_password(self, key_store_password): """ Sets the key_store_password of this UpdateKafkaConnectionDetails. The KeyStore password. - Deprecated: This field is deprecated and replaced by \"keyStorePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"keyStorePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param key_store_password: The key_store_password of this UpdateKafkaConnectionDetails. @@ -688,7 +714,9 @@ def ssl_key_password(self): Gets the ssl_key_password of this UpdateKafkaConnectionDetails. The password for the cert inside of the KeyStore. In case it differs from the KeyStore password, it should be provided. - Deprecated: This field is deprecated and replaced by \"sslKeyPasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"sslKeyPasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The ssl_key_password of this UpdateKafkaConnectionDetails. @@ -702,7 +730,9 @@ def ssl_key_password(self, ssl_key_password): Sets the ssl_key_password of this UpdateKafkaConnectionDetails. The password for the cert inside of the KeyStore. In case it differs from the KeyStore password, it should be provided. - Deprecated: This field is deprecated and replaced by \"sslKeyPasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"sslKeyPasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param ssl_key_password: The ssl_key_password of this UpdateKafkaConnectionDetails. @@ -821,7 +851,12 @@ def should_use_resource_principal(self, should_use_resource_principal): self._should_use_resource_principal = should_use_resource_principal def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['trust_store_password']) + redact_password_field(as_dict, ['key_store_password']) + redact_password_field(as_dict, ['ssl_key_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_kafka_schema_registry_connection_details.py b/src/oci/golden_gate/models/update_kafka_schema_registry_connection_details.py index 4c3faa8bbe..0a268da075 100644 --- a/src/oci/golden_gate/models/update_kafka_schema_registry_connection_details.py +++ b/src/oci/golden_gate/models/update_kafka_schema_registry_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this UpdateKafkaSchemaRegistryConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -196,6 +196,12 @@ def __init__(self, **kwargs): 'ssl_key_password_secret_id': 'sslKeyPasswordSecretId', 'private_ip': 'privateIp' } + self._redacted_field_paths = [ + ['password'], + ['trust_store_password'], + ['key_store_password'], + ['ssl_key_password'], + ] self._connection_type = None self._display_name = None self._description = None @@ -308,7 +314,9 @@ def password(self): Gets the password of this UpdateKafkaSchemaRegistryConnectionDetails. The password to access Schema Registry using basic authentication. This value is injected into 'schema.registry.basic.auth.user.info=user:password' configuration property. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The password of this UpdateKafkaSchemaRegistryConnectionDetails. @@ -322,7 +330,9 @@ def password(self, password): Sets the password of this UpdateKafkaSchemaRegistryConnectionDetails. The password to access Schema Registry using basic authentication. This value is injected into 'schema.registry.basic.auth.user.info=user:password' configuration property. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param password: The password of this UpdateKafkaSchemaRegistryConnectionDetails. @@ -371,7 +381,9 @@ def trust_store(self): """ Gets the trust_store of this UpdateKafkaSchemaRegistryConnectionDetails. The base64 encoded content of the TrustStore file. - Deprecated: This field is deprecated and replaced by \"trustStoreSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"trustStoreSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The trust_store of this UpdateKafkaSchemaRegistryConnectionDetails. @@ -384,7 +396,9 @@ def trust_store(self, trust_store): """ Sets the trust_store of this UpdateKafkaSchemaRegistryConnectionDetails. The base64 encoded content of the TrustStore file. - Deprecated: This field is deprecated and replaced by \"trustStoreSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"trustStoreSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param trust_store: The trust_store of this UpdateKafkaSchemaRegistryConnectionDetails. @@ -427,7 +441,9 @@ def trust_store_password(self): """ Gets the trust_store_password of this UpdateKafkaSchemaRegistryConnectionDetails. The TrustStore password. - Deprecated: This field is deprecated and replaced by \"trustStorePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"trustStorePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The trust_store_password of this UpdateKafkaSchemaRegistryConnectionDetails. @@ -440,7 +456,9 @@ def trust_store_password(self, trust_store_password): """ Sets the trust_store_password of this UpdateKafkaSchemaRegistryConnectionDetails. The TrustStore password. - Deprecated: This field is deprecated and replaced by \"trustStorePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"trustStorePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param trust_store_password: The trust_store_password of this UpdateKafkaSchemaRegistryConnectionDetails. @@ -483,7 +501,9 @@ def key_store(self): """ Gets the key_store of this UpdateKafkaSchemaRegistryConnectionDetails. The base64 encoded content of the KeyStore file. - Deprecated: This field is deprecated and replaced by \"keyStoreSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"keyStoreSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The key_store of this UpdateKafkaSchemaRegistryConnectionDetails. @@ -496,7 +516,9 @@ def key_store(self, key_store): """ Sets the key_store of this UpdateKafkaSchemaRegistryConnectionDetails. The base64 encoded content of the KeyStore file. - Deprecated: This field is deprecated and replaced by \"keyStoreSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"keyStoreSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param key_store: The key_store of this UpdateKafkaSchemaRegistryConnectionDetails. @@ -539,7 +561,9 @@ def key_store_password(self): """ Gets the key_store_password of this UpdateKafkaSchemaRegistryConnectionDetails. The KeyStore password. - Deprecated: This field is deprecated and replaced by \"keyStorePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"keyStorePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The key_store_password of this UpdateKafkaSchemaRegistryConnectionDetails. @@ -552,7 +576,9 @@ def key_store_password(self, key_store_password): """ Sets the key_store_password of this UpdateKafkaSchemaRegistryConnectionDetails. The KeyStore password. - Deprecated: This field is deprecated and replaced by \"keyStorePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"keyStorePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param key_store_password: The key_store_password of this UpdateKafkaSchemaRegistryConnectionDetails. @@ -596,7 +622,9 @@ def ssl_key_password(self): Gets the ssl_key_password of this UpdateKafkaSchemaRegistryConnectionDetails. The password for the cert inside the KeyStore. In case it differs from the KeyStore password, it should be provided. - Deprecated: This field is deprecated and replaced by \"sslKeyPasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"sslKeyPasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The ssl_key_password of this UpdateKafkaSchemaRegistryConnectionDetails. @@ -610,7 +638,9 @@ def ssl_key_password(self, ssl_key_password): Sets the ssl_key_password of this UpdateKafkaSchemaRegistryConnectionDetails. The password for the cert inside the KeyStore. In case it differs from the KeyStore password, it should be provided. - Deprecated: This field is deprecated and replaced by \"sslKeyPasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"sslKeyPasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param ssl_key_password: The ssl_key_password of this UpdateKafkaSchemaRegistryConnectionDetails. @@ -679,7 +709,12 @@ def private_ip(self, private_ip): self._private_ip = private_ip def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['trust_store_password']) + redact_password_field(as_dict, ['key_store_password']) + redact_password_field(as_dict, ['ssl_key_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_microsoft_fabric_connection_details.py b/src/oci/golden_gate/models/update_microsoft_fabric_connection_details.py index e30f73453b..9dcfca7ac7 100644 --- a/src/oci/golden_gate/models/update_microsoft_fabric_connection_details.py +++ b/src/oci/golden_gate/models/update_microsoft_fabric_connection_details.py @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this UpdateMicrosoftFabricConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -206,7 +206,9 @@ def client_secret(self): """ Gets the client_secret of this UpdateMicrosoftFabricConnectionDetails. Client secret associated with the client id. - Deprecated: This field is deprecated and replaced by \"clientSecretSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"clientSecretSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The client_secret of this UpdateMicrosoftFabricConnectionDetails. @@ -219,7 +221,9 @@ def client_secret(self, client_secret): """ Sets the client_secret of this UpdateMicrosoftFabricConnectionDetails. Client secret associated with the client id. - Deprecated: This field is deprecated and replaced by \"clientSecretSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"clientSecretSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param client_secret: The client_secret of this UpdateMicrosoftFabricConnectionDetails. diff --git a/src/oci/golden_gate/models/update_microsoft_sqlserver_connection_details.py b/src/oci/golden_gate/models/update_microsoft_sqlserver_connection_details.py index dae2e0242b..4b0a69fd91 100644 --- a/src/oci/golden_gate/models/update_microsoft_sqlserver_connection_details.py +++ b/src/oci/golden_gate/models/update_microsoft_sqlserver_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this UpdateMicrosoftSqlserverConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -166,6 +166,9 @@ def __init__(self, **kwargs): 'should_validate_server_certificate': 'shouldValidateServerCertificate', 'private_ip': 'privateIp' } + self._redacted_field_paths = [ + ['password'], + ] self._connection_type = None self._display_name = None self._description = None @@ -294,7 +297,9 @@ def password(self): """ Gets the password of this UpdateMicrosoftSqlserverConnectionDetails. The password Oracle GoldenGate uses to connect the associated Microsoft SQL Server. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The password of this UpdateMicrosoftSqlserverConnectionDetails. @@ -307,7 +312,9 @@ def password(self, password): """ Sets the password of this UpdateMicrosoftSqlserverConnectionDetails. The password Oracle GoldenGate uses to connect the associated Microsoft SQL Server. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param password: The password of this UpdateMicrosoftSqlserverConnectionDetails. @@ -474,7 +481,9 @@ def private_ip(self, private_ip): self._private_ip = private_ip def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_mongo_db_connection_details.py b/src/oci/golden_gate/models/update_mongo_db_connection_details.py index 16fb26d304..583c5bf3a3 100644 --- a/src/oci/golden_gate/models/update_mongo_db_connection_details.py +++ b/src/oci/golden_gate/models/update_mongo_db_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this UpdateMongoDbConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -166,6 +166,10 @@ def __init__(self, **kwargs): 'tls_certificate_key_file_password': 'tlsCertificateKeyFilePassword', 'tls_certificate_key_file_password_secret_id': 'tlsCertificateKeyFilePasswordSecretId' } + self._redacted_field_paths = [ + ['password'], + ['tls_certificate_key_file_password'], + ] self._connection_type = None self._display_name = None self._description = None @@ -248,7 +252,9 @@ def password(self): """ Gets the password of this UpdateMongoDbConnectionDetails. The password Oracle GoldenGate uses to connect the associated database. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The password of this UpdateMongoDbConnectionDetails. @@ -261,7 +267,9 @@ def password(self, password): """ Sets the password of this UpdateMongoDbConnectionDetails. The password Oracle GoldenGate uses to connect the associated database. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param password: The password of this UpdateMongoDbConnectionDetails. @@ -382,7 +390,9 @@ def tls_certificate_key_file(self): """ Gets the tls_certificate_key_file of this UpdateMongoDbConnectionDetails. Client Certificate - The base64 encoded content of a .pem file, containing the client public key (for 2-way SSL). - Deprecated: This field is deprecated and replaced by \"tlsCertificateKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"tlsCertificateKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The tls_certificate_key_file of this UpdateMongoDbConnectionDetails. @@ -395,7 +405,9 @@ def tls_certificate_key_file(self, tls_certificate_key_file): """ Sets the tls_certificate_key_file of this UpdateMongoDbConnectionDetails. Client Certificate - The base64 encoded content of a .pem file, containing the client public key (for 2-way SSL). - Deprecated: This field is deprecated and replaced by \"tlsCertificateKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"tlsCertificateKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param tls_certificate_key_file: The tls_certificate_key_file of this UpdateMongoDbConnectionDetails. @@ -440,7 +452,9 @@ def tls_certificate_key_file_password(self): """ Gets the tls_certificate_key_file_password of this UpdateMongoDbConnectionDetails. Client Certificate key file password. - Deprecated: This field is deprecated and replaced by \"tlsCertificateKeyFilePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"tlsCertificateKeyFilePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The tls_certificate_key_file_password of this UpdateMongoDbConnectionDetails. @@ -453,7 +467,9 @@ def tls_certificate_key_file_password(self, tls_certificate_key_file_password): """ Sets the tls_certificate_key_file_password of this UpdateMongoDbConnectionDetails. Client Certificate key file password. - Deprecated: This field is deprecated and replaced by \"tlsCertificateKeyFilePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"tlsCertificateKeyFilePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param tls_certificate_key_file_password: The tls_certificate_key_file_password of this UpdateMongoDbConnectionDetails. @@ -492,7 +508,10 @@ def tls_certificate_key_file_password_secret_id(self, tls_certificate_key_file_p self._tls_certificate_key_file_password_secret_id = tls_certificate_key_file_password_secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['tls_certificate_key_file_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_mysql_connection_details.py b/src/oci/golden_gate/models/update_mysql_connection_details.py index 9ebb06ebfd..12f95e4e45 100644 --- a/src/oci/golden_gate/models/update_mysql_connection_details.py +++ b/src/oci/golden_gate/models/update_mysql_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this UpdateMysqlConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -196,6 +196,9 @@ def __init__(self, **kwargs): 'additional_attributes': 'additionalAttributes', 'db_system_id': 'dbSystemId' } + self._redacted_field_paths = [ + ['password'], + ] self._connection_type = None self._display_name = None self._description = None @@ -260,7 +263,9 @@ def password(self): Gets the password of this UpdateMysqlConnectionDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The password of this UpdateMysqlConnectionDetails. @@ -274,7 +279,9 @@ def password(self, password): Sets the password of this UpdateMysqlConnectionDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param password: The password of this UpdateMysqlConnectionDetails. @@ -527,7 +534,9 @@ def ssl_key(self): """ Gets the ssl_key of this UpdateMysqlConnectionDetails. Client Key - The base64 encoded content of a .pem or .crt file containing the client private key (for 2-way SSL). - Deprecated: This field is deprecated and replaced by \"sslKeySecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"sslKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The ssl_key of this UpdateMysqlConnectionDetails. @@ -540,7 +549,9 @@ def ssl_key(self, ssl_key): """ Sets the ssl_key of this UpdateMysqlConnectionDetails. Client Key - The base64 encoded content of a .pem or .crt file containing the client private key (for 2-way SSL). - Deprecated: This field is deprecated and replaced by \"sslKeySecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"sslKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param ssl_key: The ssl_key of this UpdateMysqlConnectionDetails. @@ -663,7 +674,9 @@ def db_system_id(self, db_system_id): self._db_system_id = db_system_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_no_iceberg_storage_details.py b/src/oci/golden_gate/models/update_no_iceberg_storage_details.py new file mode 100644 index 0000000000..fafcfb9d5b --- /dev/null +++ b/src/oci/golden_gate/models/update_no_iceberg_storage_details.py @@ -0,0 +1,50 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 + +from .update_iceberg_storage_details import UpdateIcebergStorageDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class UpdateNoIcebergStorageDetails(UpdateIcebergStorageDetails): + """ + The information to update the absence of a storage configuration in an + Iceberg connection. + """ + + def __init__(self, **kwargs): + """ + Initializes a new UpdateNoIcebergStorageDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.golden_gate.models.UpdateNoIcebergStorageDetails.storage_type` attribute + of this class is ``NONE`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param storage_type: + The value to assign to the storage_type property of this UpdateNoIcebergStorageDetails. + Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", "NONE", "OCI_OBJECT_STORAGE_S3_API" + :type storage_type: str + + """ + self.swagger_types = { + 'storage_type': 'str' + } + self.attribute_map = { + 'storage_type': 'storageType' + } + self._storage_type = None + self._storage_type = 'NONE' + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/golden_gate/models/update_oci_gen_ai_model_auth_details.py b/src/oci/golden_gate/models/update_oci_gen_ai_model_auth_details.py new file mode 100644 index 0000000000..1e4c4de028 --- /dev/null +++ b/src/oci/golden_gate/models/update_oci_gen_ai_model_auth_details.py @@ -0,0 +1,247 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 + +from .update_ai_model_auth_details import UpdateAiModelAuthDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class UpdateOciGenAiModelAuthDetails(UpdateAiModelAuthDetails): + """ + The information to update OCI Generative AI authentication details for an AI Model connection. + """ + + def __init__(self, **kwargs): + """ + Initializes a new UpdateOciGenAiModelAuthDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.golden_gate.models.UpdateOciGenAiModelAuthDetails.auth_type` attribute + of this class is ``OCI_GEN_AI`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param auth_type: + The value to assign to the auth_type property of this UpdateOciGenAiModelAuthDetails. + Allowed values for this property are: "OCI_GEN_AI", "API_KEY" + :type auth_type: str + + :param api_key: + The value to assign to the api_key property of this UpdateOciGenAiModelAuthDetails. + :type api_key: str + + :param api_key_secret_id: + The value to assign to the api_key_secret_id property of this UpdateOciGenAiModelAuthDetails. + :type api_key_secret_id: str + + :param key_fingerprint: + The value to assign to the key_fingerprint property of this UpdateOciGenAiModelAuthDetails. + :type key_fingerprint: str + + :param region: + The value to assign to the region property of this UpdateOciGenAiModelAuthDetails. + :type region: str + + :param tenancy_id: + The value to assign to the tenancy_id property of this UpdateOciGenAiModelAuthDetails. + :type tenancy_id: str + + :param user_id: + The value to assign to the user_id property of this UpdateOciGenAiModelAuthDetails. + :type user_id: str + + """ + self.swagger_types = { + 'auth_type': 'str', + 'api_key': 'str', + 'api_key_secret_id': 'str', + 'key_fingerprint': 'str', + 'region': 'str', + 'tenancy_id': 'str', + 'user_id': 'str' + } + self.attribute_map = { + 'auth_type': 'authType', + 'api_key': 'apiKey', + 'api_key_secret_id': 'apiKeySecretId', + 'key_fingerprint': 'keyFingerprint', + 'region': 'region', + 'tenancy_id': 'tenancyId', + 'user_id': 'userId' + } + self._auth_type = None + self._api_key = None + self._api_key_secret_id = None + self._key_fingerprint = None + self._region = None + self._tenancy_id = None + self._user_id = None + self._auth_type = 'OCI_GEN_AI' + + @property + def api_key(self): + """ + Gets the api_key of this UpdateOciGenAiModelAuthDetails. + API key for the AI model connection. + Deprecated: This field is deprecated and replaced by \"apiKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + + :return: The api_key of this UpdateOciGenAiModelAuthDetails. + :rtype: str + """ + return self._api_key + + @api_key.setter + def api_key(self, api_key): + """ + Sets the api_key of this UpdateOciGenAiModelAuthDetails. + API key for the AI model connection. + Deprecated: This field is deprecated and replaced by \"apiKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + + :param api_key: The api_key of this UpdateOciGenAiModelAuthDetails. + :type: str + """ + self._api_key = api_key + + @property + def api_key_secret_id(self): + """ + Gets the api_key_secret_id of this UpdateOciGenAiModelAuthDetails. + API key secret OCID for the AI model connection. + + + :return: The api_key_secret_id of this UpdateOciGenAiModelAuthDetails. + :rtype: str + """ + return self._api_key_secret_id + + @api_key_secret_id.setter + def api_key_secret_id(self, api_key_secret_id): + """ + Sets the api_key_secret_id of this UpdateOciGenAiModelAuthDetails. + API key secret OCID for the AI model connection. + + + :param api_key_secret_id: The api_key_secret_id of this UpdateOciGenAiModelAuthDetails. + :type: str + """ + self._api_key_secret_id = api_key_secret_id + + @property + def key_fingerprint(self): + """ + Gets the key_fingerprint of this UpdateOciGenAiModelAuthDetails. + OCI Generative AI key fingerprint. + + + :return: The key_fingerprint of this UpdateOciGenAiModelAuthDetails. + :rtype: str + """ + return self._key_fingerprint + + @key_fingerprint.setter + def key_fingerprint(self, key_fingerprint): + """ + Sets the key_fingerprint of this UpdateOciGenAiModelAuthDetails. + OCI Generative AI key fingerprint. + + + :param key_fingerprint: The key_fingerprint of this UpdateOciGenAiModelAuthDetails. + :type: str + """ + self._key_fingerprint = key_fingerprint + + @property + def region(self): + """ + Gets the region of this UpdateOciGenAiModelAuthDetails. + The name of the region. e.g.: us-ashburn-1 + If the region is not provided, backend will default to the default region. + + + :return: The region of this UpdateOciGenAiModelAuthDetails. + :rtype: str + """ + return self._region + + @region.setter + def region(self, region): + """ + Sets the region of this UpdateOciGenAiModelAuthDetails. + The name of the region. e.g.: us-ashburn-1 + If the region is not provided, backend will default to the default region. + + + :param region: The region of this UpdateOciGenAiModelAuthDetails. + :type: str + """ + self._region = region + + @property + def tenancy_id(self): + """ + Gets the tenancy_id of this UpdateOciGenAiModelAuthDetails. + OCI Generative AI tenancy OCID. If this value is not provided, or is updated to an empty + value, it defaults to the tenancy OCID of the user who is executing the operation. + + + :return: The tenancy_id of this UpdateOciGenAiModelAuthDetails. + :rtype: str + """ + return self._tenancy_id + + @tenancy_id.setter + def tenancy_id(self, tenancy_id): + """ + Sets the tenancy_id of this UpdateOciGenAiModelAuthDetails. + OCI Generative AI tenancy OCID. If this value is not provided, or is updated to an empty + value, it defaults to the tenancy OCID of the user who is executing the operation. + + + :param tenancy_id: The tenancy_id of this UpdateOciGenAiModelAuthDetails. + :type: str + """ + self._tenancy_id = tenancy_id + + @property + def user_id(self): + """ + Gets the user_id of this UpdateOciGenAiModelAuthDetails. + OCI Generative AI user OCID. If this value is not provided, or is updated to an empty + value, it defaults to the OCID of the user who is executing the operation. + + + :return: The user_id of this UpdateOciGenAiModelAuthDetails. + :rtype: str + """ + return self._user_id + + @user_id.setter + def user_id(self, user_id): + """ + Sets the user_id of this UpdateOciGenAiModelAuthDetails. + OCI Generative AI user OCID. If this value is not provided, or is updated to an empty + value, it defaults to the OCID of the user who is executing the operation. + + + :param user_id: The user_id of this UpdateOciGenAiModelAuthDetails. + :type: str + """ + self._user_id = user_id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/golden_gate/models/update_oci_object_storage_connection_details.py b/src/oci/golden_gate/models/update_oci_object_storage_connection_details.py index c69dcc47d0..ea5da8fbce 100644 --- a/src/oci/golden_gate/models/update_oci_object_storage_connection_details.py +++ b/src/oci/golden_gate/models/update_oci_object_storage_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this UpdateOciObjectStorageConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -154,6 +154,9 @@ def __init__(self, **kwargs): 'public_key_fingerprint': 'publicKeyFingerprint', 'should_use_resource_principal': 'shouldUseResourcePrincipal' } + self._redacted_field_paths = [ + ['private_key_passphrase'], + ] self._connection_type = None self._display_name = None self._description = None @@ -269,7 +272,9 @@ def private_key_file(self): Gets the private_key_file of this UpdateOciObjectStorageConnectionDetails. The base64 encoded content of the private key file (PEM file) corresponding to the API key of the fingerprint. See documentation: https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm - Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The private_key_file of this UpdateOciObjectStorageConnectionDetails. @@ -283,7 +288,9 @@ def private_key_file(self, private_key_file): Sets the private_key_file of this UpdateOciObjectStorageConnectionDetails. The base64 encoded content of the private key file (PEM file) corresponding to the API key of the fingerprint. See documentation: https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm - Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param private_key_file: The private_key_file of this UpdateOciObjectStorageConnectionDetails. @@ -328,7 +335,9 @@ def private_key_passphrase(self): """ Gets the private_key_passphrase of this UpdateOciObjectStorageConnectionDetails. The passphrase of the private key. - Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The private_key_passphrase of this UpdateOciObjectStorageConnectionDetails. @@ -341,7 +350,9 @@ def private_key_passphrase(self, private_key_passphrase): """ Sets the private_key_passphrase of this UpdateOciObjectStorageConnectionDetails. The passphrase of the private key. - Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param private_key_passphrase: The private_key_passphrase of this UpdateOciObjectStorageConnectionDetails. @@ -432,7 +443,9 @@ def should_use_resource_principal(self, should_use_resource_principal): self._should_use_resource_principal = should_use_resource_principal def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['private_key_passphrase']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_oci_object_storage_s3_api_iceberg_storage_details.py b/src/oci/golden_gate/models/update_oci_object_storage_s3_api_iceberg_storage_details.py new file mode 100644 index 0000000000..27c92cf7d7 --- /dev/null +++ b/src/oci/golden_gate/models/update_oci_object_storage_s3_api_iceberg_storage_details.py @@ -0,0 +1,229 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 + +from .update_iceberg_storage_details import UpdateIcebergStorageDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class UpdateOciObjectStorageS3ApiIcebergStorageDetails(UpdateIcebergStorageDetails): + """ + The information to update the OCI Object Storage (S3 Compatibility API) configuration used by the + Iceberg connection. + """ + + def __init__(self, **kwargs): + """ + Initializes a new UpdateOciObjectStorageS3ApiIcebergStorageDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.golden_gate.models.UpdateOciObjectStorageS3ApiIcebergStorageDetails.storage_type` attribute + of this class is ``OCI_OBJECT_STORAGE_S3_API`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param storage_type: + The value to assign to the storage_type property of this UpdateOciObjectStorageS3ApiIcebergStorageDetails. + Allowed values for this property are: "AMAZON_S3", "GOOGLE_CLOUD_STORAGE", "AZURE_DATA_LAKE_STORAGE", "NONE", "OCI_OBJECT_STORAGE_S3_API" + :type storage_type: str + + :param endpoint: + The value to assign to the endpoint property of this UpdateOciObjectStorageS3ApiIcebergStorageDetails. + :type endpoint: str + + :param access_key_id: + The value to assign to the access_key_id property of this UpdateOciObjectStorageS3ApiIcebergStorageDetails. + :type access_key_id: str + + :param secret_access_key_secret_id: + The value to assign to the secret_access_key_secret_id property of this UpdateOciObjectStorageS3ApiIcebergStorageDetails. + :type secret_access_key_secret_id: str + + :param secret_access_key: + The value to assign to the secret_access_key property of this UpdateOciObjectStorageS3ApiIcebergStorageDetails. + :type secret_access_key: str + + :param bucket: + The value to assign to the bucket property of this UpdateOciObjectStorageS3ApiIcebergStorageDetails. + :type bucket: str + + """ + self.swagger_types = { + 'storage_type': 'str', + 'endpoint': 'str', + 'access_key_id': 'str', + 'secret_access_key_secret_id': 'str', + 'secret_access_key': 'str', + 'bucket': 'str' + } + self.attribute_map = { + 'storage_type': 'storageType', + 'endpoint': 'endpoint', + 'access_key_id': 'accessKeyId', + 'secret_access_key_secret_id': 'secretAccessKeySecretId', + 'secret_access_key': 'secretAccessKey', + 'bucket': 'bucket' + } + self._storage_type = None + self._endpoint = None + self._access_key_id = None + self._secret_access_key_secret_id = None + self._secret_access_key = None + self._bucket = None + self._storage_type = 'OCI_OBJECT_STORAGE_S3_API' + + @property + def endpoint(self): + """ + Gets the endpoint of this UpdateOciObjectStorageS3ApiIcebergStorageDetails. + OCI Object Storage S3 Compatibility API endpoint URL. + Format: \"https://.compat.objectstorage..\" + Example: \"https://mynamespace.compat.objectstorage.us-ashburn-1.oraclecloud.com\" + + + :return: The endpoint of this UpdateOciObjectStorageS3ApiIcebergStorageDetails. + :rtype: str + """ + return self._endpoint + + @endpoint.setter + def endpoint(self, endpoint): + """ + Sets the endpoint of this UpdateOciObjectStorageS3ApiIcebergStorageDetails. + OCI Object Storage S3 Compatibility API endpoint URL. + Format: \"https://.compat.objectstorage..\" + Example: \"https://mynamespace.compat.objectstorage.us-ashburn-1.oraclecloud.com\" + + + :param endpoint: The endpoint of this UpdateOciObjectStorageS3ApiIcebergStorageDetails. + :type: str + """ + self._endpoint = endpoint + + @property + def access_key_id(self): + """ + Gets the access_key_id of this UpdateOciObjectStorageS3ApiIcebergStorageDetails. + Access Key ID from the OCI IAM user's Customer Secret Key pair used to authenticate to + OCI Object Storage via the S3 Compatibility API. + + Note: Despite the \"Id\" suffix, this value is not an OCI OCID. + + + :return: The access_key_id of this UpdateOciObjectStorageS3ApiIcebergStorageDetails. + :rtype: str + """ + return self._access_key_id + + @access_key_id.setter + def access_key_id(self, access_key_id): + """ + Sets the access_key_id of this UpdateOciObjectStorageS3ApiIcebergStorageDetails. + Access Key ID from the OCI IAM user's Customer Secret Key pair used to authenticate to + OCI Object Storage via the S3 Compatibility API. + + Note: Despite the \"Id\" suffix, this value is not an OCI OCID. + + + :param access_key_id: The access_key_id of this UpdateOciObjectStorageS3ApiIcebergStorageDetails. + :type: str + """ + self._access_key_id = access_key_id + + @property + def secret_access_key_secret_id(self): + """ + Gets the secret_access_key_secret_id of this UpdateOciObjectStorageS3ApiIcebergStorageDetails. + The `OCID`__ of the Secret where the Secret Access Key used for OCI Object Storage S3 Compatibility authentication. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The secret_access_key_secret_id of this UpdateOciObjectStorageS3ApiIcebergStorageDetails. + :rtype: str + """ + return self._secret_access_key_secret_id + + @secret_access_key_secret_id.setter + def secret_access_key_secret_id(self, secret_access_key_secret_id): + """ + Sets the secret_access_key_secret_id of this UpdateOciObjectStorageS3ApiIcebergStorageDetails. + The `OCID`__ of the Secret where the Secret Access Key used for OCI Object Storage S3 Compatibility authentication. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param secret_access_key_secret_id: The secret_access_key_secret_id of this UpdateOciObjectStorageS3ApiIcebergStorageDetails. + :type: str + """ + self._secret_access_key_secret_id = secret_access_key_secret_id + + @property + def secret_access_key(self): + """ + Gets the secret_access_key of this UpdateOciObjectStorageS3ApiIcebergStorageDetails. + Secret Access Key from the OCI IAM user's Customer Secret Key pair used to authenticate to + OCI Object Storage via the S3 Compatibility API. + Deprecated: This field is deprecated and replaced by \"secretAccessKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + + :return: The secret_access_key of this UpdateOciObjectStorageS3ApiIcebergStorageDetails. + :rtype: str + """ + return self._secret_access_key + + @secret_access_key.setter + def secret_access_key(self, secret_access_key): + """ + Sets the secret_access_key of this UpdateOciObjectStorageS3ApiIcebergStorageDetails. + Secret Access Key from the OCI IAM user's Customer Secret Key pair used to authenticate to + OCI Object Storage via the S3 Compatibility API. + Deprecated: This field is deprecated and replaced by \"secretAccessKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate + + + :param secret_access_key: The secret_access_key of this UpdateOciObjectStorageS3ApiIcebergStorageDetails. + :type: str + """ + self._secret_access_key = secret_access_key + + @property + def bucket(self): + """ + Gets the bucket of this UpdateOciObjectStorageS3ApiIcebergStorageDetails. + Target OCI Object Storage bucket name where Iceberg stores + table metadata and data files. + + + :return: The bucket of this UpdateOciObjectStorageS3ApiIcebergStorageDetails. + :rtype: str + """ + return self._bucket + + @bucket.setter + def bucket(self, bucket): + """ + Sets the bucket of this UpdateOciObjectStorageS3ApiIcebergStorageDetails. + Target OCI Object Storage bucket name where Iceberg stores + table metadata and data files. + + + :param bucket: The bucket of this UpdateOciObjectStorageS3ApiIcebergStorageDetails. + :type: str + """ + self._bucket = bucket + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/golden_gate/models/update_ogg_deployment_details.py b/src/oci/golden_gate/models/update_ogg_deployment_details.py index 027625dc38..886cb13cca 100644 --- a/src/oci/golden_gate/models/update_ogg_deployment_details.py +++ b/src/oci/golden_gate/models/update_ogg_deployment_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -88,6 +88,9 @@ def __init__(self, **kwargs): 'key_secret_id': 'keySecretId', 'group_to_roles_mapping': 'groupToRolesMapping' } + self._redacted_field_paths = [ + ['admin_password'], + ] self._credential_store = None self._identity_domain_id = None self._password_secret_id = None @@ -336,7 +339,9 @@ def group_to_roles_mapping(self, group_to_roles_mapping): self._group_to_roles_mapping = group_to_roles_mapping def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_oracle_ai_data_platform_connection_details.py b/src/oci/golden_gate/models/update_oracle_ai_data_platform_connection_details.py index 72147ee79d..b71559fc20 100644 --- a/src/oci/golden_gate/models/update_oracle_ai_data_platform_connection_details.py +++ b/src/oci/golden_gate/models/update_oracle_ai_data_platform_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this UpdateOracleAiDataPlatformConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -160,6 +160,9 @@ def __init__(self, **kwargs): 'public_key_fingerprint': 'publicKeyFingerprint', 'should_use_resource_principal': 'shouldUseResourcePrincipal' } + self._redacted_field_paths = [ + ['private_key_passphrase'], + ] self._connection_type = None self._display_name = None self._description = None @@ -364,7 +367,9 @@ def private_key_file(self): Gets the private_key_file of this UpdateOracleAiDataPlatformConnectionDetails. The base64 encoded content of the private key file (PEM file) corresponding to the API key of the fingerprint. See documentation: https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm - Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The private_key_file of this UpdateOracleAiDataPlatformConnectionDetails. @@ -378,7 +383,9 @@ def private_key_file(self, private_key_file): Sets the private_key_file of this UpdateOracleAiDataPlatformConnectionDetails. The base64 encoded content of the private key file (PEM file) corresponding to the API key of the fingerprint. See documentation: https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm - Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param private_key_file: The private_key_file of this UpdateOracleAiDataPlatformConnectionDetails. @@ -391,7 +398,9 @@ def private_key_passphrase(self): """ Gets the private_key_passphrase of this UpdateOracleAiDataPlatformConnectionDetails. The passphrase of the private key. - Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The private_key_passphrase of this UpdateOracleAiDataPlatformConnectionDetails. @@ -404,7 +413,9 @@ def private_key_passphrase(self, private_key_passphrase): """ Sets the private_key_passphrase of this UpdateOracleAiDataPlatformConnectionDetails. The passphrase of the private key. - Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param private_key_passphrase: The private_key_passphrase of this UpdateOracleAiDataPlatformConnectionDetails. @@ -465,7 +476,9 @@ def should_use_resource_principal(self, should_use_resource_principal): self._should_use_resource_principal = should_use_resource_principal def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['private_key_passphrase']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_oracle_connection_details.py b/src/oci/golden_gate/models/update_oracle_connection_details.py index 1a2b51fdb7..64d5c568f3 100644 --- a/src/oci/golden_gate/models/update_oracle_connection_details.py +++ b/src/oci/golden_gate/models/update_oracle_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this UpdateOracleConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -160,6 +160,9 @@ def __init__(self, **kwargs): 'private_ip': 'privateIp', 'database_id': 'databaseId' } + self._redacted_field_paths = [ + ['password'], + ] self._connection_type = None self._display_name = None self._description = None @@ -218,7 +221,9 @@ def password(self): Gets the password of this UpdateOracleConnectionDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The password of this UpdateOracleConnectionDetails. @@ -232,7 +237,9 @@ def password(self, password): Sets the password of this UpdateOracleConnectionDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param password: The password of this UpdateOracleConnectionDetails. @@ -332,7 +339,9 @@ def wallet(self): Gets the wallet of this UpdateOracleConnectionDetails. The wallet contents Oracle GoldenGate uses to make connections to a database. This attribute is expected to be base64 encoded. - Deprecated: This field is deprecated and replaced by \"walletSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"walletSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The wallet of this UpdateOracleConnectionDetails. @@ -346,7 +355,9 @@ def wallet(self, wallet): Sets the wallet of this UpdateOracleConnectionDetails. The wallet contents Oracle GoldenGate uses to make connections to a database. This attribute is expected to be base64 encoded. - Deprecated: This field is deprecated and replaced by \"walletSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"walletSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param wallet: The wallet of this UpdateOracleConnectionDetails. @@ -399,7 +410,7 @@ def session_mode(self): The default is DIRECT, except when databaseId is provided and the discovered database relies on the SCAN listener. In this case, the default is REDIRECT. - Deprecated: Defaulting to the REDIRECT session mode will be removed after March 1, 2027. + Deprecated: Defaulting to the REDIRECT session mode will be removed after April 21, 2027. :return: The session_mode of this UpdateOracleConnectionDetails. @@ -420,7 +431,7 @@ def session_mode(self, session_mode): The default is DIRECT, except when databaseId is provided and the discovered database relies on the SCAN listener. In this case, the default is REDIRECT. - Deprecated: Defaulting to the REDIRECT session mode will be removed after March 1, 2027. + Deprecated: Defaulting to the REDIRECT session mode will be removed after April 21, 2027. :param session_mode: The session_mode of this UpdateOracleConnectionDetails. @@ -485,7 +496,9 @@ def database_id(self, database_id): self._database_id = database_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_oracle_nosql_connection_details.py b/src/oci/golden_gate/models/update_oracle_nosql_connection_details.py index 4df37d8f53..2ad8aecfc3 100644 --- a/src/oci/golden_gate/models/update_oracle_nosql_connection_details.py +++ b/src/oci/golden_gate/models/update_oracle_nosql_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this UpdateOracleNosqlConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -154,6 +154,9 @@ def __init__(self, **kwargs): 'public_key_fingerprint': 'publicKeyFingerprint', 'should_use_resource_principal': 'shouldUseResourcePrincipal' } + self._redacted_field_paths = [ + ['private_key_passphrase'], + ] self._connection_type = None self._display_name = None self._description = None @@ -269,7 +272,9 @@ def private_key_file(self): Gets the private_key_file of this UpdateOracleNosqlConnectionDetails. The base64 encoded content of the private key file (PEM file) corresponding to the API key of the fingerprint. See documentation: https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm - Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The private_key_file of this UpdateOracleNosqlConnectionDetails. @@ -283,7 +288,9 @@ def private_key_file(self, private_key_file): Sets the private_key_file of this UpdateOracleNosqlConnectionDetails. The base64 encoded content of the private key file (PEM file) corresponding to the API key of the fingerprint. See documentation: https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/managingcredentials.htm - Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param private_key_file: The private_key_file of this UpdateOracleNosqlConnectionDetails. @@ -328,7 +335,9 @@ def private_key_passphrase(self): """ Gets the private_key_passphrase of this UpdateOracleNosqlConnectionDetails. The passphrase of the private key. - Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The private_key_passphrase of this UpdateOracleNosqlConnectionDetails. @@ -341,7 +350,9 @@ def private_key_passphrase(self, private_key_passphrase): """ Sets the private_key_passphrase of this UpdateOracleNosqlConnectionDetails. The passphrase of the private key. - Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param private_key_passphrase: The private_key_passphrase of this UpdateOracleNosqlConnectionDetails. @@ -432,7 +443,9 @@ def should_use_resource_principal(self, should_use_resource_principal): self._should_use_resource_principal = should_use_resource_principal def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['private_key_passphrase']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_polaris_iceberg_catalog_details.py b/src/oci/golden_gate/models/update_polaris_iceberg_catalog_details.py index 1a10370ff5..172699657c 100644 --- a/src/oci/golden_gate/models/update_polaris_iceberg_catalog_details.py +++ b/src/oci/golden_gate/models/update_polaris_iceberg_catalog_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .update_iceberg_catalog_details import UpdateIcebergCatalogDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -69,6 +69,9 @@ def __init__(self, **kwargs): 'client_secret': 'clientSecret', 'principal_role': 'principalRole' } + self._redacted_field_paths = [ + ['client_secret'], + ] self._catalog_type = None self._uri = None self._name = None @@ -229,7 +232,9 @@ def principal_role(self, principal_role): self._principal_role = principal_role def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['client_secret']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_postgresql_connection_details.py b/src/oci/golden_gate/models/update_postgresql_connection_details.py index ad8815cb9e..b23be5e366 100644 --- a/src/oci/golden_gate/models/update_postgresql_connection_details.py +++ b/src/oci/golden_gate/models/update_postgresql_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this UpdatePostgresqlConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -196,6 +196,9 @@ def __init__(self, **kwargs): 'private_ip': 'privateIp', 'db_system_id': 'dbSystemId' } + self._redacted_field_paths = [ + ['password'], + ] self._connection_type = None self._display_name = None self._description = None @@ -332,7 +335,9 @@ def password(self): Gets the password of this UpdatePostgresqlConnectionDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The password of this UpdatePostgresqlConnectionDetails. @@ -346,7 +351,9 @@ def password(self, password): Sets the password of this UpdatePostgresqlConnectionDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param password: The password of this UpdatePostgresqlConnectionDetails. @@ -549,7 +556,9 @@ def ssl_key(self): """ Gets the ssl_key of this UpdatePostgresqlConnectionDetails. The base64 encoded private key of the PostgreSQL server. The supported file formats are .pem and .crt. - Deprecated: This field is deprecated and replaced by \"sslKeySecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"sslKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The ssl_key of this UpdatePostgresqlConnectionDetails. @@ -562,7 +571,9 @@ def ssl_key(self, ssl_key): """ Sets the ssl_key of this UpdatePostgresqlConnectionDetails. The base64 encoded private key of the PostgreSQL server. The supported file formats are .pem and .crt. - Deprecated: This field is deprecated and replaced by \"sslKeySecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"sslKeySecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param ssl_key: The ssl_key of this UpdatePostgresqlConnectionDetails. @@ -657,7 +668,9 @@ def db_system_id(self, db_system_id): self._db_system_id = db_system_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_redis_connection_details.py b/src/oci/golden_gate/models/update_redis_connection_details.py index cc3ae297de..a7ce08e3f1 100644 --- a/src/oci/golden_gate/models/update_redis_connection_details.py +++ b/src/oci/golden_gate/models/update_redis_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this UpdateRedisConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -190,6 +190,11 @@ def __init__(self, **kwargs): 'key_store_password_secret_id': 'keyStorePasswordSecretId', 'redis_cluster_id': 'redisClusterId' } + self._redacted_field_paths = [ + ['password'], + ['trust_store_password'], + ['key_store_password'], + ] self._connection_type = None self._display_name = None self._description = None @@ -331,7 +336,9 @@ def password(self): Gets the password of this UpdateRedisConnectionDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The password of this UpdateRedisConnectionDetails. @@ -345,7 +352,9 @@ def password(self, password): Sets the password of this UpdateRedisConnectionDetails. The password Oracle GoldenGate uses to connect the associated system of the given technology. It must conform to the specific security requirements including length, case sensitivity, and so on. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param password: The password of this UpdateRedisConnectionDetails. @@ -394,7 +403,9 @@ def trust_store(self): """ Gets the trust_store of this UpdateRedisConnectionDetails. The base64 encoded content of the TrustStore file. - Deprecated: This field is deprecated and replaced by \"trustStoreSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"trustStoreSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The trust_store of this UpdateRedisConnectionDetails. @@ -407,7 +418,9 @@ def trust_store(self, trust_store): """ Sets the trust_store of this UpdateRedisConnectionDetails. The base64 encoded content of the TrustStore file. - Deprecated: This field is deprecated and replaced by \"trustStoreSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"trustStoreSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param trust_store: The trust_store of this UpdateRedisConnectionDetails. @@ -450,7 +463,9 @@ def trust_store_password(self): """ Gets the trust_store_password of this UpdateRedisConnectionDetails. The TrustStore password. - Deprecated: This field is deprecated and replaced by \"trustStorePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"trustStorePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The trust_store_password of this UpdateRedisConnectionDetails. @@ -463,7 +478,9 @@ def trust_store_password(self, trust_store_password): """ Sets the trust_store_password of this UpdateRedisConnectionDetails. The TrustStore password. - Deprecated: This field is deprecated and replaced by \"trustStorePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"trustStorePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param trust_store_password: The trust_store_password of this UpdateRedisConnectionDetails. @@ -506,7 +523,9 @@ def key_store(self): """ Gets the key_store of this UpdateRedisConnectionDetails. The base64 encoded content of the KeyStore file. - Deprecated: This field is deprecated and replaced by \"keyStoreSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"keyStoreSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The key_store of this UpdateRedisConnectionDetails. @@ -519,7 +538,9 @@ def key_store(self, key_store): """ Sets the key_store of this UpdateRedisConnectionDetails. The base64 encoded content of the KeyStore file. - Deprecated: This field is deprecated and replaced by \"keyStoreSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"keyStoreSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param key_store: The key_store of this UpdateRedisConnectionDetails. @@ -562,7 +583,9 @@ def key_store_password(self): """ Gets the key_store_password of this UpdateRedisConnectionDetails. The KeyStore password. - Deprecated: This field is deprecated and replaced by \"keyStorePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"keyStorePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The key_store_password of this UpdateRedisConnectionDetails. @@ -575,7 +598,9 @@ def key_store_password(self, key_store_password): """ Sets the key_store_password of this UpdateRedisConnectionDetails. The KeyStore password. - Deprecated: This field is deprecated and replaced by \"keyStorePasswordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"keyStorePasswordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param key_store_password: The key_store_password of this UpdateRedisConnectionDetails. @@ -642,7 +667,11 @@ def redis_cluster_id(self, redis_cluster_id): self._redis_cluster_id = redis_cluster_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['trust_store_password']) + redact_password_field(as_dict, ['key_store_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_snowflake_connection_details.py b/src/oci/golden_gate/models/update_snowflake_connection_details.py index 2c1d3ce9b6..9cf15a2abe 100644 --- a/src/oci/golden_gate/models/update_snowflake_connection_details.py +++ b/src/oci/golden_gate/models/update_snowflake_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -23,7 +23,7 @@ def __init__(self, **kwargs): :param connection_type: The value to assign to the connection_type property of this UpdateSnowflakeConnectionDetails. - Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG" + Allowed values for this property are: "GOLDENGATE", "KAFKA", "KAFKA_SCHEMA_REGISTRY", "MYSQL", "JAVA_MESSAGE_SERVICE", "MICROSOFT_SQLSERVER", "OCI_OBJECT_STORAGE", "ORACLE", "AZURE_DATA_LAKE_STORAGE", "POSTGRESQL", "AZURE_SYNAPSE_ANALYTICS", "SNOWFLAKE", "AMAZON_S3", "HDFS", "ORACLE_AI_DATA_PLATFORM", "ORACLE_NOSQL", "MONGODB", "AMAZON_KINESIS", "AMAZON_REDSHIFT", "DB2", "REDIS", "ELASTICSEARCH", "GENERIC", "GOOGLE_CLOUD_STORAGE", "GOOGLE_BIGQUERY", "DATABRICKS", "GOOGLE_PUBSUB", "MICROSOFT_FABRIC", "ICEBERG", "AI_MODEL" :type connection_type: str :param display_name: @@ -154,6 +154,10 @@ def __init__(self, **kwargs): 'private_key_passphrase': 'privateKeyPassphrase', 'private_key_passphrase_secret_id': 'privateKeyPassphraseSecretId' } + self._redacted_field_paths = [ + ['password'], + ['private_key_passphrase'], + ] self._connection_type = None self._display_name = None self._description = None @@ -258,7 +262,9 @@ def password(self): """ Gets the password of this UpdateSnowflakeConnectionDetails. The password Oracle GoldenGate uses to connect to Snowflake platform. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The password of this UpdateSnowflakeConnectionDetails. @@ -271,7 +277,9 @@ def password(self, password): """ Sets the password of this UpdateSnowflakeConnectionDetails. The password Oracle GoldenGate uses to connect to Snowflake platform. - Deprecated: This field is deprecated and replaced by \"passwordSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"passwordSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param password: The password of this UpdateSnowflakeConnectionDetails. @@ -314,7 +322,9 @@ def private_key_file(self): """ Gets the private_key_file of this UpdateSnowflakeConnectionDetails. The base64 encoded content of private key file in PEM format. - Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The private_key_file of this UpdateSnowflakeConnectionDetails. @@ -327,7 +337,9 @@ def private_key_file(self, private_key_file): """ Sets the private_key_file of this UpdateSnowflakeConnectionDetails. The base64 encoded content of private key file in PEM format. - Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"privateKeyFileSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param private_key_file: The private_key_file of this UpdateSnowflakeConnectionDetails. @@ -372,7 +384,9 @@ def private_key_passphrase(self): """ Gets the private_key_passphrase of this UpdateSnowflakeConnectionDetails. Password if the private key file is encrypted. - Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :return: The private_key_passphrase of this UpdateSnowflakeConnectionDetails. @@ -385,7 +399,9 @@ def private_key_passphrase(self, private_key_passphrase): """ Sets the private_key_passphrase of this UpdateSnowflakeConnectionDetails. Password if the private key file is encrypted. - Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". This field will be removed after February 15 2026. + Deprecated: This field is deprecated and replaced by \"privateKeyPassphraseSecretId\". + This change follows the GoldenGate \"Plain Text Fields in Connections\" deprecation: + https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate :param private_key_passphrase: The private_key_passphrase of this UpdateSnowflakeConnectionDetails. @@ -424,7 +440,10 @@ def private_key_passphrase_secret_id(self, private_key_passphrase_secret_id): self._private_key_passphrase_secret_id = private_key_passphrase_secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['private_key_passphrase']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/identity/models/auth_token.py b/src/oci/identity/models/auth_token.py index 25bd00025d..7456e2c074 100644 --- a/src/oci/identity/models/auth_token.py +++ b/src/oci/identity/models/auth_token.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -106,6 +106,9 @@ def __init__(self, **kwargs): 'lifecycle_state': 'lifecycleState', 'inactive_status': 'inactiveStatus' } + self._redacted_field_paths = [ + ['token'], + ] self._token = None self._id = None self._user_id = None @@ -332,7 +335,9 @@ def inactive_status(self, inactive_status): self._inactive_status = inactive_status def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['token']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/identity_domains/models/user_password_resetter.py b/src/oci/identity_domains/models/user_password_resetter.py index c5ab0abc24..4d87bf9be5 100644 --- a/src/oci/identity_domains/models/user_password_resetter.py +++ b/src/oci/identity_domains/models/user_password_resetter.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: v1 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -159,6 +159,9 @@ def __init__(self, **kwargs): 'one_time_password': 'oneTimePassword', 'urn_ietf_params_scim_schemas_oracle_idcs_extension_self_change_user': 'urn:ietf:params:scim:schemas:oracle:idcs:extension:selfChange:User' } + self._redacted_field_paths = [ + ['one_time_password'], + ] self._id = None self._ocid = None self._schemas = None @@ -941,7 +944,9 @@ def urn_ietf_params_scim_schemas_oracle_idcs_extension_self_change_user(self, ur self._urn_ietf_params_scim_schemas_oracle_idcs_extension_self_change_user = urn_ietf_params_scim_schemas_oracle_idcs_extension_self_change_user def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['one_time_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/iot/models/apex_data_access_details.py b/src/oci/iot/models/apex_data_access_details.py index 6e13e4f21a..f8d264828a 100644 --- a/src/oci/iot/models/apex_data_access_details.py +++ b/src/oci/iot/models/apex_data_access_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20250531 from .configure_iot_domain_data_access_details import ConfigureIotDomainDataAccessDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -39,6 +39,9 @@ def __init__(self, **kwargs): 'type': 'type', 'db_workspace_admin_initial_password': 'dbWorkspaceAdminInitialPassword' } + self._redacted_field_paths = [ + ['db_workspace_admin_initial_password'], + ] self._type = None self._db_workspace_admin_initial_password = None self._type = 'APEX' @@ -68,7 +71,9 @@ def db_workspace_admin_initial_password(self, db_workspace_admin_initial_passwor self._db_workspace_admin_initial_password = db_workspace_admin_initial_password def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['db_workspace_admin_initial_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/key_management/models/create_vault_details.py b/src/oci/key_management/models/create_vault_details.py index 0f9816c4cc..c2d8884afa 100644 --- a/src/oci/key_management/models/create_vault_details.py +++ b/src/oci/key_management/models/create_vault_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: release -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -74,6 +74,9 @@ def __init__(self, **kwargs): 'external_key_manager_metadata': 'externalKeyManagerMetadata', 'vault_type': 'vaultType' } + self._redacted_field_paths = [ + ['external_key_manager_metadata', 'oauth_metadata', 'client_app_secret'], + ] self._compartment_id = None self._defined_tags = None self._display_name = None @@ -247,7 +250,9 @@ def vault_type(self, vault_type): self._vault_type = vault_type def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['external_key_manager_metadata', 'oauth_metadata', 'client_app_secret']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/key_management/models/external_key_manager_metadata.py b/src/oci/key_management/models/external_key_manager_metadata.py index d99432595e..b1bceeeefc 100644 --- a/src/oci/key_management/models/external_key_manager_metadata.py +++ b/src/oci/key_management/models/external_key_manager_metadata.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: release -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -43,6 +43,9 @@ def __init__(self, **kwargs): 'external_vault_endpoint_url': 'externalVaultEndpointUrl', 'private_endpoint_id': 'privateEndpointId' } + self._redacted_field_paths = [ + ['oauth_metadata', 'client_app_secret'], + ] self._oauth_metadata = None self._external_vault_endpoint_url = None self._private_endpoint_id = None @@ -116,7 +119,9 @@ def private_endpoint_id(self, private_endpoint_id): self._private_endpoint_id = private_endpoint_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['oauth_metadata', 'client_app_secret']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/key_management/models/oauth_metadata.py b/src/oci/key_management/models/oauth_metadata.py index 8a11639fec..68b4af762d 100644 --- a/src/oci/key_management/models/oauth_metadata.py +++ b/src/oci/key_management/models/oauth_metadata.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: release -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -43,6 +43,9 @@ def __init__(self, **kwargs): 'client_app_id': 'clientAppId', 'client_app_secret': 'clientAppSecret' } + self._redacted_field_paths = [ + ['client_app_secret'], + ] self._idcs_account_name_url = None self._client_app_id = None self._client_app_secret = None @@ -120,7 +123,9 @@ def client_app_secret(self, client_app_secret): self._client_app_secret = client_app_secret def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['client_app_secret']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/lockbox/models/access_materials.py b/src/oci/lockbox/models/access_materials.py index 55c3f3370e..e5ace8a7b2 100644 --- a/src/oci/lockbox/models/access_materials.py +++ b/src/oci/lockbox/models/access_materials.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220126 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -31,6 +31,9 @@ def __init__(self, **kwargs): self.attribute_map = { 'details': 'details' } + self._redacted_field_paths = [ + ['details', '*'], + ] self._details = None @property @@ -58,7 +61,9 @@ def details(self, details): self._details = details def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['details', '*']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/mysql/models/create_channel_source_from_mysql_details.py b/src/oci/mysql/models/create_channel_source_from_mysql_details.py index 7060743e54..765ac2b0fe 100644 --- a/src/oci/mysql/models/create_channel_source_from_mysql_details.py +++ b/src/oci/mysql/models/create_channel_source_from_mysql_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190415 from .create_channel_source_details import CreateChannelSourceDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -81,6 +81,9 @@ def __init__(self, **kwargs): 'anonymous_transactions_handling': 'anonymousTransactionsHandling', 'must_use_ipv6_on_dual_stack': 'mustUseIpv6OnDualStack' } + self._redacted_field_paths = [ + ['password'], + ] self._source_type = None self._hostname = None self._port = None @@ -293,7 +296,9 @@ def must_use_ipv6_on_dual_stack(self, must_use_ipv6_on_dual_stack): self._must_use_ipv6_on_dual_stack = must_use_ipv6_on_dual_stack def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/mysql/models/create_db_system_details.py b/src/oci/mysql/models/create_db_system_details.py index 7198ce2566..64af3951d5 100644 --- a/src/oci/mysql/models/create_db_system_details.py +++ b/src/oci/mysql/models/create_db_system_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190415 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -277,6 +277,9 @@ def __init__(self, **kwargs): 'read_endpoint': 'readEndpoint', 'telemetry_configuration': 'telemetryConfiguration' } + self._redacted_field_paths = [ + ['admin_password'], + ] self._display_name = None self._description = None self._compartment_id = None @@ -1336,7 +1339,9 @@ def telemetry_configuration(self, telemetry_configuration): self._telemetry_configuration = telemetry_configuration def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/mysql/models/create_db_system_source_from_db_system_channel_details.py b/src/oci/mysql/models/create_db_system_source_from_db_system_channel_details.py index ec2ad2c71b..2c379fe613 100644 --- a/src/oci/mysql/models/create_db_system_source_from_db_system_channel_details.py +++ b/src/oci/mysql/models/create_db_system_source_from_db_system_channel_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190415 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -72,6 +72,9 @@ def __init__(self, **kwargs): 'ssl_ca_certificate': 'sslCaCertificate', 'applier_username': 'applierUsername' } + self._redacted_field_paths = [ + ['source_password'], + ] self._source_username = None self._source_password = None self._ssl_mode = None @@ -216,7 +219,9 @@ def applier_username(self, applier_username): self._applier_username = applier_username def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['source_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/mysql/models/create_db_system_source_from_db_system_details.py b/src/oci/mysql/models/create_db_system_source_from_db_system_details.py index 302226a7ed..eb8c14bbb7 100644 --- a/src/oci/mysql/models/create_db_system_source_from_db_system_details.py +++ b/src/oci/mysql/models/create_db_system_source_from_db_system_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190415 from .create_db_system_source_details import CreateDbSystemSourceDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -53,6 +53,9 @@ def __init__(self, **kwargs): 'region': 'region', 'channel': 'channel' } + self._redacted_field_paths = [ + ['channel', 'source_password'], + ] self._source_type = None self._db_system_id = None self._region = None @@ -136,7 +139,9 @@ def channel(self, channel): self._channel = channel def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['channel', 'source_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/mysql/models/create_db_system_source_import_from_url_details.py b/src/oci/mysql/models/create_db_system_source_import_from_url_details.py index 6bf6d08c4b..58bf8930a5 100644 --- a/src/oci/mysql/models/create_db_system_source_import_from_url_details.py +++ b/src/oci/mysql/models/create_db_system_source_import_from_url_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190415 from .create_db_system_source_details import CreateDbSystemSourceDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -39,6 +39,9 @@ def __init__(self, **kwargs): 'source_type': 'sourceType', 'source_url': 'sourceUrl' } + self._redacted_field_paths = [ + ['source_url'], + ] self._source_type = None self._source_url = None self._source_type = 'IMPORTURL' @@ -80,7 +83,9 @@ def source_url(self, source_url): self._source_url = source_url def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['source_url']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/mysql/models/update_channel_source_from_mysql_details.py b/src/oci/mysql/models/update_channel_source_from_mysql_details.py index 87770ce0a0..96d747d5d3 100644 --- a/src/oci/mysql/models/update_channel_source_from_mysql_details.py +++ b/src/oci/mysql/models/update_channel_source_from_mysql_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190415 from .update_channel_source_details import UpdateChannelSourceDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -81,6 +81,9 @@ def __init__(self, **kwargs): 'anonymous_transactions_handling': 'anonymousTransactionsHandling', 'must_use_ipv6_on_dual_stack': 'mustUseIpv6OnDualStack' } + self._redacted_field_paths = [ + ['password'], + ] self._source_type = None self._hostname = None self._port = None @@ -293,7 +296,9 @@ def must_use_ipv6_on_dual_stack(self, must_use_ipv6_on_dual_stack): self._must_use_ipv6_on_dual_stack = must_use_ipv6_on_dual_stack def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/mysql/models/update_db_system_details.py b/src/oci/mysql/models/update_db_system_details.py index cfd5fa97bb..d3c69c1142 100644 --- a/src/oci/mysql/models/update_db_system_details.py +++ b/src/oci/mysql/models/update_db_system_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190415 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -265,6 +265,9 @@ def __init__(self, **kwargs): 'read_endpoint': 'readEndpoint', 'telemetry_configuration': 'telemetryConfiguration' } + self._redacted_field_paths = [ + ['admin_password'], + ] self._display_name = None self._description = None self._subnet_id = None @@ -1292,7 +1295,9 @@ def telemetry_configuration(self, telemetry_configuration): self._telemetry_configuration = telemetry_configuration def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['admin_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/oda/models/create_android_channel_result.py b/src/oci/oda/models/create_android_channel_result.py index 5a297ed113..849c16ec4a 100644 --- a/src/oci/oda/models/create_android_channel_result.py +++ b/src/oci/oda/models/create_android_channel_result.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190506 from .create_channel_result import CreateChannelResult -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -119,6 +119,9 @@ def __init__(self, **kwargs): 'is_client_authentication_enabled': 'isClientAuthenticationEnabled', 'bot_id': 'botId' } + self._redacted_field_paths = [ + ['secret_key'], + ] self._id = None self._name = None self._description = None @@ -235,7 +238,9 @@ def bot_id(self, bot_id): self._bot_id = bot_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['secret_key']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/oda/models/create_app_event_channel_result.py b/src/oci/oda/models/create_app_event_channel_result.py index f9cca7342b..f962d5a40a 100644 --- a/src/oci/oda/models/create_app_event_channel_result.py +++ b/src/oci/oda/models/create_app_event_channel_result.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190506 from .create_channel_result import CreateChannelResult -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -119,6 +119,9 @@ def __init__(self, **kwargs): 'event_sink_bot_ids': 'eventSinkBotIds', 'webhook_url': 'webhookUrl' } + self._redacted_field_paths = [ + ['secret_key'], + ] self._id = None self._name = None self._description = None @@ -237,7 +240,9 @@ def webhook_url(self, webhook_url): self._webhook_url = webhook_url def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['secret_key']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/oda/models/create_application_channel_result.py b/src/oci/oda/models/create_application_channel_result.py index c9120e3bb3..0fd09c93fc 100644 --- a/src/oci/oda/models/create_application_channel_result.py +++ b/src/oci/oda/models/create_application_channel_result.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190506 from .create_channel_result import CreateChannelResult -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -119,6 +119,9 @@ def __init__(self, **kwargs): 'is_authenticated_user_id': 'isAuthenticatedUserId', 'webhook_url': 'webhookUrl' } + self._redacted_field_paths = [ + ['secret_key'], + ] self._id = None self._name = None self._description = None @@ -237,7 +240,9 @@ def webhook_url(self, webhook_url): self._webhook_url = webhook_url def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['secret_key']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/oda/models/create_authentication_provider_details.py b/src/oci/oda/models/create_authentication_provider_details.py index df0027ca00..8c31968279 100644 --- a/src/oci/oda/models/create_authentication_provider_details.py +++ b/src/oci/oda/models/create_authentication_provider_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190506 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -147,6 +147,9 @@ def __init__(self, **kwargs): 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags' } + self._redacted_field_paths = [ + ['client_secret'], + ] self._grant_type = None self._identity_provider = None self._name = None @@ -583,7 +586,9 @@ def defined_tags(self, defined_tags): self._defined_tags = defined_tags def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['client_secret']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/oda/models/create_cortana_channel_details.py b/src/oci/oda/models/create_cortana_channel_details.py index 7a0de8291f..dce15ca324 100644 --- a/src/oci/oda/models/create_cortana_channel_details.py +++ b/src/oci/oda/models/create_cortana_channel_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190506 from .create_channel_details import CreateChannelDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -81,6 +81,9 @@ def __init__(self, **kwargs): 'msa_app_password': 'msaAppPassword', 'bot_id': 'botId' } + self._redacted_field_paths = [ + ['msa_app_password'], + ] self._name = None self._description = None self._type = None @@ -165,7 +168,9 @@ def bot_id(self, bot_id): self._bot_id = bot_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['msa_app_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/oda/models/create_facebook_channel_details.py b/src/oci/oda/models/create_facebook_channel_details.py index 01522ad2da..9b15684531 100644 --- a/src/oci/oda/models/create_facebook_channel_details.py +++ b/src/oci/oda/models/create_facebook_channel_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190506 from .create_channel_details import CreateChannelDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -81,6 +81,10 @@ def __init__(self, **kwargs): 'page_access_token': 'pageAccessToken', 'bot_id': 'botId' } + self._redacted_field_paths = [ + ['app_secret'], + ['page_access_token'], + ] self._name = None self._description = None self._type = None @@ -165,7 +169,10 @@ def bot_id(self, bot_id): self._bot_id = bot_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['app_secret']) + redact_password_field(as_dict, ['page_access_token']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/oda/models/create_ios_channel_result.py b/src/oci/oda/models/create_ios_channel_result.py index 14dfaac7cc..95b441d458 100644 --- a/src/oci/oda/models/create_ios_channel_result.py +++ b/src/oci/oda/models/create_ios_channel_result.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190506 from .create_channel_result import CreateChannelResult -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -119,6 +119,9 @@ def __init__(self, **kwargs): 'is_client_authentication_enabled': 'isClientAuthenticationEnabled', 'bot_id': 'botId' } + self._redacted_field_paths = [ + ['secret_key'], + ] self._id = None self._name = None self._description = None @@ -235,7 +238,9 @@ def bot_id(self, bot_id): self._bot_id = bot_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['secret_key']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/oda/models/create_ms_teams_channel_details.py b/src/oci/oda/models/create_ms_teams_channel_details.py index 20c2cbe76c..a8a2fca076 100644 --- a/src/oci/oda/models/create_ms_teams_channel_details.py +++ b/src/oci/oda/models/create_ms_teams_channel_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190506 from .create_channel_details import CreateChannelDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -81,6 +81,9 @@ def __init__(self, **kwargs): 'msa_app_password': 'msaAppPassword', 'bot_id': 'botId' } + self._redacted_field_paths = [ + ['msa_app_password'], + ] self._name = None self._description = None self._type = None @@ -165,7 +168,9 @@ def bot_id(self, bot_id): self._bot_id = bot_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['msa_app_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/oda/models/create_oss_channel_details.py b/src/oci/oda/models/create_oss_channel_details.py index aac6f1be40..4659da8293 100644 --- a/src/oci/oda/models/create_oss_channel_details.py +++ b/src/oci/oda/models/create_oss_channel_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190506 from .create_channel_details import CreateChannelDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -123,6 +123,9 @@ def __init__(self, **kwargs): 'stream_pool_id': 'streamPoolId', 'auth_token': 'authToken' } + self._redacted_field_paths = [ + ['auth_token'], + ] self._name = None self._description = None self._type = None @@ -382,7 +385,9 @@ def auth_token(self, auth_token): self._auth_token = auth_token def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['auth_token']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/oda/models/create_osvc_channel_details.py b/src/oci/oda/models/create_osvc_channel_details.py index 98b0e04775..96a2d8eea9 100644 --- a/src/oci/oda/models/create_osvc_channel_details.py +++ b/src/oci/oda/models/create_osvc_channel_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190506 from .create_channel_details import CreateChannelDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -120,6 +120,9 @@ def __init__(self, **kwargs): 'authentication_provider_name': 'authenticationProviderName', 'bot_id': 'botId' } + self._redacted_field_paths = [ + ['password'], + ] self._name = None self._description = None self._type = None @@ -350,7 +353,9 @@ def bot_id(self, bot_id): self._bot_id = bot_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/oda/models/create_service_cloud_channel_details.py b/src/oci/oda/models/create_service_cloud_channel_details.py index 39b9f1894d..28b895951f 100644 --- a/src/oci/oda/models/create_service_cloud_channel_details.py +++ b/src/oci/oda/models/create_service_cloud_channel_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190506 from .create_channel_details import CreateChannelDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -102,6 +102,9 @@ def __init__(self, **kwargs): 'password': 'password', 'client_type': 'clientType' } + self._redacted_field_paths = [ + ['password'], + ] self._name = None self._description = None self._type = None @@ -271,7 +274,9 @@ def client_type(self, client_type): self._client_type = client_type def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/oda/models/create_slack_channel_details.py b/src/oci/oda/models/create_slack_channel_details.py index d6c8e4cd4b..c32fc939cc 100644 --- a/src/oci/oda/models/create_slack_channel_details.py +++ b/src/oci/oda/models/create_slack_channel_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190506 from .create_channel_details import CreateChannelDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -99,6 +99,10 @@ def __init__(self, **kwargs): 'client_secret': 'clientSecret', 'bot_id': 'botId' } + self._redacted_field_paths = [ + ['signing_secret'], + ['client_secret'], + ] self._name = None self._description = None self._type = None @@ -258,7 +262,10 @@ def bot_id(self, bot_id): self._bot_id = bot_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['signing_secret']) + redact_password_field(as_dict, ['client_secret']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/oda/models/create_test_channel_result.py b/src/oci/oda/models/create_test_channel_result.py index f3cc847b26..29a6422ff5 100644 --- a/src/oci/oda/models/create_test_channel_result.py +++ b/src/oci/oda/models/create_test_channel_result.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190506 from .create_channel_result import CreateChannelResult -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -107,6 +107,9 @@ def __init__(self, **kwargs): 'secret_key': 'secretKey', 'webhook_url': 'webhookUrl' } + self._redacted_field_paths = [ + ['secret_key'], + ] self._id = None self._name = None self._description = None @@ -175,7 +178,9 @@ def webhook_url(self, webhook_url): self._webhook_url = webhook_url def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['secret_key']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/oda/models/create_translator_details.py b/src/oci/oda/models/create_translator_details.py index 9e28c2471c..bdb290b1d7 100644 --- a/src/oci/oda/models/create_translator_details.py +++ b/src/oci/oda/models/create_translator_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190506 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -70,6 +70,9 @@ def __init__(self, **kwargs): 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags' } + self._redacted_field_paths = [ + ['auth_token'], + ] self._type = None self._base_url = None self._auth_token = None @@ -235,7 +238,9 @@ def defined_tags(self, defined_tags): self._defined_tags = defined_tags def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['auth_token']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/oda/models/create_twilio_channel_details.py b/src/oci/oda/models/create_twilio_channel_details.py index 81ae098481..02ba6e6f82 100644 --- a/src/oci/oda/models/create_twilio_channel_details.py +++ b/src/oci/oda/models/create_twilio_channel_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190506 from .create_channel_details import CreateChannelDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -99,6 +99,9 @@ def __init__(self, **kwargs): 'original_connectors_url': 'originalConnectorsUrl', 'bot_id': 'botId' } + self._redacted_field_paths = [ + ['auth_token'], + ] self._name = None self._description = None self._type = None @@ -258,7 +261,9 @@ def bot_id(self, bot_id): self._bot_id = bot_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['auth_token']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/oda/models/create_web_channel_result.py b/src/oci/oda/models/create_web_channel_result.py index 8c18fdef77..2193784e9c 100644 --- a/src/oci/oda/models/create_web_channel_result.py +++ b/src/oci/oda/models/create_web_channel_result.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190506 from .create_channel_result import CreateChannelResult -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -125,6 +125,9 @@ def __init__(self, **kwargs): 'allowed_domains': 'allowedDomains', 'bot_id': 'botId' } + self._redacted_field_paths = [ + ['secret_key'], + ] self._id = None self._name = None self._description = None @@ -278,7 +281,9 @@ def bot_id(self, bot_id): self._bot_id = bot_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['secret_key']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/oda/models/create_webhook_channel_result.py b/src/oci/oda/models/create_webhook_channel_result.py index 8fff4d3e60..319e50fa45 100644 --- a/src/oci/oda/models/create_webhook_channel_result.py +++ b/src/oci/oda/models/create_webhook_channel_result.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190506 from .create_channel_result import CreateChannelResult -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -138,6 +138,9 @@ def __init__(self, **kwargs): 'bot_id': 'botId', 'webhook_url': 'webhookUrl' } + self._redacted_field_paths = [ + ['secret_key'], + ] self._id = None self._name = None self._description = None @@ -287,7 +290,9 @@ def webhook_url(self, webhook_url): self._webhook_url = webhook_url def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['secret_key']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/oda/models/update_authentication_provider_details.py b/src/oci/oda/models/update_authentication_provider_details.py index 081755f623..39af1d499e 100644 --- a/src/oci/oda/models/update_authentication_provider_details.py +++ b/src/oci/oda/models/update_authentication_provider_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190506 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -97,6 +97,9 @@ def __init__(self, **kwargs): 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags' } + self._redacted_field_paths = [ + ['client_secret'], + ] self._token_endpoint_url = None self._authorization_endpoint_url = None self._short_authorization_code_request_url = None @@ -419,7 +422,9 @@ def defined_tags(self, defined_tags): self._defined_tags = defined_tags def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['client_secret']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/oda/models/update_cortana_channel_details.py b/src/oci/oda/models/update_cortana_channel_details.py index 59567332a5..3192a0b9ac 100644 --- a/src/oci/oda/models/update_cortana_channel_details.py +++ b/src/oci/oda/models/update_cortana_channel_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190506 from .update_channel_details import UpdateChannelDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -81,6 +81,9 @@ def __init__(self, **kwargs): 'msa_app_password': 'msaAppPassword', 'bot_id': 'botId' } + self._redacted_field_paths = [ + ['msa_app_password'], + ] self._name = None self._description = None self._type = None @@ -165,7 +168,9 @@ def bot_id(self, bot_id): self._bot_id = bot_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['msa_app_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/oda/models/update_facebook_channel_details.py b/src/oci/oda/models/update_facebook_channel_details.py index 6c7e149fa3..f23e0041ae 100644 --- a/src/oci/oda/models/update_facebook_channel_details.py +++ b/src/oci/oda/models/update_facebook_channel_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190506 from .update_channel_details import UpdateChannelDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -81,6 +81,10 @@ def __init__(self, **kwargs): 'page_access_token': 'pageAccessToken', 'bot_id': 'botId' } + self._redacted_field_paths = [ + ['app_secret'], + ['page_access_token'], + ] self._name = None self._description = None self._type = None @@ -165,7 +169,10 @@ def bot_id(self, bot_id): self._bot_id = bot_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['app_secret']) + redact_password_field(as_dict, ['page_access_token']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/oda/models/update_ms_teams_channel_details.py b/src/oci/oda/models/update_ms_teams_channel_details.py index acd67107eb..9c3f8fdd43 100644 --- a/src/oci/oda/models/update_ms_teams_channel_details.py +++ b/src/oci/oda/models/update_ms_teams_channel_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190506 from .update_channel_details import UpdateChannelDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -81,6 +81,9 @@ def __init__(self, **kwargs): 'msa_app_password': 'msaAppPassword', 'bot_id': 'botId' } + self._redacted_field_paths = [ + ['msa_app_password'], + ] self._name = None self._description = None self._type = None @@ -165,7 +168,9 @@ def bot_id(self, bot_id): self._bot_id = bot_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['msa_app_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/oda/models/update_oss_channel_details.py b/src/oci/oda/models/update_oss_channel_details.py index e6c5870897..fa1f3e78eb 100644 --- a/src/oci/oda/models/update_oss_channel_details.py +++ b/src/oci/oda/models/update_oss_channel_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190506 from .update_channel_details import UpdateChannelDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -123,6 +123,9 @@ def __init__(self, **kwargs): 'stream_pool_id': 'streamPoolId', 'auth_token': 'authToken' } + self._redacted_field_paths = [ + ['auth_token'], + ] self._name = None self._description = None self._type = None @@ -382,7 +385,9 @@ def auth_token(self, auth_token): self._auth_token = auth_token def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['auth_token']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/oda/models/update_osvc_channel_details.py b/src/oci/oda/models/update_osvc_channel_details.py index 9f7f72e9e6..73e445ec3c 100644 --- a/src/oci/oda/models/update_osvc_channel_details.py +++ b/src/oci/oda/models/update_osvc_channel_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190506 from .update_channel_details import UpdateChannelDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -120,6 +120,9 @@ def __init__(self, **kwargs): 'authentication_provider_name': 'authenticationProviderName', 'bot_id': 'botId' } + self._redacted_field_paths = [ + ['password'], + ] self._name = None self._description = None self._type = None @@ -350,7 +353,9 @@ def bot_id(self, bot_id): self._bot_id = bot_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/oda/models/update_service_cloud_channel_details.py b/src/oci/oda/models/update_service_cloud_channel_details.py index 6c5eabfb40..fd95cb89d2 100644 --- a/src/oci/oda/models/update_service_cloud_channel_details.py +++ b/src/oci/oda/models/update_service_cloud_channel_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190506 from .update_channel_details import UpdateChannelDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -102,6 +102,9 @@ def __init__(self, **kwargs): 'password': 'password', 'client_type': 'clientType' } + self._redacted_field_paths = [ + ['password'], + ] self._name = None self._description = None self._type = None @@ -271,7 +274,9 @@ def client_type(self, client_type): self._client_type = client_type def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/oda/models/update_slack_channel_details.py b/src/oci/oda/models/update_slack_channel_details.py index dfab874879..c8efd0b1b8 100644 --- a/src/oci/oda/models/update_slack_channel_details.py +++ b/src/oci/oda/models/update_slack_channel_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190506 from .update_channel_details import UpdateChannelDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -99,6 +99,10 @@ def __init__(self, **kwargs): 'client_secret': 'clientSecret', 'bot_id': 'botId' } + self._redacted_field_paths = [ + ['signing_secret'], + ['client_secret'], + ] self._name = None self._description = None self._type = None @@ -258,7 +262,10 @@ def bot_id(self, bot_id): self._bot_id = bot_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['signing_secret']) + redact_password_field(as_dict, ['client_secret']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/oda/models/update_translator_details.py b/src/oci/oda/models/update_translator_details.py index e27a087664..d7181a29e4 100644 --- a/src/oci/oda/models/update_translator_details.py +++ b/src/oci/oda/models/update_translator_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190506 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -55,6 +55,9 @@ def __init__(self, **kwargs): 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags' } + self._redacted_field_paths = [ + ['auth_token'], + ] self._base_url = None self._auth_token = None self._properties = None @@ -188,7 +191,9 @@ def defined_tags(self, defined_tags): self._defined_tags = defined_tags def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['auth_token']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/oda/models/update_twilio_channel_details.py b/src/oci/oda/models/update_twilio_channel_details.py index b26074e184..ae95bac512 100644 --- a/src/oci/oda/models/update_twilio_channel_details.py +++ b/src/oci/oda/models/update_twilio_channel_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20190506 from .update_channel_details import UpdateChannelDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -99,6 +99,9 @@ def __init__(self, **kwargs): 'original_connectors_url': 'originalConnectorsUrl', 'bot_id': 'botId' } + self._redacted_field_paths = [ + ['auth_token'], + ] self._name = None self._description = None self._type = None @@ -258,7 +261,9 @@ def bot_id(self, bot_id): self._bot_id = bot_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['auth_token']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/opsi/models/create_operations_insights_warehouse_user_details.py b/src/oci/opsi/models/create_operations_insights_warehouse_user_details.py index 6961d81e98..11b520b61e 100644 --- a/src/oci/opsi/models/create_operations_insights_warehouse_user_details.py +++ b/src/oci/opsi/models/create_operations_insights_warehouse_user_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200630 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -79,6 +79,9 @@ def __init__(self, **kwargs): 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags' } + self._redacted_field_paths = [ + ['connection_password'], + ] self._operations_insights_warehouse_id = None self._compartment_id = None self._name = None @@ -314,7 +317,9 @@ def defined_tags(self, defined_tags): self._defined_tags = defined_tags def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['connection_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/opsi/models/download_operations_insights_warehouse_wallet_details.py b/src/oci/opsi/models/download_operations_insights_warehouse_wallet_details.py index cc8d035d70..9e1b4d7ed2 100644 --- a/src/oci/opsi/models/download_operations_insights_warehouse_wallet_details.py +++ b/src/oci/opsi/models/download_operations_insights_warehouse_wallet_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200630 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -31,6 +31,9 @@ def __init__(self, **kwargs): self.attribute_map = { 'operations_insights_warehouse_wallet_password': 'operationsInsightsWarehouseWalletPassword' } + self._redacted_field_paths = [ + ['operations_insights_warehouse_wallet_password'], + ] self._operations_insights_warehouse_wallet_password = None @property @@ -58,7 +61,9 @@ def operations_insights_warehouse_wallet_password(self, operations_insights_ware self._operations_insights_warehouse_wallet_password = operations_insights_warehouse_wallet_password def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['operations_insights_warehouse_wallet_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/opsi/models/operations_insights_warehouse_user.py b/src/oci/opsi/models/operations_insights_warehouse_user.py index d39d748cfc..1dba0bd7b3 100644 --- a/src/oci/opsi/models/operations_insights_warehouse_user.py +++ b/src/oci/opsi/models/operations_insights_warehouse_user.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200630 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -141,6 +141,9 @@ def __init__(self, **kwargs): 'lifecycle_state': 'lifecycleState', 'lifecycle_details': 'lifecycleDetails' } + self._redacted_field_paths = [ + ['connection_password'], + ] self._operations_insights_warehouse_id = None self._id = None self._compartment_id = None @@ -534,7 +537,9 @@ def lifecycle_details(self, lifecycle_details): self._lifecycle_details = lifecycle_details def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['connection_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/opsi/models/operations_insights_warehouse_user_summary.py b/src/oci/opsi/models/operations_insights_warehouse_user_summary.py index 68374de11b..95a348dcf6 100644 --- a/src/oci/opsi/models/operations_insights_warehouse_user_summary.py +++ b/src/oci/opsi/models/operations_insights_warehouse_user_summary.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200630 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -141,6 +141,9 @@ def __init__(self, **kwargs): 'lifecycle_state': 'lifecycleState', 'lifecycle_details': 'lifecycleDetails' } + self._redacted_field_paths = [ + ['connection_password'], + ] self._operations_insights_warehouse_id = None self._id = None self._compartment_id = None @@ -534,7 +537,9 @@ def lifecycle_details(self, lifecycle_details): self._lifecycle_details = lifecycle_details def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['connection_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/opsi/models/operations_insights_warehouse_user_summary_collection.py b/src/oci/opsi/models/operations_insights_warehouse_user_summary_collection.py index caf9372ef6..16d9a6b3fc 100644 --- a/src/oci/opsi/models/operations_insights_warehouse_user_summary_collection.py +++ b/src/oci/opsi/models/operations_insights_warehouse_user_summary_collection.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200630 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -31,6 +31,9 @@ def __init__(self, **kwargs): self.attribute_map = { 'items': 'items' } + self._redacted_field_paths = [ + ['items', '*', 'connection_password'], + ] self._items = None @property @@ -58,7 +61,9 @@ def items(self, items): self._items = items def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['items', '*', 'connection_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/opsi/models/update_operations_insights_warehouse_user_details.py b/src/oci/opsi/models/update_operations_insights_warehouse_user_details.py index b1acf1fb6a..fdcb5aecfd 100644 --- a/src/oci/opsi/models/update_operations_insights_warehouse_user_details.py +++ b/src/oci/opsi/models/update_operations_insights_warehouse_user_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200630 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -61,6 +61,9 @@ def __init__(self, **kwargs): 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags' } + self._redacted_field_paths = [ + ['connection_password'], + ] self._connection_password = None self._is_awr_data_access = None self._is_em_data_access = None @@ -217,7 +220,9 @@ def defined_tags(self, defined_tags): self._defined_tags = defined_tags def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['connection_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/resource_analytics/models/plain_text_password_details.py b/src/oci/resource_analytics/models/plain_text_password_details.py index c988100c64..4b3d9e7956 100644 --- a/src/oci/resource_analytics/models/plain_text_password_details.py +++ b/src/oci/resource_analytics/models/plain_text_password_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20241031 from .adw_admin_password_details import AdwAdminPasswordDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -39,6 +39,9 @@ def __init__(self, **kwargs): 'password_type': 'passwordType', 'password': 'password' } + self._redacted_field_paths = [ + ['password'], + ] self._password_type = None self._password = None self._password_type = 'PLAIN_TEXT' @@ -68,7 +71,9 @@ def password(self, password): self._password = password def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/util.py b/src/oci/util.py index dd0bd8f15b..a40056784f 100644 --- a/src/oci/util.py +++ b/src/oci/util.py @@ -45,11 +45,9 @@ missing_attr = object() -def to_dict(obj): +def to_dict(obj, redact_sensitive_fields=False): """Helper to flatten models into dicts for rendering. - The following conversions are applied: - * datetime.date, datetime.datetime, datetime.time are converted into ISO8601 UTC strings """ @@ -70,9 +68,12 @@ def to_dict(obj): # datetime.date doesn't have a timezone return obj.isoformat() elif isinstance(obj, abc.Mapping): - return {k: to_dict(v) for k, v in six.iteritems(obj)} + return { + filter_key(k): to_dict(v, redact_sensitive_fields=redact_sensitive_fields) + for k, v in six.iteritems(obj) + } elif isinstance(obj, abc.Iterable): - return [to_dict(v) for v in obj] + return [to_dict(v, redact_sensitive_fields=redact_sensitive_fields) for v in obj] # Not a string, datetime, dict, list, or model - return directly elif not hasattr(obj, "swagger_types"): return obj @@ -82,13 +83,25 @@ def to_dict(obj): for key in six.iterkeys(obj.swagger_types): value = getattr(obj, key, missing_attr) if value is not missing_attr: - as_dict[key] = to_dict(value) + as_dict[filter_key(key)] = to_dict( + value, + redact_sensitive_fields=redact_sensitive_fields + ) + if redact_sensitive_fields: + for path in getattr(obj, "_redacted_field_paths", []): + redact_password_field(as_dict, path) return as_dict +# Serialize on the wire as 'self' because self is a reserved word in Python +def filter_key(key): + # Note 'self_uri' is used by oci.dns.models.Zone + return 'self' if key in ['_self', 'self_uri'] else key + + def formatted_flat_dict(model): """Returns a string of the model flattened as a dict, sorted""" - as_dict = to_dict(model) + as_dict = to_dict(model, redact_sensitive_fields=True) return json.dumps( as_dict, indent=2, @@ -97,6 +110,21 @@ def formatted_flat_dict(model): ) +def redact_password_field(value, path): + if not path: + return '' + key = path[0] + if key == '*' and isinstance(value, list): + for index, item in enumerate(value): + value[index] = redact_password_field(item, path[1:]) + elif key == '*' and isinstance(value, dict): + for field in value: + value[field] = redact_password_field(value[field], path[1:]) + elif isinstance(value, dict) and key in value: + value[key] = redact_password_field(value[key], path[1:]) + return value + + def value_allowed_none_or_none_sentinel(value_to_test, allowed_values): return value_to_test is None or value_to_test is NONE_SENTINEL or value_to_test in allowed_values diff --git a/src/oci/version.py b/src/oci/version.py index 3d5179d049..6074190a1f 100644 --- a/src/oci/version.py +++ b/src/oci/version.py @@ -2,4 +2,4 @@ # Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. # This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. -__version__ = "2.182.1" +__version__ = "2.183.0" diff --git a/tests/autogentest/test_model.py b/tests/autogentest/test_model.py index 1939434aad..d984b979a1 100644 --- a/tests/autogentest/test_model.py +++ b/tests/autogentest/test_model.py @@ -5,7 +5,9 @@ import oci import oci.util import datetime +import json import pytest +from oci.auth.signers import KeyPairSigner @pytest.fixture @@ -84,6 +86,200 @@ def test_to_dict(instance): assert "1999-12-31" == instance_dict['time_created'] +def test_redact_password_field(): + value = { + 'password': 'top-secret', + 'items': [ + {'nested': {'token': 'secret-token'}}, + {'nested': {'token': 'other-secret-token'}} + ] + } + assert oci.util.redact_password_field(value, ['password']) == value + oci.util.redact_password_field(value, ['items', '*', 'nested', 'token']) + + assert value['password'] == '' + assert value['items'][0]['nested']['token'] == '' + assert value['items'][1]['nested']['token'] == '' + + +def test_password_field_redacted_in_model_repr(): + model = oci.apm_synthetics.models.PasswordInText() + model.password = 'top-secret' + + model_repr = repr(model) + + assert 'top-secret' not in model_repr + assert '' in model_repr + + +def test_formatted_flat_dict_redacts_password_field(): + model = ModelWithRedactedFieldPaths() + model.username = 'user' + model.password = 'top-secret' + + model_dict = oci.util.to_dict(model) + assert model_dict['password'] == 'top-secret' + assert model_dict['username'] == 'user' + + redacted_model_dict = oci.util.to_dict(model, redact_sensitive_fields=True) + assert redacted_model_dict['password'] == '' + assert redacted_model_dict['username'] == 'user' + + formatted_model = oci.util.formatted_flat_dict(model) + assert 'top-secret' not in formatted_model + assert '' in formatted_model + assert 'user' in formatted_model + + model_repr = repr(model) + assert 'top-secret' not in model_repr + assert '' in model_repr + assert 'user' in model_repr + + +def test_formatted_flat_dict_redacts_nested_password_fields(): + nested_model = ModelWithNestedRedactedFieldPaths() + nested_model.display_name = 'nested-display-name' + nested_model.nested_model = ModelWithRedactedFieldPaths( + username='nested-user', + password='nested-secret' + ) + nested_model.nested_model_list = [ + ModelWithRedactedFieldPaths(username='list-user', password='list-secret') + ] + nested_model.nested_model_map = { + 'item': ModelWithRedactedFieldPaths(username='map-user', password='map-secret') + } + + nested_model_dict = oci.util.to_dict(nested_model) + assert nested_model_dict['display_name'] == 'nested-display-name' + assert nested_model_dict['nested_model']['password'] == 'nested-secret' + assert nested_model_dict['nested_model']['username'] == 'nested-user' + assert nested_model_dict['nested_model_list'][0]['password'] == 'list-secret' + assert nested_model_dict['nested_model_list'][0]['username'] == 'list-user' + assert nested_model_dict['nested_model_map']['item']['password'] == 'map-secret' + assert nested_model_dict['nested_model_map']['item']['username'] == 'map-user' + + redacted_nested_model_dict = oci.util.to_dict(nested_model, redact_sensitive_fields=True) + assert redacted_nested_model_dict['display_name'] == 'nested-display-name' + assert redacted_nested_model_dict['nested_model']['password'] == '' + assert redacted_nested_model_dict['nested_model']['username'] == 'nested-user' + assert redacted_nested_model_dict['nested_model_list'][0]['password'] == '' + assert redacted_nested_model_dict['nested_model_list'][0]['username'] == 'list-user' + assert redacted_nested_model_dict['nested_model_map']['item']['password'] == '' + assert redacted_nested_model_dict['nested_model_map']['item']['username'] == 'map-user' + + formatted_nested_model = oci.util.formatted_flat_dict(nested_model) + assert 'nested-secret' not in formatted_nested_model + assert 'list-secret' not in formatted_nested_model + assert 'map-secret' not in formatted_nested_model + assert 'nested-display-name' in formatted_nested_model + assert 'nested-user' in formatted_nested_model + assert 'list-user' in formatted_nested_model + assert 'map-user' in formatted_nested_model + assert formatted_nested_model.count('') == 3 + + nested_model_repr = repr(nested_model) + assert 'nested-secret' not in nested_model_repr + assert 'list-secret' not in nested_model_repr + assert 'map-secret' not in nested_model_repr + assert 'nested-display-name' in nested_model_repr + assert 'nested-user' in nested_model_repr + assert 'list-user' in nested_model_repr + assert 'map-user' in nested_model_repr + assert nested_model_repr.count('') == 3 + + +def test_api_request_serialization_preserves_password_while_log_safe_helpers_redact(): + secret = 'top-secret' + model = ModelWithRedactedFieldPaths(username='user', password=secret) + + model_repr = repr(model) + formatted_model = oci.util.formatted_flat_dict(model) + + assert secret not in model_repr + assert secret not in formatted_model + assert '' in model_repr + assert '' in formatted_model + + signer = DummyKeyPairSigner.__new__(DummyKeyPairSigner) + client = oci.BaseClient( + 'identity', + {}, + signer, + {}, + service_endpoint='https://identity.us-phoenix-1.oraclecloud.com' + ) + client.request = lambda request, *args, **kwargs: request + request = client.call_api( + resource_path='/test', + method='POST', + header_params={'content-type': 'application/json'}, + body=model + ) + + request_body = json.loads(request.body) + assert request_body['password'] == secret + assert request_body['username'] == 'user' + + +class DummyKeyPairSigner(KeyPairSigner): + pass + + +class ModelWithRedactedFieldPaths(object): + def __init__(self, **kwargs): + self.swagger_types = { + 'username': 'str', + 'password': 'str' + } + self.attribute_map = { + 'username': 'username', + 'password': 'password' + } + self._redacted_field_paths = [ + ['password'] + ] + self.username = kwargs.get('username') + self.password = kwargs.get('password') + + def __repr__(self): + as_dict = oci.util.to_dict(self) + oci.util.redact_password_field(as_dict, ['password']) + return oci.util.formatted_flat_dict(as_dict) + + +class ModelWithNestedRedactedFieldPaths(object): + def __init__(self): + self.swagger_types = { + 'display_name': 'str', + 'nested_model': 'ModelWithRedactedFieldPaths', + 'nested_model_list': 'list[ModelWithRedactedFieldPaths]', + 'nested_model_map': 'dict(str, ModelWithRedactedFieldPaths)' + } + self.attribute_map = { + 'display_name': 'displayName', + 'nested_model': 'nestedModel', + 'nested_model_list': 'nestedModelList', + 'nested_model_map': 'nestedModelMap' + } + self._redacted_field_paths = [ + ['nested_model', 'password'], + ['nested_model_list', '*', 'password'], + ['nested_model_map', '*', 'password'] + ] + self.display_name = None + self.nested_model = None + self.nested_model_list = None + self.nested_model_map = None + + def __repr__(self): + as_dict = oci.util.to_dict(self) + oci.util.redact_password_field(as_dict, ['nested_model', 'password']) + oci.util.redact_password_field(as_dict, ['nested_model_list', '*', 'password']) + oci.util.redact_password_field(as_dict, ['nested_model_map', '*', 'password']) + return oci.util.formatted_flat_dict(as_dict) + + def test_subclass(): volume_attachment = oci.core.models.IScsiVolumeAttachment() assert 'iscsi' == volume_attachment.attachment_type From 12e4b9e2b4bbb11d94d277d5fcc50842b3741ae1 Mon Sep 17 00:00:00 2001 From: OCI DEX Release Bot Automation Date: Tue, 4 Aug 2026 04:27:40 +0000 Subject: [PATCH 09/11] Releasing version 2.184.0 Co-authored-by: Harsh Kumar --- CHANGELOG.rst | 18 + docs/api/database.rst | 4 + ...abase.models.AutoFailoverConfiguration.rst | 11 + ...s.AutonomousDatabaseInBackupCollection.rst | 11 + ...dels.AutonomousDatabaseInBackupSummary.rst | 11 + ...inerDatabaseFromBackupTimestampDetails.rst | 11 + docs/api/landing.rst | 2 + docs/api/marketplace_private_offer.rst | 17 + ...etplace_private_offer.OfferQuoteClient.rst | 8 + ...er.OfferQuoteClientCompositeOperations.rst | 8 + ...ce_private_offer.QuoteAttachmentClient.rst | 8 + ...oteAttachmentClientCompositeOperations.rst | 8 + ...e_offer.models.CreateOfferQuoteDetails.rst | 11 + ...er.models.CreateQuoteAttachmentDetails.rst | 11 + ...ce_private_offer.models.IsvInformation.rst | 11 + ...tplace_private_offer.models.OfferQuote.rst | 11 + ...vate_offer.models.OfferQuoteCollection.rst | 11 + ..._offer.models.OfferQuoteInternalDetail.rst | 11 + ...private_offer.models.OfferQuoteSummary.rst | 11 + ...e_private_offer.models.QuoteAttachment.rst | 11 + ...offer.models.QuoteAttachmentCollection.rst | 11 + ...te_offer.models.QuoteAttachmentSummary.rst | 11 + ...ivate_offer.models.ResellerInformation.rst | 11 + ...ffer.models.RespondToOfferQuoteDetails.rst | 11 + ...e_offer.models.UpdateOfferQuoteDetails.rst | 11 + docs/api/self.rst | 7 + ....self.models.CancelSubscriptionDetails.rst | 11 + ...s.CreateSubscriptionUsageRecordDetails.rst | 11 + .../self/models/oci.self.models.Partner.rst | 11 + .../oci.self.models.PartnerCollection.rst | 11 + .../models/oci.self.models.PartnerSummary.rst | 11 + ....SubmitSubscriptionUsageRecordsDetails.rst | 11 + .../models/oci.self.models.UsageDimension.rst | 11 + src/oci/database/database_client.py | 265 +++- src/oci/database/models/__init__.py | 8 + .../models/auto_failover_configuration.py | 117 ++ .../autonomous_container_database_backup.py | 102 +- ...omous_container_database_backup_summary.py | 72 +- .../models/autonomous_database_in_backup.py | 131 +- ...utonomous_database_in_backup_collection.py | 70 + .../autonomous_database_in_backup_summary.py | 232 ++++ ...eate_autonomous_container_database_base.py | 14 +- ...e_autonomous_container_database_details.py | 2 +- ..._container_database_from_backup_details.py | 139 +- ..._database_from_backup_timestamp_details.py | 558 ++++++++ .../database/models/create_standby_details.py | 31 +- src/oci/database/models/data_guard_group.py | 51 +- .../models/data_guard_group_member.py | 110 +- .../models/update_database_details.py | 233 +++- .../models/api_key_ai_model_auth_details.py | 9 +- .../create_api_key_ai_model_auth_details.py | 9 +- .../create_database_registration_details.py | 2 + .../models/create_db2_connection_details.py | 4 + .../models/create_deployment_details.py | 2 + ...ate_google_big_query_connection_details.py | 9 +- ...google_cloud_storage_connection_details.py | 9 +- ...e_cloud_storage_iceberg_storage_details.py | 9 +- ...reate_google_pub_sub_connection_details.py | 9 +- ...java_message_service_connection_details.py | 4 + .../models/create_kafka_connection_details.py | 4 + ...afka_schema_registry_connection_details.py | 4 + ...ate_microsoft_fabric_connection_details.py | 9 +- .../create_mongo_db_connection_details.py | 2 + .../models/create_mysql_connection_details.py | 2 + .../create_oci_gen_ai_model_auth_details.py | 9 +- ...e_oci_object_storage_connection_details.py | 2 + ..._storage_s3_api_iceberg_storage_details.py | 9 +- .../models/create_ogg_deployment_details.py | 2 + ...cle_ai_data_platform_connection_details.py | 2 + .../create_oracle_connection_details.py | 2 + .../create_oracle_nosql_connection_details.py | 2 + .../create_postgresql_connection_details.py | 2 + .../models/create_redis_connection_details.py | 4 + .../create_rest_iceberg_catalog_details.py | 9 +- .../create_snowflake_connection_details.py | 2 + .../models/oci_gen_ai_model_auth_details.py | 9 +- .../update_api_key_ai_model_auth_details.py | 9 +- .../update_database_registration_details.py | 2 + .../models/update_db2_connection_details.py | 4 + .../models/update_deployment_details.py | 2 + ...ate_google_big_query_connection_details.py | 9 +- ...google_cloud_storage_connection_details.py | 9 +- ...e_cloud_storage_iceberg_storage_details.py | 9 +- ...pdate_google_pub_sub_connection_details.py | 9 +- ...java_message_service_connection_details.py | 4 + .../models/update_kafka_connection_details.py | 4 + ...afka_schema_registry_connection_details.py | 4 + ...ate_microsoft_fabric_connection_details.py | 9 +- .../update_mongo_db_connection_details.py | 2 + .../models/update_mysql_connection_details.py | 2 + .../update_oci_gen_ai_model_auth_details.py | 9 +- ...e_oci_object_storage_connection_details.py | 2 + ..._storage_s3_api_iceberg_storage_details.py | 9 +- .../models/update_ogg_deployment_details.py | 2 + ...cle_ai_data_platform_connection_details.py | 2 + .../update_oracle_connection_details.py | 2 + .../update_oracle_nosql_connection_details.py | 2 + .../update_postgresql_connection_details.py | 2 + .../models/update_redis_connection_details.py | 4 + .../update_rest_iceberg_catalog_details.py | 9 +- .../update_snowflake_connection_details.py | 2 + src/oci/marketplace_private_offer/__init__.py | 6 +- .../models/__init__.py | 26 + .../models/attachment.py | 68 +- .../models/attachment_summary.py | 68 +- .../models/contact.py | 14 +- .../models/create_offer_details.py | 62 + .../models/create_offer_quote_details.py | 438 ++++++ .../models/create_quote_attachment_details.py | 163 +++ .../models/custom_field.py | 10 +- .../models/isv_information.py | 97 ++ .../marketplace_private_offer/models/offer.py | 84 +- .../models/offer_internal_detail.py | 35 +- .../models/offer_quote.py | 834 +++++++++++ .../models/offer_quote_collection.py | 70 + .../models/offer_quote_internal_detail.py | 70 + .../models/offer_quote_summary.py | 653 +++++++++ .../models/offer_summary.py | 68 +- .../models/pricing.py | 14 +- .../models/quote_attachment.py | 586 ++++++++ .../models/quote_attachment_collection.py | 70 + .../models/quote_attachment_summary.py | 510 +++++++ .../models/reseller_information.py | 97 ++ .../models/resource_bundle.py | 18 +- .../models/respond_to_offer_quote_details.py | 66 + .../models/update_offer_quote_details.py | 407 ++++++ .../marketplace_private_offer/offer_client.py | 224 +++ .../offer_quote_client.py | 1226 +++++++++++++++++ ...offer_quote_client_composite_operations.py | 172 +++ .../quote_attachment_client.py | 762 ++++++++++ ..._attachment_client_composite_operations.py | 71 + .../object_storage/transfer/internal/md5.py | 53 + .../internal/multipart_object_assembler.py | 27 +- .../update_opensearch_cluster_details.py | 31 + src/oci/self/models/__init__.py | 14 + .../models/activate_subscription_result.py | 18 +- src/oci/self/models/billing_details.py | 90 +- .../models/cancel_subscription_details.py | 70 + ...reate_subscription_usage_record_details.py | 658 +++++++++ .../models/listing_subscription_summary.py | 18 +- src/oci/self/models/partner.py | 296 ++++ src/oci/self/models/partner_collection.py | 70 + src/oci/self/models/partner_subscription.py | 18 +- src/oci/self/models/partner_summary.py | 280 ++++ src/oci/self/models/pricing_plan.py | 113 +- ...bmit_subscription_usage_records_details.py | 70 + src/oci/self/models/subscription.py | 18 +- src/oci/self/models/subscription_details.py | 12 +- src/oci/self/models/subscription_summary.py | 18 +- src/oci/self/models/usage_dimension.py | 316 +++++ src/oci/self/models/work_request.py | 10 +- src/oci/self/models/work_request_summary.py | 10 +- src/oci/self/partner_integeration_client.py | 431 +++++- ...ntegeration_client_composite_operations.py | 51 + src/oci/self/subscription_client.py | 141 +- ...ubscription_client_composite_operations.py | 45 + src/oci/version.py | 2 +- 157 files changed, 12409 insertions(+), 203 deletions(-) create mode 100644 docs/api/database/models/oci.database.models.AutoFailoverConfiguration.rst create mode 100644 docs/api/database/models/oci.database.models.AutonomousDatabaseInBackupCollection.rst create mode 100644 docs/api/database/models/oci.database.models.AutonomousDatabaseInBackupSummary.rst create mode 100644 docs/api/database/models/oci.database.models.CreateAutonomousContainerDatabaseFromBackupTimestampDetails.rst create mode 100644 docs/api/marketplace_private_offer/client/oci.marketplace_private_offer.OfferQuoteClient.rst create mode 100644 docs/api/marketplace_private_offer/client/oci.marketplace_private_offer.OfferQuoteClientCompositeOperations.rst create mode 100644 docs/api/marketplace_private_offer/client/oci.marketplace_private_offer.QuoteAttachmentClient.rst create mode 100644 docs/api/marketplace_private_offer/client/oci.marketplace_private_offer.QuoteAttachmentClientCompositeOperations.rst create mode 100644 docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.CreateOfferQuoteDetails.rst create mode 100644 docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.CreateQuoteAttachmentDetails.rst create mode 100644 docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.IsvInformation.rst create mode 100644 docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.OfferQuote.rst create mode 100644 docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.OfferQuoteCollection.rst create mode 100644 docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.OfferQuoteInternalDetail.rst create mode 100644 docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.OfferQuoteSummary.rst create mode 100644 docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.QuoteAttachment.rst create mode 100644 docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.QuoteAttachmentCollection.rst create mode 100644 docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.QuoteAttachmentSummary.rst create mode 100644 docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.ResellerInformation.rst create mode 100644 docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.RespondToOfferQuoteDetails.rst create mode 100644 docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.UpdateOfferQuoteDetails.rst create mode 100644 docs/api/self/models/oci.self.models.CancelSubscriptionDetails.rst create mode 100644 docs/api/self/models/oci.self.models.CreateSubscriptionUsageRecordDetails.rst create mode 100644 docs/api/self/models/oci.self.models.Partner.rst create mode 100644 docs/api/self/models/oci.self.models.PartnerCollection.rst create mode 100644 docs/api/self/models/oci.self.models.PartnerSummary.rst create mode 100644 docs/api/self/models/oci.self.models.SubmitSubscriptionUsageRecordsDetails.rst create mode 100644 docs/api/self/models/oci.self.models.UsageDimension.rst create mode 100644 src/oci/database/models/auto_failover_configuration.py create mode 100644 src/oci/database/models/autonomous_database_in_backup_collection.py create mode 100644 src/oci/database/models/autonomous_database_in_backup_summary.py create mode 100644 src/oci/database/models/create_autonomous_container_database_from_backup_timestamp_details.py create mode 100644 src/oci/marketplace_private_offer/models/create_offer_quote_details.py create mode 100644 src/oci/marketplace_private_offer/models/create_quote_attachment_details.py create mode 100644 src/oci/marketplace_private_offer/models/isv_information.py create mode 100644 src/oci/marketplace_private_offer/models/offer_quote.py create mode 100644 src/oci/marketplace_private_offer/models/offer_quote_collection.py create mode 100644 src/oci/marketplace_private_offer/models/offer_quote_internal_detail.py create mode 100644 src/oci/marketplace_private_offer/models/offer_quote_summary.py create mode 100644 src/oci/marketplace_private_offer/models/quote_attachment.py create mode 100644 src/oci/marketplace_private_offer/models/quote_attachment_collection.py create mode 100644 src/oci/marketplace_private_offer/models/quote_attachment_summary.py create mode 100644 src/oci/marketplace_private_offer/models/reseller_information.py create mode 100644 src/oci/marketplace_private_offer/models/respond_to_offer_quote_details.py create mode 100644 src/oci/marketplace_private_offer/models/update_offer_quote_details.py create mode 100644 src/oci/marketplace_private_offer/offer_quote_client.py create mode 100644 src/oci/marketplace_private_offer/offer_quote_client_composite_operations.py create mode 100644 src/oci/marketplace_private_offer/quote_attachment_client.py create mode 100644 src/oci/marketplace_private_offer/quote_attachment_client_composite_operations.py create mode 100644 src/oci/self/models/cancel_subscription_details.py create mode 100644 src/oci/self/models/create_subscription_usage_record_details.py create mode 100644 src/oci/self/models/partner.py create mode 100644 src/oci/self/models/partner_collection.py create mode 100644 src/oci/self/models/partner_summary.py create mode 100644 src/oci/self/models/submit_subscription_usage_records_details.py create mode 100644 src/oci/self/models/usage_dimension.py diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 6410567b6b..667b530f56 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -4,6 +4,24 @@ All notable changes to this project will be documented in this file. The format is based on `Keep a Changelog `_. +==================== +2.184.0 - 2026-08-04 +==================== + +Added +----- +* Support for cloning autonomous container databases from backups by timestamp and retrieving backup details in the Database service +* Support for managing automatic failover for existing data guard configurations with multiple standby databases in the Database service +* Support for creating and managing private-offer quotes and quote attachments in the Marketplace Private Offer service +* Support for usage-based SaaS listings, subscription usage reporting, and subscription cancellation in the Service Enablement Lifecycle Framework service +* Support for network security group IDs on private endpoints during open search cluster updates in the OpenSearch service +* Support for database tools MCP server, DB API gateway configuration, and IAM authentication APIs in the Database Tools service  + +Breaking +-------- +* Return type for property `billing_details` changed to `list[BillingDetails]` from `BillingDetails ` in model `SubscriptionDetails` in the Service Enablement Lifecycle Framework service +* Allowed value `selfTokenId` was removed from the property `sort_by` in operation `listing_subscriptions` in the Service Enablement Lifecycle Framework service + ==================== 2.183.0 - 2026-07-28 ==================== diff --git a/docs/api/database.rst b/docs/api/database.rst index 8cf4172995..028a800bed 100644 --- a/docs/api/database.rst +++ b/docs/api/database.rst @@ -37,6 +37,7 @@ Database oci.database.models.AssociatedDatabaseDetails oci.database.models.AssociatedLongTermBackup oci.database.models.AssociatedResourceDetails + oci.database.models.AutoFailoverConfiguration oci.database.models.AutomatedMountDetails oci.database.models.AutonomousContainerDatabase oci.database.models.AutonomousContainerDatabaseBackup @@ -64,6 +65,8 @@ Database oci.database.models.AutonomousDatabaseEncryptionKeyDetails oci.database.models.AutonomousDatabaseEncryptionKeyHistoryEntry oci.database.models.AutonomousDatabaseInBackup + oci.database.models.AutonomousDatabaseInBackupCollection + oci.database.models.AutonomousDatabaseInBackupSummary oci.database.models.AutonomousDatabaseKeyHistoryEntry oci.database.models.AutonomousDatabaseMaintenanceWindowSummary oci.database.models.AutonomousDatabaseManualRefreshDetails @@ -174,6 +177,7 @@ Database oci.database.models.CreateAutonomousContainerDatabaseDataguardAssociationDetails oci.database.models.CreateAutonomousContainerDatabaseDetails oci.database.models.CreateAutonomousContainerDatabaseFromBackupDetails + oci.database.models.CreateAutonomousContainerDatabaseFromBackupTimestampDetails oci.database.models.CreateAutonomousDatabaseBackupDetails oci.database.models.CreateAutonomousDatabaseBase oci.database.models.CreateAutonomousDatabaseCloneDetails diff --git a/docs/api/database/models/oci.database.models.AutoFailoverConfiguration.rst b/docs/api/database/models/oci.database.models.AutoFailoverConfiguration.rst new file mode 100644 index 0000000000..d13c04e9b1 --- /dev/null +++ b/docs/api/database/models/oci.database.models.AutoFailoverConfiguration.rst @@ -0,0 +1,11 @@ +AutoFailoverConfiguration +========================= + +.. currentmodule:: oci.database.models + +.. autoclass:: AutoFailoverConfiguration + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/database/models/oci.database.models.AutonomousDatabaseInBackupCollection.rst b/docs/api/database/models/oci.database.models.AutonomousDatabaseInBackupCollection.rst new file mode 100644 index 0000000000..4db83129e4 --- /dev/null +++ b/docs/api/database/models/oci.database.models.AutonomousDatabaseInBackupCollection.rst @@ -0,0 +1,11 @@ +AutonomousDatabaseInBackupCollection +==================================== + +.. currentmodule:: oci.database.models + +.. autoclass:: AutonomousDatabaseInBackupCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/database/models/oci.database.models.AutonomousDatabaseInBackupSummary.rst b/docs/api/database/models/oci.database.models.AutonomousDatabaseInBackupSummary.rst new file mode 100644 index 0000000000..51539ee81c --- /dev/null +++ b/docs/api/database/models/oci.database.models.AutonomousDatabaseInBackupSummary.rst @@ -0,0 +1,11 @@ +AutonomousDatabaseInBackupSummary +================================= + +.. currentmodule:: oci.database.models + +.. autoclass:: AutonomousDatabaseInBackupSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/database/models/oci.database.models.CreateAutonomousContainerDatabaseFromBackupTimestampDetails.rst b/docs/api/database/models/oci.database.models.CreateAutonomousContainerDatabaseFromBackupTimestampDetails.rst new file mode 100644 index 0000000000..ba4369d1f5 --- /dev/null +++ b/docs/api/database/models/oci.database.models.CreateAutonomousContainerDatabaseFromBackupTimestampDetails.rst @@ -0,0 +1,11 @@ +CreateAutonomousContainerDatabaseFromBackupTimestampDetails +=========================================================== + +.. currentmodule:: oci.database.models + +.. autoclass:: CreateAutonomousContainerDatabaseFromBackupTimestampDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/landing.rst b/docs/api/landing.rst index 485045131c..91b5c74184 100644 --- a/docs/api/landing.rst +++ b/docs/api/landing.rst @@ -213,6 +213,7 @@ API Reference * :doc:`Oda ` * :doc:`Odapackage ` * :doc:`Offer ` +* :doc:`Offer Quote ` * :doc:`Omhub Network Anchor ` * :doc:`Omhub Resource Anchor ` * :doc:`Onboarding ` @@ -248,6 +249,7 @@ API Reference * :doc:`Queue ` * :doc:`Queue Admin ` * :doc:`Quotas ` +* :doc:`Quote Attachment ` * :doc:`Ratecard ` * :doc:`Ratecard ` * :doc:`Recipient Invitation ` diff --git a/docs/api/marketplace_private_offer.rst b/docs/api/marketplace_private_offer.rst index 903880b972..4b056e4f9d 100644 --- a/docs/api/marketplace_private_offer.rst +++ b/docs/api/marketplace_private_offer.rst @@ -8,8 +8,12 @@ Marketplace Private Offer oci.marketplace_private_offer.AttachmentClient oci.marketplace_private_offer.OfferClient + oci.marketplace_private_offer.OfferQuoteClient + oci.marketplace_private_offer.QuoteAttachmentClient oci.marketplace_private_offer.AttachmentClientCompositeOperations oci.marketplace_private_offer.OfferClientCompositeOperations + oci.marketplace_private_offer.OfferQuoteClientCompositeOperations + oci.marketplace_private_offer.QuoteAttachmentClientCompositeOperations -------- Models @@ -27,14 +31,27 @@ Marketplace Private Offer oci.marketplace_private_offer.models.Contact oci.marketplace_private_offer.models.CreateAttachmentDetails oci.marketplace_private_offer.models.CreateOfferDetails + oci.marketplace_private_offer.models.CreateOfferQuoteDetails + oci.marketplace_private_offer.models.CreateQuoteAttachmentDetails oci.marketplace_private_offer.models.CustomField + oci.marketplace_private_offer.models.IsvInformation oci.marketplace_private_offer.models.Offer oci.marketplace_private_offer.models.OfferCollection oci.marketplace_private_offer.models.OfferInternalDetail + oci.marketplace_private_offer.models.OfferQuote + oci.marketplace_private_offer.models.OfferQuoteCollection + oci.marketplace_private_offer.models.OfferQuoteInternalDetail + oci.marketplace_private_offer.models.OfferQuoteSummary oci.marketplace_private_offer.models.OfferSummary oci.marketplace_private_offer.models.Pricing oci.marketplace_private_offer.models.PublisherSummary + oci.marketplace_private_offer.models.QuoteAttachment + oci.marketplace_private_offer.models.QuoteAttachmentCollection + oci.marketplace_private_offer.models.QuoteAttachmentSummary + oci.marketplace_private_offer.models.ResellerInformation oci.marketplace_private_offer.models.ResourceBundle + oci.marketplace_private_offer.models.RespondToOfferQuoteDetails oci.marketplace_private_offer.models.SellerInformation oci.marketplace_private_offer.models.UpdateOfferDetails + oci.marketplace_private_offer.models.UpdateOfferQuoteDetails oci.marketplace_private_offer.models.UploadData diff --git a/docs/api/marketplace_private_offer/client/oci.marketplace_private_offer.OfferQuoteClient.rst b/docs/api/marketplace_private_offer/client/oci.marketplace_private_offer.OfferQuoteClient.rst new file mode 100644 index 0000000000..14efad3571 --- /dev/null +++ b/docs/api/marketplace_private_offer/client/oci.marketplace_private_offer.OfferQuoteClient.rst @@ -0,0 +1,8 @@ +OfferQuoteClient +================ + +.. currentmodule:: oci.marketplace_private_offer + +.. autoclass:: OfferQuoteClient + :special-members: __init__ + :members: \ No newline at end of file diff --git a/docs/api/marketplace_private_offer/client/oci.marketplace_private_offer.OfferQuoteClientCompositeOperations.rst b/docs/api/marketplace_private_offer/client/oci.marketplace_private_offer.OfferQuoteClientCompositeOperations.rst new file mode 100644 index 0000000000..a07a450d5d --- /dev/null +++ b/docs/api/marketplace_private_offer/client/oci.marketplace_private_offer.OfferQuoteClientCompositeOperations.rst @@ -0,0 +1,8 @@ +OfferQuoteClientCompositeOperations +=================================== + +.. currentmodule:: oci.marketplace_private_offer + +.. autoclass:: OfferQuoteClientCompositeOperations + :special-members: __init__ + :members: \ No newline at end of file diff --git a/docs/api/marketplace_private_offer/client/oci.marketplace_private_offer.QuoteAttachmentClient.rst b/docs/api/marketplace_private_offer/client/oci.marketplace_private_offer.QuoteAttachmentClient.rst new file mode 100644 index 0000000000..213dea9f38 --- /dev/null +++ b/docs/api/marketplace_private_offer/client/oci.marketplace_private_offer.QuoteAttachmentClient.rst @@ -0,0 +1,8 @@ +QuoteAttachmentClient +===================== + +.. currentmodule:: oci.marketplace_private_offer + +.. autoclass:: QuoteAttachmentClient + :special-members: __init__ + :members: \ No newline at end of file diff --git a/docs/api/marketplace_private_offer/client/oci.marketplace_private_offer.QuoteAttachmentClientCompositeOperations.rst b/docs/api/marketplace_private_offer/client/oci.marketplace_private_offer.QuoteAttachmentClientCompositeOperations.rst new file mode 100644 index 0000000000..861633ce5f --- /dev/null +++ b/docs/api/marketplace_private_offer/client/oci.marketplace_private_offer.QuoteAttachmentClientCompositeOperations.rst @@ -0,0 +1,8 @@ +QuoteAttachmentClientCompositeOperations +======================================== + +.. currentmodule:: oci.marketplace_private_offer + +.. autoclass:: QuoteAttachmentClientCompositeOperations + :special-members: __init__ + :members: \ No newline at end of file diff --git a/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.CreateOfferQuoteDetails.rst b/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.CreateOfferQuoteDetails.rst new file mode 100644 index 0000000000..c02a95fb42 --- /dev/null +++ b/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.CreateOfferQuoteDetails.rst @@ -0,0 +1,11 @@ +CreateOfferQuoteDetails +======================= + +.. currentmodule:: oci.marketplace_private_offer.models + +.. autoclass:: CreateOfferQuoteDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.CreateQuoteAttachmentDetails.rst b/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.CreateQuoteAttachmentDetails.rst new file mode 100644 index 0000000000..15ef4ffa0b --- /dev/null +++ b/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.CreateQuoteAttachmentDetails.rst @@ -0,0 +1,11 @@ +CreateQuoteAttachmentDetails +============================ + +.. currentmodule:: oci.marketplace_private_offer.models + +.. autoclass:: CreateQuoteAttachmentDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.IsvInformation.rst b/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.IsvInformation.rst new file mode 100644 index 0000000000..40e6471e30 --- /dev/null +++ b/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.IsvInformation.rst @@ -0,0 +1,11 @@ +IsvInformation +============== + +.. currentmodule:: oci.marketplace_private_offer.models + +.. autoclass:: IsvInformation + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.OfferQuote.rst b/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.OfferQuote.rst new file mode 100644 index 0000000000..d1e1ae74f7 --- /dev/null +++ b/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.OfferQuote.rst @@ -0,0 +1,11 @@ +OfferQuote +========== + +.. currentmodule:: oci.marketplace_private_offer.models + +.. autoclass:: OfferQuote + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.OfferQuoteCollection.rst b/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.OfferQuoteCollection.rst new file mode 100644 index 0000000000..3c504825f0 --- /dev/null +++ b/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.OfferQuoteCollection.rst @@ -0,0 +1,11 @@ +OfferQuoteCollection +==================== + +.. currentmodule:: oci.marketplace_private_offer.models + +.. autoclass:: OfferQuoteCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.OfferQuoteInternalDetail.rst b/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.OfferQuoteInternalDetail.rst new file mode 100644 index 0000000000..0996015618 --- /dev/null +++ b/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.OfferQuoteInternalDetail.rst @@ -0,0 +1,11 @@ +OfferQuoteInternalDetail +======================== + +.. currentmodule:: oci.marketplace_private_offer.models + +.. autoclass:: OfferQuoteInternalDetail + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.OfferQuoteSummary.rst b/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.OfferQuoteSummary.rst new file mode 100644 index 0000000000..cd7213730e --- /dev/null +++ b/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.OfferQuoteSummary.rst @@ -0,0 +1,11 @@ +OfferQuoteSummary +================= + +.. currentmodule:: oci.marketplace_private_offer.models + +.. autoclass:: OfferQuoteSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.QuoteAttachment.rst b/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.QuoteAttachment.rst new file mode 100644 index 0000000000..c28354b7b1 --- /dev/null +++ b/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.QuoteAttachment.rst @@ -0,0 +1,11 @@ +QuoteAttachment +=============== + +.. currentmodule:: oci.marketplace_private_offer.models + +.. autoclass:: QuoteAttachment + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.QuoteAttachmentCollection.rst b/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.QuoteAttachmentCollection.rst new file mode 100644 index 0000000000..fd5fb26fb3 --- /dev/null +++ b/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.QuoteAttachmentCollection.rst @@ -0,0 +1,11 @@ +QuoteAttachmentCollection +========================= + +.. currentmodule:: oci.marketplace_private_offer.models + +.. autoclass:: QuoteAttachmentCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.QuoteAttachmentSummary.rst b/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.QuoteAttachmentSummary.rst new file mode 100644 index 0000000000..89a9f167c3 --- /dev/null +++ b/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.QuoteAttachmentSummary.rst @@ -0,0 +1,11 @@ +QuoteAttachmentSummary +====================== + +.. currentmodule:: oci.marketplace_private_offer.models + +.. autoclass:: QuoteAttachmentSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.ResellerInformation.rst b/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.ResellerInformation.rst new file mode 100644 index 0000000000..752b81a68a --- /dev/null +++ b/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.ResellerInformation.rst @@ -0,0 +1,11 @@ +ResellerInformation +=================== + +.. currentmodule:: oci.marketplace_private_offer.models + +.. autoclass:: ResellerInformation + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.RespondToOfferQuoteDetails.rst b/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.RespondToOfferQuoteDetails.rst new file mode 100644 index 0000000000..a415e2c689 --- /dev/null +++ b/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.RespondToOfferQuoteDetails.rst @@ -0,0 +1,11 @@ +RespondToOfferQuoteDetails +========================== + +.. currentmodule:: oci.marketplace_private_offer.models + +.. autoclass:: RespondToOfferQuoteDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.UpdateOfferQuoteDetails.rst b/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.UpdateOfferQuoteDetails.rst new file mode 100644 index 0000000000..8a062166be --- /dev/null +++ b/docs/api/marketplace_private_offer/models/oci.marketplace_private_offer.models.UpdateOfferQuoteDetails.rst @@ -0,0 +1,11 @@ +UpdateOfferQuoteDetails +======================= + +.. currentmodule:: oci.marketplace_private_offer.models + +.. autoclass:: UpdateOfferQuoteDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/self.rst b/docs/api/self.rst index 28b003613f..bf71250a08 100644 --- a/docs/api/self.rst +++ b/docs/api/self.rst @@ -23,22 +23,29 @@ Self oci.self.models.ActivateSubscriptionDetails oci.self.models.ActivateSubscriptionResult oci.self.models.BillingDetails + oci.self.models.CancelSubscriptionDetails oci.self.models.ChangeSubscriptionCompartmentDetails oci.self.models.CreateSubscriptionDetails + oci.self.models.CreateSubscriptionUsageRecordDetails oci.self.models.ExtendedMetadata oci.self.models.ListingSubscriptionSummary oci.self.models.ListingSubscriptionsCollection oci.self.models.Meter + oci.self.models.Partner + oci.self.models.PartnerCollection oci.self.models.PartnerSubscription + oci.self.models.PartnerSummary oci.self.models.PricingPlan oci.self.models.PricingRate oci.self.models.ResolveSubscriptionDetails + oci.self.models.SubmitSubscriptionUsageRecordsDetails oci.self.models.Subscription oci.self.models.SubscriptionCollection oci.self.models.SubscriptionDetails oci.self.models.SubscriptionSummary oci.self.models.SubscriptionToken oci.self.models.UpdateSubscriptionDetails + oci.self.models.UsageDimension oci.self.models.WorkRequest oci.self.models.WorkRequestError oci.self.models.WorkRequestErrorCollection diff --git a/docs/api/self/models/oci.self.models.CancelSubscriptionDetails.rst b/docs/api/self/models/oci.self.models.CancelSubscriptionDetails.rst new file mode 100644 index 0000000000..bd400c6256 --- /dev/null +++ b/docs/api/self/models/oci.self.models.CancelSubscriptionDetails.rst @@ -0,0 +1,11 @@ +CancelSubscriptionDetails +========================= + +.. currentmodule:: oci.self.models + +.. autoclass:: CancelSubscriptionDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/self/models/oci.self.models.CreateSubscriptionUsageRecordDetails.rst b/docs/api/self/models/oci.self.models.CreateSubscriptionUsageRecordDetails.rst new file mode 100644 index 0000000000..994be73459 --- /dev/null +++ b/docs/api/self/models/oci.self.models.CreateSubscriptionUsageRecordDetails.rst @@ -0,0 +1,11 @@ +CreateSubscriptionUsageRecordDetails +==================================== + +.. currentmodule:: oci.self.models + +.. autoclass:: CreateSubscriptionUsageRecordDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/self/models/oci.self.models.Partner.rst b/docs/api/self/models/oci.self.models.Partner.rst new file mode 100644 index 0000000000..01acb92d49 --- /dev/null +++ b/docs/api/self/models/oci.self.models.Partner.rst @@ -0,0 +1,11 @@ +Partner +======= + +.. currentmodule:: oci.self.models + +.. autoclass:: Partner + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/self/models/oci.self.models.PartnerCollection.rst b/docs/api/self/models/oci.self.models.PartnerCollection.rst new file mode 100644 index 0000000000..7fe0886d28 --- /dev/null +++ b/docs/api/self/models/oci.self.models.PartnerCollection.rst @@ -0,0 +1,11 @@ +PartnerCollection +================= + +.. currentmodule:: oci.self.models + +.. autoclass:: PartnerCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/self/models/oci.self.models.PartnerSummary.rst b/docs/api/self/models/oci.self.models.PartnerSummary.rst new file mode 100644 index 0000000000..064e1f50af --- /dev/null +++ b/docs/api/self/models/oci.self.models.PartnerSummary.rst @@ -0,0 +1,11 @@ +PartnerSummary +============== + +.. currentmodule:: oci.self.models + +.. autoclass:: PartnerSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/self/models/oci.self.models.SubmitSubscriptionUsageRecordsDetails.rst b/docs/api/self/models/oci.self.models.SubmitSubscriptionUsageRecordsDetails.rst new file mode 100644 index 0000000000..2cdf2b9773 --- /dev/null +++ b/docs/api/self/models/oci.self.models.SubmitSubscriptionUsageRecordsDetails.rst @@ -0,0 +1,11 @@ +SubmitSubscriptionUsageRecordsDetails +===================================== + +.. currentmodule:: oci.self.models + +.. autoclass:: SubmitSubscriptionUsageRecordsDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/self/models/oci.self.models.UsageDimension.rst b/docs/api/self/models/oci.self.models.UsageDimension.rst new file mode 100644 index 0000000000..b12f08f9d1 --- /dev/null +++ b/docs/api/self/models/oci.self.models.UsageDimension.rst @@ -0,0 +1,11 @@ +UsageDimension +============== + +.. currentmodule:: oci.self.models + +.. autoclass:: UsageDimension + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/src/oci/database/database_client.py b/src/oci/database/database_client.py index 49eca7204a..02aed9b655 100644 --- a/src/oci/database/database_client.py +++ b/src/oci/database/database_client.py @@ -21054,6 +21054,111 @@ def get_autonomous_container_database(self, autonomous_container_database_id, ** api_reference_link=api_reference_link, required_arguments=required_arguments) + def get_autonomous_container_database_backup(self, autonomous_container_database_backup_id, **kwargs): + """ + Gets information about the specified Autonomous Container Database backup. + + + :param str autonomous_container_database_backup_id: (required) + The Autonomous Container Database backup `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + Unique identifier for the request. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.database.models.AutonomousContainerDatabaseBackup` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_autonomous_container_database_backup API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['autonomousContainerDatabaseBackupId'] + resource_path = "/autonomousContainerDatabaseBackups/{autonomousContainerDatabaseBackupId}" + method = "GET" + operation_name = "get_autonomous_container_database_backup" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/AutonomousContainerDatabaseBackup/GetAutonomousContainerDatabaseBackup" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"get_autonomous_container_database_backup got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "autonomousContainerDatabaseBackupId": autonomous_container_database_backup_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="AutonomousContainerDatabaseBackup", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="AutonomousContainerDatabaseBackup", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + def get_autonomous_container_database_dataguard_association(self, autonomous_container_database_id, autonomous_container_database_dataguard_association_id, **kwargs): """ **Deprecated.** Use the :func:`get_autonomous_container_database` operation to get the details of an Autonomous Container Database (ACD) enabled with Autonomous Data Guard associated with the specified ACD. @@ -30615,6 +30720,9 @@ def list_autonomous_database_backups(self, **kwargs): Allowed values are: "CLOUD", "CLOUD_AT_CUSTOMER" + :param bool is_pitr_eligible: (optional) + Filters backups based on the current Autonomous AI Database configuration; returns only those relevant for point-in-time recovery (PITR). Does not guarantee exclusion of backups in orphan ranges. + :param str opc_request_id: (optional) Unique identifier for the request. @@ -30664,6 +30772,7 @@ def list_autonomous_database_backups(self, **kwargs): "backup_destination_id", "key_store_id", "infrastructure_type", + "is_pitr_eligible", "opc_request_id" ] extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] @@ -30711,7 +30820,8 @@ def list_autonomous_database_backups(self, **kwargs): "type": kwargs.get("type", missing), "backupDestinationId": kwargs.get("backup_destination_id", missing), "keyStoreId": kwargs.get("key_store_id", missing), - "infrastructureType": kwargs.get("infrastructure_type", missing) + "infrastructureType": kwargs.get("infrastructure_type", missing), + "isPitrEligible": kwargs.get("is_pitr_eligible", missing) } query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} @@ -31832,6 +31942,127 @@ def list_autonomous_databases(self, compartment_id, **kwargs): api_reference_link=api_reference_link, required_arguments=required_arguments) + def list_autonomous_databases_in_autonomous_container_database_backup(self, autonomous_container_database_id, time_stamp_requested, **kwargs): + """ + Gets a list of Autonomous Databases associated with backups at the given timestamp for the specified Autonomous Container Database. If `compartmentId` is provided, filters to that compartment; otherwise, uses the container's compartment. + + + :param str autonomous_container_database_id: (required) + The Autonomous Container Database `OCID`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param datetime time_stamp_requested: (required) + The timestamp at which the list of autonomous databases present to be returned (ISO-8601 format, e.g., \"2025-12-02T06:39:15Z\"). The requested value must be after the end timestamp of the oldest available Autonomous Container Database backup. + + :param str compartment_id: (optional) + The compartment `OCID`__. If not provided, uses the Autonomous Container Database's compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param int limit: (optional) + The maximum number of items to return per page. + + :param str page: (optional) + The pagination token to continue listing from. + + :param str opc_request_id: (optional) + Unique identifier for the request. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.database.models.AutonomousDatabaseInBackupCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_autonomous_databases_in_autonomous_container_database_backup API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['autonomousContainerDatabaseId', 'timeStampRequested'] + resource_path = "/autonomousContainerDatabaseBackups/listAutonomousDatabasesInBackup" + method = "GET" + operation_name = "list_autonomous_databases_in_autonomous_container_database_backup" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/database/20160918/AutonomousDatabaseInBackup/ListAutonomousDatabasesInAutonomousContainerDatabaseBackup" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "compartment_id", + "limit", + "page", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_autonomous_databases_in_autonomous_container_database_backup got unknown kwargs: {extra_kwargs!r}") + + query_params = { + "autonomousContainerDatabaseId": autonomous_container_database_id, + "timeStampRequested": time_stamp_requested, + "compartmentId": kwargs.get("compartment_id", missing), + "limit": kwargs.get("limit", missing), + "page": kwargs.get("page", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="AutonomousDatabaseInBackupCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="AutonomousDatabaseInBackupCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + def list_autonomous_db_preview_versions(self, compartment_id, **kwargs): """ Gets a list of supported Autonomous AI Database versions. Note that preview version software is only available for @@ -35396,6 +35627,16 @@ def list_databases(self, compartment_id, **kwargs): :param str db_name: (optional) A filter to return only resources that match the entire database name given. The match is not case sensitive. + :param str managed_auto_failover: (optional) + Filter the databases by managed auto failover param. + + Allowed values are: "REGISTERED", "UNREGISTERED", "ALL" + + :param str failover_targets: (optional) + Filter the databases by failoverTargets param. + + Allowed values are: "DEFINED", "UNDEFINED", "ALL" + :param obj retry_strategy: (optional) A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. @@ -35437,7 +35678,9 @@ def list_databases(self, compartment_id, **kwargs): "sort_by", "sort_order", "lifecycle_state", - "db_name" + "db_name", + "managed_auto_failover", + "failover_targets" ] extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] if extra_kwargs: @@ -35465,6 +35708,20 @@ def list_databases(self, compartment_id, **kwargs): f"Invalid value for `lifecycle_state`, must be one of { lifecycle_state_allowed_values }" ) + if 'managed_auto_failover' in kwargs: + managed_auto_failover_allowed_values = ["REGISTERED", "UNREGISTERED", "ALL"] + if kwargs['managed_auto_failover'] not in managed_auto_failover_allowed_values: + raise ValueError( + f"Invalid value for `managed_auto_failover`, must be one of { managed_auto_failover_allowed_values }" + ) + + if 'failover_targets' in kwargs: + failover_targets_allowed_values = ["DEFINED", "UNDEFINED", "ALL"] + if kwargs['failover_targets'] not in failover_targets_allowed_values: + raise ValueError( + f"Invalid value for `failover_targets`, must be one of { failover_targets_allowed_values }" + ) + query_params = { "compartmentId": compartment_id, "dbHomeId": kwargs.get("db_home_id", missing), @@ -35474,7 +35731,9 @@ def list_databases(self, compartment_id, **kwargs): "sortBy": kwargs.get("sort_by", missing), "sortOrder": kwargs.get("sort_order", missing), "lifecycleState": kwargs.get("lifecycle_state", missing), - "dbName": kwargs.get("db_name", missing) + "dbName": kwargs.get("db_name", missing), + "managedAutoFailover": kwargs.get("managed_auto_failover", missing), + "failoverTargets": kwargs.get("failover_targets", missing) } query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} diff --git a/src/oci/database/models/__init__.py b/src/oci/database/models/__init__.py index 2dbd2d76ba..a01cee839c 100644 --- a/src/oci/database/models/__init__.py +++ b/src/oci/database/models/__init__.py @@ -25,6 +25,7 @@ from .associated_database_details import AssociatedDatabaseDetails from .associated_long_term_backup import AssociatedLongTermBackup from .associated_resource_details import AssociatedResourceDetails +from .auto_failover_configuration import AutoFailoverConfiguration from .automated_mount_details import AutomatedMountDetails from .autonomous_container_database import AutonomousContainerDatabase from .autonomous_container_database_backup import AutonomousContainerDatabaseBackup @@ -52,6 +53,8 @@ from .autonomous_database_encryption_key_details import AutonomousDatabaseEncryptionKeyDetails from .autonomous_database_encryption_key_history_entry import AutonomousDatabaseEncryptionKeyHistoryEntry from .autonomous_database_in_backup import AutonomousDatabaseInBackup +from .autonomous_database_in_backup_collection import AutonomousDatabaseInBackupCollection +from .autonomous_database_in_backup_summary import AutonomousDatabaseInBackupSummary from .autonomous_database_key_history_entry import AutonomousDatabaseKeyHistoryEntry from .autonomous_database_maintenance_window_summary import AutonomousDatabaseMaintenanceWindowSummary from .autonomous_database_manual_refresh_details import AutonomousDatabaseManualRefreshDetails @@ -162,6 +165,7 @@ from .create_autonomous_container_database_dataguard_association_details import CreateAutonomousContainerDatabaseDataguardAssociationDetails from .create_autonomous_container_database_details import CreateAutonomousContainerDatabaseDetails from .create_autonomous_container_database_from_backup_details import CreateAutonomousContainerDatabaseFromBackupDetails +from .create_autonomous_container_database_from_backup_timestamp_details import CreateAutonomousContainerDatabaseFromBackupTimestampDetails from .create_autonomous_database_backup_details import CreateAutonomousDatabaseBackupDetails from .create_autonomous_database_base import CreateAutonomousDatabaseBase from .create_autonomous_database_clone_details import CreateAutonomousDatabaseCloneDetails @@ -604,6 +608,7 @@ "AssociatedDatabaseDetails": AssociatedDatabaseDetails, "AssociatedLongTermBackup": AssociatedLongTermBackup, "AssociatedResourceDetails": AssociatedResourceDetails, + "AutoFailoverConfiguration": AutoFailoverConfiguration, "AutomatedMountDetails": AutomatedMountDetails, "AutonomousContainerDatabase": AutonomousContainerDatabase, "AutonomousContainerDatabaseBackup": AutonomousContainerDatabaseBackup, @@ -631,6 +636,8 @@ "AutonomousDatabaseEncryptionKeyDetails": AutonomousDatabaseEncryptionKeyDetails, "AutonomousDatabaseEncryptionKeyHistoryEntry": AutonomousDatabaseEncryptionKeyHistoryEntry, "AutonomousDatabaseInBackup": AutonomousDatabaseInBackup, + "AutonomousDatabaseInBackupCollection": AutonomousDatabaseInBackupCollection, + "AutonomousDatabaseInBackupSummary": AutonomousDatabaseInBackupSummary, "AutonomousDatabaseKeyHistoryEntry": AutonomousDatabaseKeyHistoryEntry, "AutonomousDatabaseMaintenanceWindowSummary": AutonomousDatabaseMaintenanceWindowSummary, "AutonomousDatabaseManualRefreshDetails": AutonomousDatabaseManualRefreshDetails, @@ -741,6 +748,7 @@ "CreateAutonomousContainerDatabaseDataguardAssociationDetails": CreateAutonomousContainerDatabaseDataguardAssociationDetails, "CreateAutonomousContainerDatabaseDetails": CreateAutonomousContainerDatabaseDetails, "CreateAutonomousContainerDatabaseFromBackupDetails": CreateAutonomousContainerDatabaseFromBackupDetails, + "CreateAutonomousContainerDatabaseFromBackupTimestampDetails": CreateAutonomousContainerDatabaseFromBackupTimestampDetails, "CreateAutonomousDatabaseBackupDetails": CreateAutonomousDatabaseBackupDetails, "CreateAutonomousDatabaseBase": CreateAutonomousDatabaseBase, "CreateAutonomousDatabaseCloneDetails": CreateAutonomousDatabaseCloneDetails, diff --git a/src/oci/database/models/auto_failover_configuration.py b/src/oci/database/models/auto_failover_configuration.py new file mode 100644 index 0000000000..4316a57de5 --- /dev/null +++ b/src/oci/database/models/auto_failover_configuration.py @@ -0,0 +1,117 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class AutoFailoverConfiguration(object): + """ + The properties for defining auto failover configuration. + """ + + #: A constant which can be used with the managed_auto_failover property of a AutoFailoverConfiguration. + #: This constant has a value of "ENABLE" + MANAGED_AUTO_FAILOVER_ENABLE = "ENABLE" + + #: A constant which can be used with the managed_auto_failover property of a AutoFailoverConfiguration. + #: This constant has a value of "DISABLE" + MANAGED_AUTO_FAILOVER_DISABLE = "DISABLE" + + def __init__(self, **kwargs): + """ + Initializes a new AutoFailoverConfiguration object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param managed_auto_failover: + The value to assign to the managed_auto_failover property of this AutoFailoverConfiguration. + Allowed values for this property are: "ENABLE", "DISABLE" + :type managed_auto_failover: str + + :param failover_targets: + The value to assign to the failover_targets property of this AutoFailoverConfiguration. + :type failover_targets: list[str] + + """ + self.swagger_types = { + 'managed_auto_failover': 'str', + 'failover_targets': 'list[str]' + } + self.attribute_map = { + 'managed_auto_failover': 'managedAutoFailover', + 'failover_targets': 'failoverTargets' + } + self._managed_auto_failover = None + self._failover_targets = None + + @property + def managed_auto_failover(self): + """ + Gets the managed_auto_failover of this AutoFailoverConfiguration. + The state of managed auto failover. + + Allowed values for this property are: "ENABLE", "DISABLE" + + + :return: The managed_auto_failover of this AutoFailoverConfiguration. + :rtype: str + """ + return self._managed_auto_failover + + @managed_auto_failover.setter + def managed_auto_failover(self, managed_auto_failover): + """ + Sets the managed_auto_failover of this AutoFailoverConfiguration. + The state of managed auto failover. + + + :param managed_auto_failover: The managed_auto_failover of this AutoFailoverConfiguration. + :type: str + """ + allowed_values = ["ENABLE", "DISABLE"] + if not value_allowed_none_or_none_sentinel(managed_auto_failover, allowed_values): + raise ValueError( + f"Invalid value for `managed_auto_failover`, must be None or one of {allowed_values}" + ) + self._managed_auto_failover = managed_auto_failover + + @property + def failover_targets(self): + """ + Gets the failover_targets of this AutoFailoverConfiguration. + Specifies the `DB_UNIQUE_NAME` of the data guard group member databases. + + + :return: The failover_targets of this AutoFailoverConfiguration. + :rtype: list[str] + """ + return self._failover_targets + + @failover_targets.setter + def failover_targets(self, failover_targets): + """ + Sets the failover_targets of this AutoFailoverConfiguration. + Specifies the `DB_UNIQUE_NAME` of the data guard group member databases. + + + :param failover_targets: The failover_targets of this AutoFailoverConfiguration. + :type: list[str] + """ + self._failover_targets = failover_targets + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/database/models/autonomous_container_database_backup.py b/src/oci/database/models/autonomous_container_database_backup.py index 512ddf1873..f0416c6e9b 100644 --- a/src/oci/database/models/autonomous_container_database_backup.py +++ b/src/oci/database/models/autonomous_container_database_backup.py @@ -82,7 +82,8 @@ def __init__(self, **kwargs): :param type: The value to assign to the type property of this AutonomousContainerDatabaseBackup. - Allowed values for this property are: "INCREMENTAL", "FULL", "VIRTUAL_FULL" + Allowed values for this property are: "INCREMENTAL", "FULL", "VIRTUAL_FULL", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type type: str :param is_automatic: @@ -103,7 +104,8 @@ def __init__(self, **kwargs): :param lifecycle_state: The value to assign to the lifecycle_state property of this AutonomousContainerDatabaseBackup. - Allowed values for this property are: "CREATING", "ACTIVE", "DELETING", "DELETED", "FAILED" + Allowed values for this property are: "CREATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str :param retention_period_in_days: @@ -116,7 +118,8 @@ def __init__(self, **kwargs): :param infrastructure_type: The value to assign to the infrastructure_type property of this AutonomousContainerDatabaseBackup. - Allowed values for this property are: "CLOUD", "CLOUD_AT_CUSTOMER" + Allowed values for this property are: "CLOUD", "CLOUD_AT_CUSTOMER", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type infrastructure_type: str :param freeform_tags: @@ -135,6 +138,14 @@ def __init__(self, **kwargs): The value to assign to the autonomous_databases property of this AutonomousContainerDatabaseBackup. :type autonomous_databases: list[oci.database.models.AutonomousDatabaseInBackup] + :param db_version: + The value to assign to the db_version property of this AutonomousContainerDatabaseBackup. + :type db_version: str + + :param backup_destination_details: + The value to assign to the backup_destination_details property of this AutonomousContainerDatabaseBackup. + :type backup_destination_details: oci.database.models.BackupDestinationDetails + """ self.swagger_types = { 'id': 'str', @@ -154,7 +165,9 @@ def __init__(self, **kwargs): 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', 'system_tags': 'dict(str, dict(str, object))', - 'autonomous_databases': 'list[AutonomousDatabaseInBackup]' + 'autonomous_databases': 'list[AutonomousDatabaseInBackup]', + 'db_version': 'str', + 'backup_destination_details': 'BackupDestinationDetails' } self.attribute_map = { 'id': 'id', @@ -174,7 +187,9 @@ def __init__(self, **kwargs): 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', 'system_tags': 'systemTags', - 'autonomous_databases': 'autonomousDatabases' + 'autonomous_databases': 'autonomousDatabases', + 'db_version': 'dbVersion', + 'backup_destination_details': 'backupDestinationDetails' } self._id = None self._compartment_id = None @@ -194,6 +209,8 @@ def __init__(self, **kwargs): self._defined_tags = None self._system_tags = None self._autonomous_databases = None + self._db_version = None + self._backup_destination_details = None @property def id(self): @@ -333,7 +350,8 @@ def type(self): **[Required]** Gets the type of this AutonomousContainerDatabaseBackup. The type of backup. - Allowed values for this property are: "INCREMENTAL", "FULL", "VIRTUAL_FULL" + Allowed values for this property are: "INCREMENTAL", "FULL", "VIRTUAL_FULL", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :return: The type of this AutonomousContainerDatabaseBackup. @@ -353,9 +371,7 @@ def type(self, type): """ allowed_values = ["INCREMENTAL", "FULL", "VIRTUAL_FULL"] if not value_allowed_none_or_none_sentinel(type, allowed_values): - raise ValueError( - f"Invalid value for `type`, must be None or one of {allowed_values}" - ) + type = 'UNKNOWN_ENUM_VALUE' self._type = type @property @@ -460,7 +476,8 @@ def lifecycle_state(self): **[Required]** Gets the lifecycle_state of this AutonomousContainerDatabaseBackup. The current state of the backup. - Allowed values for this property are: "CREATING", "ACTIVE", "DELETING", "DELETED", "FAILED" + Allowed values for this property are: "CREATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :return: The lifecycle_state of this AutonomousContainerDatabaseBackup. @@ -480,9 +497,7 @@ def lifecycle_state(self, lifecycle_state): """ allowed_values = ["CREATING", "ACTIVE", "DELETING", "DELETED", "FAILED"] if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): - raise ValueError( - f"Invalid value for `lifecycle_state`, must be None or one of {allowed_values}" - ) + lifecycle_state = 'UNKNOWN_ENUM_VALUE' self._lifecycle_state = lifecycle_state @property @@ -539,7 +554,8 @@ def infrastructure_type(self): Gets the infrastructure_type of this AutonomousContainerDatabaseBackup. The infrastructure type this resource belongs to. - Allowed values for this property are: "CLOUD", "CLOUD_AT_CUSTOMER" + Allowed values for this property are: "CLOUD", "CLOUD_AT_CUSTOMER", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :return: The infrastructure_type of this AutonomousContainerDatabaseBackup. @@ -559,9 +575,7 @@ def infrastructure_type(self, infrastructure_type): """ allowed_values = ["CLOUD", "CLOUD_AT_CUSTOMER"] if not value_allowed_none_or_none_sentinel(infrastructure_type, allowed_values): - raise ValueError( - f"Invalid value for `infrastructure_type`, must be None or one of {allowed_values}" - ) + infrastructure_type = 'UNKNOWN_ENUM_VALUE' self._infrastructure_type = infrastructure_type @property @@ -682,6 +696,60 @@ def autonomous_databases(self, autonomous_databases): """ self._autonomous_databases = autonomous_databases + @property + def db_version(self): + """ + Gets the db_version of this AutonomousContainerDatabaseBackup. + 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. + + + :return: The db_version of this AutonomousContainerDatabaseBackup. + :rtype: str + """ + return self._db_version + + @db_version.setter + def db_version(self, db_version): + """ + Sets the db_version of this AutonomousContainerDatabaseBackup. + 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. + + + :param db_version: The db_version of this AutonomousContainerDatabaseBackup. + :type: str + """ + self._db_version = db_version + + @property + def backup_destination_details(self): + """ + Gets the backup_destination_details of this AutonomousContainerDatabaseBackup. + + :return: The backup_destination_details of this AutonomousContainerDatabaseBackup. + :rtype: oci.database.models.BackupDestinationDetails + """ + return self._backup_destination_details + + @backup_destination_details.setter + def backup_destination_details(self, backup_destination_details): + """ + Sets the backup_destination_details of this AutonomousContainerDatabaseBackup. + + :param backup_destination_details: The backup_destination_details of this AutonomousContainerDatabaseBackup. + :type: oci.database.models.BackupDestinationDetails + """ + self._backup_destination_details = backup_destination_details + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/database/models/autonomous_container_database_backup_summary.py b/src/oci/database/models/autonomous_container_database_backup_summary.py index 05676ccc2d..486768fb4b 100644 --- a/src/oci/database/models/autonomous_container_database_backup_summary.py +++ b/src/oci/database/models/autonomous_container_database_backup_summary.py @@ -143,6 +143,14 @@ def __init__(self, **kwargs): The value to assign to the autonomous_databases property of this AutonomousContainerDatabaseBackupSummary. :type autonomous_databases: list[oci.database.models.AutonomousDatabaseInBackup] + :param db_version: + The value to assign to the db_version property of this AutonomousContainerDatabaseBackupSummary. + :type db_version: str + + :param backup_destination_details: + The value to assign to the backup_destination_details property of this AutonomousContainerDatabaseBackupSummary. + :type backup_destination_details: oci.database.models.BackupDestinationDetails + """ self.swagger_types = { 'id': 'str', @@ -162,7 +170,9 @@ def __init__(self, **kwargs): 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', 'system_tags': 'dict(str, dict(str, object))', - 'autonomous_databases': 'list[AutonomousDatabaseInBackup]' + 'autonomous_databases': 'list[AutonomousDatabaseInBackup]', + 'db_version': 'str', + 'backup_destination_details': 'BackupDestinationDetails' } self.attribute_map = { 'id': 'id', @@ -182,7 +192,9 @@ def __init__(self, **kwargs): 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', 'system_tags': 'systemTags', - 'autonomous_databases': 'autonomousDatabases' + 'autonomous_databases': 'autonomousDatabases', + 'db_version': 'dbVersion', + 'backup_destination_details': 'backupDestinationDetails' } self._id = None self._compartment_id = None @@ -202,6 +214,8 @@ def __init__(self, **kwargs): self._defined_tags = None self._system_tags = None self._autonomous_databases = None + self._db_version = None + self._backup_destination_details = None @property def id(self): @@ -687,6 +701,60 @@ def autonomous_databases(self, autonomous_databases): """ self._autonomous_databases = autonomous_databases + @property + def db_version(self): + """ + Gets the db_version of this AutonomousContainerDatabaseBackupSummary. + 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. + + + :return: The db_version of this AutonomousContainerDatabaseBackupSummary. + :rtype: str + """ + return self._db_version + + @db_version.setter + def db_version(self, db_version): + """ + Sets the db_version of this AutonomousContainerDatabaseBackupSummary. + 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. + + + :param db_version: The db_version of this AutonomousContainerDatabaseBackupSummary. + :type: str + """ + self._db_version = db_version + + @property + def backup_destination_details(self): + """ + Gets the backup_destination_details of this AutonomousContainerDatabaseBackupSummary. + + :return: The backup_destination_details of this AutonomousContainerDatabaseBackupSummary. + :rtype: oci.database.models.BackupDestinationDetails + """ + return self._backup_destination_details + + @backup_destination_details.setter + def backup_destination_details(self, backup_destination_details): + """ + Sets the backup_destination_details of this AutonomousContainerDatabaseBackupSummary. + + :param backup_destination_details: The backup_destination_details of this AutonomousContainerDatabaseBackupSummary. + :type: oci.database.models.BackupDestinationDetails + """ + self._backup_destination_details = backup_destination_details + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/database/models/autonomous_database_in_backup.py b/src/oci/database/models/autonomous_database_in_backup.py index 6225dc3be0..b18972827b 100644 --- a/src/oci/database/models/autonomous_database_in_backup.py +++ b/src/oci/database/models/autonomous_database_in_backup.py @@ -15,6 +15,94 @@ class AutonomousDatabaseInBackup(object): Details of Autonomous AI Database in Autonomous Container Database """ + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackup. + #: This constant has a value of "PROVISIONING" + LIFECYCLE_STATE_PROVISIONING = "PROVISIONING" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackup. + #: This constant has a value of "AVAILABLE" + LIFECYCLE_STATE_AVAILABLE = "AVAILABLE" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackup. + #: This constant has a value of "STOPPING" + LIFECYCLE_STATE_STOPPING = "STOPPING" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackup. + #: This constant has a value of "STOPPED" + LIFECYCLE_STATE_STOPPED = "STOPPED" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackup. + #: This constant has a value of "STARTING" + LIFECYCLE_STATE_STARTING = "STARTING" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackup. + #: This constant has a value of "TERMINATING" + LIFECYCLE_STATE_TERMINATING = "TERMINATING" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackup. + #: This constant has a value of "TERMINATED" + LIFECYCLE_STATE_TERMINATED = "TERMINATED" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackup. + #: This constant has a value of "UNAVAILABLE" + LIFECYCLE_STATE_UNAVAILABLE = "UNAVAILABLE" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackup. + #: This constant has a value of "RESTORE_IN_PROGRESS" + LIFECYCLE_STATE_RESTORE_IN_PROGRESS = "RESTORE_IN_PROGRESS" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackup. + #: This constant has a value of "RESTORE_FAILED" + LIFECYCLE_STATE_RESTORE_FAILED = "RESTORE_FAILED" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackup. + #: This constant has a value of "BACKUP_IN_PROGRESS" + LIFECYCLE_STATE_BACKUP_IN_PROGRESS = "BACKUP_IN_PROGRESS" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackup. + #: This constant has a value of "SCALE_IN_PROGRESS" + LIFECYCLE_STATE_SCALE_IN_PROGRESS = "SCALE_IN_PROGRESS" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackup. + #: This constant has a value of "AVAILABLE_NEEDS_ATTENTION" + LIFECYCLE_STATE_AVAILABLE_NEEDS_ATTENTION = "AVAILABLE_NEEDS_ATTENTION" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackup. + #: This constant has a value of "UPDATING" + LIFECYCLE_STATE_UPDATING = "UPDATING" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackup. + #: This constant has a value of "MAINTENANCE_IN_PROGRESS" + LIFECYCLE_STATE_MAINTENANCE_IN_PROGRESS = "MAINTENANCE_IN_PROGRESS" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackup. + #: This constant has a value of "RESTARTING" + LIFECYCLE_STATE_RESTARTING = "RESTARTING" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackup. + #: This constant has a value of "RECREATING" + LIFECYCLE_STATE_RECREATING = "RECREATING" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackup. + #: This constant has a value of "ROLE_CHANGE_IN_PROGRESS" + LIFECYCLE_STATE_ROLE_CHANGE_IN_PROGRESS = "ROLE_CHANGE_IN_PROGRESS" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackup. + #: This constant has a value of "UPGRADING" + LIFECYCLE_STATE_UPGRADING = "UPGRADING" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackup. + #: This constant has a value of "INACCESSIBLE" + LIFECYCLE_STATE_INACCESSIBLE = "INACCESSIBLE" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackup. + #: This constant has a value of "STANDBY" + LIFECYCLE_STATE_STANDBY = "STANDBY" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackup. + #: This constant has a value of "TRANSPORTING" + LIFECYCLE_STATE_TRANSPORTING = "TRANSPORTING" + def __init__(self, **kwargs): """ Initializes a new AutonomousDatabaseInBackup object with values from keyword arguments. @@ -28,17 +116,26 @@ def __init__(self, **kwargs): The value to assign to the display_name property of this AutonomousDatabaseInBackup. :type display_name: str + :param lifecycle_state: + The value to assign to the lifecycle_state property of this AutonomousDatabaseInBackup. + Allowed values for this property are: "PROVISIONING", "AVAILABLE", "STOPPING", "STOPPED", "STARTING", "TERMINATING", "TERMINATED", "UNAVAILABLE", "RESTORE_IN_PROGRESS", "RESTORE_FAILED", "BACKUP_IN_PROGRESS", "SCALE_IN_PROGRESS", "AVAILABLE_NEEDS_ATTENTION", "UPDATING", "MAINTENANCE_IN_PROGRESS", "RESTARTING", "RECREATING", "ROLE_CHANGE_IN_PROGRESS", "UPGRADING", "INACCESSIBLE", "STANDBY", "TRANSPORTING", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + """ self.swagger_types = { 'compartment_id': 'str', - 'display_name': 'str' + 'display_name': 'str', + 'lifecycle_state': 'str' } self.attribute_map = { 'compartment_id': 'compartmentId', - 'display_name': 'displayName' + 'display_name': 'displayName', + 'lifecycle_state': 'lifecycleState' } self._compartment_id = None self._display_name = None + self._lifecycle_state = None @property def compartment_id(self): @@ -92,6 +189,36 @@ def display_name(self, display_name): """ self._display_name = display_name + @property + def lifecycle_state(self): + """ + Gets the lifecycle_state of this AutonomousDatabaseInBackup. + The current state of the Autonomous AI Database. + + Allowed values for this property are: "PROVISIONING", "AVAILABLE", "STOPPING", "STOPPED", "STARTING", "TERMINATING", "TERMINATED", "UNAVAILABLE", "RESTORE_IN_PROGRESS", "RESTORE_FAILED", "BACKUP_IN_PROGRESS", "SCALE_IN_PROGRESS", "AVAILABLE_NEEDS_ATTENTION", "UPDATING", "MAINTENANCE_IN_PROGRESS", "RESTARTING", "RECREATING", "ROLE_CHANGE_IN_PROGRESS", "UPGRADING", "INACCESSIBLE", "STANDBY", "TRANSPORTING", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this AutonomousDatabaseInBackup. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this AutonomousDatabaseInBackup. + The current state of the Autonomous AI Database. + + + :param lifecycle_state: The lifecycle_state of this AutonomousDatabaseInBackup. + :type: str + """ + allowed_values = ["PROVISIONING", "AVAILABLE", "STOPPING", "STOPPED", "STARTING", "TERMINATING", "TERMINATED", "UNAVAILABLE", "RESTORE_IN_PROGRESS", "RESTORE_FAILED", "BACKUP_IN_PROGRESS", "SCALE_IN_PROGRESS", "AVAILABLE_NEEDS_ATTENTION", "UPDATING", "MAINTENANCE_IN_PROGRESS", "RESTARTING", "RECREATING", "ROLE_CHANGE_IN_PROGRESS", "UPGRADING", "INACCESSIBLE", "STANDBY", "TRANSPORTING"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/database/models/autonomous_database_in_backup_collection.py b/src/oci/database/models/autonomous_database_in_backup_collection.py new file mode 100644 index 0000000000..cf34a6e450 --- /dev/null +++ b/src/oci/database/models/autonomous_database_in_backup_collection.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class AutonomousDatabaseInBackupCollection(object): + """ + The collection of Autonomous Database details that are part of Autonomous Container Database Backup associated. + """ + + def __init__(self, **kwargs): + """ + Initializes a new AutonomousDatabaseInBackupCollection object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this AutonomousDatabaseInBackupCollection. + :type items: list[oci.database.models.AutonomousDatabaseInBackupSummary] + + """ + self.swagger_types = { + 'items': 'list[AutonomousDatabaseInBackupSummary]' + } + self.attribute_map = { + 'items': 'items' + } + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this AutonomousDatabaseInBackupCollection. + The list of Autonomous Databases that are part of the Autonomous Container Database Backup. + + + :return: The items of this AutonomousDatabaseInBackupCollection. + :rtype: list[oci.database.models.AutonomousDatabaseInBackupSummary] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this AutonomousDatabaseInBackupCollection. + The list of Autonomous Databases that are part of the Autonomous Container Database Backup. + + + :param items: The items of this AutonomousDatabaseInBackupCollection. + :type: list[oci.database.models.AutonomousDatabaseInBackupSummary] + """ + self._items = items + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/database/models/autonomous_database_in_backup_summary.py b/src/oci/database/models/autonomous_database_in_backup_summary.py new file mode 100644 index 0000000000..bcd9e9f3f2 --- /dev/null +++ b/src/oci/database/models/autonomous_database_in_backup_summary.py @@ -0,0 +1,232 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class AutonomousDatabaseInBackupSummary(object): + """ + The summary of the autonomous database that are in the Autonomous Container Database Backup associated. + """ + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackupSummary. + #: This constant has a value of "PROVISIONING" + LIFECYCLE_STATE_PROVISIONING = "PROVISIONING" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackupSummary. + #: This constant has a value of "AVAILABLE" + LIFECYCLE_STATE_AVAILABLE = "AVAILABLE" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackupSummary. + #: This constant has a value of "STOPPING" + LIFECYCLE_STATE_STOPPING = "STOPPING" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackupSummary. + #: This constant has a value of "STOPPED" + LIFECYCLE_STATE_STOPPED = "STOPPED" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackupSummary. + #: This constant has a value of "STARTING" + LIFECYCLE_STATE_STARTING = "STARTING" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackupSummary. + #: This constant has a value of "TERMINATING" + LIFECYCLE_STATE_TERMINATING = "TERMINATING" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackupSummary. + #: This constant has a value of "TERMINATED" + LIFECYCLE_STATE_TERMINATED = "TERMINATED" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackupSummary. + #: This constant has a value of "UNAVAILABLE" + LIFECYCLE_STATE_UNAVAILABLE = "UNAVAILABLE" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackupSummary. + #: This constant has a value of "RESTORE_IN_PROGRESS" + LIFECYCLE_STATE_RESTORE_IN_PROGRESS = "RESTORE_IN_PROGRESS" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackupSummary. + #: This constant has a value of "RESTORE_FAILED" + LIFECYCLE_STATE_RESTORE_FAILED = "RESTORE_FAILED" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackupSummary. + #: This constant has a value of "BACKUP_IN_PROGRESS" + LIFECYCLE_STATE_BACKUP_IN_PROGRESS = "BACKUP_IN_PROGRESS" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackupSummary. + #: This constant has a value of "SCALE_IN_PROGRESS" + LIFECYCLE_STATE_SCALE_IN_PROGRESS = "SCALE_IN_PROGRESS" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackupSummary. + #: This constant has a value of "AVAILABLE_NEEDS_ATTENTION" + LIFECYCLE_STATE_AVAILABLE_NEEDS_ATTENTION = "AVAILABLE_NEEDS_ATTENTION" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackupSummary. + #: This constant has a value of "UPDATING" + LIFECYCLE_STATE_UPDATING = "UPDATING" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackupSummary. + #: This constant has a value of "MAINTENANCE_IN_PROGRESS" + LIFECYCLE_STATE_MAINTENANCE_IN_PROGRESS = "MAINTENANCE_IN_PROGRESS" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackupSummary. + #: This constant has a value of "RESTARTING" + LIFECYCLE_STATE_RESTARTING = "RESTARTING" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackupSummary. + #: This constant has a value of "RECREATING" + LIFECYCLE_STATE_RECREATING = "RECREATING" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackupSummary. + #: This constant has a value of "ROLE_CHANGE_IN_PROGRESS" + LIFECYCLE_STATE_ROLE_CHANGE_IN_PROGRESS = "ROLE_CHANGE_IN_PROGRESS" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackupSummary. + #: This constant has a value of "UPGRADING" + LIFECYCLE_STATE_UPGRADING = "UPGRADING" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackupSummary. + #: This constant has a value of "INACCESSIBLE" + LIFECYCLE_STATE_INACCESSIBLE = "INACCESSIBLE" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackupSummary. + #: This constant has a value of "STANDBY" + LIFECYCLE_STATE_STANDBY = "STANDBY" + + #: A constant which can be used with the lifecycle_state property of a AutonomousDatabaseInBackupSummary. + #: This constant has a value of "TRANSPORTING" + LIFECYCLE_STATE_TRANSPORTING = "TRANSPORTING" + + def __init__(self, **kwargs): + """ + Initializes a new AutonomousDatabaseInBackupSummary object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param compartment_id: + The value to assign to the compartment_id property of this AutonomousDatabaseInBackupSummary. + :type compartment_id: str + + :param display_name: + The value to assign to the display_name property of this AutonomousDatabaseInBackupSummary. + :type display_name: str + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this AutonomousDatabaseInBackupSummary. + Allowed values for this property are: "PROVISIONING", "AVAILABLE", "STOPPING", "STOPPED", "STARTING", "TERMINATING", "TERMINATED", "UNAVAILABLE", "RESTORE_IN_PROGRESS", "RESTORE_FAILED", "BACKUP_IN_PROGRESS", "SCALE_IN_PROGRESS", "AVAILABLE_NEEDS_ATTENTION", "UPDATING", "MAINTENANCE_IN_PROGRESS", "RESTARTING", "RECREATING", "ROLE_CHANGE_IN_PROGRESS", "UPGRADING", "INACCESSIBLE", "STANDBY", "TRANSPORTING", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + """ + self.swagger_types = { + 'compartment_id': 'str', + 'display_name': 'str', + 'lifecycle_state': 'str' + } + self.attribute_map = { + 'compartment_id': 'compartmentId', + 'display_name': 'displayName', + 'lifecycle_state': 'lifecycleState' + } + self._compartment_id = None + self._display_name = None + self._lifecycle_state = None + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this AutonomousDatabaseInBackupSummary. + The `OCID`__ of the compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this AutonomousDatabaseInBackupSummary. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this AutonomousDatabaseInBackupSummary. + The `OCID`__ of the compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this AutonomousDatabaseInBackupSummary. + :type: str + """ + self._compartment_id = compartment_id + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this AutonomousDatabaseInBackupSummary. + The user-friendly name for the Autonomous AI Database. The name does not have to be unique. + + + :return: The display_name of this AutonomousDatabaseInBackupSummary. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this AutonomousDatabaseInBackupSummary. + The user-friendly name for the Autonomous AI Database. The name does not have to be unique. + + + :param display_name: The display_name of this AutonomousDatabaseInBackupSummary. + :type: str + """ + self._display_name = display_name + + @property + def lifecycle_state(self): + """ + Gets the lifecycle_state of this AutonomousDatabaseInBackupSummary. + The current state of the Autonomous AI Database. + + Allowed values for this property are: "PROVISIONING", "AVAILABLE", "STOPPING", "STOPPED", "STARTING", "TERMINATING", "TERMINATED", "UNAVAILABLE", "RESTORE_IN_PROGRESS", "RESTORE_FAILED", "BACKUP_IN_PROGRESS", "SCALE_IN_PROGRESS", "AVAILABLE_NEEDS_ATTENTION", "UPDATING", "MAINTENANCE_IN_PROGRESS", "RESTARTING", "RECREATING", "ROLE_CHANGE_IN_PROGRESS", "UPGRADING", "INACCESSIBLE", "STANDBY", "TRANSPORTING", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this AutonomousDatabaseInBackupSummary. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this AutonomousDatabaseInBackupSummary. + The current state of the Autonomous AI Database. + + + :param lifecycle_state: The lifecycle_state of this AutonomousDatabaseInBackupSummary. + :type: str + """ + allowed_values = ["PROVISIONING", "AVAILABLE", "STOPPING", "STOPPED", "STARTING", "TERMINATING", "TERMINATED", "UNAVAILABLE", "RESTORE_IN_PROGRESS", "RESTORE_FAILED", "BACKUP_IN_PROGRESS", "SCALE_IN_PROGRESS", "AVAILABLE_NEEDS_ATTENTION", "UPDATING", "MAINTENANCE_IN_PROGRESS", "RESTARTING", "RECREATING", "ROLE_CHANGE_IN_PROGRESS", "UPGRADING", "INACCESSIBLE", "STANDBY", "TRANSPORTING"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/database/models/create_autonomous_container_database_base.py b/src/oci/database/models/create_autonomous_container_database_base.py index c285e31642..105fa732de 100644 --- a/src/oci/database/models/create_autonomous_container_database_base.py +++ b/src/oci/database/models/create_autonomous_container_database_base.py @@ -23,6 +23,10 @@ class CreateAutonomousContainerDatabaseBase(object): #: This constant has a value of "BACKUP_FROM_ID" SOURCE_BACKUP_FROM_ID = "BACKUP_FROM_ID" + #: A constant which can be used with the source property of a CreateAutonomousContainerDatabaseBase. + #: This constant has a value of "BACKUP_FROM_TIMESTAMP" + SOURCE_BACKUP_FROM_TIMESTAMP = "BACKUP_FROM_TIMESTAMP" + #: A constant which can be used with the service_level_agreement_type property of a CreateAutonomousContainerDatabaseBase. #: This constant has a value of "STANDARD" SERVICE_LEVEL_AGREEMENT_TYPE_STANDARD = "STANDARD" @@ -80,6 +84,7 @@ def __init__(self, **kwargs): Initializes a new CreateAutonomousContainerDatabaseBase object with values from keyword arguments. This class has the following subclasses and if you are using this class as input to a service operations then you should favor using a subclass over the base class: + * :class:`~oci.database.models.CreateAutonomousContainerDatabaseFromBackupTimestampDetails` * :class:`~oci.database.models.CreateAutonomousContainerDatabaseDetails` * :class:`~oci.database.models.CreateAutonomousContainerDatabaseFromBackupDetails` @@ -95,7 +100,7 @@ def __init__(self, **kwargs): :param source: The value to assign to the source property of this CreateAutonomousContainerDatabaseBase. - Allowed values for this property are: "NONE", "BACKUP_FROM_ID" + Allowed values for this property are: "NONE", "BACKUP_FROM_ID", "BACKUP_FROM_TIMESTAMP" :type source: str :param display_name: @@ -386,6 +391,9 @@ def get_subtype(object_dictionary): """ type = object_dictionary['source'] + if type == 'BACKUP_FROM_TIMESTAMP': + return 'CreateAutonomousContainerDatabaseFromBackupTimestampDetails' + if type == 'NONE': return 'CreateAutonomousContainerDatabaseDetails' @@ -448,7 +456,7 @@ def source(self): Gets the source of this CreateAutonomousContainerDatabaseBase. The source of the database. Use `NONE` to create a new Autonomous Container Database (ACD). Use `BACKUP_FROM_ID` to create a new ACD from a specified backup. - Allowed values for this property are: "NONE", "BACKUP_FROM_ID" + Allowed values for this property are: "NONE", "BACKUP_FROM_ID", "BACKUP_FROM_TIMESTAMP" :return: The source of this CreateAutonomousContainerDatabaseBase. @@ -466,7 +474,7 @@ def source(self, source): :param source: The source of this CreateAutonomousContainerDatabaseBase. :type: str """ - allowed_values = ["NONE", "BACKUP_FROM_ID"] + allowed_values = ["NONE", "BACKUP_FROM_ID", "BACKUP_FROM_TIMESTAMP"] if not value_allowed_none_or_none_sentinel(source, allowed_values): raise ValueError( f"Invalid value for `source`, must be None or one of {allowed_values}" diff --git a/src/oci/database/models/create_autonomous_container_database_details.py b/src/oci/database/models/create_autonomous_container_database_details.py index d8fabff4fd..542bc74a57 100644 --- a/src/oci/database/models/create_autonomous_container_database_details.py +++ b/src/oci/database/models/create_autonomous_container_database_details.py @@ -31,7 +31,7 @@ def __init__(self, **kwargs): :param source: The value to assign to the source property of this CreateAutonomousContainerDatabaseDetails. - Allowed values for this property are: "NONE", "BACKUP_FROM_ID" + Allowed values for this property are: "NONE", "BACKUP_FROM_ID", "BACKUP_FROM_TIMESTAMP" :type source: str :param display_name: diff --git a/src/oci/database/models/create_autonomous_container_database_from_backup_details.py b/src/oci/database/models/create_autonomous_container_database_from_backup_details.py index 404bc7f8f4..d12f1b283a 100644 --- a/src/oci/database/models/create_autonomous_container_database_from_backup_details.py +++ b/src/oci/database/models/create_autonomous_container_database_from_backup_details.py @@ -15,6 +15,30 @@ class CreateAutonomousContainerDatabaseFromBackupDetails(CreateAutonomousContain Details to create an Autonomous Container Database (ACD) by cloning a backup of an existing ACD. """ + #: A constant which can be used with the clone_type property of a CreateAutonomousContainerDatabaseFromBackupDetails. + #: This constant has a value of "FULL" + CLONE_TYPE_FULL = "FULL" + + #: A constant which can be used with the clone_type property of a CreateAutonomousContainerDatabaseFromBackupDetails. + #: This constant has a value of "METADATA" + CLONE_TYPE_METADATA = "METADATA" + + #: A constant which can be used with the clone_type property of a CreateAutonomousContainerDatabaseFromBackupDetails. + #: This constant has a value of "PARTIAL" + CLONE_TYPE_PARTIAL = "PARTIAL" + + #: A constant which can be used with the clone_band_width property of a CreateAutonomousContainerDatabaseFromBackupDetails. + #: This constant has a value of "SLOW" + CLONE_BAND_WIDTH_SLOW = "SLOW" + + #: A constant which can be used with the clone_band_width property of a CreateAutonomousContainerDatabaseFromBackupDetails. + #: This constant has a value of "MEDIUM" + CLONE_BAND_WIDTH_MEDIUM = "MEDIUM" + + #: A constant which can be used with the clone_band_width property of a CreateAutonomousContainerDatabaseFromBackupDetails. + #: This constant has a value of "FAST" + CLONE_BAND_WIDTH_FAST = "FAST" + def __init__(self, **kwargs): """ Initializes a new CreateAutonomousContainerDatabaseFromBackupDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.database.models.CreateAutonomousContainerDatabaseFromBackupDetails.source` attribute @@ -31,7 +55,7 @@ def __init__(self, **kwargs): :param source: The value to assign to the source property of this CreateAutonomousContainerDatabaseFromBackupDetails. - Allowed values for this property are: "NONE", "BACKUP_FROM_ID" + Allowed values for this property are: "NONE", "BACKUP_FROM_ID", "BACKUP_FROM_TIMESTAMP" :type source: str :param display_name: @@ -192,6 +216,20 @@ def __init__(self, **kwargs): The value to assign to the autonomous_container_database_backup_id property of this CreateAutonomousContainerDatabaseFromBackupDetails. :type autonomous_container_database_backup_id: str + :param clone_type: + The value to assign to the clone_type property of this CreateAutonomousContainerDatabaseFromBackupDetails. + Allowed values for this property are: "FULL", "METADATA", "PARTIAL" + :type clone_type: str + + :param autonomous_databases_to_clone: + The value to assign to the autonomous_databases_to_clone property of this CreateAutonomousContainerDatabaseFromBackupDetails. + :type autonomous_databases_to_clone: list[str] + + :param clone_band_width: + The value to assign to the clone_band_width property of this CreateAutonomousContainerDatabaseFromBackupDetails. + Allowed values for this property are: "SLOW", "MEDIUM", "FAST" + :type clone_band_width: str + """ self.swagger_types = { 'customer_contacts': 'list[CustomerContact]', @@ -234,7 +272,10 @@ def __init__(self, **kwargs): 'vm_failover_reservation': 'int', 'distribution_affinity': 'str', 'net_services_architecture': 'str', - 'autonomous_container_database_backup_id': 'str' + 'autonomous_container_database_backup_id': 'str', + 'clone_type': 'str', + 'autonomous_databases_to_clone': 'list[str]', + 'clone_band_width': 'str' } self.attribute_map = { 'customer_contacts': 'customerContacts', @@ -277,7 +318,10 @@ def __init__(self, **kwargs): 'vm_failover_reservation': 'vmFailoverReservation', 'distribution_affinity': 'distributionAffinity', 'net_services_architecture': 'netServicesArchitecture', - 'autonomous_container_database_backup_id': 'autonomousContainerDatabaseBackupId' + 'autonomous_container_database_backup_id': 'autonomousContainerDatabaseBackupId', + 'clone_type': 'cloneType', + 'autonomous_databases_to_clone': 'autonomousDatabasesToClone', + 'clone_band_width': 'cloneBandWidth' } self._customer_contacts = None self._okv_end_point_group_name = None @@ -320,6 +364,9 @@ def __init__(self, **kwargs): self._distribution_affinity = None self._net_services_architecture = None self._autonomous_container_database_backup_id = None + self._clone_type = None + self._autonomous_databases_to_clone = None + self._clone_band_width = None self._source = 'BACKUP_FROM_ID' @property @@ -350,6 +397,92 @@ def autonomous_container_database_backup_id(self, autonomous_container_database_ """ self._autonomous_container_database_backup_id = autonomous_container_database_backup_id + @property + def clone_type(self): + """ + Gets the clone_type of this CreateAutonomousContainerDatabaseFromBackupDetails. + The Autonomous AI Database clone type. + + Allowed values for this property are: "FULL", "METADATA", "PARTIAL" + + + :return: The clone_type of this CreateAutonomousContainerDatabaseFromBackupDetails. + :rtype: str + """ + return self._clone_type + + @clone_type.setter + def clone_type(self, clone_type): + """ + Sets the clone_type of this CreateAutonomousContainerDatabaseFromBackupDetails. + The Autonomous AI Database clone type. + + + :param clone_type: The clone_type of this CreateAutonomousContainerDatabaseFromBackupDetails. + :type: str + """ + allowed_values = ["FULL", "METADATA", "PARTIAL"] + if not value_allowed_none_or_none_sentinel(clone_type, allowed_values): + raise ValueError( + f"Invalid value for `clone_type`, must be None or one of {allowed_values}" + ) + self._clone_type = clone_type + + @property + def autonomous_databases_to_clone(self): + """ + Gets the autonomous_databases_to_clone of this CreateAutonomousContainerDatabaseFromBackupDetails. + A list of Autonomous Databases ( display name of the ADB in specific ) to be cloned from backup of the source Autonomous Container Database. + + + :return: The autonomous_databases_to_clone of this CreateAutonomousContainerDatabaseFromBackupDetails. + :rtype: list[str] + """ + return self._autonomous_databases_to_clone + + @autonomous_databases_to_clone.setter + def autonomous_databases_to_clone(self, autonomous_databases_to_clone): + """ + Sets the autonomous_databases_to_clone of this CreateAutonomousContainerDatabaseFromBackupDetails. + A list of Autonomous Databases ( display name of the ADB in specific ) to be cloned from backup of the source Autonomous Container Database. + + + :param autonomous_databases_to_clone: The autonomous_databases_to_clone of this CreateAutonomousContainerDatabaseFromBackupDetails. + :type: list[str] + """ + self._autonomous_databases_to_clone = autonomous_databases_to_clone + + @property + def clone_band_width(self): + """ + Gets the clone_band_width of this CreateAutonomousContainerDatabaseFromBackupDetails. + The speed at which the Autonomous Container Database Clone from backup operation to be performed by OCI. + + Allowed values for this property are: "SLOW", "MEDIUM", "FAST" + + + :return: The clone_band_width of this CreateAutonomousContainerDatabaseFromBackupDetails. + :rtype: str + """ + return self._clone_band_width + + @clone_band_width.setter + def clone_band_width(self, clone_band_width): + """ + Sets the clone_band_width of this CreateAutonomousContainerDatabaseFromBackupDetails. + The speed at which the Autonomous Container Database Clone from backup operation to be performed by OCI. + + + :param clone_band_width: The clone_band_width of this CreateAutonomousContainerDatabaseFromBackupDetails. + :type: str + """ + allowed_values = ["SLOW", "MEDIUM", "FAST"] + if not value_allowed_none_or_none_sentinel(clone_band_width, allowed_values): + raise ValueError( + f"Invalid value for `clone_band_width`, must be None or one of {allowed_values}" + ) + self._clone_band_width = clone_band_width + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/database/models/create_autonomous_container_database_from_backup_timestamp_details.py b/src/oci/database/models/create_autonomous_container_database_from_backup_timestamp_details.py new file mode 100644 index 0000000000..b8647afffc --- /dev/null +++ b/src/oci/database/models/create_autonomous_container_database_from_backup_timestamp_details.py @@ -0,0 +1,558 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + +from .create_autonomous_container_database_base import CreateAutonomousContainerDatabaseBase +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateAutonomousContainerDatabaseFromBackupTimestampDetails(CreateAutonomousContainerDatabaseBase): + """ + Details to create an Autonomous Container Database (ACD) by cloning backup available, of an existing ACD, at the requested time stamp. + """ + + #: A constant which can be used with the clone_type property of a CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + #: This constant has a value of "FULL" + CLONE_TYPE_FULL = "FULL" + + #: A constant which can be used with the clone_type property of a CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + #: This constant has a value of "METADATA" + CLONE_TYPE_METADATA = "METADATA" + + #: A constant which can be used with the clone_type property of a CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + #: This constant has a value of "PARTIAL" + CLONE_TYPE_PARTIAL = "PARTIAL" + + #: A constant which can be used with the clone_band_width property of a CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + #: This constant has a value of "SLOW" + CLONE_BAND_WIDTH_SLOW = "SLOW" + + #: A constant which can be used with the clone_band_width property of a CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + #: This constant has a value of "MEDIUM" + CLONE_BAND_WIDTH_MEDIUM = "MEDIUM" + + #: A constant which can be used with the clone_band_width property of a CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + #: This constant has a value of "FAST" + CLONE_BAND_WIDTH_FAST = "FAST" + + def __init__(self, **kwargs): + """ + Initializes a new CreateAutonomousContainerDatabaseFromBackupTimestampDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.database.models.CreateAutonomousContainerDatabaseFromBackupTimestampDetails.source` attribute + of this class is ``BACKUP_FROM_TIMESTAMP`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param customer_contacts: + The value to assign to the customer_contacts property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type customer_contacts: list[oci.database.models.CustomerContact] + + :param okv_end_point_group_name: + The value to assign to the okv_end_point_group_name property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type okv_end_point_group_name: str + + :param source: + The value to assign to the source property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + Allowed values for this property are: "NONE", "BACKUP_FROM_ID", "BACKUP_FROM_TIMESTAMP" + :type source: str + + :param display_name: + The value to assign to the display_name property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type display_name: str + + :param db_unique_name: + The value to assign to the db_unique_name property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type db_unique_name: str + + :param db_name: + The value to assign to the db_name property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type db_name: str + + :param service_level_agreement_type: + The value to assign to the service_level_agreement_type property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + Allowed values for this property are: "STANDARD", "AUTONOMOUS_DATAGUARD" + :type service_level_agreement_type: str + + :param autonomous_exadata_infrastructure_id: + The value to assign to the autonomous_exadata_infrastructure_id property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type autonomous_exadata_infrastructure_id: str + + :param db_version: + The value to assign to the db_version property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type db_version: str + + :param database_software_image_id: + The value to assign to the database_software_image_id property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type database_software_image_id: str + + :param peer_autonomous_exadata_infrastructure_id: + The value to assign to the peer_autonomous_exadata_infrastructure_id property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type peer_autonomous_exadata_infrastructure_id: str + + :param peer_autonomous_container_database_display_name: + The value to assign to the peer_autonomous_container_database_display_name property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type peer_autonomous_container_database_display_name: str + + :param protection_mode: + The value to assign to the protection_mode property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE" + :type protection_mode: str + + :param fast_start_fail_over_lag_limit_in_seconds: + The value to assign to the fast_start_fail_over_lag_limit_in_seconds property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type fast_start_fail_over_lag_limit_in_seconds: int + + :param is_automatic_failover_enabled: + The value to assign to the is_automatic_failover_enabled property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type is_automatic_failover_enabled: bool + + :param peer_cloud_autonomous_vm_cluster_id: + The value to assign to the peer_cloud_autonomous_vm_cluster_id property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type peer_cloud_autonomous_vm_cluster_id: str + + :param peer_autonomous_vm_cluster_id: + The value to assign to the peer_autonomous_vm_cluster_id property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type peer_autonomous_vm_cluster_id: str + + :param peer_autonomous_container_database_compartment_id: + The value to assign to the peer_autonomous_container_database_compartment_id property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type peer_autonomous_container_database_compartment_id: str + + :param peer_autonomous_container_database_backup_config: + The value to assign to the peer_autonomous_container_database_backup_config property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type peer_autonomous_container_database_backup_config: oci.database.models.PeerAutonomousContainerDatabaseBackupConfig + + :param peer_db_unique_name: + The value to assign to the peer_db_unique_name property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type peer_db_unique_name: str + + :param autonomous_vm_cluster_id: + The value to assign to the autonomous_vm_cluster_id property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type autonomous_vm_cluster_id: str + + :param cloud_autonomous_vm_cluster_id: + The value to assign to the cloud_autonomous_vm_cluster_id property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type cloud_autonomous_vm_cluster_id: str + + :param compartment_id: + The value to assign to the compartment_id property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type compartment_id: str + + :param patch_model: + The value to assign to the patch_model property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + Allowed values for this property are: "RELEASE_UPDATES", "RELEASE_UPDATE_REVISIONS" + :type patch_model: str + + :param maintenance_window_details: + The value to assign to the maintenance_window_details property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type maintenance_window_details: oci.database.models.MaintenanceWindow + + :param standby_maintenance_buffer_in_days: + The value to assign to the standby_maintenance_buffer_in_days property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type standby_maintenance_buffer_in_days: int + + :param version_preference: + The value to assign to the version_preference property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + Allowed values for this property are: "NEXT_RELEASE_UPDATE", "LATEST_RELEASE_UPDATE" + :type version_preference: str + + :param is_dst_file_update_enabled: + The value to assign to the is_dst_file_update_enabled property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type is_dst_file_update_enabled: bool + + :param freeform_tags: + The value to assign to the freeform_tags property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type defined_tags: dict(str, dict(str, object)) + + :param backup_config: + The value to assign to the backup_config property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type backup_config: oci.database.models.AutonomousContainerDatabaseBackupConfig + + :param kms_key_id: + The value to assign to the kms_key_id property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type kms_key_id: str + + :param kms_key_version_id: + The value to assign to the kms_key_version_id property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type kms_key_version_id: str + + :param vault_id: + The value to assign to the vault_id property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type vault_id: str + + :param key_store_id: + The value to assign to the key_store_id property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type key_store_id: str + + :param encryption_key_location_details: + The value to assign to the encryption_key_location_details property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type encryption_key_location_details: oci.database.models.EncryptionKeyLocationDetails + + :param db_split_threshold: + The value to assign to the db_split_threshold property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type db_split_threshold: int + + :param vm_failover_reservation: + The value to assign to the vm_failover_reservation property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type vm_failover_reservation: int + + :param distribution_affinity: + The value to assign to the distribution_affinity property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + Allowed values for this property are: "MINIMUM_DISTRIBUTION", "MAXIMUM_DISTRIBUTION" + :type distribution_affinity: str + + :param net_services_architecture: + The value to assign to the net_services_architecture property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + Allowed values for this property are: "DEDICATED", "SHARED", "DRCP" + :type net_services_architecture: str + + :param source_autonomous_container_database_id: + The value to assign to the source_autonomous_container_database_id property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type source_autonomous_container_database_id: str + + :param time_stamp_to_use_for_cloning: + The value to assign to the time_stamp_to_use_for_cloning property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type time_stamp_to_use_for_cloning: datetime + + :param should_use_latest_available_backup_time_stamp: + The value to assign to the should_use_latest_available_backup_time_stamp property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type should_use_latest_available_backup_time_stamp: bool + + :param clone_type: + The value to assign to the clone_type property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + Allowed values for this property are: "FULL", "METADATA", "PARTIAL" + :type clone_type: str + + :param autonomous_databases_to_clone: + The value to assign to the autonomous_databases_to_clone property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type autonomous_databases_to_clone: list[str] + + :param clone_band_width: + The value to assign to the clone_band_width property of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + Allowed values for this property are: "SLOW", "MEDIUM", "FAST" + :type clone_band_width: str + + """ + self.swagger_types = { + 'customer_contacts': 'list[CustomerContact]', + 'okv_end_point_group_name': 'str', + 'source': 'str', + 'display_name': 'str', + 'db_unique_name': 'str', + 'db_name': 'str', + 'service_level_agreement_type': 'str', + 'autonomous_exadata_infrastructure_id': 'str', + 'db_version': 'str', + 'database_software_image_id': 'str', + 'peer_autonomous_exadata_infrastructure_id': 'str', + 'peer_autonomous_container_database_display_name': 'str', + 'protection_mode': 'str', + 'fast_start_fail_over_lag_limit_in_seconds': 'int', + 'is_automatic_failover_enabled': 'bool', + 'peer_cloud_autonomous_vm_cluster_id': 'str', + 'peer_autonomous_vm_cluster_id': 'str', + 'peer_autonomous_container_database_compartment_id': 'str', + 'peer_autonomous_container_database_backup_config': 'PeerAutonomousContainerDatabaseBackupConfig', + 'peer_db_unique_name': 'str', + 'autonomous_vm_cluster_id': 'str', + 'cloud_autonomous_vm_cluster_id': 'str', + 'compartment_id': 'str', + 'patch_model': 'str', + 'maintenance_window_details': 'MaintenanceWindow', + 'standby_maintenance_buffer_in_days': 'int', + 'version_preference': 'str', + 'is_dst_file_update_enabled': 'bool', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'backup_config': 'AutonomousContainerDatabaseBackupConfig', + 'kms_key_id': 'str', + 'kms_key_version_id': 'str', + 'vault_id': 'str', + 'key_store_id': 'str', + 'encryption_key_location_details': 'EncryptionKeyLocationDetails', + 'db_split_threshold': 'int', + 'vm_failover_reservation': 'int', + 'distribution_affinity': 'str', + 'net_services_architecture': 'str', + 'source_autonomous_container_database_id': 'str', + 'time_stamp_to_use_for_cloning': 'datetime', + 'should_use_latest_available_backup_time_stamp': 'bool', + 'clone_type': 'str', + 'autonomous_databases_to_clone': 'list[str]', + 'clone_band_width': 'str' + } + self.attribute_map = { + 'customer_contacts': 'customerContacts', + 'okv_end_point_group_name': 'okvEndPointGroupName', + 'source': 'source', + 'display_name': 'displayName', + 'db_unique_name': 'dbUniqueName', + 'db_name': 'dbName', + 'service_level_agreement_type': 'serviceLevelAgreementType', + 'autonomous_exadata_infrastructure_id': 'autonomousExadataInfrastructureId', + 'db_version': 'dbVersion', + 'database_software_image_id': 'databaseSoftwareImageId', + 'peer_autonomous_exadata_infrastructure_id': 'peerAutonomousExadataInfrastructureId', + 'peer_autonomous_container_database_display_name': 'peerAutonomousContainerDatabaseDisplayName', + 'protection_mode': 'protectionMode', + 'fast_start_fail_over_lag_limit_in_seconds': 'fastStartFailOverLagLimitInSeconds', + 'is_automatic_failover_enabled': 'isAutomaticFailoverEnabled', + 'peer_cloud_autonomous_vm_cluster_id': 'peerCloudAutonomousVmClusterId', + 'peer_autonomous_vm_cluster_id': 'peerAutonomousVmClusterId', + 'peer_autonomous_container_database_compartment_id': 'peerAutonomousContainerDatabaseCompartmentId', + 'peer_autonomous_container_database_backup_config': 'peerAutonomousContainerDatabaseBackupConfig', + 'peer_db_unique_name': 'peerDbUniqueName', + 'autonomous_vm_cluster_id': 'autonomousVmClusterId', + 'cloud_autonomous_vm_cluster_id': 'cloudAutonomousVmClusterId', + 'compartment_id': 'compartmentId', + 'patch_model': 'patchModel', + 'maintenance_window_details': 'maintenanceWindowDetails', + 'standby_maintenance_buffer_in_days': 'standbyMaintenanceBufferInDays', + 'version_preference': 'versionPreference', + 'is_dst_file_update_enabled': 'isDstFileUpdateEnabled', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'backup_config': 'backupConfig', + 'kms_key_id': 'kmsKeyId', + 'kms_key_version_id': 'kmsKeyVersionId', + 'vault_id': 'vaultId', + 'key_store_id': 'keyStoreId', + 'encryption_key_location_details': 'encryptionKeyLocationDetails', + 'db_split_threshold': 'dbSplitThreshold', + 'vm_failover_reservation': 'vmFailoverReservation', + 'distribution_affinity': 'distributionAffinity', + 'net_services_architecture': 'netServicesArchitecture', + 'source_autonomous_container_database_id': 'sourceAutonomousContainerDatabaseId', + 'time_stamp_to_use_for_cloning': 'timeStampToUseForCloning', + 'should_use_latest_available_backup_time_stamp': 'shouldUseLatestAvailableBackupTimeStamp', + 'clone_type': 'cloneType', + 'autonomous_databases_to_clone': 'autonomousDatabasesToClone', + 'clone_band_width': 'cloneBandWidth' + } + self._customer_contacts = None + self._okv_end_point_group_name = None + self._source = None + self._display_name = None + self._db_unique_name = None + self._db_name = None + self._service_level_agreement_type = None + self._autonomous_exadata_infrastructure_id = None + self._db_version = None + self._database_software_image_id = None + self._peer_autonomous_exadata_infrastructure_id = None + self._peer_autonomous_container_database_display_name = None + self._protection_mode = None + self._fast_start_fail_over_lag_limit_in_seconds = None + self._is_automatic_failover_enabled = None + self._peer_cloud_autonomous_vm_cluster_id = None + self._peer_autonomous_vm_cluster_id = None + self._peer_autonomous_container_database_compartment_id = None + self._peer_autonomous_container_database_backup_config = None + self._peer_db_unique_name = None + self._autonomous_vm_cluster_id = None + self._cloud_autonomous_vm_cluster_id = None + self._compartment_id = None + self._patch_model = None + self._maintenance_window_details = None + self._standby_maintenance_buffer_in_days = None + self._version_preference = None + self._is_dst_file_update_enabled = None + self._freeform_tags = None + self._defined_tags = None + self._backup_config = None + self._kms_key_id = None + self._kms_key_version_id = None + self._vault_id = None + self._key_store_id = None + self._encryption_key_location_details = None + self._db_split_threshold = None + self._vm_failover_reservation = None + self._distribution_affinity = None + self._net_services_architecture = None + self._source_autonomous_container_database_id = None + self._time_stamp_to_use_for_cloning = None + self._should_use_latest_available_backup_time_stamp = None + self._clone_type = None + self._autonomous_databases_to_clone = None + self._clone_band_width = None + self._source = 'BACKUP_FROM_TIMESTAMP' + + @property + def source_autonomous_container_database_id(self): + """ + **[Required]** Gets the source_autonomous_container_database_id of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + The `OCID`__ of the source ACD that you will clone to create a new ACD. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The source_autonomous_container_database_id of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :rtype: str + """ + return self._source_autonomous_container_database_id + + @source_autonomous_container_database_id.setter + def source_autonomous_container_database_id(self, source_autonomous_container_database_id): + """ + Sets the source_autonomous_container_database_id of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + The `OCID`__ of the source ACD that you will clone to create a new ACD. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param source_autonomous_container_database_id: The source_autonomous_container_database_id of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type: str + """ + self._source_autonomous_container_database_id = source_autonomous_container_database_id + + @property + def time_stamp_to_use_for_cloning(self): + """ + Gets the time_stamp_to_use_for_cloning of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + The time stamp representing the point in time to which the Autonomous Container Database should be cloned from backup. And the requested timeStamp should be in the past. + + + :return: The time_stamp_to_use_for_cloning of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :rtype: datetime + """ + return self._time_stamp_to_use_for_cloning + + @time_stamp_to_use_for_cloning.setter + def time_stamp_to_use_for_cloning(self, time_stamp_to_use_for_cloning): + """ + Sets the time_stamp_to_use_for_cloning of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + The time stamp representing the point in time to which the Autonomous Container Database should be cloned from backup. And the requested timeStamp should be in the past. + + + :param time_stamp_to_use_for_cloning: The time_stamp_to_use_for_cloning of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type: datetime + """ + self._time_stamp_to_use_for_cloning = time_stamp_to_use_for_cloning + + @property + def should_use_latest_available_backup_time_stamp(self): + """ + Gets the should_use_latest_available_backup_time_stamp of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + If set to true, OCI shall attempt to create a point in time to the latest available backup of the source Autonomous Container Database. + + + :return: The should_use_latest_available_backup_time_stamp of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :rtype: bool + """ + return self._should_use_latest_available_backup_time_stamp + + @should_use_latest_available_backup_time_stamp.setter + def should_use_latest_available_backup_time_stamp(self, should_use_latest_available_backup_time_stamp): + """ + Sets the should_use_latest_available_backup_time_stamp of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + If set to true, OCI shall attempt to create a point in time to the latest available backup of the source Autonomous Container Database. + + + :param should_use_latest_available_backup_time_stamp: The should_use_latest_available_backup_time_stamp of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type: bool + """ + self._should_use_latest_available_backup_time_stamp = should_use_latest_available_backup_time_stamp + + @property + def clone_type(self): + """ + **[Required]** Gets the clone_type of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + The Autonomous AI Database clone type. + + Allowed values for this property are: "FULL", "METADATA", "PARTIAL" + + + :return: The clone_type of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :rtype: str + """ + return self._clone_type + + @clone_type.setter + def clone_type(self, clone_type): + """ + Sets the clone_type of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + The Autonomous AI Database clone type. + + + :param clone_type: The clone_type of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type: str + """ + allowed_values = ["FULL", "METADATA", "PARTIAL"] + if not value_allowed_none_or_none_sentinel(clone_type, allowed_values): + raise ValueError( + f"Invalid value for `clone_type`, must be None or one of {allowed_values}" + ) + self._clone_type = clone_type + + @property + def autonomous_databases_to_clone(self): + """ + Gets the autonomous_databases_to_clone of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + A list of Autonomous Databases ( display name of the ADB in specific ) to be cloned from backup of the source Autonomous Container Database. + + + :return: The autonomous_databases_to_clone of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :rtype: list[str] + """ + return self._autonomous_databases_to_clone + + @autonomous_databases_to_clone.setter + def autonomous_databases_to_clone(self, autonomous_databases_to_clone): + """ + Sets the autonomous_databases_to_clone of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + A list of Autonomous Databases ( display name of the ADB in specific ) to be cloned from backup of the source Autonomous Container Database. + + + :param autonomous_databases_to_clone: The autonomous_databases_to_clone of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type: list[str] + """ + self._autonomous_databases_to_clone = autonomous_databases_to_clone + + @property + def clone_band_width(self): + """ + Gets the clone_band_width of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + The speed at which the Autonomous Container Database Clone from backup operation to be performed by OCI. + + Allowed values for this property are: "SLOW", "MEDIUM", "FAST" + + + :return: The clone_band_width of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :rtype: str + """ + return self._clone_band_width + + @clone_band_width.setter + def clone_band_width(self, clone_band_width): + """ + Sets the clone_band_width of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + The speed at which the Autonomous Container Database Clone from backup operation to be performed by OCI. + + + :param clone_band_width: The clone_band_width of this CreateAutonomousContainerDatabaseFromBackupTimestampDetails. + :type: str + """ + allowed_values = ["SLOW", "MEDIUM", "FAST"] + if not value_allowed_none_or_none_sentinel(clone_band_width, allowed_values): + raise ValueError( + f"Invalid value for `clone_band_width`, must be None or one of {allowed_values}" + ) + self._clone_band_width = clone_band_width + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/database/models/create_standby_details.py b/src/oci/database/models/create_standby_details.py index f78b6b3c40..0ca2de5973 100644 --- a/src/oci/database/models/create_standby_details.py +++ b/src/oci/database/models/create_standby_details.py @@ -94,6 +94,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this CreateStandbyDetails. :type defined_tags: dict(str, dict(str, object)) + :param auto_failover_configuration: + The value to assign to the auto_failover_configuration property of this CreateStandbyDetails. + :type auto_failover_configuration: oci.database.models.AutoFailoverConfiguration + """ self.swagger_types = { 'source_database_id': 'str', @@ -107,7 +111,8 @@ def __init__(self, **kwargs): 'transport_type': 'str', 'storage_size_details': 'DatabaseStorageSizeDetails', 'freeform_tags': 'dict(str, str)', - 'defined_tags': 'dict(str, dict(str, object))' + 'defined_tags': 'dict(str, dict(str, object))', + 'auto_failover_configuration': 'AutoFailoverConfiguration' } self.attribute_map = { 'source_database_id': 'sourceDatabaseId', @@ -121,7 +126,8 @@ def __init__(self, **kwargs): 'transport_type': 'transportType', 'storage_size_details': 'storageSizeDetails', 'freeform_tags': 'freeformTags', - 'defined_tags': 'definedTags' + 'defined_tags': 'definedTags', + 'auto_failover_configuration': 'autoFailoverConfiguration' } self._redacted_field_paths = [ ['database_admin_password'], @@ -139,6 +145,7 @@ def __init__(self, **kwargs): self._storage_size_details = None self._freeform_tags = None self._defined_tags = None + self._auto_failover_configuration = None @property def source_database_id(self): @@ -490,6 +497,26 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def auto_failover_configuration(self): + """ + Gets the auto_failover_configuration of this CreateStandbyDetails. + + :return: The auto_failover_configuration of this CreateStandbyDetails. + :rtype: oci.database.models.AutoFailoverConfiguration + """ + return self._auto_failover_configuration + + @auto_failover_configuration.setter + def auto_failover_configuration(self, auto_failover_configuration): + """ + Sets the auto_failover_configuration of this CreateStandbyDetails. + + :param auto_failover_configuration: The auto_failover_configuration of this CreateStandbyDetails. + :type: oci.database.models.AutoFailoverConfiguration + """ + self._auto_failover_configuration = auto_failover_configuration + def __repr__(self): as_dict = to_dict(self) redact_password_field(as_dict, ['database_admin_password']) diff --git a/src/oci/database/models/data_guard_group.py b/src/oci/database/models/data_guard_group.py index 2f14b5c119..52c1cffc77 100644 --- a/src/oci/database/models/data_guard_group.py +++ b/src/oci/database/models/data_guard_group.py @@ -28,6 +28,14 @@ class DataGuardGroup(object): #: This constant has a value of "MAXIMUM_PROTECTION" PROTECTION_MODE_MAXIMUM_PROTECTION = "MAXIMUM_PROTECTION" + #: A constant which can be used with the managed_auto_fail_over_readiness property of a DataGuardGroup. + #: This constant has a value of "HEALTHY" + MANAGED_AUTO_FAIL_OVER_READINESS_HEALTHY = "HEALTHY" + + #: A constant which can be used with the managed_auto_fail_over_readiness property of a DataGuardGroup. + #: This constant has a value of "CRITICAL" + MANAGED_AUTO_FAIL_OVER_READINESS_CRITICAL = "CRITICAL" + def __init__(self, **kwargs): """ Initializes a new DataGuardGroup object with values from keyword arguments. @@ -43,17 +51,26 @@ def __init__(self, **kwargs): Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type protection_mode: str + :param managed_auto_fail_over_readiness: + The value to assign to the managed_auto_fail_over_readiness property of this DataGuardGroup. + Allowed values for this property are: "HEALTHY", "CRITICAL", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type managed_auto_fail_over_readiness: str + """ self.swagger_types = { 'members': 'list[DataGuardGroupMember]', - 'protection_mode': 'str' + 'protection_mode': 'str', + 'managed_auto_fail_over_readiness': 'str' } self.attribute_map = { 'members': 'members', - 'protection_mode': 'protectionMode' + 'protection_mode': 'protectionMode', + 'managed_auto_fail_over_readiness': 'managedAutoFailOverReadiness' } self._members = None self._protection_mode = None + self._managed_auto_fail_over_readiness = None @property def members(self): @@ -117,6 +134,36 @@ def protection_mode(self, protection_mode): protection_mode = 'UNKNOWN_ENUM_VALUE' self._protection_mode = protection_mode + @property + def managed_auto_fail_over_readiness(self): + """ + Gets the managed_auto_fail_over_readiness of this DataGuardGroup. + Specifies readiness of Managed Automatic failover. + + Allowed values for this property are: "HEALTHY", "CRITICAL", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The managed_auto_fail_over_readiness of this DataGuardGroup. + :rtype: str + """ + return self._managed_auto_fail_over_readiness + + @managed_auto_fail_over_readiness.setter + def managed_auto_fail_over_readiness(self, managed_auto_fail_over_readiness): + """ + Sets the managed_auto_fail_over_readiness of this DataGuardGroup. + Specifies readiness of Managed Automatic failover. + + + :param managed_auto_fail_over_readiness: The managed_auto_fail_over_readiness of this DataGuardGroup. + :type: str + """ + allowed_values = ["HEALTHY", "CRITICAL"] + if not value_allowed_none_or_none_sentinel(managed_auto_fail_over_readiness, allowed_values): + managed_auto_fail_over_readiness = 'UNKNOWN_ENUM_VALUE' + self._managed_auto_fail_over_readiness = managed_auto_fail_over_readiness + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/database/models/data_guard_group_member.py b/src/oci/database/models/data_guard_group_member.py index e0236f6407..bfd60eef14 100644 --- a/src/oci/database/models/data_guard_group_member.py +++ b/src/oci/database/models/data_guard_group_member.py @@ -55,6 +55,10 @@ class DataGuardGroupMember(object): #: This constant has a value of "CRITICAL" SWITCHOVER_READINESS_CRITICAL = "CRITICAL" + #: A constant which can be used with the switchover_readiness property of a DataGuardGroupMember. + #: This constant has a value of "HEALTHY_AND_NOT_ROLECHANGE_TARGET" + SWITCHOVER_READINESS_HEALTHY_AND_NOT_ROLECHANGE_TARGET = "HEALTHY_AND_NOT_ROLECHANGE_TARGET" + #: A constant which can be used with the failover_readiness property of a DataGuardGroupMember. #: This constant has a value of "HEALTHY" FAILOVER_READINESS_HEALTHY = "HEALTHY" @@ -67,6 +71,18 @@ class DataGuardGroupMember(object): #: This constant has a value of "CRITICAL" FAILOVER_READINESS_CRITICAL = "CRITICAL" + #: A constant which can be used with the failover_readiness property of a DataGuardGroupMember. + #: This constant has a value of "HEALTHY_AND_NOT_ROLECHANGE_TARGET" + FAILOVER_READINESS_HEALTHY_AND_NOT_ROLECHANGE_TARGET = "HEALTHY_AND_NOT_ROLECHANGE_TARGET" + + #: A constant which can be used with the managed_auto_failover property of a DataGuardGroupMember. + #: This constant has a value of "ENABLE" + MANAGED_AUTO_FAILOVER_ENABLE = "ENABLE" + + #: A constant which can be used with the managed_auto_failover property of a DataGuardGroupMember. + #: This constant has a value of "DISABLE" + MANAGED_AUTO_FAILOVER_DISABLE = "DISABLE" + def __init__(self, **kwargs): """ Initializes a new DataGuardGroupMember object with values from keyword arguments. @@ -114,7 +130,7 @@ def __init__(self, **kwargs): :param switchover_readiness: The value to assign to the switchover_readiness property of this DataGuardGroupMember. - Allowed values for this property are: "HEALTHY", "WARNING", "CRITICAL", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "HEALTHY", "WARNING", "CRITICAL", "HEALTHY_AND_NOT_ROLECHANGE_TARGET", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type switchover_readiness: str @@ -124,7 +140,7 @@ def __init__(self, **kwargs): :param failover_readiness: The value to assign to the failover_readiness property of this DataGuardGroupMember. - Allowed values for this property are: "HEALTHY", "WARNING", "CRITICAL", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "HEALTHY", "WARNING", "CRITICAL", "HEALTHY_AND_NOT_ROLECHANGE_TARGET", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type failover_readiness: str @@ -140,6 +156,16 @@ def __init__(self, **kwargs): The value to assign to the time_updated property of this DataGuardGroupMember. :type time_updated: datetime + :param managed_auto_failover: + The value to assign to the managed_auto_failover property of this DataGuardGroupMember. + Allowed values for this property are: "ENABLE", "DISABLE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type managed_auto_failover: str + + :param failover_targets: + The value to assign to the failover_targets property of this DataGuardGroupMember. + :type failover_targets: list[str] + """ self.swagger_types = { 'db_system_id': 'str', @@ -156,7 +182,9 @@ def __init__(self, **kwargs): 'failover_readiness': 'str', 'failover_readiness_message': 'str', 'data_loss_exposure': 'str', - 'time_updated': 'datetime' + 'time_updated': 'datetime', + 'managed_auto_failover': 'str', + 'failover_targets': 'list[str]' } self.attribute_map = { 'db_system_id': 'dbSystemId', @@ -173,7 +201,9 @@ def __init__(self, **kwargs): 'failover_readiness': 'failoverReadiness', 'failover_readiness_message': 'failoverReadinessMessage', 'data_loss_exposure': 'dataLossExposure', - 'time_updated': 'timeUpdated' + 'time_updated': 'timeUpdated', + 'managed_auto_failover': 'managedAutoFailover', + 'failover_targets': 'failoverTargets' } self._db_system_id = None self._database_id = None @@ -190,6 +220,8 @@ def __init__(self, **kwargs): self._failover_readiness_message = None self._data_loss_exposure = None self._time_updated = None + self._managed_auto_failover = None + self._failover_targets = None @property def db_system_id(self): @@ -470,8 +502,10 @@ def switchover_readiness(self): """ Gets the switchover_readiness of this DataGuardGroupMember. The switchover readiness status of the Data Guard member. + * HEALTHY_AND_NOT_ROLECHANGE_TARGET - Indicates that the respective standby member is healthy + but not currently designated to take switchover, when auto failover is enabled. - Allowed values for this property are: "HEALTHY", "WARNING", "CRITICAL", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "HEALTHY", "WARNING", "CRITICAL", "HEALTHY_AND_NOT_ROLECHANGE_TARGET", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -485,12 +519,14 @@ def switchover_readiness(self, switchover_readiness): """ Sets the switchover_readiness of this DataGuardGroupMember. The switchover readiness status of the Data Guard member. + * HEALTHY_AND_NOT_ROLECHANGE_TARGET - Indicates that the respective standby member is healthy + but not currently designated to take switchover, when auto failover is enabled. :param switchover_readiness: The switchover_readiness of this DataGuardGroupMember. :type: str """ - allowed_values = ["HEALTHY", "WARNING", "CRITICAL"] + allowed_values = ["HEALTHY", "WARNING", "CRITICAL", "HEALTHY_AND_NOT_ROLECHANGE_TARGET"] if not value_allowed_none_or_none_sentinel(switchover_readiness, allowed_values): switchover_readiness = 'UNKNOWN_ENUM_VALUE' self._switchover_readiness = switchover_readiness @@ -526,8 +562,10 @@ def failover_readiness(self): """ Gets the failover_readiness of this DataGuardGroupMember. The failover readiness status of the Data Guard member. + HEALTHY_AND_NOT_ROLECHANGE_TARGET - Indicates that the respective standby member is healthy + but not currently designated to take failover, when auto failover is enabled. - Allowed values for this property are: "HEALTHY", "WARNING", "CRITICAL", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "HEALTHY", "WARNING", "CRITICAL", "HEALTHY_AND_NOT_ROLECHANGE_TARGET", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -541,12 +579,14 @@ def failover_readiness(self, failover_readiness): """ Sets the failover_readiness of this DataGuardGroupMember. The failover readiness status of the Data Guard member. + HEALTHY_AND_NOT_ROLECHANGE_TARGET - Indicates that the respective standby member is healthy + but not currently designated to take failover, when auto failover is enabled. :param failover_readiness: The failover_readiness of this DataGuardGroupMember. :type: str """ - allowed_values = ["HEALTHY", "WARNING", "CRITICAL"] + allowed_values = ["HEALTHY", "WARNING", "CRITICAL", "HEALTHY_AND_NOT_ROLECHANGE_TARGET"] if not value_allowed_none_or_none_sentinel(failover_readiness, allowed_values): failover_readiness = 'UNKNOWN_ENUM_VALUE' self._failover_readiness = failover_readiness @@ -629,6 +669,60 @@ def time_updated(self, time_updated): """ self._time_updated = time_updated + @property + def managed_auto_failover(self): + """ + Gets the managed_auto_failover of this DataGuardGroupMember. + The state of managed auto failover. + + Allowed values for this property are: "ENABLE", "DISABLE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The managed_auto_failover of this DataGuardGroupMember. + :rtype: str + """ + return self._managed_auto_failover + + @managed_auto_failover.setter + def managed_auto_failover(self, managed_auto_failover): + """ + Sets the managed_auto_failover of this DataGuardGroupMember. + The state of managed auto failover. + + + :param managed_auto_failover: The managed_auto_failover of this DataGuardGroupMember. + :type: str + """ + allowed_values = ["ENABLE", "DISABLE"] + if not value_allowed_none_or_none_sentinel(managed_auto_failover, allowed_values): + managed_auto_failover = 'UNKNOWN_ENUM_VALUE' + self._managed_auto_failover = managed_auto_failover + + @property + def failover_targets(self): + """ + Gets the failover_targets of this DataGuardGroupMember. + Specifies the `DB_UNIQUE_NAME` of the data guard group member databases. + + + :return: The failover_targets of this DataGuardGroupMember. + :rtype: list[str] + """ + return self._failover_targets + + @failover_targets.setter + def failover_targets(self, failover_targets): + """ + Sets the failover_targets of this DataGuardGroupMember. + Specifies the `DB_UNIQUE_NAME` of the data guard group member databases. + + + :param failover_targets: The failover_targets of this DataGuardGroupMember. + :type: list[str] + """ + self._failover_targets = failover_targets + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/database/models/update_database_details.py b/src/oci/database/models/update_database_details.py index 8ef2bfb047..93fb88d0fe 100644 --- a/src/oci/database/models/update_database_details.py +++ b/src/oci/database/models/update_database_details.py @@ -17,6 +17,30 @@ class UpdateDatabaseDetails(object): **Warning:** Oracle recommends that you avoid using any confidential information when you supply string values using the API. """ + #: A constant which can be used with the protection_mode property of a UpdateDatabaseDetails. + #: This constant has a value of "MAXIMUM_AVAILABILITY" + PROTECTION_MODE_MAXIMUM_AVAILABILITY = "MAXIMUM_AVAILABILITY" + + #: A constant which can be used with the protection_mode property of a UpdateDatabaseDetails. + #: This constant has a value of "MAXIMUM_PERFORMANCE" + PROTECTION_MODE_MAXIMUM_PERFORMANCE = "MAXIMUM_PERFORMANCE" + + #: A constant which can be used with the protection_mode property of a UpdateDatabaseDetails. + #: This constant has a value of "MAXIMUM_PROTECTION" + PROTECTION_MODE_MAXIMUM_PROTECTION = "MAXIMUM_PROTECTION" + + #: A constant which can be used with the transport_type property of a UpdateDatabaseDetails. + #: This constant has a value of "SYNC" + TRANSPORT_TYPE_SYNC = "SYNC" + + #: A constant which can be used with the transport_type property of a UpdateDatabaseDetails. + #: This constant has a value of "ASYNC" + TRANSPORT_TYPE_ASYNC = "ASYNC" + + #: A constant which can be used with the transport_type property of a UpdateDatabaseDetails. + #: This constant has a value of "FASTSYNC" + TRANSPORT_TYPE_FASTSYNC = "FASTSYNC" + def __init__(self, **kwargs): """ Initializes a new UpdateDatabaseDetails object with values from keyword arguments. @@ -62,6 +86,28 @@ def __init__(self, **kwargs): The value to assign to the patch_options property of this UpdateDatabaseDetails. :type patch_options: oci.database.models.PatchOptions + :param database_admin_password: + The value to assign to the database_admin_password property of this UpdateDatabaseDetails. + :type database_admin_password: str + + :param protection_mode: + The value to assign to the protection_mode property of this UpdateDatabaseDetails. + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION" + :type protection_mode: str + + :param transport_type: + The value to assign to the transport_type property of this UpdateDatabaseDetails. + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC" + :type transport_type: str + + :param is_active_data_guard_enabled: + The value to assign to the is_active_data_guard_enabled property of this UpdateDatabaseDetails. + :type is_active_data_guard_enabled: bool + + :param auto_failover_configuration: + The value to assign to the auto_failover_configuration property of this UpdateDatabaseDetails. + :type auto_failover_configuration: oci.database.models.AutoFailoverConfiguration + """ self.swagger_types = { 'db_backup_config': 'DbBackupConfig', @@ -73,7 +119,12 @@ def __init__(self, **kwargs): 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))', 'managed_software_update_details': 'ManagedSoftwareUpdateInputDetails', - 'patch_options': 'PatchOptions' + 'patch_options': 'PatchOptions', + 'database_admin_password': 'str', + 'protection_mode': 'str', + 'transport_type': 'str', + 'is_active_data_guard_enabled': 'bool', + 'auto_failover_configuration': 'AutoFailoverConfiguration' } self.attribute_map = { 'db_backup_config': 'dbBackupConfig', @@ -85,12 +136,18 @@ def __init__(self, **kwargs): 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags', 'managed_software_update_details': 'managedSoftwareUpdateDetails', - 'patch_options': 'patchOptions' + 'patch_options': 'patchOptions', + 'database_admin_password': 'databaseAdminPassword', + 'protection_mode': 'protectionMode', + 'transport_type': 'transportType', + 'is_active_data_guard_enabled': 'isActiveDataGuardEnabled', + 'auto_failover_configuration': 'autoFailoverConfiguration' } self._redacted_field_paths = [ ['new_admin_password'], ['old_tde_wallet_password'], ['new_tde_wallet_password'], + ['database_admin_password'], ] self._db_backup_config = None self._db_home_id = None @@ -102,6 +159,11 @@ def __init__(self, **kwargs): self._defined_tags = None self._managed_software_update_details = None self._patch_options = None + self._database_admin_password = None + self._protection_mode = None + self._transport_type = None + self._is_active_data_guard_enabled = None + self._auto_failover_configuration = None @property def db_backup_config(self): @@ -347,11 +409,178 @@ def patch_options(self, patch_options): """ self._patch_options = patch_options + @property + def database_admin_password(self): + """ + Gets the database_admin_password of this UpdateDatabaseDetails. + The administrator password of the primary database in this Data Guard association. + + **The password MUST be the same as the primary admin password.** + + + :return: The database_admin_password of this UpdateDatabaseDetails. + :rtype: str + """ + return self._database_admin_password + + @database_admin_password.setter + def database_admin_password(self, database_admin_password): + """ + Sets the database_admin_password of this UpdateDatabaseDetails. + The administrator password of the primary database in this Data Guard association. + + **The password MUST be the same as the primary admin password.** + + + :param database_admin_password: The database_admin_password of this UpdateDatabaseDetails. + :type: str + """ + self._database_admin_password = database_admin_password + + @property + def protection_mode(self): + """ + Gets the protection_mode of this UpdateDatabaseDetails. + The protection mode of this Data Guard. For more information, see + `Oracle Data Guard Protection Modes`__ + in the Oracle Data Guard documentation. + + __ http://docs.oracle.com/database/122/SBYDB/oracle-data-guard-protection-modes.htm#SBYDB02000 + + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION" + + + :return: The protection_mode of this UpdateDatabaseDetails. + :rtype: str + """ + return self._protection_mode + + @protection_mode.setter + def protection_mode(self, protection_mode): + """ + Sets the protection_mode of this UpdateDatabaseDetails. + The protection mode of this Data Guard. For more information, see + `Oracle Data Guard Protection Modes`__ + in the Oracle Data Guard documentation. + + __ http://docs.oracle.com/database/122/SBYDB/oracle-data-guard-protection-modes.htm#SBYDB02000 + + + :param protection_mode: The protection_mode of this UpdateDatabaseDetails. + :type: str + """ + allowed_values = ["MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION"] + if not value_allowed_none_or_none_sentinel(protection_mode, allowed_values): + raise ValueError( + f"Invalid value for `protection_mode`, must be None or one of {allowed_values}" + ) + self._protection_mode = protection_mode + + @property + def transport_type(self): + """ + Gets the transport_type of this UpdateDatabaseDetails. + The redo transport type to use for this Data Guard association. Valid values depend on the specified `protectionMode`: + + * MAXIMUM_AVAILABILITY - SYNC or FASTSYNC + * MAXIMUM_PERFORMANCE - ASYNC + * MAXIMUM_PROTECTION - SYNC + + For more information, see + `Redo Transport Services`__ + in the Oracle Data Guard documentation. + + **IMPORTANT** - The only transport type currently supported by the Database service is ASYNC. + + __ http://docs.oracle.com/database/122/SBYDB/oracle-data-guard-redo-transport-services.htm#SBYDB00400 + + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC" + + + :return: The transport_type of this UpdateDatabaseDetails. + :rtype: str + """ + return self._transport_type + + @transport_type.setter + def transport_type(self, transport_type): + """ + Sets the transport_type of this UpdateDatabaseDetails. + The redo transport type to use for this Data Guard association. Valid values depend on the specified `protectionMode`: + + * MAXIMUM_AVAILABILITY - SYNC or FASTSYNC + * MAXIMUM_PERFORMANCE - ASYNC + * MAXIMUM_PROTECTION - SYNC + + For more information, see + `Redo Transport Services`__ + in the Oracle Data Guard documentation. + + **IMPORTANT** - The only transport type currently supported by the Database service is ASYNC. + + __ http://docs.oracle.com/database/122/SBYDB/oracle-data-guard-redo-transport-services.htm#SBYDB00400 + + + :param transport_type: The transport_type of this UpdateDatabaseDetails. + :type: str + """ + allowed_values = ["SYNC", "ASYNC", "FASTSYNC"] + if not value_allowed_none_or_none_sentinel(transport_type, allowed_values): + raise ValueError( + f"Invalid value for `transport_type`, must be None or one of {allowed_values}" + ) + self._transport_type = transport_type + + @property + def is_active_data_guard_enabled(self): + """ + Gets the is_active_data_guard_enabled of this UpdateDatabaseDetails. + True if active Data Guard is enabled. + + + :return: The is_active_data_guard_enabled of this UpdateDatabaseDetails. + :rtype: bool + """ + return self._is_active_data_guard_enabled + + @is_active_data_guard_enabled.setter + def is_active_data_guard_enabled(self, is_active_data_guard_enabled): + """ + Sets the is_active_data_guard_enabled of this UpdateDatabaseDetails. + True if active Data Guard is enabled. + + + :param is_active_data_guard_enabled: The is_active_data_guard_enabled of this UpdateDatabaseDetails. + :type: bool + """ + self._is_active_data_guard_enabled = is_active_data_guard_enabled + + @property + def auto_failover_configuration(self): + """ + Gets the auto_failover_configuration of this UpdateDatabaseDetails. + + :return: The auto_failover_configuration of this UpdateDatabaseDetails. + :rtype: oci.database.models.AutoFailoverConfiguration + """ + return self._auto_failover_configuration + + @auto_failover_configuration.setter + def auto_failover_configuration(self, auto_failover_configuration): + """ + Sets the auto_failover_configuration of this UpdateDatabaseDetails. + + :param auto_failover_configuration: The auto_failover_configuration of this UpdateDatabaseDetails. + :type: oci.database.models.AutoFailoverConfiguration + """ + self._auto_failover_configuration = auto_failover_configuration + def __repr__(self): as_dict = to_dict(self) redact_password_field(as_dict, ['new_admin_password']) redact_password_field(as_dict, ['old_tde_wallet_password']) redact_password_field(as_dict, ['new_tde_wallet_password']) + redact_password_field(as_dict, ['database_admin_password']) return formatted_flat_dict(as_dict) def __eq__(self, other): diff --git a/src/oci/golden_gate/models/api_key_ai_model_auth_details.py b/src/oci/golden_gate/models/api_key_ai_model_auth_details.py index 10876eccea..351f26b040 100644 --- a/src/oci/golden_gate/models/api_key_ai_model_auth_details.py +++ b/src/oci/golden_gate/models/api_key_ai_model_auth_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .ai_model_auth_details import AiModelAuthDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -51,6 +51,9 @@ def __init__(self, **kwargs): 'api_key': 'apiKey', 'api_key_secret_id': 'apiKeySecretId' } + self._redacted_field_paths = [ + ['api_key'], + ] self._auth_type = None self._base_url = None self._api_key = None @@ -138,7 +141,9 @@ def api_key_secret_id(self, api_key_secret_id): self._api_key_secret_id = api_key_secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['api_key']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_api_key_ai_model_auth_details.py b/src/oci/golden_gate/models/create_api_key_ai_model_auth_details.py index 4d1546e7c7..4a695f1d65 100644 --- a/src/oci/golden_gate/models/create_api_key_ai_model_auth_details.py +++ b/src/oci/golden_gate/models/create_api_key_ai_model_auth_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .create_ai_model_auth_details import CreateAiModelAuthDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -51,6 +51,9 @@ def __init__(self, **kwargs): 'api_key': 'apiKey', 'api_key_secret_id': 'apiKeySecretId' } + self._redacted_field_paths = [ + ['api_key'], + ] self._auth_type = None self._base_url = None self._api_key = None @@ -138,7 +141,9 @@ def api_key_secret_id(self, api_key_secret_id): self._api_key_secret_id = api_key_secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['api_key']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_database_registration_details.py b/src/oci/golden_gate/models/create_database_registration_details.py index 94d113bb10..557a64d378 100644 --- a/src/oci/golden_gate/models/create_database_registration_details.py +++ b/src/oci/golden_gate/models/create_database_registration_details.py @@ -144,6 +144,7 @@ def __init__(self, **kwargs): } self._redacted_field_paths = [ ['password'], + ['wallet'], ] self._display_name = None self._description = None @@ -664,6 +665,7 @@ def secret_compartment_id(self, secret_compartment_id): def __repr__(self): as_dict = to_dict(self) redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['wallet']) return formatted_flat_dict(as_dict) def __eq__(self, other): diff --git a/src/oci/golden_gate/models/create_db2_connection_details.py b/src/oci/golden_gate/models/create_db2_connection_details.py index 98ec0b22e2..665dac5c32 100644 --- a/src/oci/golden_gate/models/create_db2_connection_details.py +++ b/src/oci/golden_gate/models/create_db2_connection_details.py @@ -210,6 +210,8 @@ def __init__(self, **kwargs): } self._redacted_field_paths = [ ['password'], + ['ssl_client_keystoredb'], + ['ssl_client_keystash'], ] self._connection_type = None self._display_name = None @@ -646,6 +648,8 @@ def ssl_server_certificate(self, ssl_server_certificate): def __repr__(self): as_dict = to_dict(self) redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['ssl_client_keystoredb']) + redact_password_field(as_dict, ['ssl_client_keystash']) return formatted_flat_dict(as_dict) def __eq__(self, other): diff --git a/src/oci/golden_gate/models/create_deployment_details.py b/src/oci/golden_gate/models/create_deployment_details.py index c25c86cfa5..a6e452bea3 100644 --- a/src/oci/golden_gate/models/create_deployment_details.py +++ b/src/oci/golden_gate/models/create_deployment_details.py @@ -289,6 +289,7 @@ def __init__(self, **kwargs): } self._redacted_field_paths = [ ['ogg_data', 'admin_password'], + ['ogg_data', 'key'], ] self._display_name = None self._license_model = None @@ -1165,6 +1166,7 @@ def backup_schedule(self, backup_schedule): def __repr__(self): as_dict = to_dict(self) redact_password_field(as_dict, ['ogg_data', 'admin_password']) + redact_password_field(as_dict, ['ogg_data', 'key']) return formatted_flat_dict(as_dict) def __eq__(self, other): diff --git a/src/oci/golden_gate/models/create_google_big_query_connection_details.py b/src/oci/golden_gate/models/create_google_big_query_connection_details.py index b005e7700f..c02ab50a14 100644 --- a/src/oci/golden_gate/models/create_google_big_query_connection_details.py +++ b/src/oci/golden_gate/models/create_google_big_query_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -148,6 +148,9 @@ def __init__(self, **kwargs): 'service_account_key_file': 'serviceAccountKeyFile', 'service_account_key_file_secret_id': 'serviceAccountKeyFileSecretId' } + self._redacted_field_paths = [ + ['service_account_key_file'], + ] self._connection_type = None self._display_name = None self._description = None @@ -285,7 +288,9 @@ def service_account_key_file_secret_id(self, service_account_key_file_secret_id) self._service_account_key_file_secret_id = service_account_key_file_secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['service_account_key_file']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_google_cloud_storage_connection_details.py b/src/oci/golden_gate/models/create_google_cloud_storage_connection_details.py index 7ead9aaf91..97b82eeab7 100644 --- a/src/oci/golden_gate/models/create_google_cloud_storage_connection_details.py +++ b/src/oci/golden_gate/models/create_google_cloud_storage_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -148,6 +148,9 @@ def __init__(self, **kwargs): 'service_account_key_file': 'serviceAccountKeyFile', 'service_account_key_file_secret_id': 'serviceAccountKeyFileSecretId' } + self._redacted_field_paths = [ + ['service_account_key_file'], + ] self._connection_type = None self._display_name = None self._description = None @@ -285,7 +288,9 @@ def service_account_key_file_secret_id(self, service_account_key_file_secret_id) self._service_account_key_file_secret_id = service_account_key_file_secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['service_account_key_file']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_google_cloud_storage_iceberg_storage_details.py b/src/oci/golden_gate/models/create_google_cloud_storage_iceberg_storage_details.py index 39bcfeebdc..578de6c27c 100644 --- a/src/oci/golden_gate/models/create_google_cloud_storage_iceberg_storage_details.py +++ b/src/oci/golden_gate/models/create_google_cloud_storage_iceberg_storage_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .create_iceberg_storage_details import CreateIcebergStorageDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -63,6 +63,9 @@ def __init__(self, **kwargs): 'service_account_key_file': 'serviceAccountKeyFile', 'endpoint': 'endpoint' } + self._redacted_field_paths = [ + ['service_account_key_file'], + ] self._storage_type = None self._bucket = None self._project_id = None @@ -208,7 +211,9 @@ def endpoint(self, endpoint): self._endpoint = endpoint def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['service_account_key_file']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_google_pub_sub_connection_details.py b/src/oci/golden_gate/models/create_google_pub_sub_connection_details.py index a068598c26..0015fa73a0 100644 --- a/src/oci/golden_gate/models/create_google_pub_sub_connection_details.py +++ b/src/oci/golden_gate/models/create_google_pub_sub_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -142,6 +142,9 @@ def __init__(self, **kwargs): 'service_account_key_file': 'serviceAccountKeyFile', 'service_account_key_file_secret_id': 'serviceAccountKeyFileSecretId' } + self._redacted_field_paths = [ + ['service_account_key_file'], + ] self._connection_type = None self._display_name = None self._description = None @@ -252,7 +255,9 @@ def service_account_key_file_secret_id(self, service_account_key_file_secret_id) self._service_account_key_file_secret_id = service_account_key_file_secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['service_account_key_file']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_java_message_service_connection_details.py b/src/oci/golden_gate/models/create_java_message_service_connection_details.py index b9b29be9a1..85da0ccc7f 100644 --- a/src/oci/golden_gate/models/create_java_message_service_connection_details.py +++ b/src/oci/golden_gate/models/create_java_message_service_connection_details.py @@ -277,7 +277,9 @@ def __init__(self, **kwargs): self._redacted_field_paths = [ ['jndi_security_credentials'], ['password'], + ['trust_store'], ['trust_store_password'], + ['key_store'], ['key_store_password'], ['ssl_key_password'], ] @@ -1040,7 +1042,9 @@ def __repr__(self): as_dict = to_dict(self) redact_password_field(as_dict, ['jndi_security_credentials']) redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['trust_store']) redact_password_field(as_dict, ['trust_store_password']) + redact_password_field(as_dict, ['key_store']) redact_password_field(as_dict, ['key_store_password']) redact_password_field(as_dict, ['ssl_key_password']) return formatted_flat_dict(as_dict) diff --git a/src/oci/golden_gate/models/create_kafka_connection_details.py b/src/oci/golden_gate/models/create_kafka_connection_details.py index 721155713f..0b7488dc5f 100644 --- a/src/oci/golden_gate/models/create_kafka_connection_details.py +++ b/src/oci/golden_gate/models/create_kafka_connection_details.py @@ -252,7 +252,9 @@ def __init__(self, **kwargs): } self._redacted_field_paths = [ ['password'], + ['trust_store'], ['trust_store_password'], + ['key_store'], ['key_store_password'], ['ssl_key_password'], ] @@ -912,7 +914,9 @@ def should_use_resource_principal(self, should_use_resource_principal): def __repr__(self): as_dict = to_dict(self) redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['trust_store']) redact_password_field(as_dict, ['trust_store_password']) + redact_password_field(as_dict, ['key_store']) redact_password_field(as_dict, ['key_store_password']) redact_password_field(as_dict, ['ssl_key_password']) return formatted_flat_dict(as_dict) diff --git a/src/oci/golden_gate/models/create_kafka_schema_registry_connection_details.py b/src/oci/golden_gate/models/create_kafka_schema_registry_connection_details.py index dd20a4a463..13acbb7d58 100644 --- a/src/oci/golden_gate/models/create_kafka_schema_registry_connection_details.py +++ b/src/oci/golden_gate/models/create_kafka_schema_registry_connection_details.py @@ -222,7 +222,9 @@ def __init__(self, **kwargs): } self._redacted_field_paths = [ ['password'], + ['trust_store'], ['trust_store_password'], + ['key_store'], ['key_store_password'], ['ssl_key_password'], ] @@ -733,7 +735,9 @@ def ssl_key_password_secret_id(self, ssl_key_password_secret_id): def __repr__(self): as_dict = to_dict(self) redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['trust_store']) redact_password_field(as_dict, ['trust_store_password']) + redact_password_field(as_dict, ['key_store']) redact_password_field(as_dict, ['key_store_password']) redact_password_field(as_dict, ['ssl_key_password']) return formatted_flat_dict(as_dict) diff --git a/src/oci/golden_gate/models/create_microsoft_fabric_connection_details.py b/src/oci/golden_gate/models/create_microsoft_fabric_connection_details.py index 3291faef71..cb3ec520a0 100644 --- a/src/oci/golden_gate/models/create_microsoft_fabric_connection_details.py +++ b/src/oci/golden_gate/models/create_microsoft_fabric_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .create_connection_details import CreateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -160,6 +160,9 @@ def __init__(self, **kwargs): 'client_secret_secret_id': 'clientSecretSecretId', 'endpoint': 'endpoint' } + self._redacted_field_paths = [ + ['client_secret'], + ] self._connection_type = None self._display_name = None self._description = None @@ -347,7 +350,9 @@ def endpoint(self, endpoint): self._endpoint = endpoint def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['client_secret']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_mongo_db_connection_details.py b/src/oci/golden_gate/models/create_mongo_db_connection_details.py index b456f5609f..16c6fe6fee 100644 --- a/src/oci/golden_gate/models/create_mongo_db_connection_details.py +++ b/src/oci/golden_gate/models/create_mongo_db_connection_details.py @@ -198,6 +198,7 @@ def __init__(self, **kwargs): } self._redacted_field_paths = [ ['password'], + ['tls_certificate_key_file'], ['tls_certificate_key_file_password'], ] self._connection_type = None @@ -569,6 +570,7 @@ def tls_certificate_key_file_password_secret_id(self, tls_certificate_key_file_p def __repr__(self): as_dict = to_dict(self) redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['tls_certificate_key_file']) redact_password_field(as_dict, ['tls_certificate_key_file_password']) return formatted_flat_dict(as_dict) diff --git a/src/oci/golden_gate/models/create_mysql_connection_details.py b/src/oci/golden_gate/models/create_mysql_connection_details.py index 47f703e2b5..60041ebffe 100644 --- a/src/oci/golden_gate/models/create_mysql_connection_details.py +++ b/src/oci/golden_gate/models/create_mysql_connection_details.py @@ -222,6 +222,7 @@ def __init__(self, **kwargs): } self._redacted_field_paths = [ ['password'], + ['ssl_key'], ] self._connection_type = None self._display_name = None @@ -700,6 +701,7 @@ def db_system_id(self, db_system_id): def __repr__(self): as_dict = to_dict(self) redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['ssl_key']) return formatted_flat_dict(as_dict) def __eq__(self, other): diff --git a/src/oci/golden_gate/models/create_oci_gen_ai_model_auth_details.py b/src/oci/golden_gate/models/create_oci_gen_ai_model_auth_details.py index cb797ae8e6..9f6cee314c 100644 --- a/src/oci/golden_gate/models/create_oci_gen_ai_model_auth_details.py +++ b/src/oci/golden_gate/models/create_oci_gen_ai_model_auth_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .create_ai_model_auth_details import CreateAiModelAuthDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -69,6 +69,9 @@ def __init__(self, **kwargs): 'tenancy_id': 'tenancyId', 'user_id': 'userId' } + self._redacted_field_paths = [ + ['api_key'], + ] self._auth_type = None self._api_key = None self._api_key_secret_id = None @@ -235,7 +238,9 @@ def user_id(self, user_id): self._user_id = user_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['api_key']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_oci_object_storage_connection_details.py b/src/oci/golden_gate/models/create_oci_object_storage_connection_details.py index ac10e2513a..f67f889e99 100644 --- a/src/oci/golden_gate/models/create_oci_object_storage_connection_details.py +++ b/src/oci/golden_gate/models/create_oci_object_storage_connection_details.py @@ -185,6 +185,7 @@ def __init__(self, **kwargs): 'should_use_resource_principal': 'shouldUseResourcePrincipal' } self._redacted_field_paths = [ + ['private_key_file'], ['private_key_passphrase'], ] self._connection_type = None @@ -503,6 +504,7 @@ def should_use_resource_principal(self, should_use_resource_principal): def __repr__(self): as_dict = to_dict(self) + redact_password_field(as_dict, ['private_key_file']) redact_password_field(as_dict, ['private_key_passphrase']) return formatted_flat_dict(as_dict) diff --git a/src/oci/golden_gate/models/create_oci_object_storage_s3_api_iceberg_storage_details.py b/src/oci/golden_gate/models/create_oci_object_storage_s3_api_iceberg_storage_details.py index d359fab4dc..411aed8522 100644 --- a/src/oci/golden_gate/models/create_oci_object_storage_s3_api_iceberg_storage_details.py +++ b/src/oci/golden_gate/models/create_oci_object_storage_s3_api_iceberg_storage_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .create_iceberg_storage_details import CreateIcebergStorageDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -64,6 +64,9 @@ def __init__(self, **kwargs): 'secret_access_key': 'secretAccessKey', 'bucket': 'bucket' } + self._redacted_field_paths = [ + ['secret_access_key'], + ] self._storage_type = None self._endpoint = None self._access_key_id = None @@ -217,7 +220,9 @@ def bucket(self, bucket): self._bucket = bucket def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['secret_access_key']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_ogg_deployment_details.py b/src/oci/golden_gate/models/create_ogg_deployment_details.py index 019cae91cf..c46841ec5e 100644 --- a/src/oci/golden_gate/models/create_ogg_deployment_details.py +++ b/src/oci/golden_gate/models/create_ogg_deployment_details.py @@ -102,6 +102,7 @@ def __init__(self, **kwargs): } self._redacted_field_paths = [ ['admin_password'], + ['key'], ] self._deployment_name = None self._credential_store = None @@ -407,6 +408,7 @@ def group_to_roles_mapping(self, group_to_roles_mapping): def __repr__(self): as_dict = to_dict(self) redact_password_field(as_dict, ['admin_password']) + redact_password_field(as_dict, ['key']) return formatted_flat_dict(as_dict) def __eq__(self, other): diff --git a/src/oci/golden_gate/models/create_oracle_ai_data_platform_connection_details.py b/src/oci/golden_gate/models/create_oracle_ai_data_platform_connection_details.py index c188a01695..0495ff3721 100644 --- a/src/oci/golden_gate/models/create_oracle_ai_data_platform_connection_details.py +++ b/src/oci/golden_gate/models/create_oracle_ai_data_platform_connection_details.py @@ -191,6 +191,7 @@ def __init__(self, **kwargs): 'should_use_resource_principal': 'shouldUseResourcePrincipal' } self._redacted_field_paths = [ + ['private_key_file'], ['private_key_passphrase'], ] self._connection_type = None @@ -536,6 +537,7 @@ def should_use_resource_principal(self, should_use_resource_principal): def __repr__(self): as_dict = to_dict(self) + redact_password_field(as_dict, ['private_key_file']) redact_password_field(as_dict, ['private_key_passphrase']) return formatted_flat_dict(as_dict) diff --git a/src/oci/golden_gate/models/create_oracle_connection_details.py b/src/oci/golden_gate/models/create_oracle_connection_details.py index 6be5b1ba2d..3178b70c84 100644 --- a/src/oci/golden_gate/models/create_oracle_connection_details.py +++ b/src/oci/golden_gate/models/create_oracle_connection_details.py @@ -186,6 +186,7 @@ def __init__(self, **kwargs): } self._redacted_field_paths = [ ['password'], + ['wallet'], ] self._connection_type = None self._display_name = None @@ -522,6 +523,7 @@ def database_id(self, database_id): def __repr__(self): as_dict = to_dict(self) redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['wallet']) return formatted_flat_dict(as_dict) def __eq__(self, other): diff --git a/src/oci/golden_gate/models/create_oracle_nosql_connection_details.py b/src/oci/golden_gate/models/create_oracle_nosql_connection_details.py index a46cb29861..d1f329d6e4 100644 --- a/src/oci/golden_gate/models/create_oracle_nosql_connection_details.py +++ b/src/oci/golden_gate/models/create_oracle_nosql_connection_details.py @@ -185,6 +185,7 @@ def __init__(self, **kwargs): 'should_use_resource_principal': 'shouldUseResourcePrincipal' } self._redacted_field_paths = [ + ['private_key_file'], ['private_key_passphrase'], ] self._connection_type = None @@ -503,6 +504,7 @@ def should_use_resource_principal(self, should_use_resource_principal): def __repr__(self): as_dict = to_dict(self) + redact_password_field(as_dict, ['private_key_file']) redact_password_field(as_dict, ['private_key_passphrase']) return formatted_flat_dict(as_dict) diff --git a/src/oci/golden_gate/models/create_postgresql_connection_details.py b/src/oci/golden_gate/models/create_postgresql_connection_details.py index e50880d2b1..0cbd9a5ca9 100644 --- a/src/oci/golden_gate/models/create_postgresql_connection_details.py +++ b/src/oci/golden_gate/models/create_postgresql_connection_details.py @@ -222,6 +222,7 @@ def __init__(self, **kwargs): } self._redacted_field_paths = [ ['password'], + ['ssl_key'], ] self._connection_type = None self._display_name = None @@ -694,6 +695,7 @@ def db_system_id(self, db_system_id): def __repr__(self): as_dict = to_dict(self) redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['ssl_key']) return formatted_flat_dict(as_dict) def __eq__(self, other): diff --git a/src/oci/golden_gate/models/create_redis_connection_details.py b/src/oci/golden_gate/models/create_redis_connection_details.py index b7e7ff69af..8cb76a6a0b 100644 --- a/src/oci/golden_gate/models/create_redis_connection_details.py +++ b/src/oci/golden_gate/models/create_redis_connection_details.py @@ -222,7 +222,9 @@ def __init__(self, **kwargs): } self._redacted_field_paths = [ ['password'], + ['trust_store'], ['trust_store_password'], + ['key_store'], ['key_store_password'], ] self._connection_type = None @@ -728,7 +730,9 @@ def redis_cluster_id(self, redis_cluster_id): def __repr__(self): as_dict = to_dict(self) redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['trust_store']) redact_password_field(as_dict, ['trust_store_password']) + redact_password_field(as_dict, ['key_store']) redact_password_field(as_dict, ['key_store_password']) return formatted_flat_dict(as_dict) diff --git a/src/oci/golden_gate/models/create_rest_iceberg_catalog_details.py b/src/oci/golden_gate/models/create_rest_iceberg_catalog_details.py index 1750ccaeea..bfcca47184 100644 --- a/src/oci/golden_gate/models/create_rest_iceberg_catalog_details.py +++ b/src/oci/golden_gate/models/create_rest_iceberg_catalog_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .create_iceberg_catalog_details import CreateIcebergCatalogDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -51,6 +51,9 @@ def __init__(self, **kwargs): 'properties_secret_id': 'propertiesSecretId', 'properties': 'properties' } + self._redacted_field_paths = [ + ['properties'], + ] self._catalog_type = None self._uri = None self._properties_secret_id = None @@ -140,7 +143,9 @@ def properties(self, properties): self._properties = properties def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['properties']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/create_snowflake_connection_details.py b/src/oci/golden_gate/models/create_snowflake_connection_details.py index 83e83149cc..784c3b479e 100644 --- a/src/oci/golden_gate/models/create_snowflake_connection_details.py +++ b/src/oci/golden_gate/models/create_snowflake_connection_details.py @@ -186,6 +186,7 @@ def __init__(self, **kwargs): } self._redacted_field_paths = [ ['password'], + ['private_key_file'], ['private_key_passphrase'], ] self._connection_type = None @@ -507,6 +508,7 @@ def private_key_passphrase_secret_id(self, private_key_passphrase_secret_id): def __repr__(self): as_dict = to_dict(self) redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['private_key_file']) redact_password_field(as_dict, ['private_key_passphrase']) return formatted_flat_dict(as_dict) diff --git a/src/oci/golden_gate/models/oci_gen_ai_model_auth_details.py b/src/oci/golden_gate/models/oci_gen_ai_model_auth_details.py index a3b56eb3dc..5e8cc58a70 100644 --- a/src/oci/golden_gate/models/oci_gen_ai_model_auth_details.py +++ b/src/oci/golden_gate/models/oci_gen_ai_model_auth_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .ai_model_auth_details import AiModelAuthDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -69,6 +69,9 @@ def __init__(self, **kwargs): 'tenancy_id': 'tenancyId', 'user_id': 'userId' } + self._redacted_field_paths = [ + ['api_key'], + ] self._auth_type = None self._api_key = None self._api_key_secret_id = None @@ -235,7 +238,9 @@ def user_id(self, user_id): self._user_id = user_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['api_key']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_api_key_ai_model_auth_details.py b/src/oci/golden_gate/models/update_api_key_ai_model_auth_details.py index 8a8031b9db..b468df3320 100644 --- a/src/oci/golden_gate/models/update_api_key_ai_model_auth_details.py +++ b/src/oci/golden_gate/models/update_api_key_ai_model_auth_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .update_ai_model_auth_details import UpdateAiModelAuthDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -51,6 +51,9 @@ def __init__(self, **kwargs): 'api_key': 'apiKey', 'api_key_secret_id': 'apiKeySecretId' } + self._redacted_field_paths = [ + ['api_key'], + ] self._auth_type = None self._base_url = None self._api_key = None @@ -138,7 +141,9 @@ def api_key_secret_id(self, api_key_secret_id): self._api_key_secret_id = api_key_secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['api_key']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_database_registration_details.py b/src/oci/golden_gate/models/update_database_registration_details.py index 862eafaffd..7a1ff29884 100644 --- a/src/oci/golden_gate/models/update_database_registration_details.py +++ b/src/oci/golden_gate/models/update_database_registration_details.py @@ -102,6 +102,7 @@ def __init__(self, **kwargs): } self._redacted_field_paths = [ ['password'], + ['wallet'], ] self._display_name = None self._description = None @@ -425,6 +426,7 @@ def alias_name(self, alias_name): def __repr__(self): as_dict = to_dict(self) redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['wallet']) return formatted_flat_dict(as_dict) def __eq__(self, other): diff --git a/src/oci/golden_gate/models/update_db2_connection_details.py b/src/oci/golden_gate/models/update_db2_connection_details.py index 4fdb06aa5e..34fbcef45e 100644 --- a/src/oci/golden_gate/models/update_db2_connection_details.py +++ b/src/oci/golden_gate/models/update_db2_connection_details.py @@ -180,6 +180,8 @@ def __init__(self, **kwargs): } self._redacted_field_paths = [ ['password'], + ['ssl_client_keystoredb'], + ['ssl_client_keystash'], ] self._connection_type = None self._display_name = None @@ -587,6 +589,8 @@ def ssl_server_certificate(self, ssl_server_certificate): def __repr__(self): as_dict = to_dict(self) redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['ssl_client_keystoredb']) + redact_password_field(as_dict, ['ssl_client_keystash']) return formatted_flat_dict(as_dict) def __eq__(self, other): diff --git a/src/oci/golden_gate/models/update_deployment_details.py b/src/oci/golden_gate/models/update_deployment_details.py index 94ffce0c81..8d9b893b02 100644 --- a/src/oci/golden_gate/models/update_deployment_details.py +++ b/src/oci/golden_gate/models/update_deployment_details.py @@ -171,6 +171,7 @@ def __init__(self, **kwargs): } self._redacted_field_paths = [ ['ogg_data', 'admin_password'], + ['ogg_data', 'key'], ] self._display_name = None self._license_model = None @@ -757,6 +758,7 @@ def backup_schedule(self, backup_schedule): def __repr__(self): as_dict = to_dict(self) redact_password_field(as_dict, ['ogg_data', 'admin_password']) + redact_password_field(as_dict, ['ogg_data', 'key']) return formatted_flat_dict(as_dict) def __eq__(self, other): diff --git a/src/oci/golden_gate/models/update_google_big_query_connection_details.py b/src/oci/golden_gate/models/update_google_big_query_connection_details.py index ab74ae9bfe..4d1f8eba83 100644 --- a/src/oci/golden_gate/models/update_google_big_query_connection_details.py +++ b/src/oci/golden_gate/models/update_google_big_query_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -118,6 +118,9 @@ def __init__(self, **kwargs): 'service_account_key_file': 'serviceAccountKeyFile', 'service_account_key_file_secret_id': 'serviceAccountKeyFileSecretId' } + self._redacted_field_paths = [ + ['service_account_key_file'], + ] self._connection_type = None self._display_name = None self._description = None @@ -226,7 +229,9 @@ def service_account_key_file_secret_id(self, service_account_key_file_secret_id) self._service_account_key_file_secret_id = service_account_key_file_secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['service_account_key_file']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_google_cloud_storage_connection_details.py b/src/oci/golden_gate/models/update_google_cloud_storage_connection_details.py index c048b67181..d92849699b 100644 --- a/src/oci/golden_gate/models/update_google_cloud_storage_connection_details.py +++ b/src/oci/golden_gate/models/update_google_cloud_storage_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -118,6 +118,9 @@ def __init__(self, **kwargs): 'service_account_key_file': 'serviceAccountKeyFile', 'service_account_key_file_secret_id': 'serviceAccountKeyFileSecretId' } + self._redacted_field_paths = [ + ['service_account_key_file'], + ] self._connection_type = None self._display_name = None self._description = None @@ -226,7 +229,9 @@ def service_account_key_file_secret_id(self, service_account_key_file_secret_id) self._service_account_key_file_secret_id = service_account_key_file_secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['service_account_key_file']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_google_cloud_storage_iceberg_storage_details.py b/src/oci/golden_gate/models/update_google_cloud_storage_iceberg_storage_details.py index 18992e62f8..c8c5020e48 100644 --- a/src/oci/golden_gate/models/update_google_cloud_storage_iceberg_storage_details.py +++ b/src/oci/golden_gate/models/update_google_cloud_storage_iceberg_storage_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .update_iceberg_storage_details import UpdateIcebergStorageDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -63,6 +63,9 @@ def __init__(self, **kwargs): 'service_account_key_file': 'serviceAccountKeyFile', 'endpoint': 'endpoint' } + self._redacted_field_paths = [ + ['service_account_key_file'], + ] self._storage_type = None self._bucket = None self._project_id = None @@ -208,7 +211,9 @@ def endpoint(self, endpoint): self._endpoint = endpoint def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['service_account_key_file']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_google_pub_sub_connection_details.py b/src/oci/golden_gate/models/update_google_pub_sub_connection_details.py index 7d75bb35cc..5112681187 100644 --- a/src/oci/golden_gate/models/update_google_pub_sub_connection_details.py +++ b/src/oci/golden_gate/models/update_google_pub_sub_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -112,6 +112,9 @@ def __init__(self, **kwargs): 'service_account_key_file': 'serviceAccountKeyFile', 'service_account_key_file_secret_id': 'serviceAccountKeyFileSecretId' } + self._redacted_field_paths = [ + ['service_account_key_file'], + ] self._connection_type = None self._display_name = None self._description = None @@ -193,7 +196,9 @@ def service_account_key_file_secret_id(self, service_account_key_file_secret_id) self._service_account_key_file_secret_id = service_account_key_file_secret_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['service_account_key_file']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_java_message_service_connection_details.py b/src/oci/golden_gate/models/update_java_message_service_connection_details.py index d40dee106d..91aec6f0d6 100644 --- a/src/oci/golden_gate/models/update_java_message_service_connection_details.py +++ b/src/oci/golden_gate/models/update_java_message_service_connection_details.py @@ -253,7 +253,9 @@ def __init__(self, **kwargs): self._redacted_field_paths = [ ['jndi_security_credentials'], ['password'], + ['trust_store'], ['trust_store_password'], + ['key_store'], ['key_store_password'], ['ssl_key_password'], ] @@ -1016,7 +1018,9 @@ def __repr__(self): as_dict = to_dict(self) redact_password_field(as_dict, ['jndi_security_credentials']) redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['trust_store']) redact_password_field(as_dict, ['trust_store_password']) + redact_password_field(as_dict, ['key_store']) redact_password_field(as_dict, ['key_store_password']) redact_password_field(as_dict, ['ssl_key_password']) return formatted_flat_dict(as_dict) diff --git a/src/oci/golden_gate/models/update_kafka_connection_details.py b/src/oci/golden_gate/models/update_kafka_connection_details.py index 4c620d3efe..6ee32aac3d 100644 --- a/src/oci/golden_gate/models/update_kafka_connection_details.py +++ b/src/oci/golden_gate/models/update_kafka_connection_details.py @@ -222,7 +222,9 @@ def __init__(self, **kwargs): } self._redacted_field_paths = [ ['password'], + ['trust_store'], ['trust_store_password'], + ['key_store'], ['key_store_password'], ['ssl_key_password'], ] @@ -853,7 +855,9 @@ def should_use_resource_principal(self, should_use_resource_principal): def __repr__(self): as_dict = to_dict(self) redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['trust_store']) redact_password_field(as_dict, ['trust_store_password']) + redact_password_field(as_dict, ['key_store']) redact_password_field(as_dict, ['key_store_password']) redact_password_field(as_dict, ['ssl_key_password']) return formatted_flat_dict(as_dict) diff --git a/src/oci/golden_gate/models/update_kafka_schema_registry_connection_details.py b/src/oci/golden_gate/models/update_kafka_schema_registry_connection_details.py index 0a268da075..cf7ddb2755 100644 --- a/src/oci/golden_gate/models/update_kafka_schema_registry_connection_details.py +++ b/src/oci/golden_gate/models/update_kafka_schema_registry_connection_details.py @@ -198,7 +198,9 @@ def __init__(self, **kwargs): } self._redacted_field_paths = [ ['password'], + ['trust_store'], ['trust_store_password'], + ['key_store'], ['key_store_password'], ['ssl_key_password'], ] @@ -711,7 +713,9 @@ def private_ip(self, private_ip): def __repr__(self): as_dict = to_dict(self) redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['trust_store']) redact_password_field(as_dict, ['trust_store_password']) + redact_password_field(as_dict, ['key_store']) redact_password_field(as_dict, ['key_store_password']) redact_password_field(as_dict, ['ssl_key_password']) return formatted_flat_dict(as_dict) diff --git a/src/oci/golden_gate/models/update_microsoft_fabric_connection_details.py b/src/oci/golden_gate/models/update_microsoft_fabric_connection_details.py index 9dcfca7ac7..4f97982b9e 100644 --- a/src/oci/golden_gate/models/update_microsoft_fabric_connection_details.py +++ b/src/oci/golden_gate/models/update_microsoft_fabric_connection_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .update_connection_details import UpdateConnectionDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -130,6 +130,9 @@ def __init__(self, **kwargs): 'client_secret_secret_id': 'clientSecretSecretId', 'endpoint': 'endpoint' } + self._redacted_field_paths = [ + ['client_secret'], + ] self._connection_type = None self._display_name = None self._description = None @@ -288,7 +291,9 @@ def endpoint(self, endpoint): self._endpoint = endpoint def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['client_secret']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_mongo_db_connection_details.py b/src/oci/golden_gate/models/update_mongo_db_connection_details.py index 583c5bf3a3..0017adc809 100644 --- a/src/oci/golden_gate/models/update_mongo_db_connection_details.py +++ b/src/oci/golden_gate/models/update_mongo_db_connection_details.py @@ -168,6 +168,7 @@ def __init__(self, **kwargs): } self._redacted_field_paths = [ ['password'], + ['tls_certificate_key_file'], ['tls_certificate_key_file_password'], ] self._connection_type = None @@ -510,6 +511,7 @@ def tls_certificate_key_file_password_secret_id(self, tls_certificate_key_file_p def __repr__(self): as_dict = to_dict(self) redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['tls_certificate_key_file']) redact_password_field(as_dict, ['tls_certificate_key_file_password']) return formatted_flat_dict(as_dict) diff --git a/src/oci/golden_gate/models/update_mysql_connection_details.py b/src/oci/golden_gate/models/update_mysql_connection_details.py index 12f95e4e45..df678f9075 100644 --- a/src/oci/golden_gate/models/update_mysql_connection_details.py +++ b/src/oci/golden_gate/models/update_mysql_connection_details.py @@ -198,6 +198,7 @@ def __init__(self, **kwargs): } self._redacted_field_paths = [ ['password'], + ['ssl_key'], ] self._connection_type = None self._display_name = None @@ -676,6 +677,7 @@ def db_system_id(self, db_system_id): def __repr__(self): as_dict = to_dict(self) redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['ssl_key']) return formatted_flat_dict(as_dict) def __eq__(self, other): diff --git a/src/oci/golden_gate/models/update_oci_gen_ai_model_auth_details.py b/src/oci/golden_gate/models/update_oci_gen_ai_model_auth_details.py index 1e4c4de028..2d0cbab4c5 100644 --- a/src/oci/golden_gate/models/update_oci_gen_ai_model_auth_details.py +++ b/src/oci/golden_gate/models/update_oci_gen_ai_model_auth_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .update_ai_model_auth_details import UpdateAiModelAuthDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -69,6 +69,9 @@ def __init__(self, **kwargs): 'tenancy_id': 'tenancyId', 'user_id': 'userId' } + self._redacted_field_paths = [ + ['api_key'], + ] self._auth_type = None self._api_key = None self._api_key_secret_id = None @@ -235,7 +238,9 @@ def user_id(self, user_id): self._user_id = user_id def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['api_key']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_oci_object_storage_connection_details.py b/src/oci/golden_gate/models/update_oci_object_storage_connection_details.py index ea5da8fbce..941a741933 100644 --- a/src/oci/golden_gate/models/update_oci_object_storage_connection_details.py +++ b/src/oci/golden_gate/models/update_oci_object_storage_connection_details.py @@ -155,6 +155,7 @@ def __init__(self, **kwargs): 'should_use_resource_principal': 'shouldUseResourcePrincipal' } self._redacted_field_paths = [ + ['private_key_file'], ['private_key_passphrase'], ] self._connection_type = None @@ -444,6 +445,7 @@ def should_use_resource_principal(self, should_use_resource_principal): def __repr__(self): as_dict = to_dict(self) + redact_password_field(as_dict, ['private_key_file']) redact_password_field(as_dict, ['private_key_passphrase']) return formatted_flat_dict(as_dict) diff --git a/src/oci/golden_gate/models/update_oci_object_storage_s3_api_iceberg_storage_details.py b/src/oci/golden_gate/models/update_oci_object_storage_s3_api_iceberg_storage_details.py index 27c92cf7d7..b651bb2911 100644 --- a/src/oci/golden_gate/models/update_oci_object_storage_s3_api_iceberg_storage_details.py +++ b/src/oci/golden_gate/models/update_oci_object_storage_s3_api_iceberg_storage_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .update_iceberg_storage_details import UpdateIcebergStorageDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -64,6 +64,9 @@ def __init__(self, **kwargs): 'secret_access_key': 'secretAccessKey', 'bucket': 'bucket' } + self._redacted_field_paths = [ + ['secret_access_key'], + ] self._storage_type = None self._endpoint = None self._access_key_id = None @@ -217,7 +220,9 @@ def bucket(self, bucket): self._bucket = bucket def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['secret_access_key']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_ogg_deployment_details.py b/src/oci/golden_gate/models/update_ogg_deployment_details.py index 886cb13cca..c3ae04ce0c 100644 --- a/src/oci/golden_gate/models/update_ogg_deployment_details.py +++ b/src/oci/golden_gate/models/update_ogg_deployment_details.py @@ -90,6 +90,7 @@ def __init__(self, **kwargs): } self._redacted_field_paths = [ ['admin_password'], + ['key'], ] self._credential_store = None self._identity_domain_id = None @@ -341,6 +342,7 @@ def group_to_roles_mapping(self, group_to_roles_mapping): def __repr__(self): as_dict = to_dict(self) redact_password_field(as_dict, ['admin_password']) + redact_password_field(as_dict, ['key']) return formatted_flat_dict(as_dict) def __eq__(self, other): diff --git a/src/oci/golden_gate/models/update_oracle_ai_data_platform_connection_details.py b/src/oci/golden_gate/models/update_oracle_ai_data_platform_connection_details.py index b71559fc20..cbfe3d16da 100644 --- a/src/oci/golden_gate/models/update_oracle_ai_data_platform_connection_details.py +++ b/src/oci/golden_gate/models/update_oracle_ai_data_platform_connection_details.py @@ -161,6 +161,7 @@ def __init__(self, **kwargs): 'should_use_resource_principal': 'shouldUseResourcePrincipal' } self._redacted_field_paths = [ + ['private_key_file'], ['private_key_passphrase'], ] self._connection_type = None @@ -477,6 +478,7 @@ def should_use_resource_principal(self, should_use_resource_principal): def __repr__(self): as_dict = to_dict(self) + redact_password_field(as_dict, ['private_key_file']) redact_password_field(as_dict, ['private_key_passphrase']) return formatted_flat_dict(as_dict) diff --git a/src/oci/golden_gate/models/update_oracle_connection_details.py b/src/oci/golden_gate/models/update_oracle_connection_details.py index 64d5c568f3..b167595c35 100644 --- a/src/oci/golden_gate/models/update_oracle_connection_details.py +++ b/src/oci/golden_gate/models/update_oracle_connection_details.py @@ -162,6 +162,7 @@ def __init__(self, **kwargs): } self._redacted_field_paths = [ ['password'], + ['wallet'], ] self._connection_type = None self._display_name = None @@ -498,6 +499,7 @@ def database_id(self, database_id): def __repr__(self): as_dict = to_dict(self) redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['wallet']) return formatted_flat_dict(as_dict) def __eq__(self, other): diff --git a/src/oci/golden_gate/models/update_oracle_nosql_connection_details.py b/src/oci/golden_gate/models/update_oracle_nosql_connection_details.py index 2ad8aecfc3..9bff294b9c 100644 --- a/src/oci/golden_gate/models/update_oracle_nosql_connection_details.py +++ b/src/oci/golden_gate/models/update_oracle_nosql_connection_details.py @@ -155,6 +155,7 @@ def __init__(self, **kwargs): 'should_use_resource_principal': 'shouldUseResourcePrincipal' } self._redacted_field_paths = [ + ['private_key_file'], ['private_key_passphrase'], ] self._connection_type = None @@ -444,6 +445,7 @@ def should_use_resource_principal(self, should_use_resource_principal): def __repr__(self): as_dict = to_dict(self) + redact_password_field(as_dict, ['private_key_file']) redact_password_field(as_dict, ['private_key_passphrase']) return formatted_flat_dict(as_dict) diff --git a/src/oci/golden_gate/models/update_postgresql_connection_details.py b/src/oci/golden_gate/models/update_postgresql_connection_details.py index b23be5e366..ea796e13eb 100644 --- a/src/oci/golden_gate/models/update_postgresql_connection_details.py +++ b/src/oci/golden_gate/models/update_postgresql_connection_details.py @@ -198,6 +198,7 @@ def __init__(self, **kwargs): } self._redacted_field_paths = [ ['password'], + ['ssl_key'], ] self._connection_type = None self._display_name = None @@ -670,6 +671,7 @@ def db_system_id(self, db_system_id): def __repr__(self): as_dict = to_dict(self) redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['ssl_key']) return formatted_flat_dict(as_dict) def __eq__(self, other): diff --git a/src/oci/golden_gate/models/update_redis_connection_details.py b/src/oci/golden_gate/models/update_redis_connection_details.py index a7ce08e3f1..39a0409a6b 100644 --- a/src/oci/golden_gate/models/update_redis_connection_details.py +++ b/src/oci/golden_gate/models/update_redis_connection_details.py @@ -192,7 +192,9 @@ def __init__(self, **kwargs): } self._redacted_field_paths = [ ['password'], + ['trust_store'], ['trust_store_password'], + ['key_store'], ['key_store_password'], ] self._connection_type = None @@ -669,7 +671,9 @@ def redis_cluster_id(self, redis_cluster_id): def __repr__(self): as_dict = to_dict(self) redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['trust_store']) redact_password_field(as_dict, ['trust_store_password']) + redact_password_field(as_dict, ['key_store']) redact_password_field(as_dict, ['key_store_password']) return formatted_flat_dict(as_dict) diff --git a/src/oci/golden_gate/models/update_rest_iceberg_catalog_details.py b/src/oci/golden_gate/models/update_rest_iceberg_catalog_details.py index e4e93d4cfa..8abca65ec3 100644 --- a/src/oci/golden_gate/models/update_rest_iceberg_catalog_details.py +++ b/src/oci/golden_gate/models/update_rest_iceberg_catalog_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20200407 from .update_iceberg_catalog_details import UpdateIcebergCatalogDetails -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -51,6 +51,9 @@ def __init__(self, **kwargs): 'properties_secret_id': 'propertiesSecretId', 'properties': 'properties' } + self._redacted_field_paths = [ + ['properties'], + ] self._catalog_type = None self._uri = None self._properties_secret_id = None @@ -140,7 +143,9 @@ def properties(self, properties): self._properties = properties def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['properties']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/golden_gate/models/update_snowflake_connection_details.py b/src/oci/golden_gate/models/update_snowflake_connection_details.py index 9cf15a2abe..691832f71d 100644 --- a/src/oci/golden_gate/models/update_snowflake_connection_details.py +++ b/src/oci/golden_gate/models/update_snowflake_connection_details.py @@ -156,6 +156,7 @@ def __init__(self, **kwargs): } self._redacted_field_paths = [ ['password'], + ['private_key_file'], ['private_key_passphrase'], ] self._connection_type = None @@ -442,6 +443,7 @@ def private_key_passphrase_secret_id(self, private_key_passphrase_secret_id): def __repr__(self): as_dict = to_dict(self) redact_password_field(as_dict, ['password']) + redact_password_field(as_dict, ['private_key_file']) redact_password_field(as_dict, ['private_key_passphrase']) return formatted_flat_dict(as_dict) diff --git a/src/oci/marketplace_private_offer/__init__.py b/src/oci/marketplace_private_offer/__init__.py index 61fdda52b1..98e7e18c12 100644 --- a/src/oci/marketplace_private_offer/__init__.py +++ b/src/oci/marketplace_private_offer/__init__.py @@ -11,6 +11,10 @@ from .attachment_client_composite_operations import AttachmentClientCompositeOperations from .offer_client import OfferClient from .offer_client_composite_operations import OfferClientCompositeOperations +from .offer_quote_client import OfferQuoteClient +from .offer_quote_client_composite_operations import OfferQuoteClientCompositeOperations +from .quote_attachment_client import QuoteAttachmentClient +from .quote_attachment_client_composite_operations import QuoteAttachmentClientCompositeOperations from . import models -__all__ = ["AttachmentClient", "AttachmentClientCompositeOperations", "OfferClient", "OfferClientCompositeOperations", "models"] +__all__ = ["AttachmentClient", "AttachmentClientCompositeOperations", "OfferClient", "OfferClientCompositeOperations", "OfferQuoteClient", "OfferQuoteClientCompositeOperations", "QuoteAttachmentClient", "QuoteAttachmentClientCompositeOperations", "models"] diff --git a/src/oci/marketplace_private_offer/models/__init__.py b/src/oci/marketplace_private_offer/models/__init__.py index a8fc414ef4..e5c1d3c4a6 100644 --- a/src/oci/marketplace_private_offer/models/__init__.py +++ b/src/oci/marketplace_private_offer/models/__init__.py @@ -13,16 +13,29 @@ from .contact import Contact from .create_attachment_details import CreateAttachmentDetails from .create_offer_details import CreateOfferDetails +from .create_offer_quote_details import CreateOfferQuoteDetails +from .create_quote_attachment_details import CreateQuoteAttachmentDetails from .custom_field import CustomField +from .isv_information import IsvInformation from .offer import Offer from .offer_collection import OfferCollection from .offer_internal_detail import OfferInternalDetail +from .offer_quote import OfferQuote +from .offer_quote_collection import OfferQuoteCollection +from .offer_quote_internal_detail import OfferQuoteInternalDetail +from .offer_quote_summary import OfferQuoteSummary from .offer_summary import OfferSummary from .pricing import Pricing from .publisher_summary import PublisherSummary +from .quote_attachment import QuoteAttachment +from .quote_attachment_collection import QuoteAttachmentCollection +from .quote_attachment_summary import QuoteAttachmentSummary +from .reseller_information import ResellerInformation from .resource_bundle import ResourceBundle +from .respond_to_offer_quote_details import RespondToOfferQuoteDetails from .seller_information import SellerInformation from .update_offer_details import UpdateOfferDetails +from .update_offer_quote_details import UpdateOfferQuoteDetails from .upload_data import UploadData # Maps type names to classes for marketplace_private_offer services. @@ -34,15 +47,28 @@ "Contact": Contact, "CreateAttachmentDetails": CreateAttachmentDetails, "CreateOfferDetails": CreateOfferDetails, + "CreateOfferQuoteDetails": CreateOfferQuoteDetails, + "CreateQuoteAttachmentDetails": CreateQuoteAttachmentDetails, "CustomField": CustomField, + "IsvInformation": IsvInformation, "Offer": Offer, "OfferCollection": OfferCollection, "OfferInternalDetail": OfferInternalDetail, + "OfferQuote": OfferQuote, + "OfferQuoteCollection": OfferQuoteCollection, + "OfferQuoteInternalDetail": OfferQuoteInternalDetail, + "OfferQuoteSummary": OfferQuoteSummary, "OfferSummary": OfferSummary, "Pricing": Pricing, "PublisherSummary": PublisherSummary, + "QuoteAttachment": QuoteAttachment, + "QuoteAttachmentCollection": QuoteAttachmentCollection, + "QuoteAttachmentSummary": QuoteAttachmentSummary, + "ResellerInformation": ResellerInformation, "ResourceBundle": ResourceBundle, + "RespondToOfferQuoteDetails": RespondToOfferQuoteDetails, "SellerInformation": SellerInformation, "UpdateOfferDetails": UpdateOfferDetails, + "UpdateOfferQuoteDetails": UpdateOfferQuoteDetails, "UploadData": UploadData } diff --git a/src/oci/marketplace_private_offer/models/attachment.py b/src/oci/marketplace_private_offer/models/attachment.py index ed1c041c7b..1ccf65d392 100644 --- a/src/oci/marketplace_private_offer/models/attachment.py +++ b/src/oci/marketplace_private_offer/models/attachment.py @@ -104,6 +104,10 @@ def __init__(self, **kwargs): Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str + :param offer_type: + The value to assign to the offer_type property of this Attachment. + :type offer_type: str + :param freeform_tags: The value to assign to the freeform_tags property of this Attachment. :type freeform_tags: dict(str, str) @@ -112,6 +116,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this Attachment. :type defined_tags: dict(str, dict(str, object)) + :param system_tags: + The value to assign to the system_tags property of this Attachment. + :type system_tags: dict(str, dict(str, object)) + """ self.swagger_types = { 'id': 'str', @@ -123,8 +131,10 @@ def __init__(self, **kwargs): 'type': 'str', 'time_created': 'datetime', 'lifecycle_state': 'str', + 'offer_type': 'str', 'freeform_tags': 'dict(str, str)', - 'defined_tags': 'dict(str, dict(str, object))' + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))' } self.attribute_map = { 'id': 'id', @@ -136,8 +146,10 @@ def __init__(self, **kwargs): 'type': 'type', 'time_created': 'timeCreated', 'lifecycle_state': 'lifecycleState', + 'offer_type': 'offerType', 'freeform_tags': 'freeformTags', - 'defined_tags': 'definedTags' + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags' } self._id = None self._seller_compartment_id = None @@ -148,8 +160,10 @@ def __init__(self, **kwargs): self._type = None self._time_created = None self._lifecycle_state = None + self._offer_type = None self._freeform_tags = None self._defined_tags = None + self._system_tags = None @property def id(self): @@ -379,6 +393,30 @@ def lifecycle_state(self, lifecycle_state): lifecycle_state = 'UNKNOWN_ENUM_VALUE' self._lifecycle_state = lifecycle_state + @property + def offer_type(self): + """ + Gets the offer_type of this Attachment. + The type of the offer. + + + :return: The offer_type of this Attachment. + :rtype: str + """ + return self._offer_type + + @offer_type.setter + def offer_type(self, offer_type): + """ + Sets the offer_type of this Attachment. + The type of the offer. + + + :param offer_type: The offer_type of this Attachment. + :type: str + """ + self._offer_type = offer_type + @property def freeform_tags(self): """ @@ -431,6 +469,32 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def system_tags(self): + """ + Gets the system_tags of this Attachment. + System tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :return: The system_tags of this Attachment. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this Attachment. + System tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :param system_tags: The system_tags of this Attachment. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/marketplace_private_offer/models/attachment_summary.py b/src/oci/marketplace_private_offer/models/attachment_summary.py index 7bbe3ac0ba..fdb18a6104 100644 --- a/src/oci/marketplace_private_offer/models/attachment_summary.py +++ b/src/oci/marketplace_private_offer/models/attachment_summary.py @@ -44,6 +44,10 @@ def __init__(self, **kwargs): The value to assign to the lifecycle_state property of this AttachmentSummary. :type lifecycle_state: str + :param offer_type: + The value to assign to the offer_type property of this AttachmentSummary. + :type offer_type: str + :param freeform_tags: The value to assign to the freeform_tags property of this AttachmentSummary. :type freeform_tags: dict(str, str) @@ -52,6 +56,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this AttachmentSummary. :type defined_tags: dict(str, dict(str, object)) + :param system_tags: + The value to assign to the system_tags property of this AttachmentSummary. + :type system_tags: dict(str, dict(str, object)) + """ self.swagger_types = { 'id': 'str', @@ -60,8 +68,10 @@ def __init__(self, **kwargs): 'display_name': 'str', 'type': 'str', 'lifecycle_state': 'str', + 'offer_type': 'str', 'freeform_tags': 'dict(str, str)', - 'defined_tags': 'dict(str, dict(str, object))' + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))' } self.attribute_map = { 'id': 'id', @@ -70,8 +80,10 @@ def __init__(self, **kwargs): 'display_name': 'displayName', 'type': 'type', 'lifecycle_state': 'lifecycleState', + 'offer_type': 'offerType', 'freeform_tags': 'freeformTags', - 'defined_tags': 'definedTags' + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags' } self._id = None self._offer_id = None @@ -79,8 +91,10 @@ def __init__(self, **kwargs): self._display_name = None self._type = None self._lifecycle_state = None + self._offer_type = None self._freeform_tags = None self._defined_tags = None + self._system_tags = None @property def id(self): @@ -226,6 +240,30 @@ def lifecycle_state(self, lifecycle_state): """ self._lifecycle_state = lifecycle_state + @property + def offer_type(self): + """ + Gets the offer_type of this AttachmentSummary. + The type of the offer. + + + :return: The offer_type of this AttachmentSummary. + :rtype: str + """ + return self._offer_type + + @offer_type.setter + def offer_type(self, offer_type): + """ + Sets the offer_type of this AttachmentSummary. + The type of the offer. + + + :param offer_type: The offer_type of this AttachmentSummary. + :type: str + """ + self._offer_type = offer_type + @property def freeform_tags(self): """ @@ -278,6 +316,32 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def system_tags(self): + """ + Gets the system_tags of this AttachmentSummary. + System tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :return: The system_tags of this AttachmentSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this AttachmentSummary. + System tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :param system_tags: The system_tags of this AttachmentSummary. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/marketplace_private_offer/models/contact.py b/src/oci/marketplace_private_offer/models/contact.py index ffda1e8220..0eebaa6350 100644 --- a/src/oci/marketplace_private_offer/models/contact.py +++ b/src/oci/marketplace_private_offer/models/contact.py @@ -12,7 +12,7 @@ @init_model_state_from_kwargs class Contact(object): """ - The contact information of an individual + The contact information of an individual. """ def __init__(self, **kwargs): @@ -51,7 +51,7 @@ def __init__(self, **kwargs): def first_name(self): """ Gets the first_name of this Contact. - The first name of the contact + The first name of the contact. :return: The first_name of this Contact. @@ -63,7 +63,7 @@ def first_name(self): def first_name(self, first_name): """ Sets the first_name of this Contact. - The first name of the contact + The first name of the contact. :param first_name: The first_name of this Contact. @@ -75,7 +75,7 @@ def first_name(self, first_name): def last_name(self): """ Gets the last_name of this Contact. - The last name of the contact + The last name of the contact. :return: The last_name of this Contact. @@ -87,7 +87,7 @@ def last_name(self): def last_name(self, last_name): """ Sets the last_name of this Contact. - The last name of the contact + The last name of the contact. :param last_name: The last_name of this Contact. @@ -99,7 +99,7 @@ def last_name(self, last_name): def email(self): """ Gets the email of this Contact. - The email of the contact + The email of the contact. :return: The email of this Contact. @@ -111,7 +111,7 @@ def email(self): def email(self, email): """ Sets the email of this Contact. - The email of the contact + The email of the contact. :param email: The email of this Contact. diff --git a/src/oci/marketplace_private_offer/models/create_offer_details.py b/src/oci/marketplace_private_offer/models/create_offer_details.py index 1d264e1fc9..5472866713 100644 --- a/src/oci/marketplace_private_offer/models/create_offer_details.py +++ b/src/oci/marketplace_private_offer/models/create_offer_details.py @@ -72,6 +72,14 @@ def __init__(self, **kwargs): The value to assign to the custom_fields property of this CreateOfferDetails. :type custom_fields: list[oci.marketplace_private_offer.models.CustomField] + :param offer_type: + The value to assign to the offer_type property of this CreateOfferDetails. + :type offer_type: str + + :param offer_quote_ids: + The value to assign to the offer_quote_ids property of this CreateOfferDetails. + :type offer_quote_ids: list[str] + :param freeform_tags: The value to assign to the freeform_tags property of this CreateOfferDetails. :type freeform_tags: dict(str, str) @@ -95,6 +103,8 @@ def __init__(self, **kwargs): 'seller_information': 'SellerInformation', 'resource_bundles': 'list[ResourceBundle]', 'custom_fields': 'list[CustomField]', + 'offer_type': 'str', + 'offer_quote_ids': 'list[str]', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))' } @@ -112,6 +122,8 @@ def __init__(self, **kwargs): 'seller_information': 'sellerInformation', 'resource_bundles': 'resourceBundles', 'custom_fields': 'customFields', + 'offer_type': 'offerType', + 'offer_quote_ids': 'offerQuoteIds', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags' } @@ -128,6 +140,8 @@ def __init__(self, **kwargs): self._seller_information = None self._resource_bundles = None self._custom_fields = None + self._offer_type = None + self._offer_quote_ids = None self._freeform_tags = None self._defined_tags = None @@ -431,6 +445,54 @@ def custom_fields(self, custom_fields): """ self._custom_fields = custom_fields + @property + def offer_type(self): + """ + Gets the offer_type of this CreateOfferDetails. + The type of the offer. + + + :return: The offer_type of this CreateOfferDetails. + :rtype: str + """ + return self._offer_type + + @offer_type.setter + def offer_type(self, offer_type): + """ + Sets the offer_type of this CreateOfferDetails. + The type of the offer. + + + :param offer_type: The offer_type of this CreateOfferDetails. + :type: str + """ + self._offer_type = offer_type + + @property + def offer_quote_ids(self): + """ + Gets the offer_quote_ids of this CreateOfferDetails. + A list of associated offer quotes. + + + :return: The offer_quote_ids of this CreateOfferDetails. + :rtype: list[str] + """ + return self._offer_quote_ids + + @offer_quote_ids.setter + def offer_quote_ids(self, offer_quote_ids): + """ + Sets the offer_quote_ids of this CreateOfferDetails. + A list of associated offer quotes. + + + :param offer_quote_ids: The offer_quote_ids of this CreateOfferDetails. + :type: list[str] + """ + self._offer_quote_ids = offer_quote_ids + @property def freeform_tags(self): """ diff --git a/src/oci/marketplace_private_offer/models/create_offer_quote_details.py b/src/oci/marketplace_private_offer/models/create_offer_quote_details.py new file mode 100644 index 0000000000..65b95054a9 --- /dev/null +++ b/src/oci/marketplace_private_offer/models/create_offer_quote_details.py @@ -0,0 +1,438 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220901 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateOfferQuoteDetails(object): + """ + The information about new offer quotes. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateOfferQuoteDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param display_name: + The value to assign to the display_name property of this CreateOfferQuoteDetails. + :type display_name: str + + :param reseller_compartment_id: + The value to assign to the reseller_compartment_id property of this CreateOfferQuoteDetails. + :type reseller_compartment_id: str + + :param isv_compartment_id: + The value to assign to the isv_compartment_id property of this CreateOfferQuoteDetails. + :type isv_compartment_id: str + + :param isv_publisher_id: + The value to assign to the isv_publisher_id property of this CreateOfferQuoteDetails. + :type isv_publisher_id: str + + :param description: + The value to assign to the description property of this CreateOfferQuoteDetails. + :type description: str + + :param resource_bundles: + The value to assign to the resource_bundles property of this CreateOfferQuoteDetails. + :type resource_bundles: list[oci.marketplace_private_offer.models.ResourceBundle] + + :param buyer_compartment_ids: + The value to assign to the buyer_compartment_ids property of this CreateOfferQuoteDetails. + :type buyer_compartment_ids: list[str] + + :param reseller_information: + The value to assign to the reseller_information property of this CreateOfferQuoteDetails. + :type reseller_information: oci.marketplace_private_offer.models.ResellerInformation + + :param isv_information: + The value to assign to the isv_information property of this CreateOfferQuoteDetails. + :type isv_information: oci.marketplace_private_offer.models.IsvInformation + + :param buyer_acceptance_deadline: + The value to assign to the buyer_acceptance_deadline property of this CreateOfferQuoteDetails. + :type buyer_acceptance_deadline: datetime + + :param buyer_offer_duration: + The value to assign to the buyer_offer_duration property of this CreateOfferQuoteDetails. + :type buyer_offer_duration: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this CreateOfferQuoteDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this CreateOfferQuoteDetails. + :type defined_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'display_name': 'str', + 'reseller_compartment_id': 'str', + 'isv_compartment_id': 'str', + 'isv_publisher_id': 'str', + 'description': 'str', + 'resource_bundles': 'list[ResourceBundle]', + 'buyer_compartment_ids': 'list[str]', + 'reseller_information': 'ResellerInformation', + 'isv_information': 'IsvInformation', + 'buyer_acceptance_deadline': 'datetime', + 'buyer_offer_duration': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'display_name': 'displayName', + 'reseller_compartment_id': 'resellerCompartmentId', + 'isv_compartment_id': 'isvCompartmentId', + 'isv_publisher_id': 'isvPublisherId', + 'description': 'description', + 'resource_bundles': 'resourceBundles', + 'buyer_compartment_ids': 'buyerCompartmentIds', + 'reseller_information': 'resellerInformation', + 'isv_information': 'isvInformation', + 'buyer_acceptance_deadline': 'buyerAcceptanceDeadline', + 'buyer_offer_duration': 'buyerOfferDuration', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' + } + self._display_name = None + self._reseller_compartment_id = None + self._isv_compartment_id = None + self._isv_publisher_id = None + self._description = None + self._resource_bundles = None + self._buyer_compartment_ids = None + self._reseller_information = None + self._isv_information = None + self._buyer_acceptance_deadline = None + self._buyer_offer_duration = None + self._freeform_tags = None + self._defined_tags = None + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this CreateOfferQuoteDetails. + Offer quotes identifier. + + + :return: The display_name of this CreateOfferQuoteDetails. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this CreateOfferQuoteDetails. + Offer quotes identifier. + + + :param display_name: The display_name of this CreateOfferQuoteDetails. + :type: str + """ + self._display_name = display_name + + @property + def reseller_compartment_id(self): + """ + **[Required]** Gets the reseller_compartment_id of this CreateOfferQuoteDetails. + Compartment identifier of the reseller. + + + :return: The reseller_compartment_id of this CreateOfferQuoteDetails. + :rtype: str + """ + return self._reseller_compartment_id + + @reseller_compartment_id.setter + def reseller_compartment_id(self, reseller_compartment_id): + """ + Sets the reseller_compartment_id of this CreateOfferQuoteDetails. + Compartment identifier of the reseller. + + + :param reseller_compartment_id: The reseller_compartment_id of this CreateOfferQuoteDetails. + :type: str + """ + self._reseller_compartment_id = reseller_compartment_id + + @property + def isv_compartment_id(self): + """ + Gets the isv_compartment_id of this CreateOfferQuoteDetails. + Compartment identifier of the ISV. + + + :return: The isv_compartment_id of this CreateOfferQuoteDetails. + :rtype: str + """ + return self._isv_compartment_id + + @isv_compartment_id.setter + def isv_compartment_id(self, isv_compartment_id): + """ + Sets the isv_compartment_id of this CreateOfferQuoteDetails. + Compartment identifier of the ISV. + + + :param isv_compartment_id: The isv_compartment_id of this CreateOfferQuoteDetails. + :type: str + """ + self._isv_compartment_id = isv_compartment_id + + @property + def isv_publisher_id(self): + """ + Gets the isv_publisher_id of this CreateOfferQuoteDetails. + Publisher identifier of the ISV. + + + :return: The isv_publisher_id of this CreateOfferQuoteDetails. + :rtype: str + """ + return self._isv_publisher_id + + @isv_publisher_id.setter + def isv_publisher_id(self, isv_publisher_id): + """ + Sets the isv_publisher_id of this CreateOfferQuoteDetails. + Publisher identifier of the ISV. + + + :param isv_publisher_id: The isv_publisher_id of this CreateOfferQuoteDetails. + :type: str + """ + self._isv_publisher_id = isv_publisher_id + + @property + def description(self): + """ + Gets the description of this CreateOfferQuoteDetails. + Description of the offer quote. + + + :return: The description of this CreateOfferQuoteDetails. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this CreateOfferQuoteDetails. + Description of the offer quote. + + + :param description: The description of this CreateOfferQuoteDetails. + :type: str + """ + self._description = description + + @property + def resource_bundles(self): + """ + Gets the resource_bundles of this CreateOfferQuoteDetails. + A list of resource bundles associated with an offer quote. + + + :return: The resource_bundles of this CreateOfferQuoteDetails. + :rtype: list[oci.marketplace_private_offer.models.ResourceBundle] + """ + return self._resource_bundles + + @resource_bundles.setter + def resource_bundles(self, resource_bundles): + """ + Sets the resource_bundles of this CreateOfferQuoteDetails. + A list of resource bundles associated with an offer quote. + + + :param resource_bundles: The resource_bundles of this CreateOfferQuoteDetails. + :type: list[oci.marketplace_private_offer.models.ResourceBundle] + """ + self._resource_bundles = resource_bundles + + @property + def buyer_compartment_ids(self): + """ + Gets the buyer_compartment_ids of this CreateOfferQuoteDetails. + A list of buyer tenancies. + + + :return: The buyer_compartment_ids of this CreateOfferQuoteDetails. + :rtype: list[str] + """ + return self._buyer_compartment_ids + + @buyer_compartment_ids.setter + def buyer_compartment_ids(self, buyer_compartment_ids): + """ + Sets the buyer_compartment_ids of this CreateOfferQuoteDetails. + A list of buyer tenancies. + + + :param buyer_compartment_ids: The buyer_compartment_ids of this CreateOfferQuoteDetails. + :type: list[str] + """ + self._buyer_compartment_ids = buyer_compartment_ids + + @property + def reseller_information(self): + """ + Gets the reseller_information of this CreateOfferQuoteDetails. + + :return: The reseller_information of this CreateOfferQuoteDetails. + :rtype: oci.marketplace_private_offer.models.ResellerInformation + """ + return self._reseller_information + + @reseller_information.setter + def reseller_information(self, reseller_information): + """ + Sets the reseller_information of this CreateOfferQuoteDetails. + + :param reseller_information: The reseller_information of this CreateOfferQuoteDetails. + :type: oci.marketplace_private_offer.models.ResellerInformation + """ + self._reseller_information = reseller_information + + @property + def isv_information(self): + """ + Gets the isv_information of this CreateOfferQuoteDetails. + + :return: The isv_information of this CreateOfferQuoteDetails. + :rtype: oci.marketplace_private_offer.models.IsvInformation + """ + return self._isv_information + + @isv_information.setter + def isv_information(self, isv_information): + """ + Sets the isv_information of this CreateOfferQuoteDetails. + + :param isv_information: The isv_information of this CreateOfferQuoteDetails. + :type: oci.marketplace_private_offer.models.IsvInformation + """ + self._isv_information = isv_information + + @property + def buyer_acceptance_deadline(self): + """ + Gets the buyer_acceptance_deadline of this CreateOfferQuoteDetails. + The time the offer for the buyer must be accepted by before the offer becomes invalid. An RFC3339 formatted datetime string. + + + :return: The buyer_acceptance_deadline of this CreateOfferQuoteDetails. + :rtype: datetime + """ + return self._buyer_acceptance_deadline + + @buyer_acceptance_deadline.setter + def buyer_acceptance_deadline(self, buyer_acceptance_deadline): + """ + Sets the buyer_acceptance_deadline of this CreateOfferQuoteDetails. + The time the offer for the buyer must be accepted by before the offer becomes invalid. An RFC3339 formatted datetime string. + + + :param buyer_acceptance_deadline: The buyer_acceptance_deadline of this CreateOfferQuoteDetails. + :type: datetime + """ + self._buyer_acceptance_deadline = buyer_acceptance_deadline + + @property + def buyer_offer_duration(self): + """ + Gets the buyer_offer_duration of this CreateOfferQuoteDetails. + Duration the offer for the buyer will be active after its start date. An ISO8601 extended formatted string. + + + :return: The buyer_offer_duration of this CreateOfferQuoteDetails. + :rtype: str + """ + return self._buyer_offer_duration + + @buyer_offer_duration.setter + def buyer_offer_duration(self, buyer_offer_duration): + """ + Sets the buyer_offer_duration of this CreateOfferQuoteDetails. + Duration the offer for the buyer will be active after its start date. An ISO8601 extended formatted string. + + + :param buyer_offer_duration: The buyer_offer_duration of this CreateOfferQuoteDetails. + :type: str + """ + self._buyer_offer_duration = buyer_offer_duration + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this CreateOfferQuoteDetails. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this CreateOfferQuoteDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this CreateOfferQuoteDetails. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this CreateOfferQuoteDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this CreateOfferQuoteDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this CreateOfferQuoteDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this CreateOfferQuoteDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this CreateOfferQuoteDetails. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/marketplace_private_offer/models/create_quote_attachment_details.py b/src/oci/marketplace_private_offer/models/create_quote_attachment_details.py new file mode 100644 index 0000000000..4a58e4cd18 --- /dev/null +++ b/src/oci/marketplace_private_offer/models/create_quote_attachment_details.py @@ -0,0 +1,163 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220901 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateQuoteAttachmentDetails(object): + """ + The details for creating a new offer quote attachment. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateQuoteAttachmentDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param file_base64_encoded: + The value to assign to the file_base64_encoded property of this CreateQuoteAttachmentDetails. + :type file_base64_encoded: str + + :param display_name: + The value to assign to the display_name property of this CreateQuoteAttachmentDetails. + :type display_name: str + + :param type: + The value to assign to the type property of this CreateQuoteAttachmentDetails. + :type type: str + + :param recipient: + The value to assign to the recipient property of this CreateQuoteAttachmentDetails. + :type recipient: str + + """ + self.swagger_types = { + 'file_base64_encoded': 'str', + 'display_name': 'str', + 'type': 'str', + 'recipient': 'str' + } + self.attribute_map = { + 'file_base64_encoded': 'fileBase64Encoded', + 'display_name': 'displayName', + 'type': 'type', + 'recipient': 'recipient' + } + self._file_base64_encoded = None + self._display_name = None + self._type = None + self._recipient = None + + @property + def file_base64_encoded(self): + """ + **[Required]** Gets the file_base64_encoded of this CreateQuoteAttachmentDetails. + Base64-encoded file to attach to the offer quote. + + + :return: The file_base64_encoded of this CreateQuoteAttachmentDetails. + :rtype: str + """ + return self._file_base64_encoded + + @file_base64_encoded.setter + def file_base64_encoded(self, file_base64_encoded): + """ + Sets the file_base64_encoded of this CreateQuoteAttachmentDetails. + Base64-encoded file to attach to the offer quote. + + + :param file_base64_encoded: The file_base64_encoded of this CreateQuoteAttachmentDetails. + :type: str + """ + self._file_base64_encoded = file_base64_encoded + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this CreateQuoteAttachmentDetails. + The name used to refer to the uploaded data. + + + :return: The display_name of this CreateQuoteAttachmentDetails. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this CreateQuoteAttachmentDetails. + The name used to refer to the uploaded data. + + + :param display_name: The display_name of this CreateQuoteAttachmentDetails. + :type: str + """ + self._display_name = display_name + + @property + def type(self): + """ + **[Required]** Gets the type of this CreateQuoteAttachmentDetails. + The type of offer quote attachment. + + + :return: The type of this CreateQuoteAttachmentDetails. + :rtype: str + """ + return self._type + + @type.setter + def type(self, type): + """ + Sets the type of this CreateQuoteAttachmentDetails. + The type of offer quote attachment. + + + :param type: The type of this CreateQuoteAttachmentDetails. + :type: str + """ + self._type = type + + @property + def recipient(self): + """ + **[Required]** Gets the recipient of this CreateQuoteAttachmentDetails. + The recipient of the offer quote attachment. + + + :return: The recipient of this CreateQuoteAttachmentDetails. + :rtype: str + """ + return self._recipient + + @recipient.setter + def recipient(self, recipient): + """ + Sets the recipient of this CreateQuoteAttachmentDetails. + The recipient of the offer quote attachment. + + + :param recipient: The recipient of this CreateQuoteAttachmentDetails. + :type: str + """ + self._recipient = recipient + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/marketplace_private_offer/models/custom_field.py b/src/oci/marketplace_private_offer/models/custom_field.py index ac5c66f0ce..5e5de6a87c 100644 --- a/src/oci/marketplace_private_offer/models/custom_field.py +++ b/src/oci/marketplace_private_offer/models/custom_field.py @@ -12,7 +12,7 @@ @init_model_state_from_kwargs class CustomField(object): """ - A key value pair specified by the seller of the offer + A key value pair specified by the seller of the offer. """ def __init__(self, **kwargs): @@ -44,7 +44,7 @@ def __init__(self, **kwargs): def key(self): """ Gets the key of this CustomField. - the key of the custom field + The key of the custom field. :return: The key of this CustomField. @@ -56,7 +56,7 @@ def key(self): def key(self, key): """ Sets the key of this CustomField. - the key of the custom field + The key of the custom field. :param key: The key of this CustomField. @@ -68,7 +68,7 @@ def key(self, key): def value(self): """ Gets the value of this CustomField. - the value of the custom field + The value of the custom field. :return: The value of this CustomField. @@ -80,7 +80,7 @@ def value(self): def value(self, value): """ Sets the value of this CustomField. - the value of the custom field + The value of the custom field. :param value: The value of this CustomField. diff --git a/src/oci/marketplace_private_offer/models/isv_information.py b/src/oci/marketplace_private_offer/models/isv_information.py new file mode 100644 index 0000000000..14f24f0a58 --- /dev/null +++ b/src/oci/marketplace_private_offer/models/isv_information.py @@ -0,0 +1,97 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220901 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class IsvInformation(object): + """ + The information related to the ISV of an offer quote. + """ + + def __init__(self, **kwargs): + """ + Initializes a new IsvInformation object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param primary_contact: + The value to assign to the primary_contact property of this IsvInformation. + :type primary_contact: oci.marketplace_private_offer.models.Contact + + :param additional_contacts: + The value to assign to the additional_contacts property of this IsvInformation. + :type additional_contacts: list[oci.marketplace_private_offer.models.Contact] + + """ + self.swagger_types = { + 'primary_contact': 'Contact', + 'additional_contacts': 'list[Contact]' + } + self.attribute_map = { + 'primary_contact': 'primaryContact', + 'additional_contacts': 'additionalContacts' + } + self._primary_contact = None + self._additional_contacts = None + + @property + def primary_contact(self): + """ + Gets the primary_contact of this IsvInformation. + + :return: The primary_contact of this IsvInformation. + :rtype: oci.marketplace_private_offer.models.Contact + """ + return self._primary_contact + + @primary_contact.setter + def primary_contact(self, primary_contact): + """ + Sets the primary_contact of this IsvInformation. + + :param primary_contact: The primary_contact of this IsvInformation. + :type: oci.marketplace_private_offer.models.Contact + """ + self._primary_contact = primary_contact + + @property + def additional_contacts(self): + """ + Gets the additional_contacts of this IsvInformation. + The additional contacts associated with the ISV. + + + :return: The additional_contacts of this IsvInformation. + :rtype: list[oci.marketplace_private_offer.models.Contact] + """ + return self._additional_contacts + + @additional_contacts.setter + def additional_contacts(self, additional_contacts): + """ + Sets the additional_contacts of this IsvInformation. + The additional contacts associated with the ISV. + + + :param additional_contacts: The additional_contacts of this IsvInformation. + :type: list[oci.marketplace_private_offer.models.Contact] + """ + self._additional_contacts = additional_contacts + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/marketplace_private_offer/models/offer.py b/src/oci/marketplace_private_offer/models/offer.py index 02cf269bc2..f3b0636178 100644 --- a/src/oci/marketplace_private_offer/models/offer.py +++ b/src/oci/marketplace_private_offer/models/offer.py @@ -75,6 +75,14 @@ class Offer(object): #: This constant has a value of "FAILED_ACCEPT" OFFER_STATUS_FAILED_ACCEPT = "FAILED_ACCEPT" + #: A constant which can be used with the offer_type property of a Offer. + #: This constant has a value of "DIRECT" + OFFER_TYPE_DIRECT = "DIRECT" + + #: A constant which can be used with the offer_type property of a Offer. + #: This constant has a value of "MULTI_PARTY" + OFFER_TYPE_MULTI_PARTY = "MULTI_PARTY" + def __init__(self, **kwargs): """ Initializes a new Offer object with values from keyword arguments. @@ -164,6 +172,12 @@ def __init__(self, **kwargs): The value to assign to the resource_bundles property of this Offer. :type resource_bundles: list[oci.marketplace_private_offer.models.ResourceBundle] + :param offer_type: + The value to assign to the offer_type property of this Offer. + Allowed values for this property are: "DIRECT", "MULTI_PARTY", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type offer_type: str + :param freeform_tags: The value to assign to the freeform_tags property of this Offer. :type freeform_tags: dict(str, str) @@ -172,6 +186,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this Offer. :type defined_tags: dict(str, dict(str, object)) + :param system_tags: + The value to assign to the system_tags property of this Offer. + :type system_tags: dict(str, dict(str, object)) + """ self.swagger_types = { 'id': 'str', @@ -194,8 +212,10 @@ def __init__(self, **kwargs): 'buyer_information': 'BuyerInformation', 'seller_information': 'SellerInformation', 'resource_bundles': 'list[ResourceBundle]', + 'offer_type': 'str', 'freeform_tags': 'dict(str, str)', - 'defined_tags': 'dict(str, dict(str, object))' + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))' } self.attribute_map = { 'id': 'id', @@ -218,8 +238,10 @@ def __init__(self, **kwargs): 'buyer_information': 'buyerInformation', 'seller_information': 'sellerInformation', 'resource_bundles': 'resourceBundles', + 'offer_type': 'offerType', 'freeform_tags': 'freeformTags', - 'defined_tags': 'definedTags' + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags' } self._id = None self._display_name = None @@ -241,8 +263,10 @@ def __init__(self, **kwargs): self._buyer_information = None self._seller_information = None self._resource_bundles = None + self._offer_type = None self._freeform_tags = None self._defined_tags = None + self._system_tags = None @property def id(self): @@ -720,6 +744,36 @@ def resource_bundles(self, resource_bundles): """ self._resource_bundles = resource_bundles + @property + def offer_type(self): + """ + Gets the offer_type of this Offer. + The type of the offer. + + Allowed values for this property are: "DIRECT", "MULTI_PARTY", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The offer_type of this Offer. + :rtype: str + """ + return self._offer_type + + @offer_type.setter + def offer_type(self, offer_type): + """ + Sets the offer_type of this Offer. + The type of the offer. + + + :param offer_type: The offer_type of this Offer. + :type: str + """ + allowed_values = ["DIRECT", "MULTI_PARTY"] + if not value_allowed_none_or_none_sentinel(offer_type, allowed_values): + offer_type = 'UNKNOWN_ENUM_VALUE' + self._offer_type = offer_type + @property def freeform_tags(self): """ @@ -772,6 +826,32 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def system_tags(self): + """ + Gets the system_tags of this Offer. + System tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :return: The system_tags of this Offer. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this Offer. + System tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :param system_tags: The system_tags of this Offer. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/marketplace_private_offer/models/offer_internal_detail.py b/src/oci/marketplace_private_offer/models/offer_internal_detail.py index 6d0e18df03..a3e3acb157 100644 --- a/src/oci/marketplace_private_offer/models/offer_internal_detail.py +++ b/src/oci/marketplace_private_offer/models/offer_internal_detail.py @@ -28,17 +28,24 @@ def __init__(self, **kwargs): The value to assign to the internal_notes property of this OfferInternalDetail. :type internal_notes: str + :param offer_quote_ids: + The value to assign to the offer_quote_ids property of this OfferInternalDetail. + :type offer_quote_ids: list[str] + """ self.swagger_types = { 'custom_fields': 'list[CustomField]', - 'internal_notes': 'str' + 'internal_notes': 'str', + 'offer_quote_ids': 'list[str]' } self.attribute_map = { 'custom_fields': 'customFields', - 'internal_notes': 'internalNotes' + 'internal_notes': 'internalNotes', + 'offer_quote_ids': 'offerQuoteIds' } self._custom_fields = None self._internal_notes = None + self._offer_quote_ids = None @property def custom_fields(self): @@ -88,6 +95,30 @@ def internal_notes(self, internal_notes): """ self._internal_notes = internal_notes + @property + def offer_quote_ids(self): + """ + Gets the offer_quote_ids of this OfferInternalDetail. + A list of associated offer quotes. + + + :return: The offer_quote_ids of this OfferInternalDetail. + :rtype: list[str] + """ + return self._offer_quote_ids + + @offer_quote_ids.setter + def offer_quote_ids(self, offer_quote_ids): + """ + Sets the offer_quote_ids of this OfferInternalDetail. + A list of associated offer quotes. + + + :param offer_quote_ids: The offer_quote_ids of this OfferInternalDetail. + :type: list[str] + """ + self._offer_quote_ids = offer_quote_ids + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/marketplace_private_offer/models/offer_quote.py b/src/oci/marketplace_private_offer/models/offer_quote.py new file mode 100644 index 0000000000..b91d51c0fb --- /dev/null +++ b/src/oci/marketplace_private_offer/models/offer_quote.py @@ -0,0 +1,834 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220901 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class OfferQuote(object): + """ + The model for the offer quote details. + """ + + #: A constant which can be used with the lifecycle_state property of a OfferQuote. + #: This constant has a value of "CREATING" + LIFECYCLE_STATE_CREATING = "CREATING" + + #: A constant which can be used with the lifecycle_state property of a OfferQuote. + #: This constant has a value of "UPDATING" + LIFECYCLE_STATE_UPDATING = "UPDATING" + + #: A constant which can be used with the lifecycle_state property of a OfferQuote. + #: This constant has a value of "ACTIVE" + LIFECYCLE_STATE_ACTIVE = "ACTIVE" + + #: A constant which can be used with the lifecycle_state property of a OfferQuote. + #: This constant has a value of "DELETING" + LIFECYCLE_STATE_DELETING = "DELETING" + + #: A constant which can be used with the lifecycle_state property of a OfferQuote. + #: This constant has a value of "DELETED" + LIFECYCLE_STATE_DELETED = "DELETED" + + #: A constant which can be used with the lifecycle_state property of a OfferQuote. + #: This constant has a value of "FAILED" + LIFECYCLE_STATE_FAILED = "FAILED" + + #: A constant which can be used with the offer_quote_status property of a OfferQuote. + #: This constant has a value of "DRAFT" + OFFER_QUOTE_STATUS_DRAFT = "DRAFT" + + #: A constant which can be used with the offer_quote_status property of a OfferQuote. + #: This constant has a value of "PENDING_ISV" + OFFER_QUOTE_STATUS_PENDING_ISV = "PENDING_ISV" + + #: A constant which can be used with the offer_quote_status property of a OfferQuote. + #: This constant has a value of "PENDING_ISV_UPDATE" + OFFER_QUOTE_STATUS_PENDING_ISV_UPDATE = "PENDING_ISV_UPDATE" + + #: A constant which can be used with the offer_quote_status property of a OfferQuote. + #: This constant has a value of "PENDING_RESELLER" + OFFER_QUOTE_STATUS_PENDING_RESELLER = "PENDING_RESELLER" + + #: A constant which can be used with the offer_quote_status property of a OfferQuote. + #: This constant has a value of "RESELLER_ACCEPTED" + OFFER_QUOTE_STATUS_RESELLER_ACCEPTED = "RESELLER_ACCEPTED" + + #: A constant which can be used with the offer_quote_status property of a OfferQuote. + #: This constant has a value of "BUYER_ACCEPTED" + OFFER_QUOTE_STATUS_BUYER_ACCEPTED = "BUYER_ACCEPTED" + + #: A constant which can be used with the offer_quote_status property of a OfferQuote. + #: This constant has a value of "ACTIVE" + OFFER_QUOTE_STATUS_ACTIVE = "ACTIVE" + + #: A constant which can be used with the offer_quote_status property of a OfferQuote. + #: This constant has a value of "ENDED" + OFFER_QUOTE_STATUS_ENDED = "ENDED" + + #: A constant which can be used with the offer_quote_status property of a OfferQuote. + #: This constant has a value of "EXPIRED" + OFFER_QUOTE_STATUS_EXPIRED = "EXPIRED" + + #: A constant which can be used with the offer_quote_status property of a OfferQuote. + #: This constant has a value of "FAILED_SEND" + OFFER_QUOTE_STATUS_FAILED_SEND = "FAILED_SEND" + + #: A constant which can be used with the offer_quote_status property of a OfferQuote. + #: This constant has a value of "FAILED_ACCEPT" + OFFER_QUOTE_STATUS_FAILED_ACCEPT = "FAILED_ACCEPT" + + #: A constant which can be used with the offer_quote_status property of a OfferQuote. + #: This constant has a value of "FAILED_RESPOND" + OFFER_QUOTE_STATUS_FAILED_RESPOND = "FAILED_RESPOND" + + def __init__(self, **kwargs): + """ + Initializes a new OfferQuote object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this OfferQuote. + :type id: str + + :param display_name: + The value to assign to the display_name property of this OfferQuote. + :type display_name: str + + :param reseller_compartment_id: + The value to assign to the reseller_compartment_id property of this OfferQuote. + :type reseller_compartment_id: str + + :param isv_compartment_id: + The value to assign to the isv_compartment_id property of this OfferQuote. + :type isv_compartment_id: str + + :param isv_publisher_id: + The value to assign to the isv_publisher_id property of this OfferQuote. + :type isv_publisher_id: str + + :param reseller_publisher_display_name: + The value to assign to the reseller_publisher_display_name property of this OfferQuote. + :type reseller_publisher_display_name: str + + :param isv_publisher_display_name: + The value to assign to the isv_publisher_display_name property of this OfferQuote. + :type isv_publisher_display_name: str + + :param buyer_compartment_ids: + The value to assign to the buyer_compartment_ids property of this OfferQuote. + :type buyer_compartment_ids: list[str] + + :param description: + The value to assign to the description property of this OfferQuote. + :type description: str + + :param time_created: + The value to assign to the time_created property of this OfferQuote. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this OfferQuote. + :type time_updated: datetime + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this OfferQuote. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + :param lifecycle_details: + The value to assign to the lifecycle_details property of this OfferQuote. + :type lifecycle_details: str + + :param offer_quote_status: + The value to assign to the offer_quote_status property of this OfferQuote. + Allowed values for this property are: "DRAFT", "PENDING_ISV", "PENDING_ISV_UPDATE", "PENDING_RESELLER", "RESELLER_ACCEPTED", "BUYER_ACCEPTED", "ACTIVE", "ENDED", "EXPIRED", "FAILED_SEND", "FAILED_ACCEPT", "FAILED_RESPOND", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type offer_quote_status: str + + :param reseller_information: + The value to assign to the reseller_information property of this OfferQuote. + :type reseller_information: oci.marketplace_private_offer.models.ResellerInformation + + :param isv_information: + The value to assign to the isv_information property of this OfferQuote. + :type isv_information: oci.marketplace_private_offer.models.IsvInformation + + :param pricing: + The value to assign to the pricing property of this OfferQuote. + :type pricing: oci.marketplace_private_offer.models.Pricing + + :param resource_bundles: + The value to assign to the resource_bundles property of this OfferQuote. + :type resource_bundles: list[oci.marketplace_private_offer.models.ResourceBundle] + + :param buyer_acceptance_deadline: + The value to assign to the buyer_acceptance_deadline property of this OfferQuote. + :type buyer_acceptance_deadline: datetime + + :param buyer_offer_duration: + The value to assign to the buyer_offer_duration property of this OfferQuote. + :type buyer_offer_duration: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this OfferQuote. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this OfferQuote. + :type defined_tags: dict(str, dict(str, object)) + + :param system_tags: + The value to assign to the system_tags property of this OfferQuote. + :type system_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'id': 'str', + 'display_name': 'str', + 'reseller_compartment_id': 'str', + 'isv_compartment_id': 'str', + 'isv_publisher_id': 'str', + 'reseller_publisher_display_name': 'str', + 'isv_publisher_display_name': 'str', + 'buyer_compartment_ids': 'list[str]', + 'description': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'lifecycle_state': 'str', + 'lifecycle_details': 'str', + 'offer_quote_status': 'str', + 'reseller_information': 'ResellerInformation', + 'isv_information': 'IsvInformation', + 'pricing': 'Pricing', + 'resource_bundles': 'list[ResourceBundle]', + 'buyer_acceptance_deadline': 'datetime', + 'buyer_offer_duration': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'id': 'id', + 'display_name': 'displayName', + 'reseller_compartment_id': 'resellerCompartmentId', + 'isv_compartment_id': 'isvCompartmentId', + 'isv_publisher_id': 'isvPublisherId', + 'reseller_publisher_display_name': 'resellerPublisherDisplayName', + 'isv_publisher_display_name': 'isvPublisherDisplayName', + 'buyer_compartment_ids': 'buyerCompartmentIds', + 'description': 'description', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'lifecycle_state': 'lifecycleState', + 'lifecycle_details': 'lifecycleDetails', + 'offer_quote_status': 'offerQuoteStatus', + 'reseller_information': 'resellerInformation', + 'isv_information': 'isvInformation', + 'pricing': 'pricing', + 'resource_bundles': 'resourceBundles', + 'buyer_acceptance_deadline': 'buyerAcceptanceDeadline', + 'buyer_offer_duration': 'buyerOfferDuration', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags' + } + self._id = None + self._display_name = None + self._reseller_compartment_id = None + self._isv_compartment_id = None + self._isv_publisher_id = None + self._reseller_publisher_display_name = None + self._isv_publisher_display_name = None + self._buyer_compartment_ids = None + self._description = None + self._time_created = None + self._time_updated = None + self._lifecycle_state = None + self._lifecycle_details = None + self._offer_quote_status = None + self._reseller_information = None + self._isv_information = None + self._pricing = None + self._resource_bundles = None + self._buyer_acceptance_deadline = None + self._buyer_offer_duration = None + self._freeform_tags = None + self._defined_tags = None + self._system_tags = None + + @property + def id(self): + """ + **[Required]** Gets the id of this OfferQuote. + Unique identifier that is immutable on creation. + + + :return: The id of this OfferQuote. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this OfferQuote. + Unique identifier that is immutable on creation. + + + :param id: The id of this OfferQuote. + :type: str + """ + self._id = id + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this OfferQuote. + Offer quote identifier, can be renamed. + + + :return: The display_name of this OfferQuote. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this OfferQuote. + Offer quote identifier, can be renamed. + + + :param display_name: The display_name of this OfferQuote. + :type: str + """ + self._display_name = display_name + + @property + def reseller_compartment_id(self): + """ + **[Required]** Gets the reseller_compartment_id of this OfferQuote. + OCID of the reseller tenancy. + + + :return: The reseller_compartment_id of this OfferQuote. + :rtype: str + """ + return self._reseller_compartment_id + + @reseller_compartment_id.setter + def reseller_compartment_id(self, reseller_compartment_id): + """ + Sets the reseller_compartment_id of this OfferQuote. + OCID of the reseller tenancy. + + + :param reseller_compartment_id: The reseller_compartment_id of this OfferQuote. + :type: str + """ + self._reseller_compartment_id = reseller_compartment_id + + @property + def isv_compartment_id(self): + """ + Gets the isv_compartment_id of this OfferQuote. + OCID of the ISV tenancy. + + + :return: The isv_compartment_id of this OfferQuote. + :rtype: str + """ + return self._isv_compartment_id + + @isv_compartment_id.setter + def isv_compartment_id(self, isv_compartment_id): + """ + Sets the isv_compartment_id of this OfferQuote. + OCID of the ISV tenancy. + + + :param isv_compartment_id: The isv_compartment_id of this OfferQuote. + :type: str + """ + self._isv_compartment_id = isv_compartment_id + + @property + def isv_publisher_id(self): + """ + Gets the isv_publisher_id of this OfferQuote. + Publisher identifier of the ISV. + + + :return: The isv_publisher_id of this OfferQuote. + :rtype: str + """ + return self._isv_publisher_id + + @isv_publisher_id.setter + def isv_publisher_id(self, isv_publisher_id): + """ + Sets the isv_publisher_id of this OfferQuote. + Publisher identifier of the ISV. + + + :param isv_publisher_id: The isv_publisher_id of this OfferQuote. + :type: str + """ + self._isv_publisher_id = isv_publisher_id + + @property + def reseller_publisher_display_name(self): + """ + Gets the reseller_publisher_display_name of this OfferQuote. + Display name of the reseller publisher. + + + :return: The reseller_publisher_display_name of this OfferQuote. + :rtype: str + """ + return self._reseller_publisher_display_name + + @reseller_publisher_display_name.setter + def reseller_publisher_display_name(self, reseller_publisher_display_name): + """ + Sets the reseller_publisher_display_name of this OfferQuote. + Display name of the reseller publisher. + + + :param reseller_publisher_display_name: The reseller_publisher_display_name of this OfferQuote. + :type: str + """ + self._reseller_publisher_display_name = reseller_publisher_display_name + + @property + def isv_publisher_display_name(self): + """ + Gets the isv_publisher_display_name of this OfferQuote. + Display name of the ISV publisher. + + + :return: The isv_publisher_display_name of this OfferQuote. + :rtype: str + """ + return self._isv_publisher_display_name + + @isv_publisher_display_name.setter + def isv_publisher_display_name(self, isv_publisher_display_name): + """ + Sets the isv_publisher_display_name of this OfferQuote. + Display name of the ISV publisher. + + + :param isv_publisher_display_name: The isv_publisher_display_name of this OfferQuote. + :type: str + """ + self._isv_publisher_display_name = isv_publisher_display_name + + @property + def buyer_compartment_ids(self): + """ + Gets the buyer_compartment_ids of this OfferQuote. + A list of buyer tenancies. + + + :return: The buyer_compartment_ids of this OfferQuote. + :rtype: list[str] + """ + return self._buyer_compartment_ids + + @buyer_compartment_ids.setter + def buyer_compartment_ids(self, buyer_compartment_ids): + """ + Sets the buyer_compartment_ids of this OfferQuote. + A list of buyer tenancies. + + + :param buyer_compartment_ids: The buyer_compartment_ids of this OfferQuote. + :type: list[str] + """ + self._buyer_compartment_ids = buyer_compartment_ids + + @property + def description(self): + """ + Gets the description of this OfferQuote. + The description of the offer quote. + + + :return: The description of this OfferQuote. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this OfferQuote. + The description of the offer quote. + + + :param description: The description of this OfferQuote. + :type: str + """ + self._description = description + + @property + def time_created(self): + """ + **[Required]** Gets the time_created of this OfferQuote. + The time the offer quote was created. An RFC3339 formatted datetime string. + + + :return: The time_created of this OfferQuote. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this OfferQuote. + The time the offer quote was created. An RFC3339 formatted datetime string. + + + :param time_created: The time_created of this OfferQuote. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + Gets the time_updated of this OfferQuote. + The time the offer quote was updated. An RFC3339 formatted datetime string. + + + :return: The time_updated of this OfferQuote. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this OfferQuote. + The time the offer quote was updated. An RFC3339 formatted datetime string. + + + :param time_updated: The time_updated of this OfferQuote. + :type: datetime + """ + self._time_updated = time_updated + + @property + def lifecycle_state(self): + """ + **[Required]** Gets the lifecycle_state of this OfferQuote. + The current state of the offer quote. + + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this OfferQuote. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this OfferQuote. + The current state of the offer quote. + + + :param lifecycle_state: The lifecycle_state of this OfferQuote. + :type: str + """ + allowed_values = ["CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + + @property + def lifecycle_details(self): + """ + Gets the lifecycle_details of this OfferQuote. + Provides detailed information about the current state of the offer quote. For example, if the offer quote is in a failed state this message can include specific validation errors. + + + :return: The lifecycle_details of this OfferQuote. + :rtype: str + """ + return self._lifecycle_details + + @lifecycle_details.setter + def lifecycle_details(self, lifecycle_details): + """ + Sets the lifecycle_details of this OfferQuote. + Provides detailed information about the current state of the offer quote. For example, if the offer quote is in a failed state this message can include specific validation errors. + + + :param lifecycle_details: The lifecycle_details of this OfferQuote. + :type: str + """ + self._lifecycle_details = lifecycle_details + + @property + def offer_quote_status(self): + """ + Gets the offer_quote_status of this OfferQuote. + The human readable representation of where the offer quote is at in its contract lifecycle. + + Allowed values for this property are: "DRAFT", "PENDING_ISV", "PENDING_ISV_UPDATE", "PENDING_RESELLER", "RESELLER_ACCEPTED", "BUYER_ACCEPTED", "ACTIVE", "ENDED", "EXPIRED", "FAILED_SEND", "FAILED_ACCEPT", "FAILED_RESPOND", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The offer_quote_status of this OfferQuote. + :rtype: str + """ + return self._offer_quote_status + + @offer_quote_status.setter + def offer_quote_status(self, offer_quote_status): + """ + Sets the offer_quote_status of this OfferQuote. + The human readable representation of where the offer quote is at in its contract lifecycle. + + + :param offer_quote_status: The offer_quote_status of this OfferQuote. + :type: str + """ + allowed_values = ["DRAFT", "PENDING_ISV", "PENDING_ISV_UPDATE", "PENDING_RESELLER", "RESELLER_ACCEPTED", "BUYER_ACCEPTED", "ACTIVE", "ENDED", "EXPIRED", "FAILED_SEND", "FAILED_ACCEPT", "FAILED_RESPOND"] + if not value_allowed_none_or_none_sentinel(offer_quote_status, allowed_values): + offer_quote_status = 'UNKNOWN_ENUM_VALUE' + self._offer_quote_status = offer_quote_status + + @property + def reseller_information(self): + """ + Gets the reseller_information of this OfferQuote. + + :return: The reseller_information of this OfferQuote. + :rtype: oci.marketplace_private_offer.models.ResellerInformation + """ + return self._reseller_information + + @reseller_information.setter + def reseller_information(self, reseller_information): + """ + Sets the reseller_information of this OfferQuote. + + :param reseller_information: The reseller_information of this OfferQuote. + :type: oci.marketplace_private_offer.models.ResellerInformation + """ + self._reseller_information = reseller_information + + @property + def isv_information(self): + """ + Gets the isv_information of this OfferQuote. + + :return: The isv_information of this OfferQuote. + :rtype: oci.marketplace_private_offer.models.IsvInformation + """ + return self._isv_information + + @isv_information.setter + def isv_information(self, isv_information): + """ + Sets the isv_information of this OfferQuote. + + :param isv_information: The isv_information of this OfferQuote. + :type: oci.marketplace_private_offer.models.IsvInformation + """ + self._isv_information = isv_information + + @property + def pricing(self): + """ + Gets the pricing of this OfferQuote. + + :return: The pricing of this OfferQuote. + :rtype: oci.marketplace_private_offer.models.Pricing + """ + return self._pricing + + @pricing.setter + def pricing(self, pricing): + """ + Sets the pricing of this OfferQuote. + + :param pricing: The pricing of this OfferQuote. + :type: oci.marketplace_private_offer.models.Pricing + """ + self._pricing = pricing + + @property + def resource_bundles(self): + """ + Gets the resource_bundles of this OfferQuote. + A list of resource bundles associated with an offer quote. + + + :return: The resource_bundles of this OfferQuote. + :rtype: list[oci.marketplace_private_offer.models.ResourceBundle] + """ + return self._resource_bundles + + @resource_bundles.setter + def resource_bundles(self, resource_bundles): + """ + Sets the resource_bundles of this OfferQuote. + A list of resource bundles associated with an offer quote. + + + :param resource_bundles: The resource_bundles of this OfferQuote. + :type: list[oci.marketplace_private_offer.models.ResourceBundle] + """ + self._resource_bundles = resource_bundles + + @property + def buyer_acceptance_deadline(self): + """ + Gets the buyer_acceptance_deadline of this OfferQuote. + The time the offer for the buyer must be accepted by before the offer becomes invalid. An RFC3339 formatted datetime string. + + + :return: The buyer_acceptance_deadline of this OfferQuote. + :rtype: datetime + """ + return self._buyer_acceptance_deadline + + @buyer_acceptance_deadline.setter + def buyer_acceptance_deadline(self, buyer_acceptance_deadline): + """ + Sets the buyer_acceptance_deadline of this OfferQuote. + The time the offer for the buyer must be accepted by before the offer becomes invalid. An RFC3339 formatted datetime string. + + + :param buyer_acceptance_deadline: The buyer_acceptance_deadline of this OfferQuote. + :type: datetime + """ + self._buyer_acceptance_deadline = buyer_acceptance_deadline + + @property + def buyer_offer_duration(self): + """ + Gets the buyer_offer_duration of this OfferQuote. + Duration the offer for the buyer will be active after its start date. An ISO8601 extended formatted string. + + + :return: The buyer_offer_duration of this OfferQuote. + :rtype: str + """ + return self._buyer_offer_duration + + @buyer_offer_duration.setter + def buyer_offer_duration(self, buyer_offer_duration): + """ + Sets the buyer_offer_duration of this OfferQuote. + Duration the offer for the buyer will be active after its start date. An ISO8601 extended formatted string. + + + :param buyer_offer_duration: The buyer_offer_duration of this OfferQuote. + :type: str + """ + self._buyer_offer_duration = buyer_offer_duration + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this OfferQuote. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this OfferQuote. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this OfferQuote. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this OfferQuote. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this OfferQuote. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this OfferQuote. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this OfferQuote. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this OfferQuote. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def system_tags(self): + """ + Gets the system_tags of this OfferQuote. + System tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :return: The system_tags of this OfferQuote. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this OfferQuote. + System tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :param system_tags: The system_tags of this OfferQuote. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/marketplace_private_offer/models/offer_quote_collection.py b/src/oci/marketplace_private_offer/models/offer_quote_collection.py new file mode 100644 index 0000000000..9cd51b5f33 --- /dev/null +++ b/src/oci/marketplace_private_offer/models/offer_quote_collection.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220901 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class OfferQuoteCollection(object): + """ + Results of offer quote summaries. + """ + + def __init__(self, **kwargs): + """ + Initializes a new OfferQuoteCollection object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this OfferQuoteCollection. + :type items: list[oci.marketplace_private_offer.models.OfferQuoteSummary] + + """ + self.swagger_types = { + 'items': 'list[OfferQuoteSummary]' + } + self.attribute_map = { + 'items': 'items' + } + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this OfferQuoteCollection. + List of offer quotes. + + + :return: The items of this OfferQuoteCollection. + :rtype: list[oci.marketplace_private_offer.models.OfferQuoteSummary] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this OfferQuoteCollection. + List of offer quotes. + + + :param items: The items of this OfferQuoteCollection. + :type: list[oci.marketplace_private_offer.models.OfferQuoteSummary] + """ + self._items = items + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/marketplace_private_offer/models/offer_quote_internal_detail.py b/src/oci/marketplace_private_offer/models/offer_quote_internal_detail.py new file mode 100644 index 0000000000..a059bb7afd --- /dev/null +++ b/src/oci/marketplace_private_offer/models/offer_quote_internal_detail.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220901 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class OfferQuoteInternalDetail(object): + """ + The internal details of an offer quote. + """ + + def __init__(self, **kwargs): + """ + Initializes a new OfferQuoteInternalDetail object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param offer_ids: + The value to assign to the offer_ids property of this OfferQuoteInternalDetail. + :type offer_ids: list[str] + + """ + self.swagger_types = { + 'offer_ids': 'list[str]' + } + self.attribute_map = { + 'offer_ids': 'offerIds' + } + self._offer_ids = None + + @property + def offer_ids(self): + """ + Gets the offer_ids of this OfferQuoteInternalDetail. + A list of associated offers. + + + :return: The offer_ids of this OfferQuoteInternalDetail. + :rtype: list[str] + """ + return self._offer_ids + + @offer_ids.setter + def offer_ids(self, offer_ids): + """ + Sets the offer_ids of this OfferQuoteInternalDetail. + A list of associated offers. + + + :param offer_ids: The offer_ids of this OfferQuoteInternalDetail. + :type: list[str] + """ + self._offer_ids = offer_ids + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/marketplace_private_offer/models/offer_quote_summary.py b/src/oci/marketplace_private_offer/models/offer_quote_summary.py new file mode 100644 index 0000000000..10d4bd7d83 --- /dev/null +++ b/src/oci/marketplace_private_offer/models/offer_quote_summary.py @@ -0,0 +1,653 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220901 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class OfferQuoteSummary(object): + """ + Summary of the offer quotes. + """ + + def __init__(self, **kwargs): + """ + Initializes a new OfferQuoteSummary object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this OfferQuoteSummary. + :type id: str + + :param display_name: + The value to assign to the display_name property of this OfferQuoteSummary. + :type display_name: str + + :param reseller_compartment_id: + The value to assign to the reseller_compartment_id property of this OfferQuoteSummary. + :type reseller_compartment_id: str + + :param isv_compartment_id: + The value to assign to the isv_compartment_id property of this OfferQuoteSummary. + :type isv_compartment_id: str + + :param buyer_compartment_ids: + The value to assign to the buyer_compartment_ids property of this OfferQuoteSummary. + :type buyer_compartment_ids: list[str] + + :param reseller_publisher_display_name: + The value to assign to the reseller_publisher_display_name property of this OfferQuoteSummary. + :type reseller_publisher_display_name: str + + :param isv_publisher_display_name: + The value to assign to the isv_publisher_display_name property of this OfferQuoteSummary. + :type isv_publisher_display_name: str + + :param time_created: + The value to assign to the time_created property of this OfferQuoteSummary. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this OfferQuoteSummary. + :type time_updated: datetime + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this OfferQuoteSummary. + :type lifecycle_state: str + + :param lifecycle_details: + The value to assign to the lifecycle_details property of this OfferQuoteSummary. + :type lifecycle_details: str + + :param offer_quote_status: + The value to assign to the offer_quote_status property of this OfferQuoteSummary. + :type offer_quote_status: str + + :param reseller_information: + The value to assign to the reseller_information property of this OfferQuoteSummary. + :type reseller_information: oci.marketplace_private_offer.models.ResellerInformation + + :param isv_information: + The value to assign to the isv_information property of this OfferQuoteSummary. + :type isv_information: oci.marketplace_private_offer.models.IsvInformation + + :param pricing: + The value to assign to the pricing property of this OfferQuoteSummary. + :type pricing: oci.marketplace_private_offer.models.Pricing + + :param buyer_acceptance_deadline: + The value to assign to the buyer_acceptance_deadline property of this OfferQuoteSummary. + :type buyer_acceptance_deadline: datetime + + :param buyer_offer_duration: + The value to assign to the buyer_offer_duration property of this OfferQuoteSummary. + :type buyer_offer_duration: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this OfferQuoteSummary. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this OfferQuoteSummary. + :type defined_tags: dict(str, dict(str, object)) + + :param system_tags: + The value to assign to the system_tags property of this OfferQuoteSummary. + :type system_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'id': 'str', + 'display_name': 'str', + 'reseller_compartment_id': 'str', + 'isv_compartment_id': 'str', + 'buyer_compartment_ids': 'list[str]', + 'reseller_publisher_display_name': 'str', + 'isv_publisher_display_name': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'lifecycle_state': 'str', + 'lifecycle_details': 'str', + 'offer_quote_status': 'str', + 'reseller_information': 'ResellerInformation', + 'isv_information': 'IsvInformation', + 'pricing': 'Pricing', + 'buyer_acceptance_deadline': 'datetime', + 'buyer_offer_duration': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'id': 'id', + 'display_name': 'displayName', + 'reseller_compartment_id': 'resellerCompartmentId', + 'isv_compartment_id': 'isvCompartmentId', + 'buyer_compartment_ids': 'buyerCompartmentIds', + 'reseller_publisher_display_name': 'resellerPublisherDisplayName', + 'isv_publisher_display_name': 'isvPublisherDisplayName', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'lifecycle_state': 'lifecycleState', + 'lifecycle_details': 'lifecycleDetails', + 'offer_quote_status': 'offerQuoteStatus', + 'reseller_information': 'resellerInformation', + 'isv_information': 'isvInformation', + 'pricing': 'pricing', + 'buyer_acceptance_deadline': 'buyerAcceptanceDeadline', + 'buyer_offer_duration': 'buyerOfferDuration', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags' + } + self._id = None + self._display_name = None + self._reseller_compartment_id = None + self._isv_compartment_id = None + self._buyer_compartment_ids = None + self._reseller_publisher_display_name = None + self._isv_publisher_display_name = None + self._time_created = None + self._time_updated = None + self._lifecycle_state = None + self._lifecycle_details = None + self._offer_quote_status = None + self._reseller_information = None + self._isv_information = None + self._pricing = None + self._buyer_acceptance_deadline = None + self._buyer_offer_duration = None + self._freeform_tags = None + self._defined_tags = None + self._system_tags = None + + @property + def id(self): + """ + **[Required]** Gets the id of this OfferQuoteSummary. + Unique identifier that is immutable on creation. + + + :return: The id of this OfferQuoteSummary. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this OfferQuoteSummary. + Unique identifier that is immutable on creation. + + + :param id: The id of this OfferQuoteSummary. + :type: str + """ + self._id = id + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this OfferQuoteSummary. + Offer quote identifier, can be renamed. + + + :return: The display_name of this OfferQuoteSummary. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this OfferQuoteSummary. + Offer quote identifier, can be renamed. + + + :param display_name: The display_name of this OfferQuoteSummary. + :type: str + """ + self._display_name = display_name + + @property + def reseller_compartment_id(self): + """ + **[Required]** Gets the reseller_compartment_id of this OfferQuoteSummary. + OCID of the reseller tenancy. + + + :return: The reseller_compartment_id of this OfferQuoteSummary. + :rtype: str + """ + return self._reseller_compartment_id + + @reseller_compartment_id.setter + def reseller_compartment_id(self, reseller_compartment_id): + """ + Sets the reseller_compartment_id of this OfferQuoteSummary. + OCID of the reseller tenancy. + + + :param reseller_compartment_id: The reseller_compartment_id of this OfferQuoteSummary. + :type: str + """ + self._reseller_compartment_id = reseller_compartment_id + + @property + def isv_compartment_id(self): + """ + Gets the isv_compartment_id of this OfferQuoteSummary. + OCID of the ISV tenancy. + + + :return: The isv_compartment_id of this OfferQuoteSummary. + :rtype: str + """ + return self._isv_compartment_id + + @isv_compartment_id.setter + def isv_compartment_id(self, isv_compartment_id): + """ + Sets the isv_compartment_id of this OfferQuoteSummary. + OCID of the ISV tenancy. + + + :param isv_compartment_id: The isv_compartment_id of this OfferQuoteSummary. + :type: str + """ + self._isv_compartment_id = isv_compartment_id + + @property + def buyer_compartment_ids(self): + """ + Gets the buyer_compartment_ids of this OfferQuoteSummary. + A list of buyer tenancies. + + + :return: The buyer_compartment_ids of this OfferQuoteSummary. + :rtype: list[str] + """ + return self._buyer_compartment_ids + + @buyer_compartment_ids.setter + def buyer_compartment_ids(self, buyer_compartment_ids): + """ + Sets the buyer_compartment_ids of this OfferQuoteSummary. + A list of buyer tenancies. + + + :param buyer_compartment_ids: The buyer_compartment_ids of this OfferQuoteSummary. + :type: list[str] + """ + self._buyer_compartment_ids = buyer_compartment_ids + + @property + def reseller_publisher_display_name(self): + """ + Gets the reseller_publisher_display_name of this OfferQuoteSummary. + Display name of the reseller publisher. + + + :return: The reseller_publisher_display_name of this OfferQuoteSummary. + :rtype: str + """ + return self._reseller_publisher_display_name + + @reseller_publisher_display_name.setter + def reseller_publisher_display_name(self, reseller_publisher_display_name): + """ + Sets the reseller_publisher_display_name of this OfferQuoteSummary. + Display name of the reseller publisher. + + + :param reseller_publisher_display_name: The reseller_publisher_display_name of this OfferQuoteSummary. + :type: str + """ + self._reseller_publisher_display_name = reseller_publisher_display_name + + @property + def isv_publisher_display_name(self): + """ + Gets the isv_publisher_display_name of this OfferQuoteSummary. + Display name of the ISV publisher. + + + :return: The isv_publisher_display_name of this OfferQuoteSummary. + :rtype: str + """ + return self._isv_publisher_display_name + + @isv_publisher_display_name.setter + def isv_publisher_display_name(self, isv_publisher_display_name): + """ + Sets the isv_publisher_display_name of this OfferQuoteSummary. + Display name of the ISV publisher. + + + :param isv_publisher_display_name: The isv_publisher_display_name of this OfferQuoteSummary. + :type: str + """ + self._isv_publisher_display_name = isv_publisher_display_name + + @property + def time_created(self): + """ + **[Required]** Gets the time_created of this OfferQuoteSummary. + The time the offer quote was created. An RFC3339 formatted datetime string. + + + :return: The time_created of this OfferQuoteSummary. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this OfferQuoteSummary. + The time the offer quote was created. An RFC3339 formatted datetime string. + + + :param time_created: The time_created of this OfferQuoteSummary. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + Gets the time_updated of this OfferQuoteSummary. + The time the offer quote was updated. An RFC3339 formatted datetime string. + + + :return: The time_updated of this OfferQuoteSummary. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this OfferQuoteSummary. + The time the offer quote was updated. An RFC3339 formatted datetime string. + + + :param time_updated: The time_updated of this OfferQuoteSummary. + :type: datetime + """ + self._time_updated = time_updated + + @property + def lifecycle_state(self): + """ + **[Required]** Gets the lifecycle_state of this OfferQuoteSummary. + The current state of the offer quote. + + + :return: The lifecycle_state of this OfferQuoteSummary. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this OfferQuoteSummary. + The current state of the offer quote. + + + :param lifecycle_state: The lifecycle_state of this OfferQuoteSummary. + :type: str + """ + self._lifecycle_state = lifecycle_state + + @property + def lifecycle_details(self): + """ + Gets the lifecycle_details of this OfferQuoteSummary. + Provides detailed information about the current state of the offer quote. For example, if the offer quote is in a failed state this message can include specific validation errors. + + + :return: The lifecycle_details of this OfferQuoteSummary. + :rtype: str + """ + return self._lifecycle_details + + @lifecycle_details.setter + def lifecycle_details(self, lifecycle_details): + """ + Sets the lifecycle_details of this OfferQuoteSummary. + Provides detailed information about the current state of the offer quote. For example, if the offer quote is in a failed state this message can include specific validation errors. + + + :param lifecycle_details: The lifecycle_details of this OfferQuoteSummary. + :type: str + """ + self._lifecycle_details = lifecycle_details + + @property + def offer_quote_status(self): + """ + Gets the offer_quote_status of this OfferQuoteSummary. + The human readable representation of where the offer quote is at in its contract lifecycle. + + + :return: The offer_quote_status of this OfferQuoteSummary. + :rtype: str + """ + return self._offer_quote_status + + @offer_quote_status.setter + def offer_quote_status(self, offer_quote_status): + """ + Sets the offer_quote_status of this OfferQuoteSummary. + The human readable representation of where the offer quote is at in its contract lifecycle. + + + :param offer_quote_status: The offer_quote_status of this OfferQuoteSummary. + :type: str + """ + self._offer_quote_status = offer_quote_status + + @property + def reseller_information(self): + """ + Gets the reseller_information of this OfferQuoteSummary. + + :return: The reseller_information of this OfferQuoteSummary. + :rtype: oci.marketplace_private_offer.models.ResellerInformation + """ + return self._reseller_information + + @reseller_information.setter + def reseller_information(self, reseller_information): + """ + Sets the reseller_information of this OfferQuoteSummary. + + :param reseller_information: The reseller_information of this OfferQuoteSummary. + :type: oci.marketplace_private_offer.models.ResellerInformation + """ + self._reseller_information = reseller_information + + @property + def isv_information(self): + """ + Gets the isv_information of this OfferQuoteSummary. + + :return: The isv_information of this OfferQuoteSummary. + :rtype: oci.marketplace_private_offer.models.IsvInformation + """ + return self._isv_information + + @isv_information.setter + def isv_information(self, isv_information): + """ + Sets the isv_information of this OfferQuoteSummary. + + :param isv_information: The isv_information of this OfferQuoteSummary. + :type: oci.marketplace_private_offer.models.IsvInformation + """ + self._isv_information = isv_information + + @property + def pricing(self): + """ + Gets the pricing of this OfferQuoteSummary. + + :return: The pricing of this OfferQuoteSummary. + :rtype: oci.marketplace_private_offer.models.Pricing + """ + return self._pricing + + @pricing.setter + def pricing(self, pricing): + """ + Sets the pricing of this OfferQuoteSummary. + + :param pricing: The pricing of this OfferQuoteSummary. + :type: oci.marketplace_private_offer.models.Pricing + """ + self._pricing = pricing + + @property + def buyer_acceptance_deadline(self): + """ + Gets the buyer_acceptance_deadline of this OfferQuoteSummary. + The time the offer for the buyer must be accepted by before the offer becomes invalid. An RFC3339 formatted datetime string. + + + :return: The buyer_acceptance_deadline of this OfferQuoteSummary. + :rtype: datetime + """ + return self._buyer_acceptance_deadline + + @buyer_acceptance_deadline.setter + def buyer_acceptance_deadline(self, buyer_acceptance_deadline): + """ + Sets the buyer_acceptance_deadline of this OfferQuoteSummary. + The time the offer for the buyer must be accepted by before the offer becomes invalid. An RFC3339 formatted datetime string. + + + :param buyer_acceptance_deadline: The buyer_acceptance_deadline of this OfferQuoteSummary. + :type: datetime + """ + self._buyer_acceptance_deadline = buyer_acceptance_deadline + + @property + def buyer_offer_duration(self): + """ + Gets the buyer_offer_duration of this OfferQuoteSummary. + Duration the offer for the buyer will be active after its start date. An ISO8601 extended formatted string. + + + :return: The buyer_offer_duration of this OfferQuoteSummary. + :rtype: str + """ + return self._buyer_offer_duration + + @buyer_offer_duration.setter + def buyer_offer_duration(self, buyer_offer_duration): + """ + Sets the buyer_offer_duration of this OfferQuoteSummary. + Duration the offer for the buyer will be active after its start date. An ISO8601 extended formatted string. + + + :param buyer_offer_duration: The buyer_offer_duration of this OfferQuoteSummary. + :type: str + """ + self._buyer_offer_duration = buyer_offer_duration + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this OfferQuoteSummary. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this OfferQuoteSummary. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this OfferQuoteSummary. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this OfferQuoteSummary. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this OfferQuoteSummary. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this OfferQuoteSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this OfferQuoteSummary. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this OfferQuoteSummary. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def system_tags(self): + """ + Gets the system_tags of this OfferQuoteSummary. + System tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :return: The system_tags of this OfferQuoteSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this OfferQuoteSummary. + System tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :param system_tags: The system_tags of this OfferQuoteSummary. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/marketplace_private_offer/models/offer_summary.py b/src/oci/marketplace_private_offer/models/offer_summary.py index 34381f3c4c..ac66608fd5 100644 --- a/src/oci/marketplace_private_offer/models/offer_summary.py +++ b/src/oci/marketplace_private_offer/models/offer_summary.py @@ -84,6 +84,10 @@ def __init__(self, **kwargs): The value to assign to the pricing property of this OfferSummary. :type pricing: oci.marketplace_private_offer.models.Pricing + :param offer_type: + The value to assign to the offer_type property of this OfferSummary. + :type offer_type: str + :param freeform_tags: The value to assign to the freeform_tags property of this OfferSummary. :type freeform_tags: dict(str, str) @@ -92,6 +96,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this OfferSummary. :type defined_tags: dict(str, dict(str, object)) + :param system_tags: + The value to assign to the system_tags property of this OfferSummary. + :type system_tags: dict(str, dict(str, object)) + """ self.swagger_types = { 'id': 'str', @@ -110,8 +118,10 @@ def __init__(self, **kwargs): 'buyer_information': 'BuyerInformation', 'seller_information': 'SellerInformation', 'pricing': 'Pricing', + 'offer_type': 'str', 'freeform_tags': 'dict(str, str)', - 'defined_tags': 'dict(str, dict(str, object))' + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))' } self.attribute_map = { 'id': 'id', @@ -130,8 +140,10 @@ def __init__(self, **kwargs): 'buyer_information': 'buyerInformation', 'seller_information': 'sellerInformation', 'pricing': 'pricing', + 'offer_type': 'offerType', 'freeform_tags': 'freeformTags', - 'defined_tags': 'definedTags' + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags' } self._id = None self._display_name = None @@ -149,8 +161,10 @@ def __init__(self, **kwargs): self._buyer_information = None self._seller_information = None self._pricing = None + self._offer_type = None self._freeform_tags = None self._defined_tags = None + self._system_tags = None @property def id(self): @@ -524,6 +538,30 @@ def pricing(self, pricing): """ self._pricing = pricing + @property + def offer_type(self): + """ + Gets the offer_type of this OfferSummary. + The type of the offer. + + + :return: The offer_type of this OfferSummary. + :rtype: str + """ + return self._offer_type + + @offer_type.setter + def offer_type(self, offer_type): + """ + Sets the offer_type of this OfferSummary. + The type of the offer. + + + :param offer_type: The offer_type of this OfferSummary. + :type: str + """ + self._offer_type = offer_type + @property def freeform_tags(self): """ @@ -576,6 +614,32 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def system_tags(self): + """ + Gets the system_tags of this OfferSummary. + System tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :return: The system_tags of this OfferSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this OfferSummary. + System tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :param system_tags: The system_tags of this OfferSummary. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/marketplace_private_offer/models/pricing.py b/src/oci/marketplace_private_offer/models/pricing.py index cb36be35b4..89b7872810 100644 --- a/src/oci/marketplace_private_offer/models/pricing.py +++ b/src/oci/marketplace_private_offer/models/pricing.py @@ -12,7 +12,7 @@ @init_model_state_from_kwargs class Pricing(object): """ - the pricing information for the offer + The pricing information for the offer. """ #: A constant which can be used with the billing_cycle property of a Pricing. @@ -57,7 +57,7 @@ def __init__(self, **kwargs): def currency_type(self): """ Gets the currency_type of this Pricing. - The currency supported for a given Offer, in the format specified by ISO-4217 + The currency supported for a given Offer, in the format specified by ISO-4217. :return: The currency_type of this Pricing. @@ -69,7 +69,7 @@ def currency_type(self): def currency_type(self, currency_type): """ Sets the currency_type of this Pricing. - The currency supported for a given Offer, in the format specified by ISO-4217 + The currency supported for a given Offer, in the format specified by ISO-4217. :param currency_type: The currency_type of this Pricing. @@ -81,7 +81,7 @@ def currency_type(self, currency_type): def total_amount(self): """ Gets the total_amount of this Pricing. - The total amount an Offer costs + The total amount an offer costs. :return: The total_amount of this Pricing. @@ -93,7 +93,7 @@ def total_amount(self): def total_amount(self, total_amount): """ Sets the total_amount of this Pricing. - The total amount an Offer costs + The total amount an offer costs. :param total_amount: The total_amount of this Pricing. @@ -105,7 +105,7 @@ def total_amount(self, total_amount): def billing_cycle(self): """ Gets the billing_cycle of this Pricing. - The frequency at which the customer is billed for the Offer + The frequency at which the customer is billed for the offer. Allowed values for this property are: "ONE_TIME", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -120,7 +120,7 @@ def billing_cycle(self): def billing_cycle(self, billing_cycle): """ Sets the billing_cycle of this Pricing. - The frequency at which the customer is billed for the Offer + The frequency at which the customer is billed for the offer. :param billing_cycle: The billing_cycle of this Pricing. diff --git a/src/oci/marketplace_private_offer/models/quote_attachment.py b/src/oci/marketplace_private_offer/models/quote_attachment.py new file mode 100644 index 0000000000..15bb180798 --- /dev/null +++ b/src/oci/marketplace_private_offer/models/quote_attachment.py @@ -0,0 +1,586 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220901 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class QuoteAttachment(object): + """ + Description of an offer quote attachment. + """ + + #: A constant which can be used with the type property of a QuoteAttachment. + #: This constant has a value of "CONTRACT_T_AND_C" + TYPE_CONTRACT_T_AND_C = "CONTRACT_T_AND_C" + + #: A constant which can be used with the type property of a QuoteAttachment. + #: This constant has a value of "QUOTE" + TYPE_QUOTE = "QUOTE" + + #: A constant which can be used with the type property of a QuoteAttachment. + #: This constant has a value of "EULA" + TYPE_EULA = "EULA" + + #: A constant which can be used with the type property of a QuoteAttachment. + #: This constant has a value of "TERMS_OF_USE" + TYPE_TERMS_OF_USE = "TERMS_OF_USE" + + #: A constant which can be used with the type property of a QuoteAttachment. + #: This constant has a value of "MISC" + TYPE_MISC = "MISC" + + #: A constant which can be used with the lifecycle_state property of a QuoteAttachment. + #: This constant has a value of "CREATING" + LIFECYCLE_STATE_CREATING = "CREATING" + + #: A constant which can be used with the lifecycle_state property of a QuoteAttachment. + #: This constant has a value of "UPDATING" + LIFECYCLE_STATE_UPDATING = "UPDATING" + + #: A constant which can be used with the lifecycle_state property of a QuoteAttachment. + #: This constant has a value of "ACTIVE" + LIFECYCLE_STATE_ACTIVE = "ACTIVE" + + #: A constant which can be used with the lifecycle_state property of a QuoteAttachment. + #: This constant has a value of "DELETING" + LIFECYCLE_STATE_DELETING = "DELETING" + + #: A constant which can be used with the lifecycle_state property of a QuoteAttachment. + #: This constant has a value of "DELETED" + LIFECYCLE_STATE_DELETED = "DELETED" + + #: A constant which can be used with the lifecycle_state property of a QuoteAttachment. + #: This constant has a value of "FAILED" + LIFECYCLE_STATE_FAILED = "FAILED" + + #: A constant which can be used with the recipient property of a QuoteAttachment. + #: This constant has a value of "RESELLER" + RECIPIENT_RESELLER = "RESELLER" + + #: A constant which can be used with the recipient property of a QuoteAttachment. + #: This constant has a value of "BUYER" + RECIPIENT_BUYER = "BUYER" + + def __init__(self, **kwargs): + """ + Initializes a new QuoteAttachment object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this QuoteAttachment. + :type id: str + + :param offer_quote_id: + The value to assign to the offer_quote_id property of this QuoteAttachment. + :type offer_quote_id: str + + :param reseller_compartment_id: + The value to assign to the reseller_compartment_id property of this QuoteAttachment. + :type reseller_compartment_id: str + + :param isv_compartment_id: + The value to assign to the isv_compartment_id property of this QuoteAttachment. + :type isv_compartment_id: str + + :param display_name: + The value to assign to the display_name property of this QuoteAttachment. + :type display_name: str + + :param type: + The value to assign to the type property of this QuoteAttachment. + Allowed values for this property are: "CONTRACT_T_AND_C", "QUOTE", "EULA", "TERMS_OF_USE", "MISC", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type type: str + + :param time_created: + The value to assign to the time_created property of this QuoteAttachment. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this QuoteAttachment. + :type time_updated: datetime + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this QuoteAttachment. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + :param lifecycle_details: + The value to assign to the lifecycle_details property of this QuoteAttachment. + :type lifecycle_details: str + + :param mime_type: + The value to assign to the mime_type property of this QuoteAttachment. + :type mime_type: str + + :param recipient: + The value to assign to the recipient property of this QuoteAttachment. + Allowed values for this property are: "RESELLER", "BUYER", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type recipient: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this QuoteAttachment. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this QuoteAttachment. + :type defined_tags: dict(str, dict(str, object)) + + :param system_tags: + The value to assign to the system_tags property of this QuoteAttachment. + :type system_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'id': 'str', + 'offer_quote_id': 'str', + 'reseller_compartment_id': 'str', + 'isv_compartment_id': 'str', + 'display_name': 'str', + 'type': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'lifecycle_state': 'str', + 'lifecycle_details': 'str', + 'mime_type': 'str', + 'recipient': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'id': 'id', + 'offer_quote_id': 'offerQuoteId', + 'reseller_compartment_id': 'resellerCompartmentId', + 'isv_compartment_id': 'isvCompartmentId', + 'display_name': 'displayName', + 'type': 'type', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'lifecycle_state': 'lifecycleState', + 'lifecycle_details': 'lifecycleDetails', + 'mime_type': 'mimeType', + 'recipient': 'recipient', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags' + } + self._id = None + self._offer_quote_id = None + self._reseller_compartment_id = None + self._isv_compartment_id = None + self._display_name = None + self._type = None + self._time_created = None + self._time_updated = None + self._lifecycle_state = None + self._lifecycle_details = None + self._mime_type = None + self._recipient = None + self._freeform_tags = None + self._defined_tags = None + self._system_tags = None + + @property + def id(self): + """ + **[Required]** Gets the id of this QuoteAttachment. + Unique identifier that is immutable on creation. + + + :return: The id of this QuoteAttachment. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this QuoteAttachment. + Unique identifier that is immutable on creation. + + + :param id: The id of this QuoteAttachment. + :type: str + """ + self._id = id + + @property + def offer_quote_id(self): + """ + **[Required]** Gets the offer_quote_id of this QuoteAttachment. + Unique identifier of the associated offer quote that is immutable on creation. + + + :return: The offer_quote_id of this QuoteAttachment. + :rtype: str + """ + return self._offer_quote_id + + @offer_quote_id.setter + def offer_quote_id(self, offer_quote_id): + """ + Sets the offer_quote_id of this QuoteAttachment. + Unique identifier of the associated offer quote that is immutable on creation. + + + :param offer_quote_id: The offer_quote_id of this QuoteAttachment. + :type: str + """ + self._offer_quote_id = offer_quote_id + + @property + def reseller_compartment_id(self): + """ + **[Required]** Gets the reseller_compartment_id of this QuoteAttachment. + OCID of the reseller's tenancy (root compartment). + + + :return: The reseller_compartment_id of this QuoteAttachment. + :rtype: str + """ + return self._reseller_compartment_id + + @reseller_compartment_id.setter + def reseller_compartment_id(self, reseller_compartment_id): + """ + Sets the reseller_compartment_id of this QuoteAttachment. + OCID of the reseller's tenancy (root compartment). + + + :param reseller_compartment_id: The reseller_compartment_id of this QuoteAttachment. + :type: str + """ + self._reseller_compartment_id = reseller_compartment_id + + @property + def isv_compartment_id(self): + """ + **[Required]** Gets the isv_compartment_id of this QuoteAttachment. + OCID of the ISV's tenancy (root compartment). + + + :return: The isv_compartment_id of this QuoteAttachment. + :rtype: str + """ + return self._isv_compartment_id + + @isv_compartment_id.setter + def isv_compartment_id(self, isv_compartment_id): + """ + Sets the isv_compartment_id of this QuoteAttachment. + OCID of the ISV's tenancy (root compartment). + + + :param isv_compartment_id: The isv_compartment_id of this QuoteAttachment. + :type: str + """ + self._isv_compartment_id = isv_compartment_id + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this QuoteAttachment. + The name used to refer to the uploaded data. + + + :return: The display_name of this QuoteAttachment. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this QuoteAttachment. + The name used to refer to the uploaded data. + + + :param display_name: The display_name of this QuoteAttachment. + :type: str + """ + self._display_name = display_name + + @property + def type(self): + """ + **[Required]** Gets the type of this QuoteAttachment. + The type of offer quote attachment. + + Allowed values for this property are: "CONTRACT_T_AND_C", "QUOTE", "EULA", "TERMS_OF_USE", "MISC", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The type of this QuoteAttachment. + :rtype: str + """ + return self._type + + @type.setter + def type(self, type): + """ + Sets the type of this QuoteAttachment. + The type of offer quote attachment. + + + :param type: The type of this QuoteAttachment. + :type: str + """ + allowed_values = ["CONTRACT_T_AND_C", "QUOTE", "EULA", "TERMS_OF_USE", "MISC"] + if not value_allowed_none_or_none_sentinel(type, allowed_values): + type = 'UNKNOWN_ENUM_VALUE' + self._type = type + + @property + def time_created(self): + """ + **[Required]** Gets the time_created of this QuoteAttachment. + The time the offer quote attachment was created. An RFC3339 formatted datetime string. + + + :return: The time_created of this QuoteAttachment. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this QuoteAttachment. + The time the offer quote attachment was created. An RFC3339 formatted datetime string. + + + :param time_created: The time_created of this QuoteAttachment. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + Gets the time_updated of this QuoteAttachment. + The time the offer quote attachment was updated. An RFC3339 formatted datetime string. + + + :return: The time_updated of this QuoteAttachment. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this QuoteAttachment. + The time the offer quote attachment was updated. An RFC3339 formatted datetime string. + + + :param time_updated: The time_updated of this QuoteAttachment. + :type: datetime + """ + self._time_updated = time_updated + + @property + def lifecycle_state(self): + """ + **[Required]** Gets the lifecycle_state of this QuoteAttachment. + The current state of the offer quote attachment. + + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this QuoteAttachment. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this QuoteAttachment. + The current state of the offer quote attachment. + + + :param lifecycle_state: The lifecycle_state of this QuoteAttachment. + :type: str + """ + allowed_values = ["CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + + @property + def lifecycle_details(self): + """ + Gets the lifecycle_details of this QuoteAttachment. + Provides detailed information about the current state of the offer quote attachment. For example, if the offer quote attachment is in a failed state this message can include specific validation errors. + + + :return: The lifecycle_details of this QuoteAttachment. + :rtype: str + """ + return self._lifecycle_details + + @lifecycle_details.setter + def lifecycle_details(self, lifecycle_details): + """ + Sets the lifecycle_details of this QuoteAttachment. + Provides detailed information about the current state of the offer quote attachment. For example, if the offer quote attachment is in a failed state this message can include specific validation errors. + + + :param lifecycle_details: The lifecycle_details of this QuoteAttachment. + :type: str + """ + self._lifecycle_details = lifecycle_details + + @property + def mime_type(self): + """ + Gets the mime_type of this QuoteAttachment. + The MIME type of the uploaded data. + + + :return: The mime_type of this QuoteAttachment. + :rtype: str + """ + return self._mime_type + + @mime_type.setter + def mime_type(self, mime_type): + """ + Sets the mime_type of this QuoteAttachment. + The MIME type of the uploaded data. + + + :param mime_type: The mime_type of this QuoteAttachment. + :type: str + """ + self._mime_type = mime_type + + @property + def recipient(self): + """ + **[Required]** Gets the recipient of this QuoteAttachment. + The recipient of the offer quote attachment. + + Allowed values for this property are: "RESELLER", "BUYER", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The recipient of this QuoteAttachment. + :rtype: str + """ + return self._recipient + + @recipient.setter + def recipient(self, recipient): + """ + Sets the recipient of this QuoteAttachment. + The recipient of the offer quote attachment. + + + :param recipient: The recipient of this QuoteAttachment. + :type: str + """ + allowed_values = ["RESELLER", "BUYER"] + if not value_allowed_none_or_none_sentinel(recipient, allowed_values): + recipient = 'UNKNOWN_ENUM_VALUE' + self._recipient = recipient + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this QuoteAttachment. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this QuoteAttachment. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this QuoteAttachment. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this QuoteAttachment. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this QuoteAttachment. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this QuoteAttachment. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this QuoteAttachment. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this QuoteAttachment. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def system_tags(self): + """ + Gets the system_tags of this QuoteAttachment. + System tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :return: The system_tags of this QuoteAttachment. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this QuoteAttachment. + System tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :param system_tags: The system_tags of this QuoteAttachment. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/marketplace_private_offer/models/quote_attachment_collection.py b/src/oci/marketplace_private_offer/models/quote_attachment_collection.py new file mode 100644 index 0000000000..f7a1963430 --- /dev/null +++ b/src/oci/marketplace_private_offer/models/quote_attachment_collection.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220901 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class QuoteAttachmentCollection(object): + """ + Results of offer quote attachment summaries. + """ + + def __init__(self, **kwargs): + """ + Initializes a new QuoteAttachmentCollection object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this QuoteAttachmentCollection. + :type items: list[oci.marketplace_private_offer.models.QuoteAttachmentSummary] + + """ + self.swagger_types = { + 'items': 'list[QuoteAttachmentSummary]' + } + self.attribute_map = { + 'items': 'items' + } + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this QuoteAttachmentCollection. + List of offer quote attachments. + + + :return: The items of this QuoteAttachmentCollection. + :rtype: list[oci.marketplace_private_offer.models.QuoteAttachmentSummary] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this QuoteAttachmentCollection. + List of offer quote attachments. + + + :param items: The items of this QuoteAttachmentCollection. + :type: list[oci.marketplace_private_offer.models.QuoteAttachmentSummary] + """ + self._items = items + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/marketplace_private_offer/models/quote_attachment_summary.py b/src/oci/marketplace_private_offer/models/quote_attachment_summary.py new file mode 100644 index 0000000000..61f7e32abc --- /dev/null +++ b/src/oci/marketplace_private_offer/models/quote_attachment_summary.py @@ -0,0 +1,510 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220901 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class QuoteAttachmentSummary(object): + """ + Summary of offer quote attachment. + """ + + def __init__(self, **kwargs): + """ + Initializes a new QuoteAttachmentSummary object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this QuoteAttachmentSummary. + :type id: str + + :param offer_quote_id: + The value to assign to the offer_quote_id property of this QuoteAttachmentSummary. + :type offer_quote_id: str + + :param reseller_compartment_id: + The value to assign to the reseller_compartment_id property of this QuoteAttachmentSummary. + :type reseller_compartment_id: str + + :param isv_compartment_id: + The value to assign to the isv_compartment_id property of this QuoteAttachmentSummary. + :type isv_compartment_id: str + + :param display_name: + The value to assign to the display_name property of this QuoteAttachmentSummary. + :type display_name: str + + :param type: + The value to assign to the type property of this QuoteAttachmentSummary. + :type type: str + + :param time_created: + The value to assign to the time_created property of this QuoteAttachmentSummary. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this QuoteAttachmentSummary. + :type time_updated: datetime + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this QuoteAttachmentSummary. + :type lifecycle_state: str + + :param lifecycle_details: + The value to assign to the lifecycle_details property of this QuoteAttachmentSummary. + :type lifecycle_details: str + + :param mime_type: + The value to assign to the mime_type property of this QuoteAttachmentSummary. + :type mime_type: str + + :param recipient: + The value to assign to the recipient property of this QuoteAttachmentSummary. + :type recipient: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this QuoteAttachmentSummary. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this QuoteAttachmentSummary. + :type defined_tags: dict(str, dict(str, object)) + + :param system_tags: + The value to assign to the system_tags property of this QuoteAttachmentSummary. + :type system_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'id': 'str', + 'offer_quote_id': 'str', + 'reseller_compartment_id': 'str', + 'isv_compartment_id': 'str', + 'display_name': 'str', + 'type': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'lifecycle_state': 'str', + 'lifecycle_details': 'str', + 'mime_type': 'str', + 'recipient': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'id': 'id', + 'offer_quote_id': 'offerQuoteId', + 'reseller_compartment_id': 'resellerCompartmentId', + 'isv_compartment_id': 'isvCompartmentId', + 'display_name': 'displayName', + 'type': 'type', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'lifecycle_state': 'lifecycleState', + 'lifecycle_details': 'lifecycleDetails', + 'mime_type': 'mimeType', + 'recipient': 'recipient', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags' + } + self._id = None + self._offer_quote_id = None + self._reseller_compartment_id = None + self._isv_compartment_id = None + self._display_name = None + self._type = None + self._time_created = None + self._time_updated = None + self._lifecycle_state = None + self._lifecycle_details = None + self._mime_type = None + self._recipient = None + self._freeform_tags = None + self._defined_tags = None + self._system_tags = None + + @property + def id(self): + """ + **[Required]** Gets the id of this QuoteAttachmentSummary. + Unique identifier that is immutable on creation. + + + :return: The id of this QuoteAttachmentSummary. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this QuoteAttachmentSummary. + Unique identifier that is immutable on creation. + + + :param id: The id of this QuoteAttachmentSummary. + :type: str + """ + self._id = id + + @property + def offer_quote_id(self): + """ + **[Required]** Gets the offer_quote_id of this QuoteAttachmentSummary. + Unique identifier of the associated offer quote that is immutable on creation. + + + :return: The offer_quote_id of this QuoteAttachmentSummary. + :rtype: str + """ + return self._offer_quote_id + + @offer_quote_id.setter + def offer_quote_id(self, offer_quote_id): + """ + Sets the offer_quote_id of this QuoteAttachmentSummary. + Unique identifier of the associated offer quote that is immutable on creation. + + + :param offer_quote_id: The offer_quote_id of this QuoteAttachmentSummary. + :type: str + """ + self._offer_quote_id = offer_quote_id + + @property + def reseller_compartment_id(self): + """ + Gets the reseller_compartment_id of this QuoteAttachmentSummary. + OCID of the reseller's tenancy (root compartment). + + + :return: The reseller_compartment_id of this QuoteAttachmentSummary. + :rtype: str + """ + return self._reseller_compartment_id + + @reseller_compartment_id.setter + def reseller_compartment_id(self, reseller_compartment_id): + """ + Sets the reseller_compartment_id of this QuoteAttachmentSummary. + OCID of the reseller's tenancy (root compartment). + + + :param reseller_compartment_id: The reseller_compartment_id of this QuoteAttachmentSummary. + :type: str + """ + self._reseller_compartment_id = reseller_compartment_id + + @property + def isv_compartment_id(self): + """ + Gets the isv_compartment_id of this QuoteAttachmentSummary. + OCID of the ISV's tenancy (root compartment). + + + :return: The isv_compartment_id of this QuoteAttachmentSummary. + :rtype: str + """ + return self._isv_compartment_id + + @isv_compartment_id.setter + def isv_compartment_id(self, isv_compartment_id): + """ + Sets the isv_compartment_id of this QuoteAttachmentSummary. + OCID of the ISV's tenancy (root compartment). + + + :param isv_compartment_id: The isv_compartment_id of this QuoteAttachmentSummary. + :type: str + """ + self._isv_compartment_id = isv_compartment_id + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this QuoteAttachmentSummary. + The name used to refer to the uploaded data. + + + :return: The display_name of this QuoteAttachmentSummary. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this QuoteAttachmentSummary. + The name used to refer to the uploaded data. + + + :param display_name: The display_name of this QuoteAttachmentSummary. + :type: str + """ + self._display_name = display_name + + @property + def type(self): + """ + **[Required]** Gets the type of this QuoteAttachmentSummary. + The type of offer quote attachment. + + + :return: The type of this QuoteAttachmentSummary. + :rtype: str + """ + return self._type + + @type.setter + def type(self, type): + """ + Sets the type of this QuoteAttachmentSummary. + The type of offer quote attachment. + + + :param type: The type of this QuoteAttachmentSummary. + :type: str + """ + self._type = type + + @property + def time_created(self): + """ + Gets the time_created of this QuoteAttachmentSummary. + The time the offer quote attachment was created. An RFC3339 formatted datetime string. + + + :return: The time_created of this QuoteAttachmentSummary. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this QuoteAttachmentSummary. + The time the offer quote attachment was created. An RFC3339 formatted datetime string. + + + :param time_created: The time_created of this QuoteAttachmentSummary. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + Gets the time_updated of this QuoteAttachmentSummary. + The time the offer quote attachment was updated. An RFC3339 formatted datetime string. + + + :return: The time_updated of this QuoteAttachmentSummary. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this QuoteAttachmentSummary. + The time the offer quote attachment was updated. An RFC3339 formatted datetime string. + + + :param time_updated: The time_updated of this QuoteAttachmentSummary. + :type: datetime + """ + self._time_updated = time_updated + + @property + def lifecycle_state(self): + """ + **[Required]** Gets the lifecycle_state of this QuoteAttachmentSummary. + The current state of the offer quote attachment. + + + :return: The lifecycle_state of this QuoteAttachmentSummary. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this QuoteAttachmentSummary. + The current state of the offer quote attachment. + + + :param lifecycle_state: The lifecycle_state of this QuoteAttachmentSummary. + :type: str + """ + self._lifecycle_state = lifecycle_state + + @property + def lifecycle_details(self): + """ + Gets the lifecycle_details of this QuoteAttachmentSummary. + Provides detailed information about the current state of the offer quote attachment. For example, if the offer quote attachment is in a failed state this message can include specific validation errors. + + + :return: The lifecycle_details of this QuoteAttachmentSummary. + :rtype: str + """ + return self._lifecycle_details + + @lifecycle_details.setter + def lifecycle_details(self, lifecycle_details): + """ + Sets the lifecycle_details of this QuoteAttachmentSummary. + Provides detailed information about the current state of the offer quote attachment. For example, if the offer quote attachment is in a failed state this message can include specific validation errors. + + + :param lifecycle_details: The lifecycle_details of this QuoteAttachmentSummary. + :type: str + """ + self._lifecycle_details = lifecycle_details + + @property + def mime_type(self): + """ + Gets the mime_type of this QuoteAttachmentSummary. + The MIME type of the uploaded data. + + + :return: The mime_type of this QuoteAttachmentSummary. + :rtype: str + """ + return self._mime_type + + @mime_type.setter + def mime_type(self, mime_type): + """ + Sets the mime_type of this QuoteAttachmentSummary. + The MIME type of the uploaded data. + + + :param mime_type: The mime_type of this QuoteAttachmentSummary. + :type: str + """ + self._mime_type = mime_type + + @property + def recipient(self): + """ + Gets the recipient of this QuoteAttachmentSummary. + The current state of the offer quote attachment. + + + :return: The recipient of this QuoteAttachmentSummary. + :rtype: str + """ + return self._recipient + + @recipient.setter + def recipient(self, recipient): + """ + Sets the recipient of this QuoteAttachmentSummary. + The current state of the offer quote attachment. + + + :param recipient: The recipient of this QuoteAttachmentSummary. + :type: str + """ + self._recipient = recipient + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this QuoteAttachmentSummary. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this QuoteAttachmentSummary. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this QuoteAttachmentSummary. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this QuoteAttachmentSummary. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this QuoteAttachmentSummary. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this QuoteAttachmentSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this QuoteAttachmentSummary. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this QuoteAttachmentSummary. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def system_tags(self): + """ + Gets the system_tags of this QuoteAttachmentSummary. + System tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :return: The system_tags of this QuoteAttachmentSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this QuoteAttachmentSummary. + System tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :param system_tags: The system_tags of this QuoteAttachmentSummary. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/marketplace_private_offer/models/reseller_information.py b/src/oci/marketplace_private_offer/models/reseller_information.py new file mode 100644 index 0000000000..ac7871a9e8 --- /dev/null +++ b/src/oci/marketplace_private_offer/models/reseller_information.py @@ -0,0 +1,97 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220901 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ResellerInformation(object): + """ + The information related to the reseller of an offer quote. + """ + + def __init__(self, **kwargs): + """ + Initializes a new ResellerInformation object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param primary_contact: + The value to assign to the primary_contact property of this ResellerInformation. + :type primary_contact: oci.marketplace_private_offer.models.Contact + + :param additional_contacts: + The value to assign to the additional_contacts property of this ResellerInformation. + :type additional_contacts: list[oci.marketplace_private_offer.models.Contact] + + """ + self.swagger_types = { + 'primary_contact': 'Contact', + 'additional_contacts': 'list[Contact]' + } + self.attribute_map = { + 'primary_contact': 'primaryContact', + 'additional_contacts': 'additionalContacts' + } + self._primary_contact = None + self._additional_contacts = None + + @property + def primary_contact(self): + """ + Gets the primary_contact of this ResellerInformation. + + :return: The primary_contact of this ResellerInformation. + :rtype: oci.marketplace_private_offer.models.Contact + """ + return self._primary_contact + + @primary_contact.setter + def primary_contact(self, primary_contact): + """ + Sets the primary_contact of this ResellerInformation. + + :param primary_contact: The primary_contact of this ResellerInformation. + :type: oci.marketplace_private_offer.models.Contact + """ + self._primary_contact = primary_contact + + @property + def additional_contacts(self): + """ + Gets the additional_contacts of this ResellerInformation. + The additional contacts associated with the reseller. + + + :return: The additional_contacts of this ResellerInformation. + :rtype: list[oci.marketplace_private_offer.models.Contact] + """ + return self._additional_contacts + + @additional_contacts.setter + def additional_contacts(self, additional_contacts): + """ + Sets the additional_contacts of this ResellerInformation. + The additional contacts associated with the reseller. + + + :param additional_contacts: The additional_contacts of this ResellerInformation. + :type: list[oci.marketplace_private_offer.models.Contact] + """ + self._additional_contacts = additional_contacts + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/marketplace_private_offer/models/resource_bundle.py b/src/oci/marketplace_private_offer/models/resource_bundle.py index 4545911675..95982ff247 100644 --- a/src/oci/marketplace_private_offer/models/resource_bundle.py +++ b/src/oci/marketplace_private_offer/models/resource_bundle.py @@ -12,7 +12,7 @@ @init_model_state_from_kwargs class ResourceBundle(object): """ - Resource Bundle associated with an Offer + Resource bundle associated with an offer. """ #: A constant which can be used with the type property of a ResourceBundle. @@ -86,7 +86,7 @@ def __init__(self, **kwargs): def type(self): """ Gets the type of this ResourceBundle. - The type of resources in the bundle + The type of resources in the bundle. Allowed values for this property are: "LISTING", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -101,7 +101,7 @@ def type(self): def type(self, type): """ Sets the type of this ResourceBundle. - The type of resources in the bundle + The type of resources in the bundle. :param type: The type of this ResourceBundle. @@ -116,7 +116,7 @@ def type(self, type): def quantity(self): """ Gets the quantity of this ResourceBundle. - The quantity of a resources associated with the bundle + The quantity of a resources associated with the bundle. :return: The quantity of this ResourceBundle. @@ -128,7 +128,7 @@ def quantity(self): def quantity(self, quantity): """ Sets the quantity of this ResourceBundle. - The quantity of a resources associated with the bundle + The quantity of a resources associated with the bundle. :param quantity: The quantity of this ResourceBundle. @@ -140,7 +140,7 @@ def quantity(self, quantity): def unit_of_measurement(self): """ Gets the unit_of_measurement of this ResourceBundle. - The unit of measurement for the resource bundle + The unit of measurement for the resource bundle. Allowed values for this property are: "OCPU_PER_HOUR", "INSTANCE_PER_HOUR", "CREDITS", "INSTANCES", "NODES", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -155,7 +155,7 @@ def unit_of_measurement(self): def unit_of_measurement(self, unit_of_measurement): """ Sets the unit_of_measurement of this ResourceBundle. - The unit of measurement for the resource bundle + The unit of measurement for the resource bundle. :param unit_of_measurement: The unit_of_measurement of this ResourceBundle. @@ -170,7 +170,7 @@ def unit_of_measurement(self, unit_of_measurement): def resource_ids(self): """ Gets the resource_ids of this ResourceBundle. - the ids of the resources in the Offer + The IDs of the resources in the offer. :return: The resource_ids of this ResourceBundle. @@ -182,7 +182,7 @@ def resource_ids(self): def resource_ids(self, resource_ids): """ Sets the resource_ids of this ResourceBundle. - the ids of the resources in the Offer + The IDs of the resources in the offer. :param resource_ids: The resource_ids of this ResourceBundle. diff --git a/src/oci/marketplace_private_offer/models/respond_to_offer_quote_details.py b/src/oci/marketplace_private_offer/models/respond_to_offer_quote_details.py new file mode 100644 index 0000000000..ccf3c1b631 --- /dev/null +++ b/src/oci/marketplace_private_offer/models/respond_to_offer_quote_details.py @@ -0,0 +1,66 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220901 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class RespondToOfferQuoteDetails(object): + """ + Details for the offer quote ISV response. + """ + + def __init__(self, **kwargs): + """ + Initializes a new RespondToOfferQuoteDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param pricing: + The value to assign to the pricing property of this RespondToOfferQuoteDetails. + :type pricing: oci.marketplace_private_offer.models.Pricing + + """ + self.swagger_types = { + 'pricing': 'Pricing' + } + self.attribute_map = { + 'pricing': 'pricing' + } + self._pricing = None + + @property + def pricing(self): + """ + **[Required]** Gets the pricing of this RespondToOfferQuoteDetails. + + :return: The pricing of this RespondToOfferQuoteDetails. + :rtype: oci.marketplace_private_offer.models.Pricing + """ + return self._pricing + + @pricing.setter + def pricing(self, pricing): + """ + Sets the pricing of this RespondToOfferQuoteDetails. + + :param pricing: The pricing of this RespondToOfferQuoteDetails. + :type: oci.marketplace_private_offer.models.Pricing + """ + self._pricing = pricing + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/marketplace_private_offer/models/update_offer_quote_details.py b/src/oci/marketplace_private_offer/models/update_offer_quote_details.py new file mode 100644 index 0000000000..93401eb057 --- /dev/null +++ b/src/oci/marketplace_private_offer/models/update_offer_quote_details.py @@ -0,0 +1,407 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220901 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class UpdateOfferQuoteDetails(object): + """ + The information to be updated. + """ + + def __init__(self, **kwargs): + """ + Initializes a new UpdateOfferQuoteDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param display_name: + The value to assign to the display_name property of this UpdateOfferQuoteDetails. + :type display_name: str + + :param isv_compartment_id: + The value to assign to the isv_compartment_id property of this UpdateOfferQuoteDetails. + :type isv_compartment_id: str + + :param isv_publisher_id: + The value to assign to the isv_publisher_id property of this UpdateOfferQuoteDetails. + :type isv_publisher_id: str + + :param description: + The value to assign to the description property of this UpdateOfferQuoteDetails. + :type description: str + + :param buyer_compartment_ids: + The value to assign to the buyer_compartment_ids property of this UpdateOfferQuoteDetails. + :type buyer_compartment_ids: list[str] + + :param reseller_information: + The value to assign to the reseller_information property of this UpdateOfferQuoteDetails. + :type reseller_information: oci.marketplace_private_offer.models.ResellerInformation + + :param isv_information: + The value to assign to the isv_information property of this UpdateOfferQuoteDetails. + :type isv_information: oci.marketplace_private_offer.models.IsvInformation + + :param resource_bundles: + The value to assign to the resource_bundles property of this UpdateOfferQuoteDetails. + :type resource_bundles: list[oci.marketplace_private_offer.models.ResourceBundle] + + :param buyer_acceptance_deadline: + The value to assign to the buyer_acceptance_deadline property of this UpdateOfferQuoteDetails. + :type buyer_acceptance_deadline: datetime + + :param buyer_offer_duration: + The value to assign to the buyer_offer_duration property of this UpdateOfferQuoteDetails. + :type buyer_offer_duration: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this UpdateOfferQuoteDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this UpdateOfferQuoteDetails. + :type defined_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'display_name': 'str', + 'isv_compartment_id': 'str', + 'isv_publisher_id': 'str', + 'description': 'str', + 'buyer_compartment_ids': 'list[str]', + 'reseller_information': 'ResellerInformation', + 'isv_information': 'IsvInformation', + 'resource_bundles': 'list[ResourceBundle]', + 'buyer_acceptance_deadline': 'datetime', + 'buyer_offer_duration': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'display_name': 'displayName', + 'isv_compartment_id': 'isvCompartmentId', + 'isv_publisher_id': 'isvPublisherId', + 'description': 'description', + 'buyer_compartment_ids': 'buyerCompartmentIds', + 'reseller_information': 'resellerInformation', + 'isv_information': 'isvInformation', + 'resource_bundles': 'resourceBundles', + 'buyer_acceptance_deadline': 'buyerAcceptanceDeadline', + 'buyer_offer_duration': 'buyerOfferDuration', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' + } + self._display_name = None + self._isv_compartment_id = None + self._isv_publisher_id = None + self._description = None + self._buyer_compartment_ids = None + self._reseller_information = None + self._isv_information = None + self._resource_bundles = None + self._buyer_acceptance_deadline = None + self._buyer_offer_duration = None + self._freeform_tags = None + self._defined_tags = None + + @property + def display_name(self): + """ + Gets the display_name of this UpdateOfferQuoteDetails. + Offer quotes identifier. + + + :return: The display_name of this UpdateOfferQuoteDetails. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this UpdateOfferQuoteDetails. + Offer quotes identifier. + + + :param display_name: The display_name of this UpdateOfferQuoteDetails. + :type: str + """ + self._display_name = display_name + + @property + def isv_compartment_id(self): + """ + Gets the isv_compartment_id of this UpdateOfferQuoteDetails. + Compartment identifier of the ISV. + + + :return: The isv_compartment_id of this UpdateOfferQuoteDetails. + :rtype: str + """ + return self._isv_compartment_id + + @isv_compartment_id.setter + def isv_compartment_id(self, isv_compartment_id): + """ + Sets the isv_compartment_id of this UpdateOfferQuoteDetails. + Compartment identifier of the ISV. + + + :param isv_compartment_id: The isv_compartment_id of this UpdateOfferQuoteDetails. + :type: str + """ + self._isv_compartment_id = isv_compartment_id + + @property + def isv_publisher_id(self): + """ + Gets the isv_publisher_id of this UpdateOfferQuoteDetails. + Publisher identifier of the ISV. + + + :return: The isv_publisher_id of this UpdateOfferQuoteDetails. + :rtype: str + """ + return self._isv_publisher_id + + @isv_publisher_id.setter + def isv_publisher_id(self, isv_publisher_id): + """ + Sets the isv_publisher_id of this UpdateOfferQuoteDetails. + Publisher identifier of the ISV. + + + :param isv_publisher_id: The isv_publisher_id of this UpdateOfferQuoteDetails. + :type: str + """ + self._isv_publisher_id = isv_publisher_id + + @property + def description(self): + """ + Gets the description of this UpdateOfferQuoteDetails. + Description of the offer quote. + + + :return: The description of this UpdateOfferQuoteDetails. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this UpdateOfferQuoteDetails. + Description of the offer quote. + + + :param description: The description of this UpdateOfferQuoteDetails. + :type: str + """ + self._description = description + + @property + def buyer_compartment_ids(self): + """ + Gets the buyer_compartment_ids of this UpdateOfferQuoteDetails. + A list of buyer tenancies. + + + :return: The buyer_compartment_ids of this UpdateOfferQuoteDetails. + :rtype: list[str] + """ + return self._buyer_compartment_ids + + @buyer_compartment_ids.setter + def buyer_compartment_ids(self, buyer_compartment_ids): + """ + Sets the buyer_compartment_ids of this UpdateOfferQuoteDetails. + A list of buyer tenancies. + + + :param buyer_compartment_ids: The buyer_compartment_ids of this UpdateOfferQuoteDetails. + :type: list[str] + """ + self._buyer_compartment_ids = buyer_compartment_ids + + @property + def reseller_information(self): + """ + Gets the reseller_information of this UpdateOfferQuoteDetails. + + :return: The reseller_information of this UpdateOfferQuoteDetails. + :rtype: oci.marketplace_private_offer.models.ResellerInformation + """ + return self._reseller_information + + @reseller_information.setter + def reseller_information(self, reseller_information): + """ + Sets the reseller_information of this UpdateOfferQuoteDetails. + + :param reseller_information: The reseller_information of this UpdateOfferQuoteDetails. + :type: oci.marketplace_private_offer.models.ResellerInformation + """ + self._reseller_information = reseller_information + + @property + def isv_information(self): + """ + Gets the isv_information of this UpdateOfferQuoteDetails. + + :return: The isv_information of this UpdateOfferQuoteDetails. + :rtype: oci.marketplace_private_offer.models.IsvInformation + """ + return self._isv_information + + @isv_information.setter + def isv_information(self, isv_information): + """ + Sets the isv_information of this UpdateOfferQuoteDetails. + + :param isv_information: The isv_information of this UpdateOfferQuoteDetails. + :type: oci.marketplace_private_offer.models.IsvInformation + """ + self._isv_information = isv_information + + @property + def resource_bundles(self): + """ + Gets the resource_bundles of this UpdateOfferQuoteDetails. + A list of resource bundles associated with an offer. + + + :return: The resource_bundles of this UpdateOfferQuoteDetails. + :rtype: list[oci.marketplace_private_offer.models.ResourceBundle] + """ + return self._resource_bundles + + @resource_bundles.setter + def resource_bundles(self, resource_bundles): + """ + Sets the resource_bundles of this UpdateOfferQuoteDetails. + A list of resource bundles associated with an offer. + + + :param resource_bundles: The resource_bundles of this UpdateOfferQuoteDetails. + :type: list[oci.marketplace_private_offer.models.ResourceBundle] + """ + self._resource_bundles = resource_bundles + + @property + def buyer_acceptance_deadline(self): + """ + Gets the buyer_acceptance_deadline of this UpdateOfferQuoteDetails. + The time the offer for the buyer must be accepted by before the offer becomes invalid. An RFC3339 formatted datetime string. + + + :return: The buyer_acceptance_deadline of this UpdateOfferQuoteDetails. + :rtype: datetime + """ + return self._buyer_acceptance_deadline + + @buyer_acceptance_deadline.setter + def buyer_acceptance_deadline(self, buyer_acceptance_deadline): + """ + Sets the buyer_acceptance_deadline of this UpdateOfferQuoteDetails. + The time the offer for the buyer must be accepted by before the offer becomes invalid. An RFC3339 formatted datetime string. + + + :param buyer_acceptance_deadline: The buyer_acceptance_deadline of this UpdateOfferQuoteDetails. + :type: datetime + """ + self._buyer_acceptance_deadline = buyer_acceptance_deadline + + @property + def buyer_offer_duration(self): + """ + Gets the buyer_offer_duration of this UpdateOfferQuoteDetails. + Duration the offer for the buyer will be active after its start date. An ISO8601 extended formatted string. + + + :return: The buyer_offer_duration of this UpdateOfferQuoteDetails. + :rtype: str + """ + return self._buyer_offer_duration + + @buyer_offer_duration.setter + def buyer_offer_duration(self, buyer_offer_duration): + """ + Sets the buyer_offer_duration of this UpdateOfferQuoteDetails. + Duration the offer for the buyer will be active after its start date. An ISO8601 extended formatted string. + + + :param buyer_offer_duration: The buyer_offer_duration of this UpdateOfferQuoteDetails. + :type: str + """ + self._buyer_offer_duration = buyer_offer_duration + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this UpdateOfferQuoteDetails. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this UpdateOfferQuoteDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this UpdateOfferQuoteDetails. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this UpdateOfferQuoteDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this UpdateOfferQuoteDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this UpdateOfferQuoteDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this UpdateOfferQuoteDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this UpdateOfferQuoteDetails. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/marketplace_private_offer/offer_client.py b/src/oci/marketplace_private_offer/offer_client.py index c334f66539..e358234b4d 100644 --- a/src/oci/marketplace_private_offer/offer_client.py +++ b/src/oci/marketplace_private_offer/offer_client.py @@ -719,6 +719,118 @@ def list_offers(self, **kwargs): api_reference_link=api_reference_link, required_arguments=required_arguments) + def send_offer(self, offer_id, **kwargs): + """ + Sends an Offer to be reviewed and accepted by the buyer. Validation will be run on the offer first to verify the offer is valid and contains all required fields. + + + :param str offer_id: (required) + unique Offer identifier + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use send_offer API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['offerId'] + resource_path = "/offers/{offerId}/actions/sendOffer" + method = "POST" + operation_name = "send_offer" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"send_offer got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "offerId": offer_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + def update_offer(self, offer_id, update_offer_details, **kwargs): """ Updates the Offer @@ -837,3 +949,115 @@ def update_offer(self, offer_id, update_offer_details, **kwargs): operation_name=operation_name, api_reference_link=api_reference_link, required_arguments=required_arguments) + + def withdraw_offer(self, offer_id, **kwargs): + """ + Withdraws an Offer and sends it back into DRAFT state. Offers can only be withdrawn before they are accepted by the buyer. + + + :param str offer_id: (required) + unique Offer identifier + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use withdraw_offer API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['offerId'] + resource_path = "/offers/{offerId}/actions/withdrawOffer" + method = "POST" + operation_name = "withdraw_offer" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"withdraw_offer got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "offerId": offer_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) diff --git a/src/oci/marketplace_private_offer/offer_quote_client.py b/src/oci/marketplace_private_offer/offer_quote_client.py new file mode 100644 index 0000000000..93f81c7e0b --- /dev/null +++ b/src/oci/marketplace_private_offer/offer_quote_client.py @@ -0,0 +1,1226 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220901 + +from __future__ import absolute_import + +from oci._vendor import requests # noqa: F401 +from oci._vendor import six + +from oci import retry, circuit_breaker # noqa: F401 +from oci.base_client import BaseClient +from oci.config import get_config_value_or_default, validate_config +from oci.signer import Signer +from oci.util import Sentinel, get_signer_from_authentication_type, AUTHENTICATION_TYPE_FIELD_NAME +from oci.exceptions import InvalidDeveloperToolConfiguration +from oci.developer_tool_configuration import OCI_SDK_ENABLED_SERVICES_SET +from .models import marketplace_private_offer_type_mapping +missing = Sentinel("Missing") + + +class OfferQuoteClient(object): + """ + Use the Marketplace Publisher API to manage the publishing of applications in Oracle Cloud Infrastructure Marketplace. + """ + + def __init__(self, config, **kwargs): + """ + Creates a new service client + + :param dict config: + Configuration keys and values as per `SDK and Tool Configuration `__. + The :py:meth:`~oci.config.from_file` method can be used to load configuration from a file. Alternatively, a ``dict`` can be passed. You can validate_config + the dict using :py:meth:`~oci.config.validate_config` + + :param str service_endpoint: (optional) + The endpoint of the service to call using this client. For example ``https://iaas.us-ashburn-1.oraclecloud.com``. If this keyword argument is + not provided then it will be derived using the region in the config parameter. You should only provide this keyword argument if you have an explicit + need to specify a service endpoint. + + :param timeout: (optional) + The connection and read timeouts for the client. The default values are connection timeout 10 seconds and read timeout 60 seconds. This keyword argument can be provided + as a single float, in which case the value provided is used for both the read and connection timeouts, or as a tuple of two floats. If + a tuple is provided then the first value is used as the connection timeout and the second value as the read timeout. + :type timeout: float or tuple(float, float) + + :param signer: (optional) + The signer to use when signing requests made by the service client. The default is to use a :py:class:`~oci.signer.Signer` based on the values + provided in the config parameter. + + One use case for this parameter is for `Instance Principals authentication `__ + by passing an instance of :py:class:`~oci.auth.signers.InstancePrincipalsSecurityTokenSigner` as the value for this keyword argument + :type signer: :py:class:`~oci.signer.AbstractBaseSigner` + + :param obj retry_strategy: (optional) + A retry strategy to apply to all calls made by this service client (i.e. at the client level). There is no retry strategy applied by default. + Retry strategies can also be applied at the operation level by passing a ``retry_strategy`` keyword argument as part of calling the operation. + Any value provided at the operation level will override whatever is specified at the client level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` + is also available. The specifics of the default retry strategy are described `here `__. + + :param obj circuit_breaker_strategy: (optional) + A circuit breaker strategy to apply to all calls made by this service client (i.e. at the client level). + This client uses :py:data:`~oci.circuit_breaker.DEFAULT_CIRCUIT_BREAKER_STRATEGY` as default if no circuit breaker strategy is provided. + The specifics of circuit breaker strategy are described `here `__. + + :param function circuit_breaker_callback: (optional) + Callback function to receive any exceptions triggerred by the circuit breaker. + + :param bool client_level_realm_specific_endpoint_template_enabled: (optional) + A boolean flag to indicate whether or not this client should be created with realm specific endpoint template enabled or disable. By default, this will be set as None. + + :param allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this client should allow control characters in the response object. By default, the client will not + allow control characters to be in the response object. + + :param enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this client should enable strict url encoding in path params of a request. + By default, the client will not enable strict url encoding + """ + if not OCI_SDK_ENABLED_SERVICES_SET.is_service_enabled("marketplace_private_offer"): + raise InvalidDeveloperToolConfiguration("The Developer Tool Configuration has disabled this service, this behavior is controlled by OCI_SDK_ENABLED_SERVICES_SET variable. Please check if your local developer-tool-configuration file configured the service you're targeting or contact the cloud provider on the availability of this service") + + validate_config(config, signer=kwargs.get('signer')) + if 'signer' in kwargs: + signer = kwargs['signer'] + + elif AUTHENTICATION_TYPE_FIELD_NAME in config: + signer = get_signer_from_authentication_type(config) + + else: + signer = Signer( + tenancy=config["tenancy"], + user=config["user"], + fingerprint=config["fingerprint"], + private_key_file_location=config.get("key_file"), + pass_phrase=get_config_value_or_default(config, "pass_phrase"), + private_key_content=config.get("key_content") + ) + + base_client_init_kwargs = { + 'regional_client': True, + 'service_endpoint': kwargs.get('service_endpoint'), + 'base_path': '/20220901', + 'service_endpoint_template': 'https://private-offer.{region}.oci.{secondLevelDomain}', + 'service_endpoint_template_per_realm': { }, # noqa: E201 E202 + 'service_uses_dualstack_endpoints_by_default': False, + 'skip_deserialization': kwargs.get('skip_deserialization', False), + 'circuit_breaker_strategy': kwargs.get('circuit_breaker_strategy', circuit_breaker.GLOBAL_CIRCUIT_BREAKER_STRATEGY), + 'client_level_realm_specific_endpoint_template_enabled': kwargs.get('client_level_realm_specific_endpoint_template_enabled'), + 'client_level_dualstack_endpoints_enabled': kwargs.get('client_level_dualstack_endpoints_enabled') + } + if 'timeout' in kwargs: + base_client_init_kwargs['timeout'] = kwargs.get('timeout') + if base_client_init_kwargs.get('circuit_breaker_strategy') is None: + base_client_init_kwargs['circuit_breaker_strategy'] = circuit_breaker.DEFAULT_CIRCUIT_BREAKER_STRATEGY + if 'allow_control_chars' in kwargs: + base_client_init_kwargs['allow_control_chars'] = kwargs.get('allow_control_chars') + if 'enable_strict_url_encoding' in kwargs: + base_client_init_kwargs['enable_strict_url_encoding'] = kwargs.get('enable_strict_url_encoding') + self.base_client = BaseClient("offer_quote", config, signer, marketplace_private_offer_type_mapping, **base_client_init_kwargs) + self.retry_strategy = kwargs.get('retry_strategy') + self.circuit_breaker_callback = kwargs.get('circuit_breaker_callback') + + def create_offer_quote(self, create_offer_quote_details, **kwargs): + """ + Creates a new offer quote. + + + :param oci.marketplace_private_offer.models.CreateOfferQuoteDetails create_offer_quote_details: (required) + Details for the new offer quote. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.marketplace_private_offer.models.OfferQuote` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use create_offer_quote API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = [] + resource_path = "/offerQuotes" + method = "POST" + operation_name = "create_offer_quote" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_retry_token", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"create_offer_quote got unknown kwargs: {extra_kwargs!r}") + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + header_params=header_params, + body=create_offer_quote_details, + response_type="OfferQuote", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + header_params=header_params, + body=create_offer_quote_details, + response_type="OfferQuote", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def delete_offer_quote(self, offer_quote_id, **kwargs): + """ + Deletes an offer quote resource by identifier. + + + :param str offer_quote_id: (required) + Unique offer quote identifier. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use delete_offer_quote API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['offerQuoteId'] + resource_path = "/offerQuotes/{offerQuoteId}" + method = "DELETE" + operation_name = "delete_offer_quote" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"delete_offer_quote got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "offerQuoteId": offer_quote_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def get_offer_quote(self, offer_quote_id, **kwargs): + """ + Gets an offer quote by identifier. + + + :param str offer_quote_id: (required) + Unique offer quote identifier. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.marketplace_private_offer.models.OfferQuote` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_offer_quote API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['offerQuoteId'] + resource_path = "/offerQuotes/{offerQuoteId}" + method = "GET" + operation_name = "get_offer_quote" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"get_offer_quote got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "offerQuoteId": offer_quote_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="OfferQuote", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="OfferQuote", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def get_offer_quote_internal_detail(self, offer_quote_id, **kwargs): + """ + Gets an offer quote internal details by identifier. + + + :param str offer_quote_id: (required) + Unique offer quote identifier. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.marketplace_private_offer.models.OfferQuoteInternalDetail` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_offer_quote_internal_detail API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['offerQuoteId'] + resource_path = "/offerQuotes/{offerQuoteId}/internalDetails" + method = "GET" + operation_name = "get_offer_quote_internal_detail" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"get_offer_quote_internal_detail got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "offerQuoteId": offer_quote_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="OfferQuoteInternalDetail", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="OfferQuoteInternalDetail", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_offer_quotes(self, **kwargs): + """ + Returns a list of offer quotes. Requires either a reseller compartment ID or an ISV compartment ID. + + + :param str reseller_compartment_id: (optional) + OCID of the reseller's compartment. + + :param str isv_compartment_id: (optional) + OCID of the ISV's compartment. + + :param str lifecycle_state: (optional) + A filter to return resources whose lifecycle state matches the given lifecycle state. + + Allowed values are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED" + + :param str display_name: (optional) + A filter to return only resources that match the entire display name given. + + :param str id: (optional) + Unique offer quote identifier. + + :param int limit: (optional) + The maximum number of items to return. + + :param str page: (optional) + A token representing the position at which to start retrieving results. This must come from the `opc-next-page` header field of a previous response. + + :param str sort_order: (optional) + The sort order to use, either 'ASC' or 'DESC'. + + Allowed values are: "ASC", "DESC" + + :param str sort_by: (optional) + The field to sort by. Only one sort order may be provided. Default order for timeCreated is descending. Default order for displayName is ascending. + + Allowed values are: "timeCreated", "displayName" + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.marketplace_private_offer.models.OfferQuoteCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_offer_quotes API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = [] + resource_path = "/offerQuotes" + method = "GET" + operation_name = "list_offer_quotes" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "reseller_compartment_id", + "isv_compartment_id", + "lifecycle_state", + "display_name", + "id", + "limit", + "page", + "sort_order", + "sort_by", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_offer_quotes got unknown kwargs: {extra_kwargs!r}") + + if 'lifecycle_state' in kwargs: + lifecycle_state_allowed_values = ["CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED"] + if kwargs['lifecycle_state'] not in lifecycle_state_allowed_values: + raise ValueError( + f"Invalid value for `lifecycle_state`, must be one of { lifecycle_state_allowed_values }" + ) + + if 'sort_order' in kwargs: + sort_order_allowed_values = ["ASC", "DESC"] + if kwargs['sort_order'] not in sort_order_allowed_values: + raise ValueError( + f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + ) + + if 'sort_by' in kwargs: + sort_by_allowed_values = ["timeCreated", "displayName"] + if kwargs['sort_by'] not in sort_by_allowed_values: + raise ValueError( + f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" + ) + + query_params = { + "resellerCompartmentId": kwargs.get("reseller_compartment_id", missing), + "isvCompartmentId": kwargs.get("isv_compartment_id", missing), + "lifecycleState": kwargs.get("lifecycle_state", missing), + "displayName": kwargs.get("display_name", missing), + "id": kwargs.get("id", missing), + "limit": kwargs.get("limit", missing), + "page": kwargs.get("page", missing), + "sortOrder": kwargs.get("sort_order", missing), + "sortBy": kwargs.get("sort_by", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="OfferQuoteCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="OfferQuoteCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def respond_to_offer_quote(self, offer_quote_id, respond_to_offer_quote_details, **kwargs): + """ + ISV responds to an offer quote for reseller to review. + + + :param str offer_quote_id: (required) + Unique offer quote identifier. + + :param oci.marketplace_private_offer.models.RespondToOfferQuoteDetails respond_to_offer_quote_details: (required) + Details for the offer quote ISV response. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use respond_to_offer_quote API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['offerQuoteId'] + resource_path = "/offerQuotes/{offerQuoteId}/actions/respondToOfferQuote" + method = "POST" + operation_name = "respond_to_offer_quote" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id", + "opc_retry_token" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"respond_to_offer_quote got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "offerQuoteId": offer_quote_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=respond_to_offer_quote_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=respond_to_offer_quote_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def send_offer_quote(self, offer_quote_id, **kwargs): + """ + Sends an offer quote to be reviewed and updated by the ISV. Validation will be run on the offer quote first to verify it is valid and contains all required fields. + + + :param str offer_quote_id: (required) + Unique offer quote identifier. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use send_offer_quote API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['offerQuoteId'] + resource_path = "/offerQuotes/{offerQuoteId}/actions/sendOfferQuote" + method = "POST" + operation_name = "send_offer_quote" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id", + "opc_retry_token" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"send_offer_quote got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "offerQuoteId": offer_quote_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def update_offer_quote(self, offer_quote_id, update_offer_quote_details, **kwargs): + """ + Updates the offer quote. + + + :param str offer_quote_id: (required) + Unique offer quote identifier. + + :param oci.marketplace_private_offer.models.UpdateOfferQuoteDetails update_offer_quote_details: (required) + The information to be updated. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.marketplace_private_offer.models.OfferQuote` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use update_offer_quote API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['offerQuoteId'] + resource_path = "/offerQuotes/{offerQuoteId}" + method = "PUT" + operation_name = "update_offer_quote" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"update_offer_quote got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "offerQuoteId": offer_quote_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=update_offer_quote_details, + response_type="OfferQuote", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=update_offer_quote_details, + response_type="OfferQuote", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def withdraw_offer_quote(self, offer_quote_id, **kwargs): + """ + Withdraws an offer quote and transitions to previous state. Offer quotes can only be withdrawn by reseller before the ISV response and withdrawn by the ISV before reseller acceptance. + + + :param str offer_quote_id: (required) + Unique offer quote identifier. + + :param str reseller_compartment_id: (optional) + OCID of the reseller's compartment. + + :param str isv_compartment_id: (optional) + OCID of the ISV's compartment. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use withdraw_offer_quote API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['offerQuoteId'] + resource_path = "/offerQuotes/{offerQuoteId}/actions/withdrawOfferQuote" + method = "POST" + operation_name = "withdraw_offer_quote" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "reseller_compartment_id", + "isv_compartment_id", + "if_match", + "opc_request_id", + "opc_retry_token" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"withdraw_offer_quote got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "offerQuoteId": offer_quote_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + query_params = { + "resellerCompartmentId": kwargs.get("reseller_compartment_id", missing), + "isvCompartmentId": kwargs.get("isv_compartment_id", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) diff --git a/src/oci/marketplace_private_offer/offer_quote_client_composite_operations.py b/src/oci/marketplace_private_offer/offer_quote_client_composite_operations.py new file mode 100644 index 0000000000..80f28fed6a --- /dev/null +++ b/src/oci/marketplace_private_offer/offer_quote_client_composite_operations.py @@ -0,0 +1,172 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220901 + +import oci # noqa: F401 +from oci.util import WAIT_RESOURCE_NOT_FOUND # noqa: F401 + + +class OfferQuoteClientCompositeOperations(object): + """ + This class provides a wrapper around :py:class:`~oci.marketplace_private_offer.OfferQuoteClient` and offers convenience methods + for operations that would otherwise need to be chained together. For example, instead of performing an action + on a resource (e.g. launching an instance, creating a load balancer) and then using a waiter to wait for the resource + to enter a given state, you can call a single method in this class to accomplish the same functionality + """ + + def __init__(self, client, **kwargs): + """ + Creates a new OfferQuoteClientCompositeOperations object + + :param OfferQuoteClient client: + The service client which will be wrapped by this object + """ + self.client = client + + def create_offer_quote_and_wait_for_state(self, create_offer_quote_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.marketplace_private_offer.OfferQuoteClient.create_offer_quote` and waits for the :py:class:`~oci.marketplace_private_offer.models.OfferQuote` acted upon + to enter the given state(s). + + :param oci.marketplace_private_offer.models.CreateOfferQuoteDetails create_offer_quote_details: (required) + Details for the new offer quote. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.marketplace_private_offer.models.OfferQuote.lifecycle_state` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.marketplace_private_offer.OfferQuoteClient.create_offer_quote` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.create_offer_quote(create_offer_quote_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + offer_quote_id = operation_result.data.id + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_offer_quote(offer_quote_id), # noqa: F821 + evaluate_response=lambda r: getattr(r.data, 'lifecycle_state') and getattr(r.data, 'lifecycle_state').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except (NameError, TypeError) as e: + if not e.args: + e.args = ('',) + e.args = e.args + ('This composite operation is currently not supported in the SDK. Please use the operation from the service client and use waiters as an alternative. For more information on waiters, visit: "https://docs.oracle.com/en-us/iaas/tools/python/latest/api/waiters.html"', ) + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def delete_offer_quote_and_wait_for_state(self, offer_quote_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.marketplace_private_offer.OfferQuoteClient.delete_offer_quote` and waits for the :py:class:`~oci.marketplace_private_offer.models.OfferQuote` acted upon + to enter the given state(s). + + :param str offer_quote_id: (required) + Unique offer quote identifier. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.marketplace_private_offer.models.OfferQuote.lifecycle_state` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.marketplace_private_offer.OfferQuoteClient.delete_offer_quote` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + initial_get_result = self.client.get_offer_quote(offer_quote_id) + operation_result = None + try: + operation_result = self.client.delete_offer_quote(offer_quote_id, **operation_kwargs) + except oci.exceptions.ServiceError as e: + if e.status == 404: + return WAIT_RESOURCE_NOT_FOUND + else: + raise e + + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + + try: + if ("succeed_on_not_found" in waiter_kwargs) and (waiter_kwargs["succeed_on_not_found"] is False): + self.client.base_client.logger.warning("The waiter kwarg succeed_on_not_found was passed as False for the delete composite operation delete_offer_quote, this would result in the operation to fail if the resource is not found! Please, do not pass this kwarg if this was not intended") + else: + """ + If the user does not send in this value, we set it to True by default. + We are doing this because during a delete resource scenario and waiting on its state, the service can + return a 404 NOT FOUND exception as the resource was deleted and a get on its state would fail + """ + waiter_kwargs["succeed_on_not_found"] = True + waiter_result = oci.wait_until( + self.client, + initial_get_result, # noqa: F821 + evaluate_response=lambda r: getattr(r.data, 'lifecycle_state') and getattr(r.data, 'lifecycle_state').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except (NameError, TypeError) as e: + if not e.args: + e.args = ('',) + e.args = e.args + ('This composite operation is currently not supported in the SDK. Please use the operation from the service client and use waiters as an alternative. For more information on waiters, visit: "https://docs.oracle.com/en-us/iaas/tools/python/latest/api/waiters.html"', ) + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def update_offer_quote_and_wait_for_state(self, offer_quote_id, update_offer_quote_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.marketplace_private_offer.OfferQuoteClient.update_offer_quote` and waits for the :py:class:`~oci.marketplace_private_offer.models.OfferQuote` acted upon + to enter the given state(s). + + :param str offer_quote_id: (required) + Unique offer quote identifier. + + :param oci.marketplace_private_offer.models.UpdateOfferQuoteDetails update_offer_quote_details: (required) + The information to be updated. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.marketplace_private_offer.models.OfferQuote.lifecycle_state` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.marketplace_private_offer.OfferQuoteClient.update_offer_quote` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.update_offer_quote(offer_quote_id, update_offer_quote_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + offer_quote_id = operation_result.data.id + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_offer_quote(offer_quote_id), # noqa: F821 + evaluate_response=lambda r: getattr(r.data, 'lifecycle_state') and getattr(r.data, 'lifecycle_state').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except (NameError, TypeError) as e: + if not e.args: + e.args = ('',) + e.args = e.args + ('This composite operation is currently not supported in the SDK. Please use the operation from the service client and use waiters as an alternative. For more information on waiters, visit: "https://docs.oracle.com/en-us/iaas/tools/python/latest/api/waiters.html"', ) + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) diff --git a/src/oci/marketplace_private_offer/quote_attachment_client.py b/src/oci/marketplace_private_offer/quote_attachment_client.py new file mode 100644 index 0000000000..074fcd009b --- /dev/null +++ b/src/oci/marketplace_private_offer/quote_attachment_client.py @@ -0,0 +1,762 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220901 + +from __future__ import absolute_import + +from oci._vendor import requests # noqa: F401 +from oci._vendor import six + +from oci import retry, circuit_breaker # noqa: F401 +from oci.base_client import BaseClient +from oci.config import get_config_value_or_default, validate_config +from oci.signer import Signer +from oci.util import Sentinel, get_signer_from_authentication_type, AUTHENTICATION_TYPE_FIELD_NAME +from oci.exceptions import InvalidDeveloperToolConfiguration +from oci.developer_tool_configuration import OCI_SDK_ENABLED_SERVICES_SET +from .models import marketplace_private_offer_type_mapping +missing = Sentinel("Missing") + + +class QuoteAttachmentClient(object): + """ + Use the Marketplace Publisher API to manage the publishing of applications in Oracle Cloud Infrastructure Marketplace. + """ + + def __init__(self, config, **kwargs): + """ + Creates a new service client + + :param dict config: + Configuration keys and values as per `SDK and Tool Configuration `__. + The :py:meth:`~oci.config.from_file` method can be used to load configuration from a file. Alternatively, a ``dict`` can be passed. You can validate_config + the dict using :py:meth:`~oci.config.validate_config` + + :param str service_endpoint: (optional) + The endpoint of the service to call using this client. For example ``https://iaas.us-ashburn-1.oraclecloud.com``. If this keyword argument is + not provided then it will be derived using the region in the config parameter. You should only provide this keyword argument if you have an explicit + need to specify a service endpoint. + + :param timeout: (optional) + The connection and read timeouts for the client. The default values are connection timeout 10 seconds and read timeout 60 seconds. This keyword argument can be provided + as a single float, in which case the value provided is used for both the read and connection timeouts, or as a tuple of two floats. If + a tuple is provided then the first value is used as the connection timeout and the second value as the read timeout. + :type timeout: float or tuple(float, float) + + :param signer: (optional) + The signer to use when signing requests made by the service client. The default is to use a :py:class:`~oci.signer.Signer` based on the values + provided in the config parameter. + + One use case for this parameter is for `Instance Principals authentication `__ + by passing an instance of :py:class:`~oci.auth.signers.InstancePrincipalsSecurityTokenSigner` as the value for this keyword argument + :type signer: :py:class:`~oci.signer.AbstractBaseSigner` + + :param obj retry_strategy: (optional) + A retry strategy to apply to all calls made by this service client (i.e. at the client level). There is no retry strategy applied by default. + Retry strategies can also be applied at the operation level by passing a ``retry_strategy`` keyword argument as part of calling the operation. + Any value provided at the operation level will override whatever is specified at the client level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` + is also available. The specifics of the default retry strategy are described `here `__. + + :param obj circuit_breaker_strategy: (optional) + A circuit breaker strategy to apply to all calls made by this service client (i.e. at the client level). + This client uses :py:data:`~oci.circuit_breaker.DEFAULT_CIRCUIT_BREAKER_STRATEGY` as default if no circuit breaker strategy is provided. + The specifics of circuit breaker strategy are described `here `__. + + :param function circuit_breaker_callback: (optional) + Callback function to receive any exceptions triggerred by the circuit breaker. + + :param bool client_level_realm_specific_endpoint_template_enabled: (optional) + A boolean flag to indicate whether or not this client should be created with realm specific endpoint template enabled or disable. By default, this will be set as None. + + :param allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this client should allow control characters in the response object. By default, the client will not + allow control characters to be in the response object. + + :param enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this client should enable strict url encoding in path params of a request. + By default, the client will not enable strict url encoding + """ + if not OCI_SDK_ENABLED_SERVICES_SET.is_service_enabled("marketplace_private_offer"): + raise InvalidDeveloperToolConfiguration("The Developer Tool Configuration has disabled this service, this behavior is controlled by OCI_SDK_ENABLED_SERVICES_SET variable. Please check if your local developer-tool-configuration file configured the service you're targeting or contact the cloud provider on the availability of this service") + + validate_config(config, signer=kwargs.get('signer')) + if 'signer' in kwargs: + signer = kwargs['signer'] + + elif AUTHENTICATION_TYPE_FIELD_NAME in config: + signer = get_signer_from_authentication_type(config) + + else: + signer = Signer( + tenancy=config["tenancy"], + user=config["user"], + fingerprint=config["fingerprint"], + private_key_file_location=config.get("key_file"), + pass_phrase=get_config_value_or_default(config, "pass_phrase"), + private_key_content=config.get("key_content") + ) + + base_client_init_kwargs = { + 'regional_client': True, + 'service_endpoint': kwargs.get('service_endpoint'), + 'base_path': '/20220901', + 'service_endpoint_template': 'https://private-offer.{region}.oci.{secondLevelDomain}', + 'service_endpoint_template_per_realm': { }, # noqa: E201 E202 + 'service_uses_dualstack_endpoints_by_default': False, + 'skip_deserialization': kwargs.get('skip_deserialization', False), + 'circuit_breaker_strategy': kwargs.get('circuit_breaker_strategy', circuit_breaker.GLOBAL_CIRCUIT_BREAKER_STRATEGY), + 'client_level_realm_specific_endpoint_template_enabled': kwargs.get('client_level_realm_specific_endpoint_template_enabled'), + 'client_level_dualstack_endpoints_enabled': kwargs.get('client_level_dualstack_endpoints_enabled') + } + if 'timeout' in kwargs: + base_client_init_kwargs['timeout'] = kwargs.get('timeout') + if base_client_init_kwargs.get('circuit_breaker_strategy') is None: + base_client_init_kwargs['circuit_breaker_strategy'] = circuit_breaker.DEFAULT_CIRCUIT_BREAKER_STRATEGY + if 'allow_control_chars' in kwargs: + base_client_init_kwargs['allow_control_chars'] = kwargs.get('allow_control_chars') + if 'enable_strict_url_encoding' in kwargs: + base_client_init_kwargs['enable_strict_url_encoding'] = kwargs.get('enable_strict_url_encoding') + self.base_client = BaseClient("quote_attachment", config, signer, marketplace_private_offer_type_mapping, **base_client_init_kwargs) + self.retry_strategy = kwargs.get('retry_strategy') + self.circuit_breaker_callback = kwargs.get('circuit_breaker_callback') + + def create_quote_attachment(self, offer_quote_id, create_quote_attachment_details, **kwargs): + """ + Creates a new offer quote attachment. + + + :param str offer_quote_id: (required) + Unique offer quote identifier. + + :param oci.marketplace_private_offer.models.CreateQuoteAttachmentDetails create_quote_attachment_details: (required) + Details for the new offer quote attachment. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.marketplace_private_offer.models.QuoteAttachment` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use create_quote_attachment API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['offerQuoteId'] + resource_path = "/offerQuotes/{offerQuoteId}/quoteAttachments" + method = "POST" + operation_name = "create_quote_attachment" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id", + "opc_retry_token" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"create_quote_attachment got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "offerQuoteId": offer_quote_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=create_quote_attachment_details, + response_type="QuoteAttachment", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=create_quote_attachment_details, + response_type="QuoteAttachment", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def delete_quote_attachment(self, offer_quote_id, quote_attachment_id, **kwargs): + """ + Deletes an offer quote attachment resource by identifier. + + + :param str offer_quote_id: (required) + Unique offer quote identifier. + + :param str quote_attachment_id: (required) + Unique offer quote attachment identifier. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use delete_quote_attachment API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['offerQuoteId', 'quoteAttachmentId'] + resource_path = "/offerQuotes/{offerQuoteId}/quoteAttachments/{quoteAttachmentId}" + method = "DELETE" + operation_name = "delete_quote_attachment" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"delete_quote_attachment got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "offerQuoteId": offer_quote_id, + "quoteAttachmentId": quote_attachment_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def get_quote_attachment(self, offer_quote_id, quote_attachment_id, **kwargs): + """ + Gets an offer quote attachment by identifier. + + + :param str offer_quote_id: (required) + Unique offer quote identifier. + + :param str quote_attachment_id: (required) + Unique offer quote attachment identifier. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.marketplace_private_offer.models.QuoteAttachment` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_quote_attachment API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['offerQuoteId', 'quoteAttachmentId'] + resource_path = "/offerQuotes/{offerQuoteId}/quoteAttachments/{quoteAttachmentId}" + method = "GET" + operation_name = "get_quote_attachment" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"get_quote_attachment got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "offerQuoteId": offer_quote_id, + "quoteAttachmentId": quote_attachment_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="QuoteAttachment", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="QuoteAttachment", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def get_quote_attachment_content(self, offer_quote_id, quote_attachment_id, **kwargs): + """ + Gets an offer quote attachment content by identifier. + + + :param str offer_quote_id: (required) + Unique offer quote identifier. + + :param str quote_attachment_id: (required) + Unique offer quote attachment identifier. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type stream + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_quote_attachment_content API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['offerQuoteId', 'quoteAttachmentId'] + resource_path = "/offerQuotes/{offerQuoteId}/quoteAttachments/{quoteAttachmentId}/content" + method = "GET" + operation_name = "get_quote_attachment_content" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"get_quote_attachment_content got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "offerQuoteId": offer_quote_id, + "quoteAttachmentId": quote_attachment_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="stream", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="stream", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_quote_attachments(self, offer_quote_id, **kwargs): + """ + Returns a list of offer quote attachments. Requires either a reseller compartment ID or an ISV compartment ID. + + + :param str offer_quote_id: (required) + Unique offer quote identifier. + + :param str reseller_compartment_id: (optional) + OCID of the reseller's compartment. + + :param str isv_compartment_id: (optional) + OCID of the ISV's compartment. + + :param str lifecycle_state: (optional) + A filter to return only resources their lifecycleState matches the given lifecycleState. + + Allowed values are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED" + + :param str display_name: (optional) + A filter to return only resources that match the entire display name given. + + :param str id: (optional) + Unique offer quote attachment identifier. + + :param int limit: (optional) + The maximum number of items to return. + + :param str page: (optional) + A token representing the position at which to start retrieving results. This must come from the `opc-next-page` header field of a previous response. + + :param str sort_order: (optional) + The sort order to use, either 'ASC' or 'DESC'. + + Allowed values are: "ASC", "DESC" + + :param str sort_by: (optional) + The field to sort by. Only one sort order may be provided. Default order for timeCreated is descending. Default order for displayName is ascending. + + Allowed values are: "timeCreated", "displayName" + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.marketplace_private_offer.models.QuoteAttachmentCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_quote_attachments API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['offerQuoteId'] + resource_path = "/offerQuotes/{offerQuoteId}/quoteAttachments" + method = "GET" + operation_name = "list_quote_attachments" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "reseller_compartment_id", + "isv_compartment_id", + "lifecycle_state", + "display_name", + "id", + "limit", + "page", + "sort_order", + "sort_by", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_quote_attachments got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "offerQuoteId": offer_quote_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + if 'lifecycle_state' in kwargs: + lifecycle_state_allowed_values = ["CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED"] + if kwargs['lifecycle_state'] not in lifecycle_state_allowed_values: + raise ValueError( + f"Invalid value for `lifecycle_state`, must be one of { lifecycle_state_allowed_values }" + ) + + if 'sort_order' in kwargs: + sort_order_allowed_values = ["ASC", "DESC"] + if kwargs['sort_order'] not in sort_order_allowed_values: + raise ValueError( + f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + ) + + if 'sort_by' in kwargs: + sort_by_allowed_values = ["timeCreated", "displayName"] + if kwargs['sort_by'] not in sort_by_allowed_values: + raise ValueError( + f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" + ) + + query_params = { + "resellerCompartmentId": kwargs.get("reseller_compartment_id", missing), + "isvCompartmentId": kwargs.get("isv_compartment_id", missing), + "lifecycleState": kwargs.get("lifecycle_state", missing), + "displayName": kwargs.get("display_name", missing), + "id": kwargs.get("id", missing), + "limit": kwargs.get("limit", missing), + "page": kwargs.get("page", missing), + "sortOrder": kwargs.get("sort_order", missing), + "sortBy": kwargs.get("sort_by", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="QuoteAttachmentCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="QuoteAttachmentCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) diff --git a/src/oci/marketplace_private_offer/quote_attachment_client_composite_operations.py b/src/oci/marketplace_private_offer/quote_attachment_client_composite_operations.py new file mode 100644 index 0000000000..1dc3fc4053 --- /dev/null +++ b/src/oci/marketplace_private_offer/quote_attachment_client_composite_operations.py @@ -0,0 +1,71 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20220901 + +import oci # noqa: F401 +from oci.util import WAIT_RESOURCE_NOT_FOUND # noqa: F401 + + +class QuoteAttachmentClientCompositeOperations(object): + """ + This class provides a wrapper around :py:class:`~oci.marketplace_private_offer.QuoteAttachmentClient` and offers convenience methods + for operations that would otherwise need to be chained together. For example, instead of performing an action + on a resource (e.g. launching an instance, creating a load balancer) and then using a waiter to wait for the resource + to enter a given state, you can call a single method in this class to accomplish the same functionality + """ + + def __init__(self, client, **kwargs): + """ + Creates a new QuoteAttachmentClientCompositeOperations object + + :param QuoteAttachmentClient client: + The service client which will be wrapped by this object + """ + self.client = client + + def create_quote_attachment_and_wait_for_state(self, offer_quote_id, create_quote_attachment_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.marketplace_private_offer.QuoteAttachmentClient.create_quote_attachment` and waits for the :py:class:`~oci.marketplace_private_offer.models.QuoteAttachment` acted upon + to enter the given state(s). + + :param str offer_quote_id: (required) + Unique offer quote identifier. + + :param oci.marketplace_private_offer.models.CreateQuoteAttachmentDetails create_quote_attachment_details: (required) + Details for the new offer quote attachment. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.marketplace_private_offer.models.QuoteAttachment.lifecycle_state` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.marketplace_private_offer.QuoteAttachmentClient.create_quote_attachment` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.create_quote_attachment(offer_quote_id, create_quote_attachment_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + quote_attachment_id = operation_result.data.id + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_quote_attachment(offer_quote_id, quote_attachment_id), # noqa: F821 + evaluate_response=lambda r: getattr(r.data, 'lifecycle_state') and getattr(r.data, 'lifecycle_state').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except (NameError, TypeError) as e: + if not e.args: + e.args = ('',) + e.args = e.args + ('This composite operation is currently not supported in the SDK. Please use the operation from the service client and use waiters as an alternative. For more information on waiters, visit: "https://docs.oracle.com/en-us/iaas/tools/python/latest/api/waiters.html"', ) + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) diff --git a/src/oci/object_storage/transfer/internal/md5.py b/src/oci/object_storage/transfer/internal/md5.py index e67fe37ffd..5cdf299ca8 100644 --- a/src/oci/object_storage/transfer/internal/md5.py +++ b/src/oci/object_storage/transfer/internal/md5.py @@ -4,6 +4,59 @@ from cryptography.hazmat.backends import default_backend from cryptography.hazmat.primitives import hashes +from cryptography.exceptions import InternalError +from cryptography.exceptions import UnsupportedAlgorithm +import hashlib + + +def create_checksum_md5(): + """ + Return an MD5 hasher for Object Storage integrity checks. + + Object Storage uses base64-encoded MD5 values for Content-MD5 and + multipart upload checksum validation. In this context MD5 is a transport + integrity checksum, not a security primitive. + + This helper intentionally probes MD5 constructor availability instead of + branching on oci.fips.is_fips_mode(). Some FIPS-enabled hosts can report + false negatives through runtime FIPS detection, while the actual MD5 + constructor behavior is the only thing the upload path needs to know. + + The fallback order is: + * hashlib.md5(usedforsecurity=False), for Python versions that support + explicitly non-security MD5 use. + * hashlib.new('md5', usedforsecurity=False), for environments where the + generic constructor is available but the named constructor is not. + * hashlib.md5(), for older or non-FIPS environments. + * This module's cryptography-backed md5 wrapper. + + :return: A hash object with update(bytes) and digest() methods. + :raises ValueError: If no usable MD5 implementation is available. + """ + try: + return hashlib.md5(usedforsecurity=False) + except TypeError: + # Python versions before 3.9 do not support usedforsecurity. + pass + except ValueError: + pass + + try: + return hashlib.new('md5', usedforsecurity=False) + except TypeError: + pass + except ValueError: + pass + + try: + return hashlib.md5() + except ValueError: + pass + + try: + return md5() + except (InternalError, UnsupportedAlgorithm, ValueError) as ex: + raise ValueError("Unable to create MD5 checksum for Object Storage upload") from ex class md5: diff --git a/src/oci/object_storage/transfer/internal/multipart_object_assembler.py b/src/oci/object_storage/transfer/internal/multipart_object_assembler.py index d8d45f6cce..ad8933726a 100644 --- a/src/oci/object_storage/transfer/internal/multipart_object_assembler.py +++ b/src/oci/object_storage/transfer/internal/multipart_object_assembler.py @@ -3,14 +3,12 @@ # This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. import io -import hashlib import base64 import logging import platform from . import md5 as MD5 from multiprocessing.dummy import Pool from os import stat -from cryptography.exceptions import InternalError from ..constants import DEFAULT_PART_SIZE from ..constants import MEBIBYTE from .buffered_part_reader import BufferedPartReader @@ -21,7 +19,6 @@ from oci._vendor.six.moves.queue import Queue from threading import Semaphore from oci._vendor import six -from oci.fips import is_fips_mode from ....version import __version__ from ..internal.additional_checksum import Checksum @@ -203,18 +200,7 @@ def calculate_md5(file_path, offset, chunk): :rtype: str """ - # Determine if we can use the hashlib version of md5 or the bundled - # version of md5 - if is_fips_mode(): - try: - md5 = MD5.md5() - except InternalError as ex: - logger.warning("An exception occur due to {}. Fallback to using hashlib.new('md5', usedforsecurity=false) for md5.".format(ex)) - md5 = hashlib.new('md5', usedforsecurity=False) - else: - md5 = hashlib.md5() - - m = md5 + m = MD5.create_checksum_md5() with io.open(file_path, mode='rb') as f: bpr = BufferedPartReader(f, offset, chunk) while True: @@ -534,16 +520,7 @@ def _upload_part(self, part_num, part, **kwargs): def _upload_stream_part(self, part_num, part_bytes, **kwargs): try: - if is_fips_mode(): - try: - m = MD5.md5() - except InternalError as ex: - logger.warning( - "An exception occur due to {}. Fallback to using hashlib.new('md5', usedforsecurity=false) for md5.".format( - ex)) - m = hashlib.new('md5', usedforsecurity=False) - else: - m = hashlib.md5() + m = MD5.create_checksum_md5() m.update(part_bytes) diff --git a/src/oci/opensearch/models/update_opensearch_cluster_details.py b/src/oci/opensearch/models/update_opensearch_cluster_details.py index f02f1c269a..243cfb2115 100644 --- a/src/oci/opensearch/models/update_opensearch_cluster_details.py +++ b/src/oci/opensearch/models/update_opensearch_cluster_details.py @@ -62,6 +62,10 @@ def __init__(self, **kwargs): The value to assign to the backup_policy property of this UpdateOpensearchClusterDetails. :type backup_policy: oci.opensearch.models.BackupPolicy + :param nsg_id: + The value to assign to the nsg_id property of this UpdateOpensearchClusterDetails. + :type nsg_id: str + :param reverse_connection_endpoint_customer_ips: The value to assign to the reverse_connection_endpoint_customer_ips property of this UpdateOpensearchClusterDetails. :type reverse_connection_endpoint_customer_ips: list[str] @@ -103,6 +107,7 @@ def __init__(self, **kwargs): 'security_master_user_password_hash': 'str', 'security_saml_config': 'SecuritySamlConfig', 'backup_policy': 'BackupPolicy', + 'nsg_id': 'str', 'reverse_connection_endpoint_customer_ips': 'list[str]', 'outbound_cluster_config': 'OutboundClusterConfig', 'maintenance_details': 'UpdateMaintenanceDetails', @@ -120,6 +125,7 @@ def __init__(self, **kwargs): 'security_master_user_password_hash': 'securityMasterUserPasswordHash', 'security_saml_config': 'securitySamlConfig', 'backup_policy': 'backupPolicy', + 'nsg_id': 'nsgId', 'reverse_connection_endpoint_customer_ips': 'reverseConnectionEndpointCustomerIps', 'outbound_cluster_config': 'outboundClusterConfig', 'maintenance_details': 'maintenanceDetails', @@ -136,6 +142,7 @@ def __init__(self, **kwargs): self._security_master_user_password_hash = None self._security_saml_config = None self._backup_policy = None + self._nsg_id = None self._reverse_connection_endpoint_customer_ips = None self._outbound_cluster_config = None self._maintenance_details = None @@ -308,6 +315,30 @@ def backup_policy(self, backup_policy): """ self._backup_policy = backup_policy + @property + def nsg_id(self): + """ + Gets the nsg_id of this UpdateOpensearchClusterDetails. + The OCID of the NSG where the private endpoint vnic will be attached. + + + :return: The nsg_id of this UpdateOpensearchClusterDetails. + :rtype: str + """ + return self._nsg_id + + @nsg_id.setter + def nsg_id(self, nsg_id): + """ + Sets the nsg_id of this UpdateOpensearchClusterDetails. + The OCID of the NSG where the private endpoint vnic will be attached. + + + :param nsg_id: The nsg_id of this UpdateOpensearchClusterDetails. + :type: str + """ + self._nsg_id = nsg_id + @property def reverse_connection_endpoint_customer_ips(self): """ diff --git a/src/oci/self/models/__init__.py b/src/oci/self/models/__init__.py index a7f885a480..3257adbb10 100644 --- a/src/oci/self/models/__init__.py +++ b/src/oci/self/models/__init__.py @@ -9,22 +9,29 @@ from .activate_subscription_details import ActivateSubscriptionDetails from .activate_subscription_result import ActivateSubscriptionResult from .billing_details import BillingDetails +from .cancel_subscription_details import CancelSubscriptionDetails from .change_subscription_compartment_details import ChangeSubscriptionCompartmentDetails from .create_subscription_details import CreateSubscriptionDetails +from .create_subscription_usage_record_details import CreateSubscriptionUsageRecordDetails from .extended_metadata import ExtendedMetadata from .listing_subscription_summary import ListingSubscriptionSummary from .listing_subscriptions_collection import ListingSubscriptionsCollection from .meter import Meter +from .partner import Partner +from .partner_collection import PartnerCollection from .partner_subscription import PartnerSubscription +from .partner_summary import PartnerSummary from .pricing_plan import PricingPlan from .pricing_rate import PricingRate from .resolve_subscription_details import ResolveSubscriptionDetails +from .submit_subscription_usage_records_details import SubmitSubscriptionUsageRecordsDetails from .subscription import Subscription from .subscription_collection import SubscriptionCollection from .subscription_details import SubscriptionDetails from .subscription_summary import SubscriptionSummary from .subscription_token import SubscriptionToken from .update_subscription_details import UpdateSubscriptionDetails +from .usage_dimension import UsageDimension from .work_request import WorkRequest from .work_request_error import WorkRequestError from .work_request_error_collection import WorkRequestErrorCollection @@ -39,22 +46,29 @@ "ActivateSubscriptionDetails": ActivateSubscriptionDetails, "ActivateSubscriptionResult": ActivateSubscriptionResult, "BillingDetails": BillingDetails, + "CancelSubscriptionDetails": CancelSubscriptionDetails, "ChangeSubscriptionCompartmentDetails": ChangeSubscriptionCompartmentDetails, "CreateSubscriptionDetails": CreateSubscriptionDetails, + "CreateSubscriptionUsageRecordDetails": CreateSubscriptionUsageRecordDetails, "ExtendedMetadata": ExtendedMetadata, "ListingSubscriptionSummary": ListingSubscriptionSummary, "ListingSubscriptionsCollection": ListingSubscriptionsCollection, "Meter": Meter, + "Partner": Partner, + "PartnerCollection": PartnerCollection, "PartnerSubscription": PartnerSubscription, + "PartnerSummary": PartnerSummary, "PricingPlan": PricingPlan, "PricingRate": PricingRate, "ResolveSubscriptionDetails": ResolveSubscriptionDetails, + "SubmitSubscriptionUsageRecordsDetails": SubmitSubscriptionUsageRecordsDetails, "Subscription": Subscription, "SubscriptionCollection": SubscriptionCollection, "SubscriptionDetails": SubscriptionDetails, "SubscriptionSummary": SubscriptionSummary, "SubscriptionToken": SubscriptionToken, "UpdateSubscriptionDetails": UpdateSubscriptionDetails, + "UsageDimension": UsageDimension, "WorkRequest": WorkRequest, "WorkRequestError": WorkRequestError, "WorkRequestErrorCollection": WorkRequestErrorCollection, diff --git a/src/oci/self/models/activate_subscription_result.py b/src/oci/self/models/activate_subscription_result.py index 740324aea5..75c7744e7d 100644 --- a/src/oci/self/models/activate_subscription_result.py +++ b/src/oci/self/models/activate_subscription_result.py @@ -79,6 +79,18 @@ class ActivateSubscriptionResult(object): #: This constant has a value of "DELETED" LIFECYCLE_DETAILS_DELETED = "DELETED" + #: A constant which can be used with the lifecycle_details property of a ActivateSubscriptionResult. + #: This constant has a value of "PENDING_CANCELLATION" + LIFECYCLE_DETAILS_PENDING_CANCELLATION = "PENDING_CANCELLATION" + + #: A constant which can be used with the lifecycle_details property of a ActivateSubscriptionResult. + #: This constant has a value of "SUSPENDED" + LIFECYCLE_DETAILS_SUSPENDED = "SUSPENDED" + + #: A constant which can be used with the lifecycle_details property of a ActivateSubscriptionResult. + #: This constant has a value of "CANCELED" + LIFECYCLE_DETAILS_CANCELED = "CANCELED" + def __init__(self, **kwargs): """ Initializes a new ActivateSubscriptionResult object with values from keyword arguments. @@ -108,7 +120,7 @@ def __init__(self, **kwargs): :param lifecycle_details: The value to assign to the lifecycle_details property of this ActivateSubscriptionResult. - Allowed values for this property are: "CREATED", "PENDING_ACTIVATION", "PROVISIONING_STARTED", "PROVISIONING_COMPLETED", "PROVISIONING_FAILED", "ACTIVE", "EXPIRED", "TERMINATED", "FAILED", "DELETING", "UPDATING", "DELETED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATED", "PENDING_ACTIVATION", "PROVISIONING_STARTED", "PROVISIONING_COMPLETED", "PROVISIONING_FAILED", "ACTIVE", "EXPIRED", "TERMINATED", "FAILED", "DELETING", "UPDATING", "DELETED", "PENDING_CANCELLATION", "SUSPENDED", "CANCELED", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_details: str @@ -269,7 +281,7 @@ def lifecycle_details(self): A message that describes the current state of the Subscription in more detail. For example, can be used to provide actionable information for a resource in the Failed state. - Allowed values for this property are: "CREATED", "PENDING_ACTIVATION", "PROVISIONING_STARTED", "PROVISIONING_COMPLETED", "PROVISIONING_FAILED", "ACTIVE", "EXPIRED", "TERMINATED", "FAILED", "DELETING", "UPDATING", "DELETED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATED", "PENDING_ACTIVATION", "PROVISIONING_STARTED", "PROVISIONING_COMPLETED", "PROVISIONING_FAILED", "ACTIVE", "EXPIRED", "TERMINATED", "FAILED", "DELETING", "UPDATING", "DELETED", "PENDING_CANCELLATION", "SUSPENDED", "CANCELED", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -289,7 +301,7 @@ def lifecycle_details(self, lifecycle_details): :param lifecycle_details: The lifecycle_details of this ActivateSubscriptionResult. :type: str """ - allowed_values = ["CREATED", "PENDING_ACTIVATION", "PROVISIONING_STARTED", "PROVISIONING_COMPLETED", "PROVISIONING_FAILED", "ACTIVE", "EXPIRED", "TERMINATED", "FAILED", "DELETING", "UPDATING", "DELETED"] + allowed_values = ["CREATED", "PENDING_ACTIVATION", "PROVISIONING_STARTED", "PROVISIONING_COMPLETED", "PROVISIONING_FAILED", "ACTIVE", "EXPIRED", "TERMINATED", "FAILED", "DELETING", "UPDATING", "DELETED", "PENDING_CANCELLATION", "SUSPENDED", "CANCELED"] if not value_allowed_none_or_none_sentinel(lifecycle_details, allowed_values): lifecycle_details = 'UNKNOWN_ENUM_VALUE' self._lifecycle_details = lifecycle_details diff --git a/src/oci/self/models/billing_details.py b/src/oci/self/models/billing_details.py index 5403c04702..bcbf87ae5e 100644 --- a/src/oci/self/models/billing_details.py +++ b/src/oci/self/models/billing_details.py @@ -12,9 +12,17 @@ @init_model_state_from_kwargs class BillingDetails(object): """ - Sku details for billing subscription. + Billing detail entry associated with a subscription. """ + #: A constant which can be used with the billing_model property of a BillingDetails. + #: This constant has a value of "FLAT_RATE" + BILLING_MODEL_FLAT_RATE = "FLAT_RATE" + + #: A constant which can be used with the billing_model property of a BillingDetails. + #: This constant has a value of "USAGE_BASED" + BILLING_MODEL_USAGE_BASED = "USAGE_BASED" + #: A constant which can be used with the metric_type property of a BillingDetails. #: This constant has a value of "OCPU_HOURS" METRIC_TYPE_OCPU_HOURS = "OCPU_HOURS" @@ -27,18 +35,32 @@ class BillingDetails(object): #: This constant has a value of "CORE_HOURS" METRIC_TYPE_CORE_HOURS = "CORE_HOURS" + #: A constant which can be used with the metric_type property of a BillingDetails. + #: This constant has a value of "EACH" + METRIC_TYPE_EACH = "EACH" + def __init__(self, **kwargs): """ Initializes a new BillingDetails object with values from keyword arguments. The following keyword arguments are supported (corresponding to the getters/setters of this class): + :param pricing_plan_key: + The value to assign to the pricing_plan_key property of this BillingDetails. + :type pricing_plan_key: str + + :param billing_model: + The value to assign to the billing_model property of this BillingDetails. + Allowed values for this property are: "FLAT_RATE", "USAGE_BASED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type billing_model: str + :param sku: The value to assign to the sku property of this BillingDetails. :type sku: str :param metric_type: The value to assign to the metric_type property of this BillingDetails. - Allowed values for this property are: "OCPU_HOURS", "INSTANCE_HOURS", "CORE_HOURS", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "OCPU_HOURS", "INSTANCE_HOURS", "CORE_HOURS", "EACH", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type metric_type: str @@ -56,6 +78,8 @@ def __init__(self, **kwargs): """ self.swagger_types = { + 'pricing_plan_key': 'str', + 'billing_model': 'str', 'sku': 'str', 'metric_type': 'str', 'rate_allocation': 'float', @@ -63,18 +87,76 @@ def __init__(self, **kwargs): 'meters': 'list[Meter]' } self.attribute_map = { + 'pricing_plan_key': 'pricingPlanKey', + 'billing_model': 'billingModel', 'sku': 'sku', 'metric_type': 'metricType', 'rate_allocation': 'rateAllocation', 'has_gov_sku': 'hasGovSku', 'meters': 'meters' } + self._pricing_plan_key = None + self._billing_model = None self._sku = None self._metric_type = None self._rate_allocation = None self._has_gov_sku = None self._meters = None + @property + def pricing_plan_key(self): + """ + **[Required]** Gets the pricing_plan_key of this BillingDetails. + Unique key used to map this SKU to the pricing plan. + + + :return: The pricing_plan_key of this BillingDetails. + :rtype: str + """ + return self._pricing_plan_key + + @pricing_plan_key.setter + def pricing_plan_key(self, pricing_plan_key): + """ + Sets the pricing_plan_key of this BillingDetails. + Unique key used to map this SKU to the pricing plan. + + + :param pricing_plan_key: The pricing_plan_key of this BillingDetails. + :type: str + """ + self._pricing_plan_key = pricing_plan_key + + @property + def billing_model(self): + """ + **[Required]** Gets the billing_model of this BillingDetails. + The billing model this billing detail applies to. + + Allowed values for this property are: "FLAT_RATE", "USAGE_BASED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The billing_model of this BillingDetails. + :rtype: str + """ + return self._billing_model + + @billing_model.setter + def billing_model(self, billing_model): + """ + Sets the billing_model of this BillingDetails. + The billing model this billing detail applies to. + + + :param billing_model: The billing_model of this BillingDetails. + :type: str + """ + allowed_values = ["FLAT_RATE", "USAGE_BASED"] + if not value_allowed_none_or_none_sentinel(billing_model, allowed_values): + billing_model = 'UNKNOWN_ENUM_VALUE' + self._billing_model = billing_model + @property def sku(self): """ @@ -105,7 +187,7 @@ def metric_type(self): **[Required]** Gets the metric_type of this BillingDetails. The part's metric. - Allowed values for this property are: "OCPU_HOURS", "INSTANCE_HOURS", "CORE_HOURS", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "OCPU_HOURS", "INSTANCE_HOURS", "CORE_HOURS", "EACH", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -124,7 +206,7 @@ def metric_type(self, metric_type): :param metric_type: The metric_type of this BillingDetails. :type: str """ - allowed_values = ["OCPU_HOURS", "INSTANCE_HOURS", "CORE_HOURS"] + allowed_values = ["OCPU_HOURS", "INSTANCE_HOURS", "CORE_HOURS", "EACH"] if not value_allowed_none_or_none_sentinel(metric_type, allowed_values): metric_type = 'UNKNOWN_ENUM_VALUE' self._metric_type = metric_type diff --git a/src/oci/self/models/cancel_subscription_details.py b/src/oci/self/models/cancel_subscription_details.py new file mode 100644 index 0000000000..0bbc7d2c74 --- /dev/null +++ b/src/oci/self/models/cancel_subscription_details.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260129 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CancelSubscriptionDetails(object): + """ + The data to cancel a Subscription. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CancelSubscriptionDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param reason: + The value to assign to the reason property of this CancelSubscriptionDetails. + :type reason: str + + """ + self.swagger_types = { + 'reason': 'str' + } + self.attribute_map = { + 'reason': 'reason' + } + self._reason = None + + @property + def reason(self): + """ + Gets the reason of this CancelSubscriptionDetails. + Optional reason provided by the customer for the cancellation. + + + :return: The reason of this CancelSubscriptionDetails. + :rtype: str + """ + return self._reason + + @reason.setter + def reason(self, reason): + """ + Sets the reason of this CancelSubscriptionDetails. + Optional reason provided by the customer for the cancellation. + + + :param reason: The reason of this CancelSubscriptionDetails. + :type: str + """ + self._reason = reason + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/self/models/create_subscription_usage_record_details.py b/src/oci/self/models/create_subscription_usage_record_details.py new file mode 100644 index 0000000000..5ac1e70ff5 --- /dev/null +++ b/src/oci/self/models/create_subscription_usage_record_details.py @@ -0,0 +1,658 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260129 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateSubscriptionUsageRecordDetails(object): + """ + A single usage record to submit for a marketplace offer. The usage window must have + `timeUsageStarted` before `timeUsageEnded`. + """ + + #: A constant which can be used with the billing_type property of a CreateSubscriptionUsageRecordDetails. + #: This constant has a value of "FLAT_RATE" + BILLING_TYPE_FLAT_RATE = "FLAT_RATE" + + #: A constant which can be used with the billing_type property of a CreateSubscriptionUsageRecordDetails. + #: This constant has a value of "USAGE_BASED" + BILLING_TYPE_USAGE_BASED = "USAGE_BASED" + + #: A constant which can be used with the contract_duration property of a CreateSubscriptionUsageRecordDetails. + #: This constant has a value of "MONTHLY" + CONTRACT_DURATION_MONTHLY = "MONTHLY" + + #: A constant which can be used with the contract_duration property of a CreateSubscriptionUsageRecordDetails. + #: This constant has a value of "QUARTERLY" + CONTRACT_DURATION_QUARTERLY = "QUARTERLY" + + #: A constant which can be used with the contract_duration property of a CreateSubscriptionUsageRecordDetails. + #: This constant has a value of "SEMI_ANNUAL" + CONTRACT_DURATION_SEMI_ANNUAL = "SEMI_ANNUAL" + + #: A constant which can be used with the contract_duration property of a CreateSubscriptionUsageRecordDetails. + #: This constant has a value of "ANNUAL" + CONTRACT_DURATION_ANNUAL = "ANNUAL" + + #: A constant which can be used with the contract_duration property of a CreateSubscriptionUsageRecordDetails. + #: This constant has a value of "BIENNIAL" + CONTRACT_DURATION_BIENNIAL = "BIENNIAL" + + #: A constant which can be used with the contract_duration property of a CreateSubscriptionUsageRecordDetails. + #: This constant has a value of "TRIENNIAL" + CONTRACT_DURATION_TRIENNIAL = "TRIENNIAL" + + #: A constant which can be used with the contract_duration property of a CreateSubscriptionUsageRecordDetails. + #: This constant has a value of "YEARLY" + CONTRACT_DURATION_YEARLY = "YEARLY" + + def __init__(self, **kwargs): + """ + Initializes a new CreateSubscriptionUsageRecordDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this CreateSubscriptionUsageRecordDetails. + :type id: str + + :param marketplace_offer_id: + The value to assign to the marketplace_offer_id property of this CreateSubscriptionUsageRecordDetails. + :type marketplace_offer_id: str + + :param billing_type: + The value to assign to the billing_type property of this CreateSubscriptionUsageRecordDetails. + Allowed values for this property are: "FLAT_RATE", "USAGE_BASED" + :type billing_type: str + + :param usage_dimension_name: + The value to assign to the usage_dimension_name property of this CreateSubscriptionUsageRecordDetails. + :type usage_dimension_name: str + + :param consumed_quantity: + The value to assign to the consumed_quantity property of this CreateSubscriptionUsageRecordDetails. + :type consumed_quantity: float + + :param amount: + The value to assign to the amount property of this CreateSubscriptionUsageRecordDetails. + :type amount: float + + :param currency_code: + The value to assign to the currency_code property of this CreateSubscriptionUsageRecordDetails. + :type currency_code: str + + :param billing_period: + The value to assign to the billing_period property of this CreateSubscriptionUsageRecordDetails. + :type billing_period: str + + :param customer_tenancy_id: + The value to assign to the customer_tenancy_id property of this CreateSubscriptionUsageRecordDetails. + :type customer_tenancy_id: str + + :param billing_identifier: + The value to assign to the billing_identifier property of this CreateSubscriptionUsageRecordDetails. + :type billing_identifier: str + + :param unit_of_measure: + The value to assign to the unit_of_measure property of this CreateSubscriptionUsageRecordDetails. + :type unit_of_measure: str + + :param unit_price: + The value to assign to the unit_price property of this CreateSubscriptionUsageRecordDetails. + :type unit_price: float + + :param product_sku: + The value to assign to the product_sku property of this CreateSubscriptionUsageRecordDetails. + :type product_sku: str + + :param contract_duration: + The value to assign to the contract_duration property of this CreateSubscriptionUsageRecordDetails. + Allowed values for this property are: "MONTHLY", "QUARTERLY", "SEMI_ANNUAL", "ANNUAL", "BIENNIAL", "TRIENNIAL", "YEARLY" + :type contract_duration: str + + :param additional_metadata: + The value to assign to the additional_metadata property of this CreateSubscriptionUsageRecordDetails. + :type additional_metadata: list[oci.self.models.ExtendedMetadata] + + :param usage_record_id: + The value to assign to the usage_record_id property of this CreateSubscriptionUsageRecordDetails. + :type usage_record_id: str + + :param time_usage_started: + The value to assign to the time_usage_started property of this CreateSubscriptionUsageRecordDetails. + :type time_usage_started: datetime + + :param time_usage_ended: + The value to assign to the time_usage_ended property of this CreateSubscriptionUsageRecordDetails. + :type time_usage_ended: datetime + + """ + self.swagger_types = { + 'id': 'str', + 'marketplace_offer_id': 'str', + 'billing_type': 'str', + 'usage_dimension_name': 'str', + 'consumed_quantity': 'float', + 'amount': 'float', + 'currency_code': 'str', + 'billing_period': 'str', + 'customer_tenancy_id': 'str', + 'billing_identifier': 'str', + 'unit_of_measure': 'str', + 'unit_price': 'float', + 'product_sku': 'str', + 'contract_duration': 'str', + 'additional_metadata': 'list[ExtendedMetadata]', + 'usage_record_id': 'str', + 'time_usage_started': 'datetime', + 'time_usage_ended': 'datetime' + } + self.attribute_map = { + 'id': 'id', + 'marketplace_offer_id': 'marketplaceOfferId', + 'billing_type': 'billingType', + 'usage_dimension_name': 'usageDimensionName', + 'consumed_quantity': 'consumedQuantity', + 'amount': 'amount', + 'currency_code': 'currencyCode', + 'billing_period': 'billingPeriod', + 'customer_tenancy_id': 'customerTenancyId', + 'billing_identifier': 'billingIdentifier', + 'unit_of_measure': 'unitOfMeasure', + 'unit_price': 'unitPrice', + 'product_sku': 'productSku', + 'contract_duration': 'contractDuration', + 'additional_metadata': 'additionalMetadata', + 'usage_record_id': 'usageRecordId', + 'time_usage_started': 'timeUsageStarted', + 'time_usage_ended': 'timeUsageEnded' + } + self._id = None + self._marketplace_offer_id = None + self._billing_type = None + self._usage_dimension_name = None + self._consumed_quantity = None + self._amount = None + self._currency_code = None + self._billing_period = None + self._customer_tenancy_id = None + self._billing_identifier = None + self._unit_of_measure = None + self._unit_price = None + self._product_sku = None + self._contract_duration = None + self._additional_metadata = None + self._usage_record_id = None + self._time_usage_started = None + self._time_usage_ended = None + + @property + def id(self): + """ + **[Required]** Gets the id of this CreateSubscriptionUsageRecordDetails. + Partner-provided unique identifier for this usage record. This identifier must be unique per partner. + + + :return: The id of this CreateSubscriptionUsageRecordDetails. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this CreateSubscriptionUsageRecordDetails. + Partner-provided unique identifier for this usage record. This identifier must be unique per partner. + + + :param id: The id of this CreateSubscriptionUsageRecordDetails. + :type: str + """ + self._id = id + + @property + def marketplace_offer_id(self): + """ + **[Required]** Gets the marketplace_offer_id of this CreateSubscriptionUsageRecordDetails. + The `OCID`__ of the marketplace offer being billed. A submit request can contain records for multiple marketplace offers. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The marketplace_offer_id of this CreateSubscriptionUsageRecordDetails. + :rtype: str + """ + return self._marketplace_offer_id + + @marketplace_offer_id.setter + def marketplace_offer_id(self, marketplace_offer_id): + """ + Sets the marketplace_offer_id of this CreateSubscriptionUsageRecordDetails. + The `OCID`__ of the marketplace offer being billed. A submit request can contain records for multiple marketplace offers. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param marketplace_offer_id: The marketplace_offer_id of this CreateSubscriptionUsageRecordDetails. + :type: str + """ + self._marketplace_offer_id = marketplace_offer_id + + @property + def billing_type(self): + """ + Gets the billing_type of this CreateSubscriptionUsageRecordDetails. + The billing type this usage record applies to. + + Allowed values for this property are: "FLAT_RATE", "USAGE_BASED" + + + :return: The billing_type of this CreateSubscriptionUsageRecordDetails. + :rtype: str + """ + return self._billing_type + + @billing_type.setter + def billing_type(self, billing_type): + """ + Sets the billing_type of this CreateSubscriptionUsageRecordDetails. + The billing type this usage record applies to. + + + :param billing_type: The billing_type of this CreateSubscriptionUsageRecordDetails. + :type: str + """ + allowed_values = ["FLAT_RATE", "USAGE_BASED"] + if not value_allowed_none_or_none_sentinel(billing_type, allowed_values): + raise ValueError( + f"Invalid value for `billing_type`, must be None or one of {allowed_values}" + ) + self._billing_type = billing_type + + @property + def usage_dimension_name(self): + """ + **[Required]** Gets the usage_dimension_name of this CreateSubscriptionUsageRecordDetails. + The pricing dimension against which usage is being reported. + + + :return: The usage_dimension_name of this CreateSubscriptionUsageRecordDetails. + :rtype: str + """ + return self._usage_dimension_name + + @usage_dimension_name.setter + def usage_dimension_name(self, usage_dimension_name): + """ + Sets the usage_dimension_name of this CreateSubscriptionUsageRecordDetails. + The pricing dimension against which usage is being reported. + + + :param usage_dimension_name: The usage_dimension_name of this CreateSubscriptionUsageRecordDetails. + :type: str + """ + self._usage_dimension_name = usage_dimension_name + + @property + def consumed_quantity(self): + """ + Gets the consumed_quantity of this CreateSubscriptionUsageRecordDetails. + An optional non-negative usage quantity being reported. + + + :return: The consumed_quantity of this CreateSubscriptionUsageRecordDetails. + :rtype: float + """ + return self._consumed_quantity + + @consumed_quantity.setter + def consumed_quantity(self, consumed_quantity): + """ + Sets the consumed_quantity of this CreateSubscriptionUsageRecordDetails. + An optional non-negative usage quantity being reported. + + + :param consumed_quantity: The consumed_quantity of this CreateSubscriptionUsageRecordDetails. + :type: float + """ + self._consumed_quantity = consumed_quantity + + @property + def amount(self): + """ + **[Required]** Gets the amount of this CreateSubscriptionUsageRecordDetails. + The non-negative usage cost computed by the partner for the submitted usage quantity. + + + :return: The amount of this CreateSubscriptionUsageRecordDetails. + :rtype: float + """ + return self._amount + + @amount.setter + def amount(self, amount): + """ + Sets the amount of this CreateSubscriptionUsageRecordDetails. + The non-negative usage cost computed by the partner for the submitted usage quantity. + + + :param amount: The amount of this CreateSubscriptionUsageRecordDetails. + :type: float + """ + self._amount = amount + + @property + def currency_code(self): + """ + **[Required]** Gets the currency_code of this CreateSubscriptionUsageRecordDetails. + The ISO-4217 currency submitted for the computed usage cost. + + + :return: The currency_code of this CreateSubscriptionUsageRecordDetails. + :rtype: str + """ + return self._currency_code + + @currency_code.setter + def currency_code(self, currency_code): + """ + Sets the currency_code of this CreateSubscriptionUsageRecordDetails. + The ISO-4217 currency submitted for the computed usage cost. + + + :param currency_code: The currency_code of this CreateSubscriptionUsageRecordDetails. + :type: str + """ + self._currency_code = currency_code + + @property + def billing_period(self): + """ + Gets the billing_period of this CreateSubscriptionUsageRecordDetails. + The billing period associated with this usage record in `YYYY-MM` format. + + + :return: The billing_period of this CreateSubscriptionUsageRecordDetails. + :rtype: str + """ + return self._billing_period + + @billing_period.setter + def billing_period(self, billing_period): + """ + Sets the billing_period of this CreateSubscriptionUsageRecordDetails. + The billing period associated with this usage record in `YYYY-MM` format. + + + :param billing_period: The billing_period of this CreateSubscriptionUsageRecordDetails. + :type: str + """ + self._billing_period = billing_period + + @property + def customer_tenancy_id(self): + """ + Gets the customer_tenancy_id of this CreateSubscriptionUsageRecordDetails. + The `OCID`__ of the customer tenancy associated with this usage record. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The customer_tenancy_id of this CreateSubscriptionUsageRecordDetails. + :rtype: str + """ + return self._customer_tenancy_id + + @customer_tenancy_id.setter + def customer_tenancy_id(self, customer_tenancy_id): + """ + Sets the customer_tenancy_id of this CreateSubscriptionUsageRecordDetails. + The `OCID`__ of the customer tenancy associated with this usage record. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param customer_tenancy_id: The customer_tenancy_id of this CreateSubscriptionUsageRecordDetails. + :type: str + """ + self._customer_tenancy_id = customer_tenancy_id + + @property + def billing_identifier(self): + """ + Gets the billing_identifier of this CreateSubscriptionUsageRecordDetails. + The partner billing identifier associated with this usage record. + + + :return: The billing_identifier of this CreateSubscriptionUsageRecordDetails. + :rtype: str + """ + return self._billing_identifier + + @billing_identifier.setter + def billing_identifier(self, billing_identifier): + """ + Sets the billing_identifier of this CreateSubscriptionUsageRecordDetails. + The partner billing identifier associated with this usage record. + + + :param billing_identifier: The billing_identifier of this CreateSubscriptionUsageRecordDetails. + :type: str + """ + self._billing_identifier = billing_identifier + + @property + def unit_of_measure(self): + """ + Gets the unit_of_measure of this CreateSubscriptionUsageRecordDetails. + The unit of measure associated with the reported usage quantity. + + + :return: The unit_of_measure of this CreateSubscriptionUsageRecordDetails. + :rtype: str + """ + return self._unit_of_measure + + @unit_of_measure.setter + def unit_of_measure(self, unit_of_measure): + """ + Sets the unit_of_measure of this CreateSubscriptionUsageRecordDetails. + The unit of measure associated with the reported usage quantity. + + + :param unit_of_measure: The unit_of_measure of this CreateSubscriptionUsageRecordDetails. + :type: str + """ + self._unit_of_measure = unit_of_measure + + @property + def unit_price(self): + """ + Gets the unit_price of this CreateSubscriptionUsageRecordDetails. + The unit price associated with this usage record. + + + :return: The unit_price of this CreateSubscriptionUsageRecordDetails. + :rtype: float + """ + return self._unit_price + + @unit_price.setter + def unit_price(self, unit_price): + """ + Sets the unit_price of this CreateSubscriptionUsageRecordDetails. + The unit price associated with this usage record. + + + :param unit_price: The unit_price of this CreateSubscriptionUsageRecordDetails. + :type: float + """ + self._unit_price = unit_price + + @property + def product_sku(self): + """ + Gets the product_sku of this CreateSubscriptionUsageRecordDetails. + The product SKU associated with this usage record. + + + :return: The product_sku of this CreateSubscriptionUsageRecordDetails. + :rtype: str + """ + return self._product_sku + + @product_sku.setter + def product_sku(self, product_sku): + """ + Sets the product_sku of this CreateSubscriptionUsageRecordDetails. + The product SKU associated with this usage record. + + + :param product_sku: The product_sku of this CreateSubscriptionUsageRecordDetails. + :type: str + """ + self._product_sku = product_sku + + @property + def contract_duration(self): + """ + Gets the contract_duration of this CreateSubscriptionUsageRecordDetails. + The contract duration associated with this usage record. + + Allowed values for this property are: "MONTHLY", "QUARTERLY", "SEMI_ANNUAL", "ANNUAL", "BIENNIAL", "TRIENNIAL", "YEARLY" + + + :return: The contract_duration of this CreateSubscriptionUsageRecordDetails. + :rtype: str + """ + return self._contract_duration + + @contract_duration.setter + def contract_duration(self, contract_duration): + """ + Sets the contract_duration of this CreateSubscriptionUsageRecordDetails. + The contract duration associated with this usage record. + + + :param contract_duration: The contract_duration of this CreateSubscriptionUsageRecordDetails. + :type: str + """ + allowed_values = ["MONTHLY", "QUARTERLY", "SEMI_ANNUAL", "ANNUAL", "BIENNIAL", "TRIENNIAL", "YEARLY"] + if not value_allowed_none_or_none_sentinel(contract_duration, allowed_values): + raise ValueError( + f"Invalid value for `contract_duration`, must be None or one of {allowed_values}" + ) + self._contract_duration = contract_duration + + @property + def additional_metadata(self): + """ + Gets the additional_metadata of this CreateSubscriptionUsageRecordDetails. + Additional key/value metadata associated with this usage record for extensibility. + + + :return: The additional_metadata of this CreateSubscriptionUsageRecordDetails. + :rtype: list[oci.self.models.ExtendedMetadata] + """ + return self._additional_metadata + + @additional_metadata.setter + def additional_metadata(self, additional_metadata): + """ + Sets the additional_metadata of this CreateSubscriptionUsageRecordDetails. + Additional key/value metadata associated with this usage record for extensibility. + + + :param additional_metadata: The additional_metadata of this CreateSubscriptionUsageRecordDetails. + :type: list[oci.self.models.ExtendedMetadata] + """ + self._additional_metadata = additional_metadata + + @property + def usage_record_id(self): + """ + Gets the usage_record_id of this CreateSubscriptionUsageRecordDetails. + Partner-provided usage record identifier for traceability. + + + :return: The usage_record_id of this CreateSubscriptionUsageRecordDetails. + :rtype: str + """ + return self._usage_record_id + + @usage_record_id.setter + def usage_record_id(self, usage_record_id): + """ + Sets the usage_record_id of this CreateSubscriptionUsageRecordDetails. + Partner-provided usage record identifier for traceability. + + + :param usage_record_id: The usage_record_id of this CreateSubscriptionUsageRecordDetails. + :type: str + """ + self._usage_record_id = usage_record_id + + @property + def time_usage_started(self): + """ + **[Required]** Gets the time_usage_started of this CreateSubscriptionUsageRecordDetails. + The inclusive start timestamp for the usage window. This value must be before `timeUsageEnded`. + + + :return: The time_usage_started of this CreateSubscriptionUsageRecordDetails. + :rtype: datetime + """ + return self._time_usage_started + + @time_usage_started.setter + def time_usage_started(self, time_usage_started): + """ + Sets the time_usage_started of this CreateSubscriptionUsageRecordDetails. + The inclusive start timestamp for the usage window. This value must be before `timeUsageEnded`. + + + :param time_usage_started: The time_usage_started of this CreateSubscriptionUsageRecordDetails. + :type: datetime + """ + self._time_usage_started = time_usage_started + + @property + def time_usage_ended(self): + """ + **[Required]** Gets the time_usage_ended of this CreateSubscriptionUsageRecordDetails. + The exclusive end timestamp for the usage window. This value must be after `timeUsageStarted`. + + + :return: The time_usage_ended of this CreateSubscriptionUsageRecordDetails. + :rtype: datetime + """ + return self._time_usage_ended + + @time_usage_ended.setter + def time_usage_ended(self, time_usage_ended): + """ + Sets the time_usage_ended of this CreateSubscriptionUsageRecordDetails. + The exclusive end timestamp for the usage window. This value must be after `timeUsageStarted`. + + + :param time_usage_ended: The time_usage_ended of this CreateSubscriptionUsageRecordDetails. + :type: datetime + """ + self._time_usage_ended = time_usage_ended + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/self/models/listing_subscription_summary.py b/src/oci/self/models/listing_subscription_summary.py index f291ef569c..644858b84e 100644 --- a/src/oci/self/models/listing_subscription_summary.py +++ b/src/oci/self/models/listing_subscription_summary.py @@ -79,6 +79,18 @@ class ListingSubscriptionSummary(object): #: This constant has a value of "DELETED" LIFECYCLE_DETAILS_DELETED = "DELETED" + #: A constant which can be used with the lifecycle_details property of a ListingSubscriptionSummary. + #: This constant has a value of "PENDING_CANCELLATION" + LIFECYCLE_DETAILS_PENDING_CANCELLATION = "PENDING_CANCELLATION" + + #: A constant which can be used with the lifecycle_details property of a ListingSubscriptionSummary. + #: This constant has a value of "SUSPENDED" + LIFECYCLE_DETAILS_SUSPENDED = "SUSPENDED" + + #: A constant which can be used with the lifecycle_details property of a ListingSubscriptionSummary. + #: This constant has a value of "CANCELED" + LIFECYCLE_DETAILS_CANCELED = "CANCELED" + def __init__(self, **kwargs): """ Initializes a new ListingSubscriptionSummary object with values from keyword arguments. @@ -108,7 +120,7 @@ def __init__(self, **kwargs): :param lifecycle_details: The value to assign to the lifecycle_details property of this ListingSubscriptionSummary. - Allowed values for this property are: "CREATED", "PENDING_ACTIVATION", "PROVISIONING_STARTED", "PROVISIONING_COMPLETED", "PROVISIONING_FAILED", "ACTIVE", "EXPIRED", "TERMINATED", "FAILED", "DELETING", "UPDATING", "DELETED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATED", "PENDING_ACTIVATION", "PROVISIONING_STARTED", "PROVISIONING_COMPLETED", "PROVISIONING_FAILED", "ACTIVE", "EXPIRED", "TERMINATED", "FAILED", "DELETING", "UPDATING", "DELETED", "PENDING_CANCELLATION", "SUSPENDED", "CANCELED", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_details: str @@ -302,7 +314,7 @@ def lifecycle_details(self): A message that describes the current state of the Subscription in more detail. For example, can be used to provide actionable information for a resource in the Failed state. - Allowed values for this property are: "CREATED", "PENDING_ACTIVATION", "PROVISIONING_STARTED", "PROVISIONING_COMPLETED", "PROVISIONING_FAILED", "ACTIVE", "EXPIRED", "TERMINATED", "FAILED", "DELETING", "UPDATING", "DELETED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATED", "PENDING_ACTIVATION", "PROVISIONING_STARTED", "PROVISIONING_COMPLETED", "PROVISIONING_FAILED", "ACTIVE", "EXPIRED", "TERMINATED", "FAILED", "DELETING", "UPDATING", "DELETED", "PENDING_CANCELLATION", "SUSPENDED", "CANCELED", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -322,7 +334,7 @@ def lifecycle_details(self, lifecycle_details): :param lifecycle_details: The lifecycle_details of this ListingSubscriptionSummary. :type: str """ - allowed_values = ["CREATED", "PENDING_ACTIVATION", "PROVISIONING_STARTED", "PROVISIONING_COMPLETED", "PROVISIONING_FAILED", "ACTIVE", "EXPIRED", "TERMINATED", "FAILED", "DELETING", "UPDATING", "DELETED"] + allowed_values = ["CREATED", "PENDING_ACTIVATION", "PROVISIONING_STARTED", "PROVISIONING_COMPLETED", "PROVISIONING_FAILED", "ACTIVE", "EXPIRED", "TERMINATED", "FAILED", "DELETING", "UPDATING", "DELETED", "PENDING_CANCELLATION", "SUSPENDED", "CANCELED"] if not value_allowed_none_or_none_sentinel(lifecycle_details, allowed_values): lifecycle_details = 'UNKNOWN_ENUM_VALUE' self._lifecycle_details = lifecycle_details diff --git a/src/oci/self/models/partner.py b/src/oci/self/models/partner.py new file mode 100644 index 0000000000..b9eae467ac --- /dev/null +++ b/src/oci/self/models/partner.py @@ -0,0 +1,296 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260129 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class Partner(object): + """ + Marketplace publisher partner details. + """ + + #: A constant which can be used with the lifecycle_state property of a Partner. + #: This constant has a value of "ACTIVE" + LIFECYCLE_STATE_ACTIVE = "ACTIVE" + + #: A constant which can be used with the lifecycle_state property of a Partner. + #: This constant has a value of "DELETED" + LIFECYCLE_STATE_DELETED = "DELETED" + + def __init__(self, **kwargs): + """ + Initializes a new Partner object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this Partner. + :type id: str + + :param compartment_id: + The value to assign to the compartment_id property of this Partner. + :type compartment_id: str + + :param display_name: + The value to assign to the display_name property of this Partner. + :type display_name: str + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this Partner. + Allowed values for this property are: "ACTIVE", "DELETED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this Partner. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this Partner. + :type defined_tags: dict(str, dict(str, object)) + + :param system_tags: + The value to assign to the system_tags property of this Partner. + :type system_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'id': 'str', + 'compartment_id': 'str', + 'display_name': 'str', + 'lifecycle_state': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'id': 'id', + 'compartment_id': 'compartmentId', + 'display_name': 'displayName', + 'lifecycle_state': 'lifecycleState', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags' + } + self._id = None + self._compartment_id = None + self._display_name = None + self._lifecycle_state = None + self._freeform_tags = None + self._defined_tags = None + self._system_tags = None + + @property + def id(self): + """ + **[Required]** Gets the id of this Partner. + The unique identifier of the marketplace publisher partner. + + + :return: The id of this Partner. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this Partner. + The unique identifier of the marketplace publisher partner. + + + :param id: The id of this Partner. + :type: str + """ + self._id = id + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this Partner. + The unique identifier of the compartment of partner. + + + :return: The compartment_id of this Partner. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this Partner. + The unique identifier of the compartment of partner. + + + :param compartment_id: The compartment_id of this Partner. + :type: str + """ + self._compartment_id = compartment_id + + @property + def display_name(self): + """ + Gets the display_name of this Partner. + The display name of marketplace publisher partner. + + + :return: The display_name of this Partner. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this Partner. + The display name of marketplace publisher partner. + + + :param display_name: The display_name of this Partner. + :type: str + """ + self._display_name = display_name + + @property + def lifecycle_state(self): + """ + **[Required]** Gets the lifecycle_state of this Partner. + The current lifecycle state of the marketplace publisher partner. + + Allowed values for this property are: "ACTIVE", "DELETED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this Partner. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this Partner. + The current lifecycle state of the marketplace publisher partner. + + + :param lifecycle_state: The lifecycle_state of this Partner. + :type: str + """ + allowed_values = ["ACTIVE", "DELETED"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this Partner. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this Partner. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this Partner. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this Partner. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this Partner. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this Partner. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this Partner. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this Partner. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def system_tags(self): + """ + Gets the system_tags of this Partner. + System tags for this resource. Each key is predefined and scoped to a namespace. + + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :return: The system_tags of this Partner. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this Partner. + System tags for this resource. Each key is predefined and scoped to a namespace. + + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :param system_tags: The system_tags of this Partner. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/self/models/partner_collection.py b/src/oci/self/models/partner_collection.py new file mode 100644 index 0000000000..3627ef8ac4 --- /dev/null +++ b/src/oci/self/models/partner_collection.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260129 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class PartnerCollection(object): + """ + Results of listing marketplace publisher partners. + """ + + def __init__(self, **kwargs): + """ + Initializes a new PartnerCollection object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this PartnerCollection. + :type items: list[oci.self.models.PartnerSummary] + + """ + self.swagger_types = { + 'items': 'list[PartnerSummary]' + } + self.attribute_map = { + 'items': 'items' + } + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this PartnerCollection. + The list of marketplace publisher partners. + + + :return: The items of this PartnerCollection. + :rtype: list[oci.self.models.PartnerSummary] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this PartnerCollection. + The list of marketplace publisher partners. + + + :param items: The items of this PartnerCollection. + :type: list[oci.self.models.PartnerSummary] + """ + self._items = items + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/self/models/partner_subscription.py b/src/oci/self/models/partner_subscription.py index e2e8bf90dd..63c2927813 100644 --- a/src/oci/self/models/partner_subscription.py +++ b/src/oci/self/models/partner_subscription.py @@ -87,6 +87,18 @@ class PartnerSubscription(object): #: This constant has a value of "DELETED" LIFECYCLE_DETAILS_DELETED = "DELETED" + #: A constant which can be used with the lifecycle_details property of a PartnerSubscription. + #: This constant has a value of "PENDING_CANCELLATION" + LIFECYCLE_DETAILS_PENDING_CANCELLATION = "PENDING_CANCELLATION" + + #: A constant which can be used with the lifecycle_details property of a PartnerSubscription. + #: This constant has a value of "SUSPENDED" + LIFECYCLE_DETAILS_SUSPENDED = "SUSPENDED" + + #: A constant which can be used with the lifecycle_details property of a PartnerSubscription. + #: This constant has a value of "CANCELED" + LIFECYCLE_DETAILS_CANCELED = "CANCELED" + def __init__(self, **kwargs): """ Initializes a new PartnerSubscription object with values from keyword arguments. @@ -130,7 +142,7 @@ def __init__(self, **kwargs): :param lifecycle_details: The value to assign to the lifecycle_details property of this PartnerSubscription. - Allowed values for this property are: "CREATED", "PENDING_ACTIVATION", "PROVISIONING_STARTED", "PROVISIONING_COMPLETED", "PROVISIONING_FAILED", "ACTIVE", "EXPIRED", "TERMINATED", "FAILED", "DELETING", "UPDATING", "DELETED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATED", "PENDING_ACTIVATION", "PROVISIONING_STARTED", "PROVISIONING_COMPLETED", "PROVISIONING_FAILED", "ACTIVE", "EXPIRED", "TERMINATED", "FAILED", "DELETING", "UPDATING", "DELETED", "PENDING_CANCELLATION", "SUSPENDED", "CANCELED", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_details: str @@ -402,7 +414,7 @@ def lifecycle_details(self): A message that describes the current state of the Subscription in more detail. For example, can be used to provide actionable information for a resource in the Failed state. - Allowed values for this property are: "CREATED", "PENDING_ACTIVATION", "PROVISIONING_STARTED", "PROVISIONING_COMPLETED", "PROVISIONING_FAILED", "ACTIVE", "EXPIRED", "TERMINATED", "FAILED", "DELETING", "UPDATING", "DELETED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATED", "PENDING_ACTIVATION", "PROVISIONING_STARTED", "PROVISIONING_COMPLETED", "PROVISIONING_FAILED", "ACTIVE", "EXPIRED", "TERMINATED", "FAILED", "DELETING", "UPDATING", "DELETED", "PENDING_CANCELLATION", "SUSPENDED", "CANCELED", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -422,7 +434,7 @@ def lifecycle_details(self, lifecycle_details): :param lifecycle_details: The lifecycle_details of this PartnerSubscription. :type: str """ - allowed_values = ["CREATED", "PENDING_ACTIVATION", "PROVISIONING_STARTED", "PROVISIONING_COMPLETED", "PROVISIONING_FAILED", "ACTIVE", "EXPIRED", "TERMINATED", "FAILED", "DELETING", "UPDATING", "DELETED"] + allowed_values = ["CREATED", "PENDING_ACTIVATION", "PROVISIONING_STARTED", "PROVISIONING_COMPLETED", "PROVISIONING_FAILED", "ACTIVE", "EXPIRED", "TERMINATED", "FAILED", "DELETING", "UPDATING", "DELETED", "PENDING_CANCELLATION", "SUSPENDED", "CANCELED"] if not value_allowed_none_or_none_sentinel(lifecycle_details, allowed_values): lifecycle_details = 'UNKNOWN_ENUM_VALUE' self._lifecycle_details = lifecycle_details diff --git a/src/oci/self/models/partner_summary.py b/src/oci/self/models/partner_summary.py new file mode 100644 index 0000000000..f7fa71c8bf --- /dev/null +++ b/src/oci/self/models/partner_summary.py @@ -0,0 +1,280 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260129 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class PartnerSummary(object): + """ + Summary of a marketplace publisher partner. + """ + + def __init__(self, **kwargs): + """ + Initializes a new PartnerSummary object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this PartnerSummary. + :type id: str + + :param compartment_id: + The value to assign to the compartment_id property of this PartnerSummary. + :type compartment_id: str + + :param display_name: + The value to assign to the display_name property of this PartnerSummary. + :type display_name: str + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this PartnerSummary. + :type lifecycle_state: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this PartnerSummary. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this PartnerSummary. + :type defined_tags: dict(str, dict(str, object)) + + :param system_tags: + The value to assign to the system_tags property of this PartnerSummary. + :type system_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'id': 'str', + 'compartment_id': 'str', + 'display_name': 'str', + 'lifecycle_state': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'id': 'id', + 'compartment_id': 'compartmentId', + 'display_name': 'displayName', + 'lifecycle_state': 'lifecycleState', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags' + } + self._id = None + self._compartment_id = None + self._display_name = None + self._lifecycle_state = None + self._freeform_tags = None + self._defined_tags = None + self._system_tags = None + + @property + def id(self): + """ + **[Required]** Gets the id of this PartnerSummary. + The unique identifier of the marketplace publisher partner. + + + :return: The id of this PartnerSummary. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this PartnerSummary. + The unique identifier of the marketplace publisher partner. + + + :param id: The id of this PartnerSummary. + :type: str + """ + self._id = id + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this PartnerSummary. + The unique identifier of the compartment of partner. + + + :return: The compartment_id of this PartnerSummary. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this PartnerSummary. + The unique identifier of the compartment of partner. + + + :param compartment_id: The compartment_id of this PartnerSummary. + :type: str + """ + self._compartment_id = compartment_id + + @property + def display_name(self): + """ + Gets the display_name of this PartnerSummary. + The display name of marketplace publisher partner. + + + :return: The display_name of this PartnerSummary. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this PartnerSummary. + The display name of marketplace publisher partner. + + + :param display_name: The display_name of this PartnerSummary. + :type: str + """ + self._display_name = display_name + + @property + def lifecycle_state(self): + """ + **[Required]** Gets the lifecycle_state of this PartnerSummary. + The current lifecycle state of the marketplace publisher partner. + + + :return: The lifecycle_state of this PartnerSummary. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this PartnerSummary. + The current lifecycle state of the marketplace publisher partner. + + + :param lifecycle_state: The lifecycle_state of this PartnerSummary. + :type: str + """ + self._lifecycle_state = lifecycle_state + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this PartnerSummary. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this PartnerSummary. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this PartnerSummary. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this PartnerSummary. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this PartnerSummary. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this PartnerSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this PartnerSummary. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this PartnerSummary. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def system_tags(self): + """ + Gets the system_tags of this PartnerSummary. + System tags for this resource. Each key is predefined and scoped to a namespace. + + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :return: The system_tags of this PartnerSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this PartnerSummary. + System tags for this resource. Each key is predefined and scoped to a namespace. + + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :param system_tags: The system_tags of this PartnerSummary. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/self/models/pricing_plan.py b/src/oci/self/models/pricing_plan.py index 55f4e97d36..3affc27c49 100644 --- a/src/oci/self/models/pricing_plan.py +++ b/src/oci/self/models/pricing_plan.py @@ -19,14 +19,66 @@ class PricingPlan(object): #: This constant has a value of "FIXED" PLAN_TYPE_FIXED = "FIXED" + #: A constant which can be used with the plan_type property of a PricingPlan. + #: This constant has a value of "USAGE_BASED" + PLAN_TYPE_USAGE_BASED = "USAGE_BASED" + + #: A constant which can be used with the plan_type property of a PricingPlan. + #: This constant has a value of "HYBRID" + PLAN_TYPE_HYBRID = "HYBRID" + + #: A constant which can be used with the billing_frequency property of a PricingPlan. + #: This constant has a value of "MONTHLY" + BILLING_FREQUENCY_MONTHLY = "MONTHLY" + + #: A constant which can be used with the billing_frequency property of a PricingPlan. + #: This constant has a value of "QUARTERLY" + BILLING_FREQUENCY_QUARTERLY = "QUARTERLY" + + #: A constant which can be used with the billing_frequency property of a PricingPlan. + #: This constant has a value of "SEMI_ANNUAL" + BILLING_FREQUENCY_SEMI_ANNUAL = "SEMI_ANNUAL" + + #: A constant which can be used with the billing_frequency property of a PricingPlan. + #: This constant has a value of "ANNUAL" + BILLING_FREQUENCY_ANNUAL = "ANNUAL" + + #: A constant which can be used with the billing_frequency property of a PricingPlan. + #: This constant has a value of "BIENNIAL" + BILLING_FREQUENCY_BIENNIAL = "BIENNIAL" + + #: A constant which can be used with the billing_frequency property of a PricingPlan. + #: This constant has a value of "TRIENNIAL" + BILLING_FREQUENCY_TRIENNIAL = "TRIENNIAL" + #: A constant which can be used with the billing_frequency property of a PricingPlan. #: This constant has a value of "YEARLY" BILLING_FREQUENCY_YEARLY = "YEARLY" + #: A constant which can be used with the plan_duration property of a PricingPlan. + #: This constant has a value of "MONTHLY" + PLAN_DURATION_MONTHLY = "MONTHLY" + + #: A constant which can be used with the plan_duration property of a PricingPlan. + #: This constant has a value of "QUARTERLY" + PLAN_DURATION_QUARTERLY = "QUARTERLY" + + #: A constant which can be used with the plan_duration property of a PricingPlan. + #: This constant has a value of "SEMI_ANNUAL" + PLAN_DURATION_SEMI_ANNUAL = "SEMI_ANNUAL" + #: A constant which can be used with the plan_duration property of a PricingPlan. #: This constant has a value of "ANNUAL" PLAN_DURATION_ANNUAL = "ANNUAL" + #: A constant which can be used with the plan_duration property of a PricingPlan. + #: This constant has a value of "BIENNIAL" + PLAN_DURATION_BIENNIAL = "BIENNIAL" + + #: A constant which can be used with the plan_duration property of a PricingPlan. + #: This constant has a value of "TRIENNIAL" + PLAN_DURATION_TRIENNIAL = "TRIENNIAL" + def __init__(self, **kwargs): """ Initializes a new PricingPlan object with values from keyword arguments. @@ -34,7 +86,7 @@ def __init__(self, **kwargs): :param plan_type: The value to assign to the plan_type property of this PricingPlan. - Allowed values for this property are: "FIXED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "FIXED", "USAGE_BASED", "HYBRID", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type plan_type: str @@ -48,13 +100,13 @@ def __init__(self, **kwargs): :param billing_frequency: The value to assign to the billing_frequency property of this PricingPlan. - Allowed values for this property are: "YEARLY", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "MONTHLY", "QUARTERLY", "SEMI_ANNUAL", "ANNUAL", "BIENNIAL", "TRIENNIAL", "YEARLY", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type billing_frequency: str :param plan_duration: The value to assign to the plan_duration property of this PricingPlan. - Allowed values for this property are: "ANNUAL", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "MONTHLY", "QUARTERLY", "SEMI_ANNUAL", "ANNUAL", "BIENNIAL", "TRIENNIAL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type plan_duration: str @@ -62,6 +114,10 @@ def __init__(self, **kwargs): The value to assign to the rates property of this PricingPlan. :type rates: list[oci.self.models.PricingRate] + :param dimensions: + The value to assign to the dimensions property of this PricingPlan. + :type dimensions: list[oci.self.models.UsageDimension] + """ self.swagger_types = { 'plan_type': 'str', @@ -69,7 +125,8 @@ def __init__(self, **kwargs): 'plan_description': 'str', 'billing_frequency': 'str', 'plan_duration': 'str', - 'rates': 'list[PricingRate]' + 'rates': 'list[PricingRate]', + 'dimensions': 'list[UsageDimension]' } self.attribute_map = { 'plan_type': 'planType', @@ -77,7 +134,8 @@ def __init__(self, **kwargs): 'plan_description': 'planDescription', 'billing_frequency': 'billingFrequency', 'plan_duration': 'planDuration', - 'rates': 'rates' + 'rates': 'rates', + 'dimensions': 'dimensions' } self._plan_type = None self._plan_name = None @@ -85,6 +143,7 @@ def __init__(self, **kwargs): self._billing_frequency = None self._plan_duration = None self._rates = None + self._dimensions = None @property def plan_type(self): @@ -92,7 +151,7 @@ def plan_type(self): **[Required]** Gets the plan_type of this PricingPlan. The type of the subscription plan. - Allowed values for this property are: "FIXED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "FIXED", "USAGE_BASED", "HYBRID", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -111,7 +170,7 @@ def plan_type(self, plan_type): :param plan_type: The plan_type of this PricingPlan. :type: str """ - allowed_values = ["FIXED"] + allowed_values = ["FIXED", "USAGE_BASED", "HYBRID"] if not value_allowed_none_or_none_sentinel(plan_type, allowed_values): plan_type = 'UNKNOWN_ENUM_VALUE' self._plan_type = plan_type @@ -168,9 +227,9 @@ def plan_description(self, plan_description): def billing_frequency(self): """ **[Required]** Gets the billing_frequency of this PricingPlan. - Specifies the interval at which billing occurs for the subscription plan. + Specifies the interval at which billing occurs for the subscription plan or usage dimension. - Allowed values for this property are: "YEARLY", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "MONTHLY", "QUARTERLY", "SEMI_ANNUAL", "ANNUAL", "BIENNIAL", "TRIENNIAL", "YEARLY", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -183,13 +242,13 @@ def billing_frequency(self): def billing_frequency(self, billing_frequency): """ Sets the billing_frequency of this PricingPlan. - Specifies the interval at which billing occurs for the subscription plan. + Specifies the interval at which billing occurs for the subscription plan or usage dimension. :param billing_frequency: The billing_frequency of this PricingPlan. :type: str """ - allowed_values = ["YEARLY"] + allowed_values = ["MONTHLY", "QUARTERLY", "SEMI_ANNUAL", "ANNUAL", "BIENNIAL", "TRIENNIAL", "YEARLY"] if not value_allowed_none_or_none_sentinel(billing_frequency, allowed_values): billing_frequency = 'UNKNOWN_ENUM_VALUE' self._billing_frequency = billing_frequency @@ -198,9 +257,9 @@ def billing_frequency(self, billing_frequency): def plan_duration(self): """ Gets the plan_duration of this PricingPlan. - Specifies the interval at which billing occurs for the subscription plan. + Specifies the duration of the subscription plan. - Allowed values for this property are: "ANNUAL", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "MONTHLY", "QUARTERLY", "SEMI_ANNUAL", "ANNUAL", "BIENNIAL", "TRIENNIAL", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -213,13 +272,13 @@ def plan_duration(self): def plan_duration(self, plan_duration): """ Sets the plan_duration of this PricingPlan. - Specifies the interval at which billing occurs for the subscription plan. + Specifies the duration of the subscription plan. :param plan_duration: The plan_duration of this PricingPlan. :type: str """ - allowed_values = ["ANNUAL"] + allowed_values = ["MONTHLY", "QUARTERLY", "SEMI_ANNUAL", "ANNUAL", "BIENNIAL", "TRIENNIAL"] if not value_allowed_none_or_none_sentinel(plan_duration, allowed_values): plan_duration = 'UNKNOWN_ENUM_VALUE' self._plan_duration = plan_duration @@ -248,6 +307,30 @@ def rates(self, rates): """ self._rates = rates + @property + def dimensions(self): + """ + Gets the dimensions of this PricingPlan. + Metered usage dimensions associated with the pricing plan. + + + :return: The dimensions of this PricingPlan. + :rtype: list[oci.self.models.UsageDimension] + """ + return self._dimensions + + @dimensions.setter + def dimensions(self, dimensions): + """ + Sets the dimensions of this PricingPlan. + Metered usage dimensions associated with the pricing plan. + + + :param dimensions: The dimensions of this PricingPlan. + :type: list[oci.self.models.UsageDimension] + """ + self._dimensions = dimensions + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/self/models/submit_subscription_usage_records_details.py b/src/oci/self/models/submit_subscription_usage_records_details.py new file mode 100644 index 0000000000..d0eae7d6ac --- /dev/null +++ b/src/oci/self/models/submit_subscription_usage_records_details.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260129 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class SubmitSubscriptionUsageRecordsDetails(object): + """ + Request payload to submit one or more usage records for marketplace offers. + """ + + def __init__(self, **kwargs): + """ + Initializes a new SubmitSubscriptionUsageRecordsDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param subscription_usage_records: + The value to assign to the subscription_usage_records property of this SubmitSubscriptionUsageRecordsDetails. + :type subscription_usage_records: list[oci.self.models.CreateSubscriptionUsageRecordDetails] + + """ + self.swagger_types = { + 'subscription_usage_records': 'list[CreateSubscriptionUsageRecordDetails]' + } + self.attribute_map = { + 'subscription_usage_records': 'subscriptionUsageRecords' + } + self._subscription_usage_records = None + + @property + def subscription_usage_records(self): + """ + **[Required]** Gets the subscription_usage_records of this SubmitSubscriptionUsageRecordsDetails. + The usage records to submit. The array must contain at least one record and no more than 100 records. + + + :return: The subscription_usage_records of this SubmitSubscriptionUsageRecordsDetails. + :rtype: list[oci.self.models.CreateSubscriptionUsageRecordDetails] + """ + return self._subscription_usage_records + + @subscription_usage_records.setter + def subscription_usage_records(self, subscription_usage_records): + """ + Sets the subscription_usage_records of this SubmitSubscriptionUsageRecordsDetails. + The usage records to submit. The array must contain at least one record and no more than 100 records. + + + :param subscription_usage_records: The subscription_usage_records of this SubmitSubscriptionUsageRecordsDetails. + :type: list[oci.self.models.CreateSubscriptionUsageRecordDetails] + """ + self._subscription_usage_records = subscription_usage_records + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/self/models/subscription.py b/src/oci/self/models/subscription.py index 46180c1056..980dd4de5f 100644 --- a/src/oci/self/models/subscription.py +++ b/src/oci/self/models/subscription.py @@ -87,6 +87,18 @@ class Subscription(object): #: This constant has a value of "DELETED" LIFECYCLE_DETAILS_DELETED = "DELETED" + #: A constant which can be used with the lifecycle_details property of a Subscription. + #: This constant has a value of "PENDING_CANCELLATION" + LIFECYCLE_DETAILS_PENDING_CANCELLATION = "PENDING_CANCELLATION" + + #: A constant which can be used with the lifecycle_details property of a Subscription. + #: This constant has a value of "SUSPENDED" + LIFECYCLE_DETAILS_SUSPENDED = "SUSPENDED" + + #: A constant which can be used with the lifecycle_details property of a Subscription. + #: This constant has a value of "CANCELED" + LIFECYCLE_DETAILS_CANCELED = "CANCELED" + def __init__(self, **kwargs): """ Initializes a new Subscription object with values from keyword arguments. @@ -162,7 +174,7 @@ def __init__(self, **kwargs): :param lifecycle_details: The value to assign to the lifecycle_details property of this Subscription. - Allowed values for this property are: "CREATED", "PENDING_ACTIVATION", "PROVISIONING_STARTED", "PROVISIONING_COMPLETED", "PROVISIONING_FAILED", "ACTIVE", "EXPIRED", "TERMINATED", "FAILED", "DELETING", "UPDATING", "DELETED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATED", "PENDING_ACTIVATION", "PROVISIONING_STARTED", "PROVISIONING_COMPLETED", "PROVISIONING_FAILED", "ACTIVE", "EXPIRED", "TERMINATED", "FAILED", "DELETING", "UPDATING", "DELETED", "PENDING_CANCELLATION", "SUSPENDED", "CANCELED", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_details: str @@ -675,7 +687,7 @@ def lifecycle_details(self): A message that describes the current state of the Subscription in more detail. For example, can be used to provide actionable information for a resource in the Failed state. - Allowed values for this property are: "CREATED", "PENDING_ACTIVATION", "PROVISIONING_STARTED", "PROVISIONING_COMPLETED", "PROVISIONING_FAILED", "ACTIVE", "EXPIRED", "TERMINATED", "FAILED", "DELETING", "UPDATING", "DELETED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATED", "PENDING_ACTIVATION", "PROVISIONING_STARTED", "PROVISIONING_COMPLETED", "PROVISIONING_FAILED", "ACTIVE", "EXPIRED", "TERMINATED", "FAILED", "DELETING", "UPDATING", "DELETED", "PENDING_CANCELLATION", "SUSPENDED", "CANCELED", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -695,7 +707,7 @@ def lifecycle_details(self, lifecycle_details): :param lifecycle_details: The lifecycle_details of this Subscription. :type: str """ - allowed_values = ["CREATED", "PENDING_ACTIVATION", "PROVISIONING_STARTED", "PROVISIONING_COMPLETED", "PROVISIONING_FAILED", "ACTIVE", "EXPIRED", "TERMINATED", "FAILED", "DELETING", "UPDATING", "DELETED"] + allowed_values = ["CREATED", "PENDING_ACTIVATION", "PROVISIONING_STARTED", "PROVISIONING_COMPLETED", "PROVISIONING_FAILED", "ACTIVE", "EXPIRED", "TERMINATED", "FAILED", "DELETING", "UPDATING", "DELETED", "PENDING_CANCELLATION", "SUSPENDED", "CANCELED"] if not value_allowed_none_or_none_sentinel(lifecycle_details, allowed_values): lifecycle_details = 'UNKNOWN_ENUM_VALUE' self._lifecycle_details = lifecycle_details diff --git a/src/oci/self/models/subscription_details.py b/src/oci/self/models/subscription_details.py index be54753a62..14db3d703e 100644 --- a/src/oci/self/models/subscription_details.py +++ b/src/oci/self/models/subscription_details.py @@ -38,7 +38,7 @@ def __init__(self, **kwargs): :param billing_details: The value to assign to the billing_details property of this SubscriptionDetails. - :type billing_details: oci.self.models.BillingDetails + :type billing_details: list[oci.self.models.BillingDetails] :param is_auto_renew: The value to assign to the is_auto_renew property of this SubscriptionDetails. @@ -50,7 +50,7 @@ def __init__(self, **kwargs): 'partner_registration_url': 'str', 'currency': 'str', 'amount': 'float', - 'billing_details': 'BillingDetails', + 'billing_details': 'list[BillingDetails]', 'is_auto_renew': 'bool' } self.attribute_map = { @@ -164,9 +164,11 @@ def amount(self, amount): def billing_details(self): """ **[Required]** Gets the billing_details of this SubscriptionDetails. + Billing details associated with the subscription plan and its usage dimensions. + :return: The billing_details of this SubscriptionDetails. - :rtype: oci.self.models.BillingDetails + :rtype: list[oci.self.models.BillingDetails] """ return self._billing_details @@ -174,9 +176,11 @@ def billing_details(self): def billing_details(self, billing_details): """ Sets the billing_details of this SubscriptionDetails. + Billing details associated with the subscription plan and its usage dimensions. + :param billing_details: The billing_details of this SubscriptionDetails. - :type: oci.self.models.BillingDetails + :type: list[oci.self.models.BillingDetails] """ self._billing_details = billing_details diff --git a/src/oci/self/models/subscription_summary.py b/src/oci/self/models/subscription_summary.py index 038f30dcf2..4f1a6aec47 100644 --- a/src/oci/self/models/subscription_summary.py +++ b/src/oci/self/models/subscription_summary.py @@ -79,6 +79,18 @@ class SubscriptionSummary(object): #: This constant has a value of "DELETED" LIFECYCLE_DETAILS_DELETED = "DELETED" + #: A constant which can be used with the lifecycle_details property of a SubscriptionSummary. + #: This constant has a value of "PENDING_CANCELLATION" + LIFECYCLE_DETAILS_PENDING_CANCELLATION = "PENDING_CANCELLATION" + + #: A constant which can be used with the lifecycle_details property of a SubscriptionSummary. + #: This constant has a value of "SUSPENDED" + LIFECYCLE_DETAILS_SUSPENDED = "SUSPENDED" + + #: A constant which can be used with the lifecycle_details property of a SubscriptionSummary. + #: This constant has a value of "CANCELED" + LIFECYCLE_DETAILS_CANCELED = "CANCELED" + def __init__(self, **kwargs): """ Initializes a new SubscriptionSummary object with values from keyword arguments. @@ -136,7 +148,7 @@ def __init__(self, **kwargs): :param lifecycle_details: The value to assign to the lifecycle_details property of this SubscriptionSummary. - Allowed values for this property are: "CREATED", "PENDING_ACTIVATION", "PROVISIONING_STARTED", "PROVISIONING_COMPLETED", "PROVISIONING_FAILED", "ACTIVE", "EXPIRED", "TERMINATED", "FAILED", "DELETING", "UPDATING", "DELETED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATED", "PENDING_ACTIVATION", "PROVISIONING_STARTED", "PROVISIONING_COMPLETED", "PROVISIONING_FAILED", "ACTIVE", "EXPIRED", "TERMINATED", "FAILED", "DELETING", "UPDATING", "DELETED", "PENDING_CANCELLATION", "SUSPENDED", "CANCELED", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_details: str @@ -535,7 +547,7 @@ def lifecycle_details(self): A message that describes the current state of the Subscription in more detail. For example, can be used to provide actionable information for a resource in the Failed state. - Allowed values for this property are: "CREATED", "PENDING_ACTIVATION", "PROVISIONING_STARTED", "PROVISIONING_COMPLETED", "PROVISIONING_FAILED", "ACTIVE", "EXPIRED", "TERMINATED", "FAILED", "DELETING", "UPDATING", "DELETED", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATED", "PENDING_ACTIVATION", "PROVISIONING_STARTED", "PROVISIONING_COMPLETED", "PROVISIONING_FAILED", "ACTIVE", "EXPIRED", "TERMINATED", "FAILED", "DELETING", "UPDATING", "DELETED", "PENDING_CANCELLATION", "SUSPENDED", "CANCELED", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -555,7 +567,7 @@ def lifecycle_details(self, lifecycle_details): :param lifecycle_details: The lifecycle_details of this SubscriptionSummary. :type: str """ - allowed_values = ["CREATED", "PENDING_ACTIVATION", "PROVISIONING_STARTED", "PROVISIONING_COMPLETED", "PROVISIONING_FAILED", "ACTIVE", "EXPIRED", "TERMINATED", "FAILED", "DELETING", "UPDATING", "DELETED"] + allowed_values = ["CREATED", "PENDING_ACTIVATION", "PROVISIONING_STARTED", "PROVISIONING_COMPLETED", "PROVISIONING_FAILED", "ACTIVE", "EXPIRED", "TERMINATED", "FAILED", "DELETING", "UPDATING", "DELETED", "PENDING_CANCELLATION", "SUSPENDED", "CANCELED"] if not value_allowed_none_or_none_sentinel(lifecycle_details, allowed_values): lifecycle_details = 'UNKNOWN_ENUM_VALUE' self._lifecycle_details = lifecycle_details diff --git a/src/oci/self/models/usage_dimension.py b/src/oci/self/models/usage_dimension.py new file mode 100644 index 0000000000..0f399f669c --- /dev/null +++ b/src/oci/self/models/usage_dimension.py @@ -0,0 +1,316 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260129 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class UsageDimension(object): + """ + A metered usage dimension associated with a usage-based or hybrid pricing plan. + """ + + #: A constant which can be used with the metric_type property of a UsageDimension. + #: This constant has a value of "OCPU_HOURS" + METRIC_TYPE_OCPU_HOURS = "OCPU_HOURS" + + #: A constant which can be used with the metric_type property of a UsageDimension. + #: This constant has a value of "INSTANCE_HOURS" + METRIC_TYPE_INSTANCE_HOURS = "INSTANCE_HOURS" + + #: A constant which can be used with the metric_type property of a UsageDimension. + #: This constant has a value of "CORE_HOURS" + METRIC_TYPE_CORE_HOURS = "CORE_HOURS" + + #: A constant which can be used with the metric_type property of a UsageDimension. + #: This constant has a value of "EACH" + METRIC_TYPE_EACH = "EACH" + + #: A constant which can be used with the dimension_billing_frequency property of a UsageDimension. + #: This constant has a value of "MONTHLY" + DIMENSION_BILLING_FREQUENCY_MONTHLY = "MONTHLY" + + #: A constant which can be used with the dimension_billing_frequency property of a UsageDimension. + #: This constant has a value of "QUARTERLY" + DIMENSION_BILLING_FREQUENCY_QUARTERLY = "QUARTERLY" + + #: A constant which can be used with the dimension_billing_frequency property of a UsageDimension. + #: This constant has a value of "SEMI_ANNUAL" + DIMENSION_BILLING_FREQUENCY_SEMI_ANNUAL = "SEMI_ANNUAL" + + #: A constant which can be used with the dimension_billing_frequency property of a UsageDimension. + #: This constant has a value of "ANNUAL" + DIMENSION_BILLING_FREQUENCY_ANNUAL = "ANNUAL" + + #: A constant which can be used with the dimension_billing_frequency property of a UsageDimension. + #: This constant has a value of "BIENNIAL" + DIMENSION_BILLING_FREQUENCY_BIENNIAL = "BIENNIAL" + + #: A constant which can be used with the dimension_billing_frequency property of a UsageDimension. + #: This constant has a value of "TRIENNIAL" + DIMENSION_BILLING_FREQUENCY_TRIENNIAL = "TRIENNIAL" + + #: A constant which can be used with the dimension_billing_frequency property of a UsageDimension. + #: This constant has a value of "YEARLY" + DIMENSION_BILLING_FREQUENCY_YEARLY = "YEARLY" + + def __init__(self, **kwargs): + """ + Initializes a new UsageDimension object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param dimension_name: + The value to assign to the dimension_name property of this UsageDimension. + :type dimension_name: str + + :param dimension_key: + The value to assign to the dimension_key property of this UsageDimension. + :type dimension_key: str + + :param dimension_description: + The value to assign to the dimension_description property of this UsageDimension. + :type dimension_description: str + + :param metric_type: + The value to assign to the metric_type property of this UsageDimension. + Allowed values for this property are: "OCPU_HOURS", "INSTANCE_HOURS", "CORE_HOURS", "EACH", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type metric_type: str + + :param dimension_billing_frequency: + The value to assign to the dimension_billing_frequency property of this UsageDimension. + Allowed values for this property are: "MONTHLY", "QUARTERLY", "SEMI_ANNUAL", "ANNUAL", "BIENNIAL", "TRIENNIAL", "YEARLY", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type dimension_billing_frequency: str + + :param included_quantity: + The value to assign to the included_quantity property of this UsageDimension. + :type included_quantity: float + + :param rates: + The value to assign to the rates property of this UsageDimension. + :type rates: list[oci.self.models.PricingRate] + + """ + self.swagger_types = { + 'dimension_name': 'str', + 'dimension_key': 'str', + 'dimension_description': 'str', + 'metric_type': 'str', + 'dimension_billing_frequency': 'str', + 'included_quantity': 'float', + 'rates': 'list[PricingRate]' + } + self.attribute_map = { + 'dimension_name': 'dimensionName', + 'dimension_key': 'dimensionKey', + 'dimension_description': 'dimensionDescription', + 'metric_type': 'metricType', + 'dimension_billing_frequency': 'dimensionBillingFrequency', + 'included_quantity': 'includedQuantity', + 'rates': 'rates' + } + self._dimension_name = None + self._dimension_key = None + self._dimension_description = None + self._metric_type = None + self._dimension_billing_frequency = None + self._included_quantity = None + self._rates = None + + @property + def dimension_name(self): + """ + **[Required]** Gets the dimension_name of this UsageDimension. + The name of the usage dimension. + + + :return: The dimension_name of this UsageDimension. + :rtype: str + """ + return self._dimension_name + + @dimension_name.setter + def dimension_name(self, dimension_name): + """ + Sets the dimension_name of this UsageDimension. + The name of the usage dimension. + + + :param dimension_name: The dimension_name of this UsageDimension. + :type: str + """ + self._dimension_name = dimension_name + + @property + def dimension_key(self): + """ + **[Required]** Gets the dimension_key of this UsageDimension. + The stable key used internally to map this usage dimension to billing details. + + + :return: The dimension_key of this UsageDimension. + :rtype: str + """ + return self._dimension_key + + @dimension_key.setter + def dimension_key(self, dimension_key): + """ + Sets the dimension_key of this UsageDimension. + The stable key used internally to map this usage dimension to billing details. + + + :param dimension_key: The dimension_key of this UsageDimension. + :type: str + """ + self._dimension_key = dimension_key + + @property + def dimension_description(self): + """ + **[Required]** Gets the dimension_description of this UsageDimension. + A detailed explanation of the usage dimension. + + + :return: The dimension_description of this UsageDimension. + :rtype: str + """ + return self._dimension_description + + @dimension_description.setter + def dimension_description(self, dimension_description): + """ + Sets the dimension_description of this UsageDimension. + A detailed explanation of the usage dimension. + + + :param dimension_description: The dimension_description of this UsageDimension. + :type: str + """ + self._dimension_description = dimension_description + + @property + def metric_type(self): + """ + **[Required]** Gets the metric_type of this UsageDimension. + The metric type in which usage is measured. + + Allowed values for this property are: "OCPU_HOURS", "INSTANCE_HOURS", "CORE_HOURS", "EACH", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The metric_type of this UsageDimension. + :rtype: str + """ + return self._metric_type + + @metric_type.setter + def metric_type(self, metric_type): + """ + Sets the metric_type of this UsageDimension. + The metric type in which usage is measured. + + + :param metric_type: The metric_type of this UsageDimension. + :type: str + """ + allowed_values = ["OCPU_HOURS", "INSTANCE_HOURS", "CORE_HOURS", "EACH"] + if not value_allowed_none_or_none_sentinel(metric_type, allowed_values): + metric_type = 'UNKNOWN_ENUM_VALUE' + self._metric_type = metric_type + + @property + def dimension_billing_frequency(self): + """ + **[Required]** Gets the dimension_billing_frequency of this UsageDimension. + Specifies the interval at which the usage dimension is billed. + + Allowed values for this property are: "MONTHLY", "QUARTERLY", "SEMI_ANNUAL", "ANNUAL", "BIENNIAL", "TRIENNIAL", "YEARLY", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The dimension_billing_frequency of this UsageDimension. + :rtype: str + """ + return self._dimension_billing_frequency + + @dimension_billing_frequency.setter + def dimension_billing_frequency(self, dimension_billing_frequency): + """ + Sets the dimension_billing_frequency of this UsageDimension. + Specifies the interval at which the usage dimension is billed. + + + :param dimension_billing_frequency: The dimension_billing_frequency of this UsageDimension. + :type: str + """ + allowed_values = ["MONTHLY", "QUARTERLY", "SEMI_ANNUAL", "ANNUAL", "BIENNIAL", "TRIENNIAL", "YEARLY"] + if not value_allowed_none_or_none_sentinel(dimension_billing_frequency, allowed_values): + dimension_billing_frequency = 'UNKNOWN_ENUM_VALUE' + self._dimension_billing_frequency = dimension_billing_frequency + + @property + def included_quantity(self): + """ + Gets the included_quantity of this UsageDimension. + Quantity included in the base fee for hybrid plans. + + + :return: The included_quantity of this UsageDimension. + :rtype: float + """ + return self._included_quantity + + @included_quantity.setter + def included_quantity(self, included_quantity): + """ + Sets the included_quantity of this UsageDimension. + Quantity included in the base fee for hybrid plans. + + + :param included_quantity: The included_quantity of this UsageDimension. + :type: float + """ + self._included_quantity = included_quantity + + @property + def rates(self): + """ + **[Required]** Gets the rates of this UsageDimension. + Dimension-level rates in various supported currencies. + + + :return: The rates of this UsageDimension. + :rtype: list[oci.self.models.PricingRate] + """ + return self._rates + + @rates.setter + def rates(self, rates): + """ + Sets the rates of this UsageDimension. + Dimension-level rates in various supported currencies. + + + :param rates: The rates of this UsageDimension. + :type: list[oci.self.models.PricingRate] + """ + self._rates = rates + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/self/models/work_request.py b/src/oci/self/models/work_request.py index c2004a6e46..8cd84982d1 100644 --- a/src/oci/self/models/work_request.py +++ b/src/oci/self/models/work_request.py @@ -33,6 +33,10 @@ class WorkRequest(object): #: This constant has a value of "MOVE_SUBSCRIPTION" OPERATION_TYPE_MOVE_SUBSCRIPTION = "MOVE_SUBSCRIPTION" + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "SUBMIT_SUBSCRIPTION_USAGE_BATCH" + OPERATION_TYPE_SUBMIT_SUBSCRIPTION_USAGE_BATCH = "SUBMIT_SUBSCRIPTION_USAGE_BATCH" + #: A constant which can be used with the status property of a WorkRequest. #: This constant has a value of "ACCEPTED" STATUS_ACCEPTED = "ACCEPTED" @@ -72,7 +76,7 @@ def __init__(self, **kwargs): :param operation_type: The value to assign to the operation_type property of this WorkRequest. - Allowed values for this property are: "CREATE_SUBSCRIPTION", "UPDATE_SUBSCRIPTION", "DELETE_SUBSCRIPTION", "MOVE_SUBSCRIPTION", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATE_SUBSCRIPTION", "UPDATE_SUBSCRIPTION", "DELETE_SUBSCRIPTION", "MOVE_SUBSCRIPTION", "SUBMIT_SUBSCRIPTION_USAGE_BATCH", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type operation_type: str @@ -156,7 +160,7 @@ def operation_type(self): **[Required]** Gets the operation_type of this WorkRequest. The asynchronous operation tracked by this work request. - Allowed values for this property are: "CREATE_SUBSCRIPTION", "UPDATE_SUBSCRIPTION", "DELETE_SUBSCRIPTION", "MOVE_SUBSCRIPTION", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATE_SUBSCRIPTION", "UPDATE_SUBSCRIPTION", "DELETE_SUBSCRIPTION", "MOVE_SUBSCRIPTION", "SUBMIT_SUBSCRIPTION_USAGE_BATCH", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -175,7 +179,7 @@ def operation_type(self, operation_type): :param operation_type: The operation_type of this WorkRequest. :type: str """ - allowed_values = ["CREATE_SUBSCRIPTION", "UPDATE_SUBSCRIPTION", "DELETE_SUBSCRIPTION", "MOVE_SUBSCRIPTION"] + allowed_values = ["CREATE_SUBSCRIPTION", "UPDATE_SUBSCRIPTION", "DELETE_SUBSCRIPTION", "MOVE_SUBSCRIPTION", "SUBMIT_SUBSCRIPTION_USAGE_BATCH"] if not value_allowed_none_or_none_sentinel(operation_type, allowed_values): operation_type = 'UNKNOWN_ENUM_VALUE' self._operation_type = operation_type diff --git a/src/oci/self/models/work_request_summary.py b/src/oci/self/models/work_request_summary.py index 90c1bbefd4..2ac25510aa 100644 --- a/src/oci/self/models/work_request_summary.py +++ b/src/oci/self/models/work_request_summary.py @@ -31,6 +31,10 @@ class WorkRequestSummary(object): #: This constant has a value of "MOVE_SUBSCRIPTION" OPERATION_TYPE_MOVE_SUBSCRIPTION = "MOVE_SUBSCRIPTION" + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "SUBMIT_SUBSCRIPTION_USAGE_BATCH" + OPERATION_TYPE_SUBMIT_SUBSCRIPTION_USAGE_BATCH = "SUBMIT_SUBSCRIPTION_USAGE_BATCH" + #: A constant which can be used with the status property of a WorkRequestSummary. #: This constant has a value of "ACCEPTED" STATUS_ACCEPTED = "ACCEPTED" @@ -70,7 +74,7 @@ def __init__(self, **kwargs): :param operation_type: The value to assign to the operation_type property of this WorkRequestSummary. - Allowed values for this property are: "CREATE_SUBSCRIPTION", "UPDATE_SUBSCRIPTION", "DELETE_SUBSCRIPTION", "MOVE_SUBSCRIPTION", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATE_SUBSCRIPTION", "UPDATE_SUBSCRIPTION", "DELETE_SUBSCRIPTION", "MOVE_SUBSCRIPTION", "SUBMIT_SUBSCRIPTION_USAGE_BATCH", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type operation_type: str @@ -154,7 +158,7 @@ def operation_type(self): **[Required]** Gets the operation_type of this WorkRequestSummary. The asynchronous operation tracked by this work request. - Allowed values for this property are: "CREATE_SUBSCRIPTION", "UPDATE_SUBSCRIPTION", "DELETE_SUBSCRIPTION", "MOVE_SUBSCRIPTION", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "CREATE_SUBSCRIPTION", "UPDATE_SUBSCRIPTION", "DELETE_SUBSCRIPTION", "MOVE_SUBSCRIPTION", "SUBMIT_SUBSCRIPTION_USAGE_BATCH", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -173,7 +177,7 @@ def operation_type(self, operation_type): :param operation_type: The operation_type of this WorkRequestSummary. :type: str """ - allowed_values = ["CREATE_SUBSCRIPTION", "UPDATE_SUBSCRIPTION", "DELETE_SUBSCRIPTION", "MOVE_SUBSCRIPTION"] + allowed_values = ["CREATE_SUBSCRIPTION", "UPDATE_SUBSCRIPTION", "DELETE_SUBSCRIPTION", "MOVE_SUBSCRIPTION", "SUBMIT_SUBSCRIPTION_USAGE_BATCH"] if not value_allowed_none_or_none_sentinel(operation_type, allowed_values): operation_type = 'UNKNOWN_ENUM_VALUE' self._operation_type = operation_type diff --git a/src/oci/self/partner_integeration_client.py b/src/oci/self/partner_integeration_client.py index c9b0c51a6b..2fb4f718a0 100644 --- a/src/oci/self/partner_integeration_client.py +++ b/src/oci/self/partner_integeration_client.py @@ -14,6 +14,7 @@ from oci.config import get_config_value_or_default, validate_config from oci.signer import Signer from oci.util import Sentinel, get_signer_from_authentication_type, AUTHENTICATION_TYPE_FIELD_NAME +from oci.util import back_up_body_calculate_stream_content_length, is_content_length_calculable_by_req_util from oci.exceptions import InvalidDeveloperToolConfiguration from oci.developer_tool_configuration import OCI_SDK_ENABLED_SERVICES_SET from .models import self_type_mapping @@ -178,7 +179,7 @@ def activate_subscription(self, subscription_id, activate_subscription_details, """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. required_arguments = ['subscriptionId'] - resource_path = "/partner/subscriptions/{subscriptionId}/actions/activate" + resource_path = "/partners/subscriptions/{subscriptionId}/actions/activate" method = "POST" operation_name = "activate_subscription" api_reference_link = "https://docs.oracle.com/iaas/api/#/en/self/20260129/PartnerSubscription/ActivateSubscription" @@ -255,6 +256,163 @@ def activate_subscription(self, subscription_id, activate_subscription_details, api_reference_link=api_reference_link, required_arguments=required_arguments) + def list_partners(self, **kwargs): + """ + Lists marketplace publisher partner info for a compartment. + + + :param str compartment_id: (optional) + The `OCID`__ of the compartment in which to list resources. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str display_name: (optional) + A filter to return only resources that match the given name. + + :param str sort_by: (optional) + The field to sort by. Only one sort order may be provided. + + Allowed values are: "timeCreated", "displayName", "productId" + + :param str sort_order: (optional) + The sort order to use, either ascending (`ASC`) or descending (`DESC`). + + Allowed values are: "ASC", "DESC" + + :param int limit: (optional) + For list pagination. The maximum number of results per page, or items to return in a + paginated \"List\" call. For important details about how pagination works, see + `List Pagination`__. + + __ https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param str page: (optional) + For list pagination. The value of the opc-next-page response header from the previous + \"List\" call. For important details about how pagination works, see + `List Pagination`__. + + __ https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.self.models.PartnerCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_partners API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = [] + resource_path = "/partners" + method = "GET" + operation_name = "list_partners" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/self/20260129/Partner/ListPartners" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "compartment_id", + "display_name", + "sort_by", + "sort_order", + "limit", + "page", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_partners got unknown kwargs: {extra_kwargs!r}") + + if 'sort_by' in kwargs: + sort_by_allowed_values = ["timeCreated", "displayName", "productId"] + if kwargs['sort_by'] not in sort_by_allowed_values: + raise ValueError( + f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" + ) + + if 'sort_order' in kwargs: + sort_order_allowed_values = ["ASC", "DESC"] + if kwargs['sort_order'] not in sort_order_allowed_values: + raise ValueError( + f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + ) + + query_params = { + "compartmentId": kwargs.get("compartment_id", missing), + "displayName": kwargs.get("display_name", missing), + "sortBy": kwargs.get("sort_by", missing), + "sortOrder": kwargs.get("sort_order", missing), + "limit": kwargs.get("limit", missing), + "page": kwargs.get("page", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="PartnerCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="PartnerCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + def listing_subscriptions(self, listing_id, **kwargs): """ Gets information about a Subscription. @@ -269,7 +427,7 @@ def listing_subscriptions(self, listing_id, **kwargs): :param str sort_by: (optional) The field to sort by. Only one sort order may be provided. - Allowed values are: "timeCreated", "displayName", "selfTokenId", "productId" + Allowed values are: "timeCreated", "displayName", "productId" :param str sort_order: (optional) The sort order to use, either ascending (`ASC`) or descending (`DESC`). @@ -318,7 +476,7 @@ def listing_subscriptions(self, listing_id, **kwargs): """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. required_arguments = ['listingId'] - resource_path = "/partner/subscriptions" + resource_path = "/partners/subscriptions" method = "GET" operation_name = "listing_subscriptions" api_reference_link = "https://docs.oracle.com/iaas/api/#/en/self/20260129/ListingSubscriptionsCollection/ListingSubscriptions" @@ -341,7 +499,7 @@ def listing_subscriptions(self, listing_id, **kwargs): f"listing_subscriptions got unknown kwargs: {extra_kwargs!r}") if 'sort_by' in kwargs: - sort_by_allowed_values = ["timeCreated", "displayName", "selfTokenId", "productId"] + sort_by_allowed_values = ["timeCreated", "displayName", "productId"] if kwargs['sort_by'] not in sort_by_allowed_values: raise ValueError( f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" @@ -458,7 +616,7 @@ def resolve_subscription(self, resolve_subscription_details, **kwargs): """ # Required path and query arguments. These are in camelCase to replace values in service endpoints. required_arguments = [] - resource_path = "/partner/subscriptions/actions/resolve" + resource_path = "/partners/subscriptions/actions/resolve" method = "POST" operation_name = "resolve_subscription" api_reference_link = "https://docs.oracle.com/iaas/api/#/en/self/20260129/PartnerSubscription/ResolveSubscription" @@ -522,3 +680,266 @@ def resolve_subscription(self, resolve_subscription_details, **kwargs): operation_name=operation_name, api_reference_link=api_reference_link, required_arguments=required_arguments) + + def submit_subscription_usage_batch(self, compartment_id, submit_subscription_usage_batch_details, **kwargs): + """ + Asynchronously submits a UTF-8 CSV usage file for marketplace offers. The file + must not exceed 50 MB or 10,000 rows and must include required usage columns. + + + :param str compartment_id: (required) + The `OCID`__ of the compartment associated with the usage records request. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param stream submit_subscription_usage_batch_details: (required) + UTF-8 CSV file with no more than 10,000 usage records and a maximum size of 50 MB. + Required columns are `MarketplaceOfferId`, `Id`, `Amount`, `CurrencyCode`, + `UsageStartTime`, `UsageEndTime`, and `UsageDimensionName`. + Optional columns are `ConsumedQuantity`, `CustomerTenancyId`, + `BillingIdentifier`, `ProductSku`, `UnitOfMeasure`, `UnitPrice`, + `ContractDuration`, and `AdditionalMetadata`. + When provided in CSV, `AdditionalMetadata` must be a JSON array of `ExtendedMetadata` + objects. `MarketplaceOfferId` must be a subscription or private offer OCID. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of running that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and removed from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :param int buffer_limit: (optional) + A buffer limit for the stream to be buffered. buffer_limit is used to set the buffer size capacity. Streams will be read until the size of the buffer reaches the buffer_limit. + If the stream size is greater than the buffer_limit, a BufferError exception will be thrown. + + The buffer_limit parameter is used when the stream object does not have a `seek`, `tell`, or `fileno` property for the Python Request library to calculate out the content length. + If buffer_limit is not passed, then the buffer_limit will be defaulted to 100MB. + Large streams can cause the process to freeze, consider passing in content-length for large streams instead. + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use submit_subscription_usage_batch API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = [] + resource_path = "/partners/actions/batchUsageRecords" + method = "POST" + operation_name = "submit_subscription_usage_batch" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/self/20260129/CreateSubscriptionUsageRecordDetails/SubmitSubscriptionUsageBatch" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "buffer_limit", + "opc_retry_token", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"submit_subscription_usage_batch got unknown kwargs: {extra_kwargs!r}") + + header_params = { + "accept": "application/json", + "compartment-id": compartment_id, + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + # If the body parameter is optional we need to assign it to a variable so additional type checking can be performed. + try: + submit_subscription_usage_batch_details + except NameError: + submit_subscription_usage_batch_details = kwargs.get("submit_subscription_usage_batch_details", missing) + + if submit_subscription_usage_batch_details is not missing and submit_subscription_usage_batch_details is not None: + if (not isinstance(submit_subscription_usage_batch_details, (six.binary_type, six.string_types)) and + not hasattr(submit_subscription_usage_batch_details, "read")): + raise TypeError('The body must be a string, bytes, or provide a read() method.') + + if hasattr(submit_subscription_usage_batch_details, 'fileno') and hasattr(submit_subscription_usage_batch_details, 'name') and submit_subscription_usage_batch_details.name != '': + if requests.utils.super_len(submit_subscription_usage_batch_details) == 0: + header_params['Content-Length'] = '0' + + # If content length is not given and stream object have no 'fileno' and is not a string or bytes, try to calculate content length + elif 'Content-Length' not in header_params and not is_content_length_calculable_by_req_util(submit_subscription_usage_batch_details): + calculated_obj = back_up_body_calculate_stream_content_length(submit_subscription_usage_batch_details, kwargs.get("buffer_limit")) + header_params['Content-Length'] = calculated_obj["content_length"] + submit_subscription_usage_batch_details = calculated_obj["byte_content"] + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + header_params=header_params, + body=submit_subscription_usage_batch_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + header_params=header_params, + body=submit_subscription_usage_batch_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def submit_subscription_usage_records(self, compartment_id, submit_subscription_usage_records_details, **kwargs): + """ + Synchronously submits usage records for marketplace offers. Each record must include + `id`, `marketplaceOfferId`, `amount`, `currencyCode`, `timeUsageStarted`, + `timeUsageEnded`, and `usageDimensionName`. + + + :param str compartment_id: (required) + The `OCID`__ of the compartment associated with the usage records request. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param oci.self.models.SubmitSubscriptionUsageRecordsDetails submit_subscription_usage_records_details: (required) + Usage records to submit for marketplace offers. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of running that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and removed from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use submit_subscription_usage_records API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = [] + resource_path = "/partners/actions/submitUsageRecords" + method = "POST" + operation_name = "submit_subscription_usage_records" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/self/20260129/CreateSubscriptionUsageRecordDetails/SubmitSubscriptionUsageRecords" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_retry_token", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"submit_subscription_usage_records got unknown kwargs: {extra_kwargs!r}") + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "compartment-id": compartment_id, + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + header_params=header_params, + body=submit_subscription_usage_records_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + header_params=header_params, + body=submit_subscription_usage_records_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) diff --git a/src/oci/self/partner_integeration_client_composite_operations.py b/src/oci/self/partner_integeration_client_composite_operations.py index bd160436ef..2982857680 100644 --- a/src/oci/self/partner_integeration_client_composite_operations.py +++ b/src/oci/self/partner_integeration_client_composite_operations.py @@ -24,3 +24,54 @@ def __init__(self, client, **kwargs): The service client which will be wrapped by this object """ self.client = client + + def submit_subscription_usage_batch_and_wait_for_state(self, compartment_id, submit_subscription_usage_batch_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.self.PartnerIntegerationClient.submit_subscription_usage_batch` and waits for the :py:class:`~oci.self.models.WorkRequest` + to enter the given state(s). + + :param str compartment_id: (required) + The `OCID`__ of the compartment associated with the usage records request. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param stream submit_subscription_usage_batch_details: (required) + UTF-8 CSV file with no more than 10,000 usage records and a maximum size of 50 MB. + Required columns are `MarketplaceOfferId`, `Id`, `Amount`, `CurrencyCode`, + `UsageStartTime`, `UsageEndTime`, and `UsageDimensionName`. + Optional columns are `ConsumedQuantity`, `CustomerTenancyId`, + `BillingIdentifier`, `ProductSku`, `UnitOfMeasure`, `UnitPrice`, + `ContractDuration`, and `AdditionalMetadata`. + When provided in CSV, `AdditionalMetadata` must be a JSON array of `ExtendedMetadata` + objects. `MarketplaceOfferId` must be a subscription or private offer OCID. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.self.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.self.PartnerIntegerationClient.submit_subscription_usage_batch` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.submit_subscription_usage_batch(compartment_id, submit_subscription_usage_batch_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) diff --git a/src/oci/self/subscription_client.py b/src/oci/self/subscription_client.py index 766e9cf466..b3195aae86 100644 --- a/src/oci/self/subscription_client.py +++ b/src/oci/self/subscription_client.py @@ -124,6 +124,139 @@ def __init__(self, config, **kwargs): self.retry_strategy = kwargs.get('retry_strategy') self.circuit_breaker_callback = kwargs.get('circuit_breaker_callback') + def cancel_subscription(self, subscription_id, cancel_subscription_details, **kwargs): + """ + Requests cancellation of a Subscription. The subscription transitions to PendingCancellation + and remains active until the end of the current billing cycle, at which point it transitions + to Canceled. The subscription must be in the Active state to be canceled. + + + :param str subscription_id: (required) + The unique identifier for the subscription. + + :param oci.self.models.CancelSubscriptionDetails cancel_subscription_details: (required) + Details for the cancellation request. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the + `if-match` parameter to the value of the etag from a previous GET or POST response for + that resource. The resource will be updated or deleted only if the etag you provide + matches the resource's current etag value. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of running that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and removed from the system, then a retry of the original creation request + might be rejected. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.self.models.Subscription` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use cancel_subscription API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['subscriptionId'] + resource_path = "/subscriptions/{subscriptionId}/actions/cancel" + method = "POST" + operation_name = "cancel_subscription" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/self/20260129/Subscription/CancelSubscription" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id", + "opc_retry_token" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"cancel_subscription got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "subscriptionId": subscription_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=cancel_subscription_details, + response_type="Subscription", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=cancel_subscription_details, + response_type="Subscription", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + def cancel_work_request(self, work_request_id, **kwargs): """ Cancels a work request. @@ -935,7 +1068,7 @@ def list_subscriptions(self, **kwargs): A filter to return only resources that match the given lifecycle state. The state value is case-insensitive. - Allowed values are: "CREATED", "PENDING_ACTIVATION", "PROVISIONING_STARTED", "PROVISIONING_COMPLETED", "PROVISIONING_FAILED", "ACTIVE", "EXPIRED", "TERMINATED", "FAILED", "DELETING", "UPDATING", "DELETED" + Allowed values are: "CREATED", "PENDING_ACTIVATION", "PROVISIONING_STARTED", "PROVISIONING_COMPLETED", "PROVISIONING_FAILED", "ACTIVE", "EXPIRED", "TERMINATED", "FAILED", "DELETING", "UPDATING", "DELETED", "PENDING_CANCELLATION", "SUSPENDED", "CANCELED" :param str display_name: (optional) A filter to return only resources that match the given name. @@ -967,7 +1100,7 @@ def list_subscriptions(self, **kwargs): :param str sort_by: (optional) The field to sort by. Only one sort order may be provided. - Allowed values are: "timeCreated", "displayName", "selfTokenId", "productId" + Allowed values are: "timeCreated", "displayName", "productId" :param str opc_request_id: (optional) Unique Oracle-assigned identifier for the request. If you need to contact @@ -1025,7 +1158,7 @@ def list_subscriptions(self, **kwargs): f"list_subscriptions got unknown kwargs: {extra_kwargs!r}") if 'lifecycle_details' in kwargs: - lifecycle_details_allowed_values = ["CREATED", "PENDING_ACTIVATION", "PROVISIONING_STARTED", "PROVISIONING_COMPLETED", "PROVISIONING_FAILED", "ACTIVE", "EXPIRED", "TERMINATED", "FAILED", "DELETING", "UPDATING", "DELETED"] + lifecycle_details_allowed_values = ["CREATED", "PENDING_ACTIVATION", "PROVISIONING_STARTED", "PROVISIONING_COMPLETED", "PROVISIONING_FAILED", "ACTIVE", "EXPIRED", "TERMINATED", "FAILED", "DELETING", "UPDATING", "DELETED", "PENDING_CANCELLATION", "SUSPENDED", "CANCELED"] if kwargs['lifecycle_details'] not in lifecycle_details_allowed_values: raise ValueError( f"Invalid value for `lifecycle_details`, must be one of { lifecycle_details_allowed_values }" @@ -1039,7 +1172,7 @@ def list_subscriptions(self, **kwargs): ) if 'sort_by' in kwargs: - sort_by_allowed_values = ["timeCreated", "displayName", "selfTokenId", "productId"] + sort_by_allowed_values = ["timeCreated", "displayName", "productId"] if kwargs['sort_by'] not in sort_by_allowed_values: raise ValueError( f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" diff --git a/src/oci/self/subscription_client_composite_operations.py b/src/oci/self/subscription_client_composite_operations.py index b39e194001..a16746c0dc 100644 --- a/src/oci/self/subscription_client_composite_operations.py +++ b/src/oci/self/subscription_client_composite_operations.py @@ -25,6 +25,51 @@ def __init__(self, client, **kwargs): """ self.client = client + def cancel_subscription_and_wait_for_state(self, subscription_id, cancel_subscription_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.self.SubscriptionClient.cancel_subscription` and waits for the :py:class:`~oci.self.models.Subscription` acted upon + to enter the given state(s). + + :param str subscription_id: (required) + The unique identifier for the subscription. + + :param oci.self.models.CancelSubscriptionDetails cancel_subscription_details: (required) + Details for the cancellation request. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.self.models.Subscription.lifecycle_state` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.self.SubscriptionClient.cancel_subscription` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.cancel_subscription(subscription_id, cancel_subscription_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + subscription_id = operation_result.data.id + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_subscription(subscription_id), # noqa: F821 + evaluate_response=lambda r: getattr(r.data, 'lifecycle_state') and getattr(r.data, 'lifecycle_state').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except (NameError, TypeError) as e: + if not e.args: + e.args = ('',) + e.args = e.args + ('This composite operation is currently not supported in the SDK. Please use the operation from the service client and use waiters as an alternative. For more information on waiters, visit: "https://docs.oracle.com/en-us/iaas/tools/python/latest/api/waiters.html"', ) + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + def change_subscription_compartment_and_wait_for_state(self, subscription_id, change_subscription_compartment_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): """ Calls :py:func:`~oci.self.SubscriptionClient.change_subscription_compartment` and waits for the :py:class:`~oci.self.models.WorkRequest` diff --git a/src/oci/version.py b/src/oci/version.py index 6074190a1f..504b3e8dd8 100644 --- a/src/oci/version.py +++ b/src/oci/version.py @@ -2,4 +2,4 @@ # Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. # This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. -__version__ = "2.183.0" +__version__ = "2.184.0" From ebf0ba42b10c9811b773032a594a272005348d05 Mon Sep 17 00:00:00 2001 From: OCI DEX Release Bot Automation Date: Tue, 11 Aug 2026 10:55:19 +0000 Subject: [PATCH 10/11] Releasing version 2.184.1 Co-authored-by: Harsh Kumar --- CHANGELOG.rst | 16 + docs/api/core.rst | 1 + .../oci.core.models.QuickRecycleSettings.rst | 11 + docs/api/ddfs.rst | 34 + .../ddfs/client/oci.ddfs.InstanceClient.rst | 8 + ...ddfs.InstanceClientCompositeOperations.rst | 8 + ...odels.ChangeInstanceCompartmentDetails.rst | 11 + .../oci.ddfs.models.CreateInstanceDetails.rst | 11 + .../ddfs/models/oci.ddfs.models.Instance.rst | 11 + .../oci.ddfs.models.InstanceCollection.rst | 11 + .../oci.ddfs.models.InstanceSummary.rst | 11 + .../oci.ddfs.models.UpdateInstanceDetails.rst | 11 + .../models/oci.ddfs.models.WorkRequest.rst | 11 + .../oci.ddfs.models.WorkRequestError.rst | 11 + ...ddfs.models.WorkRequestErrorCollection.rst | 11 + .../oci.ddfs.models.WorkRequestLogEntry.rst | 11 + ...s.models.WorkRequestLogEntryCollection.rst | 11 + .../oci.ddfs.models.WorkRequestResource.rst | 11 + .../oci.ddfs.models.WorkRequestSummary.rst | 11 + ...fs.models.WorkRequestSummaryCollection.rst | 11 + docs/api/distributed_database_v26.rst | 184 + ...6.DistributedAutonomousDbServiceClient.rst | 8 + ...mousDbServiceClientCompositeOperations.rst | 8 + ...tributedDbPrivateEndpointServiceClient.rst | 8 + ...dpointServiceClientCompositeOperations.rst | 8 + ...atabase_v26.DistributedDbServiceClient.rst | 8 + ...utedDbServiceClientCompositeOperations.rst | 8 + ....DistributedDbWorkRequestServiceClient.rst | 8 + ...equestServiceClientCompositeOperations.rst | 8 + ...utonomousDatabaseGdsControlNodeDetails.rst | 11 + ...stributedDatabaseGdsControlNodeDetails.rst | 11 + ...ResourceManagementConfigurationDetails.rst | 11 + ...AutonomousCompositeDataGuardShardSpace.rst | 11 + ...ousCompositeDataGuardShardSpaceReplica.rst | 11 + ...dels.AutonomousCompositeRaftShardSpace.rst | 11 + ...tonomousCompositeShardSpaceRaftCluster.rst | 11 + ...dels.AutonomousSystemDataGuardDatabase.rst | 11 + ...odels.AutonomousSystemDataGuardReplica.rst | 11 + ...v26.models.AutonomousSystemRaftCluster.rst | 11 + ...se_v26.models.AutonomousUserShardSpace.rst | 11 + ...models.AutonomousUserShardSpaceReplica.rst | 11 + ...edAutonomousDatabaseCompartmentDetails.rst | 11 + ...ributedAutonomousDbBackupConfigDetails.rst | 11 + ...eDistributedDatabaseCompartmentDetails.rst | 11 + ...abasePrivateEndpointCompartmentDetails.rst | 11 + ...ChangeDistributedDbBackupConfigDetails.rst | 11 + ...26.models.CompositeDataGuardShardSpace.rst | 11 + ...ls.CompositeDataGuardShardSpaceReplica.rst | 11 + ...ase_v26.models.CompositeRaftShardSpace.rst | 11 + ....models.CompositeShardSpaceRaftCluster.rst | 11 + ...sDatabaseAutoResourceManagementDetails.rst | 11 + ...utedAutonomousDatabaseGsmWalletDetails.rst | 11 + ...stributedAutonomousDatabaseGsmsDetails.rst | 11 + ...dDatabaseAutoResourceManagementDetails.rst | 11 + ...onfigureDistributedDatabaseGsmsDetails.rst | 11 + ...CreateAutonomousCatalogDatabaseDetails.rst | 11 + ....models.CreateAutonomousCatalogDetails.rst | 11 + ....CreateAutonomousCatalogReplicaDetails.rst | 11 + ...ousCompositeDataGuardShardSpaceDetails.rst | 11 + ...ositeDataGuardShardSpaceReplicaDetails.rst | 11 + ...tonomousCompositeRaftShardSpaceDetails.rst | 11 + ...sCompositeShardSpaceRaftClusterDetails.rst | 11 + ...tonomousSystemDataGuardDatabaseDetails.rst | 11 + ...utonomousSystemDataGuardReplicaDetails.rst | 11 + ...eateAutonomousSystemRaftClusterDetails.rst | 11 + ....CreateAutonomousUserShardSpaceDetails.rst | 11 + ...AutonomousUserShardSpaceReplicaDetails.rst | 11 + ...ateCompositeDataGuardShardSpaceDetails.rst | 11 + ...ositeDataGuardShardSpaceReplicaDetails.rst | 11 + ...s.CreateCompositeRaftShardSpaceDetails.rst | 11 + ...eCompositeShardSpaceRaftClusterDetails.rst | 11 + ...tabaseCatalogWithDedicatedInfraDetails.rst | 11 + ...teDistributedAutonomousDatabaseDetails.rst | 11 + ...AutonomousDatabaseShardDatabaseDetails.rst | 11 + ...DatabaseShardWithDedicatedInfraDetails.rst | 11 + ...tributedDatabaseCatalogDatabaseDetails.rst | 11 + ...tabaseCatalogDatabaseWithDbHomeDetails.rst | 11 + ...abaseCatalogDatabaseWithExadbXdDetails.rst | 11 + ...abaseCatalogDatabaseWithExadbXsDetails.rst | 11 + ...reateDistributedDatabaseCatalogDetails.rst | 11 + ...stributedDatabaseCatalogReplicaDetails.rst | 11 + ...aseCatalogWithExadbXsNewClusterDetails.rst | 11 + ...ogWithExadbXsNewVaultAndClusterDetails.rst | 11 + ...odels.CreateDistributedDatabaseDetails.rst | 11 + ...tributedDatabasePrivateEndpointDetails.rst | 11 + ...istributedDatabaseShardDatabaseDetails.rst | 11 + ...DatabaseShardDatabaseWithDbHomeDetails.rst | 11 + ...atabaseShardDatabaseWithExadbXdDetails.rst | 11 + ...atabaseShardDatabaseWithExadbXsDetails.rst | 11 + ...abaseShardWithExadbXsNewClusterDetails.rst | 11 + ...rdWithExadbXsNewVaultAndClusterDetails.rst | 11 + ...s.CreateSystemDataGuardDatabaseDetails.rst | 11 + ...ls.CreateSystemDataGuardReplicaDetails.rst | 11 + ....models.CreateSystemRaftClusterDetails.rst | 11 + ...v26.models.CreateUserShardSpaceDetails.rst | 11 + ...els.CreateUserShardSpaceReplicaDetails.rst | 11 + ...abase_v26.models.DbStorageVaultDetails.rst | 11 + ...6.models.DistributedAutonomousDatabase.rst | 11 + ...sDatabaseAutoResourceManagementDetails.rst | 11 + ...s.DistributedAutonomousDatabaseCatalog.rst | 11 + ...butedAutonomousDatabaseCatalogDatabase.rst | 11 + ...ibutedAutonomousDatabaseCatalogReplica.rst | 11 + ...omousDatabaseCatalogWithDedicatedInfra.rst | 11 + ...istributedAutonomousDatabaseCollection.rst | 11 + ...utedAutonomousDatabaseConnectionString.rst | 11 + ...ibutedAutonomousDatabaseGdsControlNode.rst | 11 + ...dAutonomousDatabaseGdsControlNodeImage.rst | 11 + ...odels.DistributedAutonomousDatabaseGsm.rst | 11 + ....DistributedAutonomousDatabaseGsmImage.rst | 11 + ...istributedAutonomousDatabaseRaftMetric.rst | 11 + ...stributedAutonomousDatabaseRuChangeLog.rst | 11 + ...edAutonomousDatabaseRuChangeLogSummary.rst | 11 + ...ributedAutonomousDatabaseShardDatabase.rst | 11 + ...onomousDatabaseShardWithDedicatedInfra.rst | 11 + ...s.DistributedAutonomousDatabaseSummary.rst | 11 + ...ls.DistributedAutonomousDbBackupConfig.rst | 11 + ...stributedAutonomousDbBackupDestination.rst | 11 + ...models.DistributedAutonomousDbMetadata.rst | 11 + ...atabase_v26.models.DistributedDatabase.rst | 11 + ...dDatabaseAutoResourceManagementDetails.rst | 11 + ..._v26.models.DistributedDatabaseCatalog.rst | 11 + ...els.DistributedDatabaseCatalogDatabase.rst | 11 + ...butedDatabaseCatalogDatabaseWithDbHome.rst | 11 + ...utedDatabaseCatalogDatabaseWithExadbXd.rst | 11 + ...utedDatabaseCatalogDatabaseWithExadbXs.rst | 11 + ...seCatalogDatabaseWithExadbXsNewCluster.rst | 11 + ...gDatabaseWithExadbXsNewVaultAndCluster.rst | 11 + ...stributedDatabaseCatalogReplicaDetails.rst | 11 + ...6.models.DistributedDatabaseCollection.rst | 11 + ...dels.DistributedDatabaseGdsControlNode.rst | 11 + ...base_v26.models.DistributedDatabaseGsm.rst | 11 + ...els.DistributedDatabasePrivateEndpoint.rst | 11 + ...butedDatabasePrivateEndpointCollection.rst | 11 + ...tributedDatabasePrivateEndpointSummary.rst | 11 + ...6.models.DistributedDatabaseRaftMetric.rst | 11 + ....models.DistributedDatabaseRuChangeLog.rst | 11 + ....DistributedDatabaseRuChangeLogSummary.rst | 11 + ...odels.DistributedDatabaseShardDatabase.rst | 11 + ...ributedDatabaseShardDatabaseWithDbHome.rst | 11 + ...ibutedDatabaseShardDatabaseWithExadbXd.rst | 11 + ...ibutedDatabaseShardDatabaseWithExadbXs.rst | 11 + ...baseShardDatabaseWithExadbXsNewCluster.rst | 11 + ...dDatabaseWithExadbXsNewVaultAndCluster.rst | 11 + ..._v26.models.DistributedDatabaseSummary.rst | 11 + ...e_v26.models.DistributedDbBackupConfig.rst | 11 + ....models.DistributedDbBackupDestination.rst | 11 + ...6.models.DistributedDbConnectionString.rst | 11 + ...odels.DistributedDbGdsControlNodeImage.rst | 11 + ...abase_v26.models.DistributedDbGsmImage.rst | 11 + ...abase_v26.models.DistributedDbMetadata.rst | 11 + ...e_v26.models.DistributedDbStorageVault.rst | 11 + ...base_v26.models.DistributedDbVmCluster.rst | 11 + ...ributedAutonomousDatabaseWalletDetails.rst | 11 + ...nerateDistributedDatabaseWalletDetails.rst | 11 + ...tonomousDatabaseReplicationUnitDetails.rst | 11 + ...tributedDatabaseReplicationUnitDetails.rst | 11 + ...chDistributedAutonomousDatabaseDetails.rst | 11 + ...models.PatchDistributedDatabaseDetails.rst | 11 + ...tributedDatabasePrivateEndpointDetails.rst | 11 + ...base_v26.models.PatchInsertInstruction.rst | 11 + ...d_database_v26.models.PatchInstruction.rst | 11 + ...abase_v26.models.PatchMergeInstruction.rst | 11 + ...base_v26.models.PatchRemoveInstruction.rst | 11 + ...teDistributedAutonomousDatabaseDetails.rst | 11 + ...utedAutonomousDatabasePasswordsDetails.rst | 11 + ...odels.RotateDistributedDatabaseDetails.rst | 11 + ...ateDistributedDatabasePasswordsDetails.rst | 11 + ...stributedAutonomousDatabaseGsmsDetails.rst | 11 + ...ls.ScaleDistributedDatabaseGsmsDetails.rst | 11 + ...ase_v26.models.SystemDataGuardDatabase.rst | 11 + ...base_v26.models.SystemDataGuardReplica.rst | 11 + ..._database_v26.models.SystemRaftCluster.rst | 11 + ...teDistributedAutonomousDatabaseDetails.rst | 11 + ...odels.UpdateDistributedDatabaseDetails.rst | 11 + ...tributedDatabasePrivateEndpointDetails.rst | 11 + ...ted_database_v26.models.UserShardSpace.rst | 11 + ...abase_v26.models.UserShardSpaceReplica.rst | 11 + ...d_database_v26.models.VcnNsgIdsDetails.rst | 11 + ...d_database_v26.models.VmClusterDetails.rst | 11 + ...ibuted_database_v26.models.WorkRequest.rst | 11 + ...d_database_v26.models.WorkRequestError.rst | 11 + ..._v26.models.WorkRequestErrorCollection.rst | 11 + ...atabase_v26.models.WorkRequestLogEntry.rst | 11 + ...6.models.WorkRequestLogEntryCollection.rst | 11 + ...atabase_v26.models.WorkRequestResource.rst | 11 + ...database_v26.models.WorkRequestSummary.rst | 11 + ...26.models.WorkRequestSummaryCollection.rst | 11 + docs/api/landing.rst | 15 +- docs/api/resource_manager.rst | 1 + ...urce_manager.models.LogEntryCollection.rst | 11 + docs/conf.py | 11 +- docs/requirements.txt | 3 +- .../adbs_create_connection_public_ip.py | 3 +- .../adbs_create_connection_with_pe.py | 3 +- ...system_create_connection_private_subnet.py | 3 +- .../mysql_create_connection_public_ip.py | 3 +- ...sql_db_system_create_connection_with_pe.py | 3 +- examples/showoci/CHANGELOG.rst | 9 + examples/showoci/showoci.py | 6 +- examples/showoci/showoci_data.py | 30 +- examples/showoci/showoci_output.py | 160 +- examples/showoci/showoci_service.py | 381 +- pyproject.toml | 4 +- requirements.txt | 6 +- setup.py | 4 +- src/oci/__init__.py | 4 +- src/oci/base_client.py | 78 +- src/oci/core/models/__init__.py | 2 + src/oci/core/models/capture_filter.py | 33 + src/oci/core/models/dhcp_options.py | 33 + .../core/models/host_group_configuration.py | 27 + src/oci/core/models/internet_gateway.py | 33 + src/oci/core/models/ipv6.py | 33 + src/oci/core/models/network_security_group.py | 33 + src/oci/core/models/quick_recycle_settings.py | 70 + src/oci/core/models/route_table.py | 33 + src/oci/core/models/security_list.py | 33 + src/oci/core/models/subnet.py | 33 + src/oci/core/models/vcn.py | 33 + src/oci/core/models/vlan.py | 33 + src/oci/core/models/vnic.py | 33 + src/oci/core/models/vtap.py | 33 + .../database/models/autonomous_database.py | 124 + .../models/autonomous_database_summary.py | 124 + .../database/models/autonomous_dw_database.py | 124 + .../models/create_autonomous_database_base.py | 31 + ...reate_autonomous_database_clone_details.py | 7 + .../create_autonomous_database_details.py | 7 + ...autonomous_database_from_backup_details.py | 7 + ..._database_from_backup_timestamp_details.py | 7 + ..._autonomous_database_data_guard_details.py | 7 + ..._cross_region_disaster_recovery_details.py | 7 + ...cross_tenancy_disaster_recovery_details.py | 7 + ...hable_autonomous_database_clone_details.py | 7 + .../undelete_autonomous_database_details.py | 7 + .../update_autonomous_database_details.py | 124 + src/oci/ddfs/__init__.py | 14 + src/oci/ddfs/instance_client.py | 1614 +++++++++ .../instance_client_composite_operations.py | 202 ++ src/oci/ddfs/models/__init__.py | 40 + .../change_instance_compartment_details.py | 74 + .../ddfs/models/create_instance_details.py | 224 ++ src/oci/ddfs/models/instance.py | 540 +++ src/oci/ddfs/models/instance_collection.py | 70 + src/oci/ddfs/models/instance_summary.py | 436 +++ .../ddfs/models/update_instance_details.py | 152 + src/oci/ddfs/models/work_request.py | 449 +++ src/oci/ddfs/models/work_request_error.py | 144 + .../models/work_request_error_collection.py | 70 + src/oci/ddfs/models/work_request_log_entry.py | 107 + .../work_request_log_entry_collection.py | 70 + src/oci/ddfs/models/work_request_resource.py | 236 ++ src/oci/ddfs/models/work_request_summary.py | 447 +++ .../models/work_request_summary_collection.py | 70 + src/oci/distributed_database_v26/__init__.py | 20 + ...istributed_autonomous_db_service_client.py | 3183 +++++++++++++++++ ..._db_service_client_composite_operations.py | 772 ++++ ...uted_db_private_endpoint_service_client.py | 1133 ++++++ ...int_service_client_composite_operations.py | 280 ++ .../distributed_db_service_client.py | 2924 +++++++++++++++ ..._db_service_client_composite_operations.py | 691 ++++ ...tributed_db_work_request_service_client.py | 690 ++++ ...est_service_client_composite_operations.py | 26 + .../models/__init__.py | 328 ++ ...omous_database_gds_control_node_details.py | 105 + ...buted_database_gds_control_node_details.py | 105 + ...source_management_configuration_details.py | 339 ++ ...nomous_composite_data_guard_shard_space.py | 163 + ...omposite_data_guard_shard_space_replica.py | 105 + .../autonomous_composite_raft_shard_space.py | 167 + ...mous_composite_shard_space_raft_cluster.py | 214 ++ .../autonomous_system_data_guard_database.py | 97 + .../autonomous_system_data_guard_replica.py | 105 + .../models/autonomous_system_raft_cluster.py | 214 ++ .../models/autonomous_user_shard_space.py | 132 + .../autonomous_user_shard_space_replica.py | 101 + ...autonomous_database_compartment_details.py | 74 + ...ted_autonomous_db_backup_config_details.py | 66 + ...istributed_database_compartment_details.py | 74 + ...se_private_endpoint_compartment_details.py | 74 + ...ge_distributed_db_backup_config_details.py | 66 + .../composite_data_guard_shard_space.py | 163 + ...omposite_data_guard_shard_space_replica.py | 105 + .../models/composite_raft_shard_space.py | 167 + .../composite_shard_space_raft_cluster.py | 214 ++ ...tabase_auto_resource_management_details.py | 339 ++ ..._autonomous_database_gsm_wallet_details.py | 109 + ...ibuted_autonomous_database_gsms_details.py | 103 + ...tabase_auto_resource_management_details.py | 339 ++ ...igure_distributed_database_gsms_details.py | 103 + ...ate_autonomous_catalog_database_details.py | 101 + .../create_autonomous_catalog_details.py | 97 + ...eate_autonomous_catalog_replica_details.py | 101 + ...omposite_data_guard_shard_space_details.py | 163 + ..._data_guard_shard_space_replica_details.py | 105 + ...mous_composite_raft_shard_space_details.py | 167 + ...posite_shard_space_raft_cluster_details.py | 214 ++ ...mous_system_data_guard_database_details.py | 97 + ...omous_system_data_guard_replica_details.py | 105 + ..._autonomous_system_raft_cluster_details.py | 214 ++ ...ate_autonomous_user_shard_space_details.py | 132 + ...nomous_user_shard_space_replica_details.py | 101 + ...omposite_data_guard_shard_space_details.py | 163 + ..._data_guard_shard_space_replica_details.py | 105 + ...eate_composite_raft_shard_space_details.py | 167 + ...posite_shard_space_raft_cluster_details.py | 214 ++ ...se_catalog_with_dedicated_infra_details.py | 501 +++ ...distributed_autonomous_database_details.py | 858 +++++ ...onomous_database_shard_database_details.py | 101 + ...base_shard_with_dedicated_infra_details.py | 532 +++ ...buted_database_catalog_database_details.py | 141 + ...e_catalog_database_with_db_home_details.py | 331 ++ ..._catalog_database_with_exadb_xd_details.py | 331 ++ ..._catalog_database_with_exadb_xs_details.py | 331 ++ ...te_distributed_database_catalog_details.py | 97 + ...ibuted_database_catalog_replica_details.py | 101 + ...talog_with_exadb_xs_new_cluster_details.py | 389 ++ ..._exadb_xs_new_vault_and_cluster_details.py | 381 ++ .../create_distributed_database_details.py | 877 +++++ ...buted_database_private_endpoint_details.py | 260 ++ ...ributed_database_shard_database_details.py | 141 + ...ase_shard_database_with_db_home_details.py | 331 ++ ...se_shard_database_with_exadb_xd_details.py | 331 ++ ...se_shard_database_with_exadb_xs_details.py | 331 ++ ...shard_with_exadb_xs_new_cluster_details.py | 389 ++ ..._exadb_xs_new_vault_and_cluster_details.py | 381 ++ ...eate_system_data_guard_database_details.py | 97 + ...reate_system_data_guard_replica_details.py | 105 + .../create_system_raft_cluster_details.py | 214 ++ .../models/create_user_shard_space_details.py | 132 + ...create_user_shard_space_replica_details.py | 101 + .../models/db_storage_vault_details.py | 233 ++ .../models/distributed_autonomous_database.py | 1389 +++++++ ...tabase_auto_resource_management_details.py | 339 ++ ...distributed_autonomous_database_catalog.py | 97 + ...ed_autonomous_database_catalog_database.py | 221 ++ ...ted_autonomous_database_catalog_replica.py | 101 + ...s_database_catalog_with_dedicated_infra.py | 629 ++++ ...tributed_autonomous_database_collection.py | 70 + ...d_autonomous_database_connection_string.py | 70 + ...ed_autonomous_database_gds_control_node.py | 314 ++ ...onomous_database_gds_control_node_image.py | 105 + .../distributed_autonomous_database_gsm.py | 385 ++ ...stributed_autonomous_database_gsm_image.py | 105 + ...ributed_autonomous_database_raft_metric.py | 101 + ...buted_autonomous_database_ru_change_log.py | 70 + ...tonomous_database_ru_change_log_summary.py | 280 ++ ...uted_autonomous_database_shard_database.py | 221 ++ ...ous_database_shard_with_dedicated_infra.py | 627 ++++ ...distributed_autonomous_database_summary.py | 977 +++++ ...distributed_autonomous_db_backup_config.py | 105 + ...ibuted_autonomous_db_backup_destination.py | 265 ++ .../distributed_autonomous_db_metadata.py | 70 + .../models/distributed_database.py | 1404 ++++++++ ...tabase_auto_resource_management_details.py | 339 ++ .../models/distributed_database_catalog.py | 97 + .../distributed_database_catalog_database.py | 261 ++ ..._database_catalog_database_with_db_home.py | 496 +++ ...database_catalog_database_with_exadb_xd.py | 496 +++ ...database_catalog_database_with_exadb_xs.py | 496 +++ ...alog_database_with_exadb_xs_new_cluster.py | 554 +++ ...ase_with_exadb_xs_new_vault_and_cluster.py | 546 +++ ...ibuted_database_catalog_replica_details.py | 101 + .../models/distributed_database_collection.py | 70 + .../distributed_database_gds_control_node.py | 314 ++ .../models/distributed_database_gsm.py | 385 ++ .../distributed_database_private_endpoint.py | 577 +++ ...ed_database_private_endpoint_collection.py | 70 + ...buted_database_private_endpoint_summary.py | 479 +++ .../distributed_database_raft_metric.py | 101 + .../distributed_database_ru_change_log.py | 70 + ...tributed_database_ru_change_log_summary.py | 280 ++ .../distributed_database_shard_database.py | 261 ++ ...ed_database_shard_database_with_db_home.py | 496 +++ ...d_database_shard_database_with_exadb_xd.py | 496 +++ ...d_database_shard_database_with_exadb_xs.py | 496 +++ ...hard_database_with_exadb_xs_new_cluster.py | 554 +++ ...ase_with_exadb_xs_new_vault_and_cluster.py | 546 +++ .../models/distributed_database_summary.py | 946 +++++ .../models/distributed_db_backup_config.py | 536 +++ .../distributed_db_backup_destination.py | 265 ++ .../distributed_db_connection_string.py | 70 + .../distributed_db_gds_control_node_image.py | 105 + .../models/distributed_db_gsm_image.py | 105 + .../models/distributed_db_metadata.py | 70 + .../models/distributed_db_storage_vault.py | 299 ++ .../models/distributed_db_vm_cluster.py | 675 ++++ ...uted_autonomous_database_wallet_details.py | 75 + ...ate_distributed_database_wallet_details.py | 75 + ...omous_database_replication_unit_details.py | 132 + ...buted_database_replication_unit_details.py | 132 + ...distributed_autonomous_database_details.py | 73 + .../patch_distributed_database_details.py | 73 + ...buted_database_private_endpoint_details.py | 72 + .../models/patch_insert_instruction.py | 87 + .../models/patch_instruction.py | 154 + .../models/patch_merge_instruction.py | 95 + .../models/patch_remove_instruction.py | 57 + ...distributed_autonomous_database_details.py | 106 + ...d_autonomous_database_passwords_details.py | 75 + .../rotate_distributed_database_details.py | 106 + ..._distributed_database_passwords_details.py | 75 + ...ibuted_autonomous_database_gsms_details.py | 39 + ...scale_distributed_database_gsms_details.py | 39 + .../models/system_data_guard_database.py | 97 + .../models/system_data_guard_replica.py | 105 + .../models/system_raft_cluster.py | 214 ++ ...distributed_autonomous_database_details.py | 173 + .../update_distributed_database_details.py | 173 + ...buted_database_private_endpoint_details.py | 167 + .../models/user_shard_space.py | 132 + .../models/user_shard_space_replica.py | 101 + .../models/vcn_nsg_ids_details.py | 119 + .../models/vm_cluster_details.py | 609 ++++ .../models/work_request.py | 540 +++ .../models/work_request_error.py | 134 + .../models/work_request_error_collection.py | 70 + .../models/work_request_log_entry.py | 101 + .../work_request_log_entry_collection.py | 70 + .../models/work_request_resource.py | 232 ++ .../models/work_request_summary.py | 540 +++ .../models/work_request_summary_collection.py | 70 + .../create_dedicated_ai_cluster_details.py | 6 + .../models/dedicated_ai_cluster.py | 18 +- src/oci/object_storage/models/bucket.py | 20 +- .../object_storage/models/bucket_summary.py | 20 +- .../models/create_bucket_details.py | 20 +- .../models/update_bucket_details.py | 22 +- .../object_storage/object_storage_client.py | 11 +- .../object_storage/transfer/upload_manager.py | 7 +- src/oci/resource_manager/models/__init__.py | 2 + .../models/log_entry_collection.py | 70 + .../resource_manager_client.py | 286 ++ .../models/create_schedule_details.py | 33 + src/oci/resource_scheduler/models/schedule.py | 33 + .../models/schedule_summary.py | 33 + .../models/update_schedule_details.py | 33 + src/oci/version.py | 2 +- 438 files changed, 58349 insertions(+), 129 deletions(-) create mode 100644 docs/api/core/models/oci.core.models.QuickRecycleSettings.rst create mode 100644 docs/api/ddfs.rst create mode 100644 docs/api/ddfs/client/oci.ddfs.InstanceClient.rst create mode 100644 docs/api/ddfs/client/oci.ddfs.InstanceClientCompositeOperations.rst create mode 100644 docs/api/ddfs/models/oci.ddfs.models.ChangeInstanceCompartmentDetails.rst create mode 100644 docs/api/ddfs/models/oci.ddfs.models.CreateInstanceDetails.rst create mode 100644 docs/api/ddfs/models/oci.ddfs.models.Instance.rst create mode 100644 docs/api/ddfs/models/oci.ddfs.models.InstanceCollection.rst create mode 100644 docs/api/ddfs/models/oci.ddfs.models.InstanceSummary.rst create mode 100644 docs/api/ddfs/models/oci.ddfs.models.UpdateInstanceDetails.rst create mode 100644 docs/api/ddfs/models/oci.ddfs.models.WorkRequest.rst create mode 100644 docs/api/ddfs/models/oci.ddfs.models.WorkRequestError.rst create mode 100644 docs/api/ddfs/models/oci.ddfs.models.WorkRequestErrorCollection.rst create mode 100644 docs/api/ddfs/models/oci.ddfs.models.WorkRequestLogEntry.rst create mode 100644 docs/api/ddfs/models/oci.ddfs.models.WorkRequestLogEntryCollection.rst create mode 100644 docs/api/ddfs/models/oci.ddfs.models.WorkRequestResource.rst create mode 100644 docs/api/ddfs/models/oci.ddfs.models.WorkRequestSummary.rst create mode 100644 docs/api/ddfs/models/oci.ddfs.models.WorkRequestSummaryCollection.rst create mode 100644 docs/api/distributed_database_v26.rst create mode 100644 docs/api/distributed_database_v26/client/oci.distributed_database_v26.DistributedAutonomousDbServiceClient.rst create mode 100644 docs/api/distributed_database_v26/client/oci.distributed_database_v26.DistributedAutonomousDbServiceClientCompositeOperations.rst create mode 100644 docs/api/distributed_database_v26/client/oci.distributed_database_v26.DistributedDbPrivateEndpointServiceClient.rst create mode 100644 docs/api/distributed_database_v26/client/oci.distributed_database_v26.DistributedDbPrivateEndpointServiceClientCompositeOperations.rst create mode 100644 docs/api/distributed_database_v26/client/oci.distributed_database_v26.DistributedDbServiceClient.rst create mode 100644 docs/api/distributed_database_v26/client/oci.distributed_database_v26.DistributedDbServiceClientCompositeOperations.rst create mode 100644 docs/api/distributed_database_v26/client/oci.distributed_database_v26.DistributedDbWorkRequestServiceClient.rst create mode 100644 docs/api/distributed_database_v26/client/oci.distributed_database_v26.DistributedDbWorkRequestServiceClientCompositeOperations.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AddDistributedAutonomousDatabaseGdsControlNodeDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AddDistributedDatabaseGdsControlNodeDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutoResourceManagementConfigurationDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousCompositeDataGuardShardSpace.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousCompositeDataGuardShardSpaceReplica.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousCompositeRaftShardSpace.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousCompositeShardSpaceRaftCluster.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousSystemDataGuardDatabase.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousSystemDataGuardReplica.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousSystemRaftCluster.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousUserShardSpace.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousUserShardSpaceReplica.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ChangeDistributedAutonomousDatabaseCompartmentDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ChangeDistributedAutonomousDbBackupConfigDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ChangeDistributedDatabaseCompartmentDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ChangeDistributedDatabasePrivateEndpointCompartmentDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ChangeDistributedDbBackupConfigDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CompositeDataGuardShardSpace.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CompositeDataGuardShardSpaceReplica.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CompositeRaftShardSpace.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CompositeShardSpaceRaftCluster.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ConfigureDistributedAutonomousDatabaseGsmWalletDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ConfigureDistributedAutonomousDatabaseGsmsDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ConfigureDistributedDatabaseAutoResourceManagementDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ConfigureDistributedDatabaseGsmsDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousCatalogDatabaseDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousCatalogDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousCatalogReplicaDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousCompositeDataGuardShardSpaceDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousCompositeDataGuardShardSpaceReplicaDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousCompositeRaftShardSpaceDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousCompositeShardSpaceRaftClusterDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousSystemDataGuardDatabaseDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousSystemDataGuardReplicaDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousSystemRaftClusterDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousUserShardSpaceDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousUserShardSpaceReplicaDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateCompositeDataGuardShardSpaceDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateCompositeDataGuardShardSpaceReplicaDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateCompositeRaftShardSpaceDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateCompositeShardSpaceRaftClusterDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseShardDatabaseDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDatabaseDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogReplicaDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabasePrivateEndpointDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseWithDbHomeDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseWithExadbXdDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseWithExadbXsDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseShardWithExadbXsNewClusterDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateSystemDataGuardDatabaseDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateSystemDataGuardReplicaDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateSystemRaftClusterDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateUserShardSpaceDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateUserShardSpaceReplicaDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DbStorageVaultDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabase.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseAutoResourceManagementDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseCatalog.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseCatalogDatabase.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseCatalogReplica.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseCatalogWithDedicatedInfra.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseCollection.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseConnectionString.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseGdsControlNode.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseGdsControlNodeImage.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseGsm.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseGsmImage.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseRaftMetric.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseRuChangeLog.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseRuChangeLogSummary.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseShardDatabase.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseShardWithDedicatedInfra.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseSummary.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDbBackupConfig.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDbBackupDestination.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDbMetadata.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabase.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseAutoResourceManagementDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCatalog.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabase.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithDbHome.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithExadbXd.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithExadbXs.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCatalogReplicaDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCollection.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseGdsControlNode.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseGsm.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabasePrivateEndpoint.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabasePrivateEndpointCollection.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabasePrivateEndpointSummary.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseRaftMetric.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseRuChangeLog.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseRuChangeLogSummary.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseShardDatabase.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithDbHome.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithExadbXd.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithExadbXs.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithExadbXsNewCluster.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseSummary.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDbBackupConfig.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDbBackupDestination.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDbConnectionString.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDbGdsControlNodeImage.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDbGsmImage.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDbMetadata.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDbStorageVault.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDbVmCluster.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.GenerateDistributedAutonomousDatabaseWalletDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.GenerateDistributedDatabaseWalletDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.MoveDistributedAutonomousDatabaseReplicationUnitDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.MoveDistributedDatabaseReplicationUnitDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.PatchDistributedAutonomousDatabaseDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.PatchDistributedDatabaseDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.PatchDistributedDatabasePrivateEndpointDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.PatchInsertInstruction.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.PatchInstruction.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.PatchMergeInstruction.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.PatchRemoveInstruction.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.RotateDistributedAutonomousDatabaseDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.RotateDistributedAutonomousDatabasePasswordsDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.RotateDistributedDatabaseDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.RotateDistributedDatabasePasswordsDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ScaleDistributedAutonomousDatabaseGsmsDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ScaleDistributedDatabaseGsmsDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.SystemDataGuardDatabase.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.SystemDataGuardReplica.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.SystemRaftCluster.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.UpdateDistributedAutonomousDatabaseDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.UpdateDistributedDatabaseDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.UpdateDistributedDatabasePrivateEndpointDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.UserShardSpace.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.UserShardSpaceReplica.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.VcnNsgIdsDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.VmClusterDetails.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.WorkRequest.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.WorkRequestError.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.WorkRequestErrorCollection.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.WorkRequestLogEntry.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.WorkRequestLogEntryCollection.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.WorkRequestResource.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.WorkRequestSummary.rst create mode 100644 docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.WorkRequestSummaryCollection.rst create mode 100644 docs/api/resource_manager/models/oci.resource_manager.models.LogEntryCollection.rst create mode 100644 src/oci/core/models/quick_recycle_settings.py create mode 100644 src/oci/ddfs/__init__.py create mode 100644 src/oci/ddfs/instance_client.py create mode 100644 src/oci/ddfs/instance_client_composite_operations.py create mode 100644 src/oci/ddfs/models/__init__.py create mode 100644 src/oci/ddfs/models/change_instance_compartment_details.py create mode 100644 src/oci/ddfs/models/create_instance_details.py create mode 100644 src/oci/ddfs/models/instance.py create mode 100644 src/oci/ddfs/models/instance_collection.py create mode 100644 src/oci/ddfs/models/instance_summary.py create mode 100644 src/oci/ddfs/models/update_instance_details.py create mode 100644 src/oci/ddfs/models/work_request.py create mode 100644 src/oci/ddfs/models/work_request_error.py create mode 100644 src/oci/ddfs/models/work_request_error_collection.py create mode 100644 src/oci/ddfs/models/work_request_log_entry.py create mode 100644 src/oci/ddfs/models/work_request_log_entry_collection.py create mode 100644 src/oci/ddfs/models/work_request_resource.py create mode 100644 src/oci/ddfs/models/work_request_summary.py create mode 100644 src/oci/ddfs/models/work_request_summary_collection.py create mode 100644 src/oci/distributed_database_v26/__init__.py create mode 100644 src/oci/distributed_database_v26/distributed_autonomous_db_service_client.py create mode 100644 src/oci/distributed_database_v26/distributed_autonomous_db_service_client_composite_operations.py create mode 100644 src/oci/distributed_database_v26/distributed_db_private_endpoint_service_client.py create mode 100644 src/oci/distributed_database_v26/distributed_db_private_endpoint_service_client_composite_operations.py create mode 100644 src/oci/distributed_database_v26/distributed_db_service_client.py create mode 100644 src/oci/distributed_database_v26/distributed_db_service_client_composite_operations.py create mode 100644 src/oci/distributed_database_v26/distributed_db_work_request_service_client.py create mode 100644 src/oci/distributed_database_v26/distributed_db_work_request_service_client_composite_operations.py create mode 100644 src/oci/distributed_database_v26/models/__init__.py create mode 100644 src/oci/distributed_database_v26/models/add_distributed_autonomous_database_gds_control_node_details.py create mode 100644 src/oci/distributed_database_v26/models/add_distributed_database_gds_control_node_details.py create mode 100644 src/oci/distributed_database_v26/models/auto_resource_management_configuration_details.py create mode 100644 src/oci/distributed_database_v26/models/autonomous_composite_data_guard_shard_space.py create mode 100644 src/oci/distributed_database_v26/models/autonomous_composite_data_guard_shard_space_replica.py create mode 100644 src/oci/distributed_database_v26/models/autonomous_composite_raft_shard_space.py create mode 100644 src/oci/distributed_database_v26/models/autonomous_composite_shard_space_raft_cluster.py create mode 100644 src/oci/distributed_database_v26/models/autonomous_system_data_guard_database.py create mode 100644 src/oci/distributed_database_v26/models/autonomous_system_data_guard_replica.py create mode 100644 src/oci/distributed_database_v26/models/autonomous_system_raft_cluster.py create mode 100644 src/oci/distributed_database_v26/models/autonomous_user_shard_space.py create mode 100644 src/oci/distributed_database_v26/models/autonomous_user_shard_space_replica.py create mode 100644 src/oci/distributed_database_v26/models/change_distributed_autonomous_database_compartment_details.py create mode 100644 src/oci/distributed_database_v26/models/change_distributed_autonomous_db_backup_config_details.py create mode 100644 src/oci/distributed_database_v26/models/change_distributed_database_compartment_details.py create mode 100644 src/oci/distributed_database_v26/models/change_distributed_database_private_endpoint_compartment_details.py create mode 100644 src/oci/distributed_database_v26/models/change_distributed_db_backup_config_details.py create mode 100644 src/oci/distributed_database_v26/models/composite_data_guard_shard_space.py create mode 100644 src/oci/distributed_database_v26/models/composite_data_guard_shard_space_replica.py create mode 100644 src/oci/distributed_database_v26/models/composite_raft_shard_space.py create mode 100644 src/oci/distributed_database_v26/models/composite_shard_space_raft_cluster.py create mode 100644 src/oci/distributed_database_v26/models/configure_distributed_autonomous_database_auto_resource_management_details.py create mode 100644 src/oci/distributed_database_v26/models/configure_distributed_autonomous_database_gsm_wallet_details.py create mode 100644 src/oci/distributed_database_v26/models/configure_distributed_autonomous_database_gsms_details.py create mode 100644 src/oci/distributed_database_v26/models/configure_distributed_database_auto_resource_management_details.py create mode 100644 src/oci/distributed_database_v26/models/configure_distributed_database_gsms_details.py create mode 100644 src/oci/distributed_database_v26/models/create_autonomous_catalog_database_details.py create mode 100644 src/oci/distributed_database_v26/models/create_autonomous_catalog_details.py create mode 100644 src/oci/distributed_database_v26/models/create_autonomous_catalog_replica_details.py create mode 100644 src/oci/distributed_database_v26/models/create_autonomous_composite_data_guard_shard_space_details.py create mode 100644 src/oci/distributed_database_v26/models/create_autonomous_composite_data_guard_shard_space_replica_details.py create mode 100644 src/oci/distributed_database_v26/models/create_autonomous_composite_raft_shard_space_details.py create mode 100644 src/oci/distributed_database_v26/models/create_autonomous_composite_shard_space_raft_cluster_details.py create mode 100644 src/oci/distributed_database_v26/models/create_autonomous_system_data_guard_database_details.py create mode 100644 src/oci/distributed_database_v26/models/create_autonomous_system_data_guard_replica_details.py create mode 100644 src/oci/distributed_database_v26/models/create_autonomous_system_raft_cluster_details.py create mode 100644 src/oci/distributed_database_v26/models/create_autonomous_user_shard_space_details.py create mode 100644 src/oci/distributed_database_v26/models/create_autonomous_user_shard_space_replica_details.py create mode 100644 src/oci/distributed_database_v26/models/create_composite_data_guard_shard_space_details.py create mode 100644 src/oci/distributed_database_v26/models/create_composite_data_guard_shard_space_replica_details.py create mode 100644 src/oci/distributed_database_v26/models/create_composite_raft_shard_space_details.py create mode 100644 src/oci/distributed_database_v26/models/create_composite_shard_space_raft_cluster_details.py create mode 100644 src/oci/distributed_database_v26/models/create_distributed_autonomous_database_catalog_with_dedicated_infra_details.py create mode 100644 src/oci/distributed_database_v26/models/create_distributed_autonomous_database_details.py create mode 100644 src/oci/distributed_database_v26/models/create_distributed_autonomous_database_shard_database_details.py create mode 100644 src/oci/distributed_database_v26/models/create_distributed_autonomous_database_shard_with_dedicated_infra_details.py create mode 100644 src/oci/distributed_database_v26/models/create_distributed_database_catalog_database_details.py create mode 100644 src/oci/distributed_database_v26/models/create_distributed_database_catalog_database_with_db_home_details.py create mode 100644 src/oci/distributed_database_v26/models/create_distributed_database_catalog_database_with_exadb_xd_details.py create mode 100644 src/oci/distributed_database_v26/models/create_distributed_database_catalog_database_with_exadb_xs_details.py create mode 100644 src/oci/distributed_database_v26/models/create_distributed_database_catalog_details.py create mode 100644 src/oci/distributed_database_v26/models/create_distributed_database_catalog_replica_details.py create mode 100644 src/oci/distributed_database_v26/models/create_distributed_database_catalog_with_exadb_xs_new_cluster_details.py create mode 100644 src/oci/distributed_database_v26/models/create_distributed_database_catalog_with_exadb_xs_new_vault_and_cluster_details.py create mode 100644 src/oci/distributed_database_v26/models/create_distributed_database_details.py create mode 100644 src/oci/distributed_database_v26/models/create_distributed_database_private_endpoint_details.py create mode 100644 src/oci/distributed_database_v26/models/create_distributed_database_shard_database_details.py create mode 100644 src/oci/distributed_database_v26/models/create_distributed_database_shard_database_with_db_home_details.py create mode 100644 src/oci/distributed_database_v26/models/create_distributed_database_shard_database_with_exadb_xd_details.py create mode 100644 src/oci/distributed_database_v26/models/create_distributed_database_shard_database_with_exadb_xs_details.py create mode 100644 src/oci/distributed_database_v26/models/create_distributed_database_shard_with_exadb_xs_new_cluster_details.py create mode 100644 src/oci/distributed_database_v26/models/create_distributed_database_shard_with_exadb_xs_new_vault_and_cluster_details.py create mode 100644 src/oci/distributed_database_v26/models/create_system_data_guard_database_details.py create mode 100644 src/oci/distributed_database_v26/models/create_system_data_guard_replica_details.py create mode 100644 src/oci/distributed_database_v26/models/create_system_raft_cluster_details.py create mode 100644 src/oci/distributed_database_v26/models/create_user_shard_space_details.py create mode 100644 src/oci/distributed_database_v26/models/create_user_shard_space_replica_details.py create mode 100644 src/oci/distributed_database_v26/models/db_storage_vault_details.py create mode 100644 src/oci/distributed_database_v26/models/distributed_autonomous_database.py create mode 100644 src/oci/distributed_database_v26/models/distributed_autonomous_database_auto_resource_management_details.py create mode 100644 src/oci/distributed_database_v26/models/distributed_autonomous_database_catalog.py create mode 100644 src/oci/distributed_database_v26/models/distributed_autonomous_database_catalog_database.py create mode 100644 src/oci/distributed_database_v26/models/distributed_autonomous_database_catalog_replica.py create mode 100644 src/oci/distributed_database_v26/models/distributed_autonomous_database_catalog_with_dedicated_infra.py create mode 100644 src/oci/distributed_database_v26/models/distributed_autonomous_database_collection.py create mode 100644 src/oci/distributed_database_v26/models/distributed_autonomous_database_connection_string.py create mode 100644 src/oci/distributed_database_v26/models/distributed_autonomous_database_gds_control_node.py create mode 100644 src/oci/distributed_database_v26/models/distributed_autonomous_database_gds_control_node_image.py create mode 100644 src/oci/distributed_database_v26/models/distributed_autonomous_database_gsm.py create mode 100644 src/oci/distributed_database_v26/models/distributed_autonomous_database_gsm_image.py create mode 100644 src/oci/distributed_database_v26/models/distributed_autonomous_database_raft_metric.py create mode 100644 src/oci/distributed_database_v26/models/distributed_autonomous_database_ru_change_log.py create mode 100644 src/oci/distributed_database_v26/models/distributed_autonomous_database_ru_change_log_summary.py create mode 100644 src/oci/distributed_database_v26/models/distributed_autonomous_database_shard_database.py create mode 100644 src/oci/distributed_database_v26/models/distributed_autonomous_database_shard_with_dedicated_infra.py create mode 100644 src/oci/distributed_database_v26/models/distributed_autonomous_database_summary.py create mode 100644 src/oci/distributed_database_v26/models/distributed_autonomous_db_backup_config.py create mode 100644 src/oci/distributed_database_v26/models/distributed_autonomous_db_backup_destination.py create mode 100644 src/oci/distributed_database_v26/models/distributed_autonomous_db_metadata.py create mode 100644 src/oci/distributed_database_v26/models/distributed_database.py create mode 100644 src/oci/distributed_database_v26/models/distributed_database_auto_resource_management_details.py create mode 100644 src/oci/distributed_database_v26/models/distributed_database_catalog.py create mode 100644 src/oci/distributed_database_v26/models/distributed_database_catalog_database.py create mode 100644 src/oci/distributed_database_v26/models/distributed_database_catalog_database_with_db_home.py create mode 100644 src/oci/distributed_database_v26/models/distributed_database_catalog_database_with_exadb_xd.py create mode 100644 src/oci/distributed_database_v26/models/distributed_database_catalog_database_with_exadb_xs.py create mode 100644 src/oci/distributed_database_v26/models/distributed_database_catalog_database_with_exadb_xs_new_cluster.py create mode 100644 src/oci/distributed_database_v26/models/distributed_database_catalog_database_with_exadb_xs_new_vault_and_cluster.py create mode 100644 src/oci/distributed_database_v26/models/distributed_database_catalog_replica_details.py create mode 100644 src/oci/distributed_database_v26/models/distributed_database_collection.py create mode 100644 src/oci/distributed_database_v26/models/distributed_database_gds_control_node.py create mode 100644 src/oci/distributed_database_v26/models/distributed_database_gsm.py create mode 100644 src/oci/distributed_database_v26/models/distributed_database_private_endpoint.py create mode 100644 src/oci/distributed_database_v26/models/distributed_database_private_endpoint_collection.py create mode 100644 src/oci/distributed_database_v26/models/distributed_database_private_endpoint_summary.py create mode 100644 src/oci/distributed_database_v26/models/distributed_database_raft_metric.py create mode 100644 src/oci/distributed_database_v26/models/distributed_database_ru_change_log.py create mode 100644 src/oci/distributed_database_v26/models/distributed_database_ru_change_log_summary.py create mode 100644 src/oci/distributed_database_v26/models/distributed_database_shard_database.py create mode 100644 src/oci/distributed_database_v26/models/distributed_database_shard_database_with_db_home.py create mode 100644 src/oci/distributed_database_v26/models/distributed_database_shard_database_with_exadb_xd.py create mode 100644 src/oci/distributed_database_v26/models/distributed_database_shard_database_with_exadb_xs.py create mode 100644 src/oci/distributed_database_v26/models/distributed_database_shard_database_with_exadb_xs_new_cluster.py create mode 100644 src/oci/distributed_database_v26/models/distributed_database_shard_database_with_exadb_xs_new_vault_and_cluster.py create mode 100644 src/oci/distributed_database_v26/models/distributed_database_summary.py create mode 100644 src/oci/distributed_database_v26/models/distributed_db_backup_config.py create mode 100644 src/oci/distributed_database_v26/models/distributed_db_backup_destination.py create mode 100644 src/oci/distributed_database_v26/models/distributed_db_connection_string.py create mode 100644 src/oci/distributed_database_v26/models/distributed_db_gds_control_node_image.py create mode 100644 src/oci/distributed_database_v26/models/distributed_db_gsm_image.py create mode 100644 src/oci/distributed_database_v26/models/distributed_db_metadata.py create mode 100644 src/oci/distributed_database_v26/models/distributed_db_storage_vault.py create mode 100644 src/oci/distributed_database_v26/models/distributed_db_vm_cluster.py create mode 100644 src/oci/distributed_database_v26/models/generate_distributed_autonomous_database_wallet_details.py create mode 100644 src/oci/distributed_database_v26/models/generate_distributed_database_wallet_details.py create mode 100644 src/oci/distributed_database_v26/models/move_distributed_autonomous_database_replication_unit_details.py create mode 100644 src/oci/distributed_database_v26/models/move_distributed_database_replication_unit_details.py create mode 100644 src/oci/distributed_database_v26/models/patch_distributed_autonomous_database_details.py create mode 100644 src/oci/distributed_database_v26/models/patch_distributed_database_details.py create mode 100644 src/oci/distributed_database_v26/models/patch_distributed_database_private_endpoint_details.py create mode 100644 src/oci/distributed_database_v26/models/patch_insert_instruction.py create mode 100644 src/oci/distributed_database_v26/models/patch_instruction.py create mode 100644 src/oci/distributed_database_v26/models/patch_merge_instruction.py create mode 100644 src/oci/distributed_database_v26/models/patch_remove_instruction.py create mode 100644 src/oci/distributed_database_v26/models/rotate_distributed_autonomous_database_details.py create mode 100644 src/oci/distributed_database_v26/models/rotate_distributed_autonomous_database_passwords_details.py create mode 100644 src/oci/distributed_database_v26/models/rotate_distributed_database_details.py create mode 100644 src/oci/distributed_database_v26/models/rotate_distributed_database_passwords_details.py create mode 100644 src/oci/distributed_database_v26/models/scale_distributed_autonomous_database_gsms_details.py create mode 100644 src/oci/distributed_database_v26/models/scale_distributed_database_gsms_details.py create mode 100644 src/oci/distributed_database_v26/models/system_data_guard_database.py create mode 100644 src/oci/distributed_database_v26/models/system_data_guard_replica.py create mode 100644 src/oci/distributed_database_v26/models/system_raft_cluster.py create mode 100644 src/oci/distributed_database_v26/models/update_distributed_autonomous_database_details.py create mode 100644 src/oci/distributed_database_v26/models/update_distributed_database_details.py create mode 100644 src/oci/distributed_database_v26/models/update_distributed_database_private_endpoint_details.py create mode 100644 src/oci/distributed_database_v26/models/user_shard_space.py create mode 100644 src/oci/distributed_database_v26/models/user_shard_space_replica.py create mode 100644 src/oci/distributed_database_v26/models/vcn_nsg_ids_details.py create mode 100644 src/oci/distributed_database_v26/models/vm_cluster_details.py create mode 100644 src/oci/distributed_database_v26/models/work_request.py create mode 100644 src/oci/distributed_database_v26/models/work_request_error.py create mode 100644 src/oci/distributed_database_v26/models/work_request_error_collection.py create mode 100644 src/oci/distributed_database_v26/models/work_request_log_entry.py create mode 100644 src/oci/distributed_database_v26/models/work_request_log_entry_collection.py create mode 100644 src/oci/distributed_database_v26/models/work_request_resource.py create mode 100644 src/oci/distributed_database_v26/models/work_request_summary.py create mode 100644 src/oci/distributed_database_v26/models/work_request_summary_collection.py create mode 100644 src/oci/resource_manager/models/log_entry_collection.py diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 667b530f56..94740c453e 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -4,6 +4,22 @@ All notable changes to this project will be documented in this file. The format is based on `Keep a Changelog `_. +==================== +2.184.1 - 2026-08-11 +==================== + +Added +----- +* Support for the OCI Device Data FHIR (Fast Healthcare Interoperability Resources) Service +* Support for the Globally Distributed Database service +* Support for availability domain selection during and after provisioning of autonomous databases in the Database service +* Support for system tags in virtual cloud networks and subnets in the Networking service +* Support for local time zones in the Resource Scheduler service +* Support for IPv6 dual-stack endpoints in the Object Storage service +* Support for B300 unit shapes in the Generative AI service +* Support for retrieving work request log entries and their content in the Resource Manager service +* Support for quick-recycle settings in compute host groups in the Compute service + ==================== 2.184.0 - 2026-08-04 ==================== diff --git a/docs/api/core.rst b/docs/api/core.rst index 3b630e5baa..035a99f723 100644 --- a/docs/api/core.rst +++ b/docs/api/core.rst @@ -547,6 +547,7 @@ Core Services oci.core.models.PublicIpPool oci.core.models.PublicIpPoolCollection oci.core.models.PublicIpPoolSummary + oci.core.models.QuickRecycleSettings oci.core.models.RebootMigrateActionDetails oci.core.models.RecycleDetails oci.core.models.RemotePeeringConnection diff --git a/docs/api/core/models/oci.core.models.QuickRecycleSettings.rst b/docs/api/core/models/oci.core.models.QuickRecycleSettings.rst new file mode 100644 index 0000000000..e30ad56b15 --- /dev/null +++ b/docs/api/core/models/oci.core.models.QuickRecycleSettings.rst @@ -0,0 +1,11 @@ +QuickRecycleSettings +==================== + +.. currentmodule:: oci.core.models + +.. autoclass:: QuickRecycleSettings + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/ddfs.rst b/docs/api/ddfs.rst new file mode 100644 index 0000000000..e19a9f4f36 --- /dev/null +++ b/docs/api/ddfs.rst @@ -0,0 +1,34 @@ +Ddfs +==== + +.. autosummary:: + :toctree: ddfs/client + :nosignatures: + :template: autosummary/service_client.rst + + oci.ddfs.InstanceClient + oci.ddfs.InstanceClientCompositeOperations + +-------- + Models +-------- + +.. autosummary:: + :toctree: ddfs/models + :nosignatures: + :template: autosummary/model_class.rst + + oci.ddfs.models.ChangeInstanceCompartmentDetails + oci.ddfs.models.CreateInstanceDetails + oci.ddfs.models.Instance + oci.ddfs.models.InstanceCollection + oci.ddfs.models.InstanceSummary + oci.ddfs.models.UpdateInstanceDetails + oci.ddfs.models.WorkRequest + oci.ddfs.models.WorkRequestError + oci.ddfs.models.WorkRequestErrorCollection + oci.ddfs.models.WorkRequestLogEntry + oci.ddfs.models.WorkRequestLogEntryCollection + oci.ddfs.models.WorkRequestResource + oci.ddfs.models.WorkRequestSummary + oci.ddfs.models.WorkRequestSummaryCollection diff --git a/docs/api/ddfs/client/oci.ddfs.InstanceClient.rst b/docs/api/ddfs/client/oci.ddfs.InstanceClient.rst new file mode 100644 index 0000000000..7aa09a3a34 --- /dev/null +++ b/docs/api/ddfs/client/oci.ddfs.InstanceClient.rst @@ -0,0 +1,8 @@ +InstanceClient +============== + +.. currentmodule:: oci.ddfs + +.. autoclass:: InstanceClient + :special-members: __init__ + :members: \ No newline at end of file diff --git a/docs/api/ddfs/client/oci.ddfs.InstanceClientCompositeOperations.rst b/docs/api/ddfs/client/oci.ddfs.InstanceClientCompositeOperations.rst new file mode 100644 index 0000000000..cd72b0d8d3 --- /dev/null +++ b/docs/api/ddfs/client/oci.ddfs.InstanceClientCompositeOperations.rst @@ -0,0 +1,8 @@ +InstanceClientCompositeOperations +================================= + +.. currentmodule:: oci.ddfs + +.. autoclass:: InstanceClientCompositeOperations + :special-members: __init__ + :members: \ No newline at end of file diff --git a/docs/api/ddfs/models/oci.ddfs.models.ChangeInstanceCompartmentDetails.rst b/docs/api/ddfs/models/oci.ddfs.models.ChangeInstanceCompartmentDetails.rst new file mode 100644 index 0000000000..330a8b66a3 --- /dev/null +++ b/docs/api/ddfs/models/oci.ddfs.models.ChangeInstanceCompartmentDetails.rst @@ -0,0 +1,11 @@ +ChangeInstanceCompartmentDetails +================================ + +.. currentmodule:: oci.ddfs.models + +.. autoclass:: ChangeInstanceCompartmentDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/ddfs/models/oci.ddfs.models.CreateInstanceDetails.rst b/docs/api/ddfs/models/oci.ddfs.models.CreateInstanceDetails.rst new file mode 100644 index 0000000000..ad4ae0234a --- /dev/null +++ b/docs/api/ddfs/models/oci.ddfs.models.CreateInstanceDetails.rst @@ -0,0 +1,11 @@ +CreateInstanceDetails +===================== + +.. currentmodule:: oci.ddfs.models + +.. autoclass:: CreateInstanceDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/ddfs/models/oci.ddfs.models.Instance.rst b/docs/api/ddfs/models/oci.ddfs.models.Instance.rst new file mode 100644 index 0000000000..373d2b1163 --- /dev/null +++ b/docs/api/ddfs/models/oci.ddfs.models.Instance.rst @@ -0,0 +1,11 @@ +Instance +======== + +.. currentmodule:: oci.ddfs.models + +.. autoclass:: Instance + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/ddfs/models/oci.ddfs.models.InstanceCollection.rst b/docs/api/ddfs/models/oci.ddfs.models.InstanceCollection.rst new file mode 100644 index 0000000000..773e003391 --- /dev/null +++ b/docs/api/ddfs/models/oci.ddfs.models.InstanceCollection.rst @@ -0,0 +1,11 @@ +InstanceCollection +================== + +.. currentmodule:: oci.ddfs.models + +.. autoclass:: InstanceCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/ddfs/models/oci.ddfs.models.InstanceSummary.rst b/docs/api/ddfs/models/oci.ddfs.models.InstanceSummary.rst new file mode 100644 index 0000000000..2ad75d82b4 --- /dev/null +++ b/docs/api/ddfs/models/oci.ddfs.models.InstanceSummary.rst @@ -0,0 +1,11 @@ +InstanceSummary +=============== + +.. currentmodule:: oci.ddfs.models + +.. autoclass:: InstanceSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/ddfs/models/oci.ddfs.models.UpdateInstanceDetails.rst b/docs/api/ddfs/models/oci.ddfs.models.UpdateInstanceDetails.rst new file mode 100644 index 0000000000..2222729eb1 --- /dev/null +++ b/docs/api/ddfs/models/oci.ddfs.models.UpdateInstanceDetails.rst @@ -0,0 +1,11 @@ +UpdateInstanceDetails +===================== + +.. currentmodule:: oci.ddfs.models + +.. autoclass:: UpdateInstanceDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/ddfs/models/oci.ddfs.models.WorkRequest.rst b/docs/api/ddfs/models/oci.ddfs.models.WorkRequest.rst new file mode 100644 index 0000000000..936af4b551 --- /dev/null +++ b/docs/api/ddfs/models/oci.ddfs.models.WorkRequest.rst @@ -0,0 +1,11 @@ +WorkRequest +=========== + +.. currentmodule:: oci.ddfs.models + +.. autoclass:: WorkRequest + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/ddfs/models/oci.ddfs.models.WorkRequestError.rst b/docs/api/ddfs/models/oci.ddfs.models.WorkRequestError.rst new file mode 100644 index 0000000000..57dcbe8f51 --- /dev/null +++ b/docs/api/ddfs/models/oci.ddfs.models.WorkRequestError.rst @@ -0,0 +1,11 @@ +WorkRequestError +================ + +.. currentmodule:: oci.ddfs.models + +.. autoclass:: WorkRequestError + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/ddfs/models/oci.ddfs.models.WorkRequestErrorCollection.rst b/docs/api/ddfs/models/oci.ddfs.models.WorkRequestErrorCollection.rst new file mode 100644 index 0000000000..164952765b --- /dev/null +++ b/docs/api/ddfs/models/oci.ddfs.models.WorkRequestErrorCollection.rst @@ -0,0 +1,11 @@ +WorkRequestErrorCollection +========================== + +.. currentmodule:: oci.ddfs.models + +.. autoclass:: WorkRequestErrorCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/ddfs/models/oci.ddfs.models.WorkRequestLogEntry.rst b/docs/api/ddfs/models/oci.ddfs.models.WorkRequestLogEntry.rst new file mode 100644 index 0000000000..9c973e3c6e --- /dev/null +++ b/docs/api/ddfs/models/oci.ddfs.models.WorkRequestLogEntry.rst @@ -0,0 +1,11 @@ +WorkRequestLogEntry +=================== + +.. currentmodule:: oci.ddfs.models + +.. autoclass:: WorkRequestLogEntry + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/ddfs/models/oci.ddfs.models.WorkRequestLogEntryCollection.rst b/docs/api/ddfs/models/oci.ddfs.models.WorkRequestLogEntryCollection.rst new file mode 100644 index 0000000000..0476c67ccb --- /dev/null +++ b/docs/api/ddfs/models/oci.ddfs.models.WorkRequestLogEntryCollection.rst @@ -0,0 +1,11 @@ +WorkRequestLogEntryCollection +============================= + +.. currentmodule:: oci.ddfs.models + +.. autoclass:: WorkRequestLogEntryCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/ddfs/models/oci.ddfs.models.WorkRequestResource.rst b/docs/api/ddfs/models/oci.ddfs.models.WorkRequestResource.rst new file mode 100644 index 0000000000..671b6eb421 --- /dev/null +++ b/docs/api/ddfs/models/oci.ddfs.models.WorkRequestResource.rst @@ -0,0 +1,11 @@ +WorkRequestResource +=================== + +.. currentmodule:: oci.ddfs.models + +.. autoclass:: WorkRequestResource + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/ddfs/models/oci.ddfs.models.WorkRequestSummary.rst b/docs/api/ddfs/models/oci.ddfs.models.WorkRequestSummary.rst new file mode 100644 index 0000000000..f6b8f4953a --- /dev/null +++ b/docs/api/ddfs/models/oci.ddfs.models.WorkRequestSummary.rst @@ -0,0 +1,11 @@ +WorkRequestSummary +================== + +.. currentmodule:: oci.ddfs.models + +.. autoclass:: WorkRequestSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/ddfs/models/oci.ddfs.models.WorkRequestSummaryCollection.rst b/docs/api/ddfs/models/oci.ddfs.models.WorkRequestSummaryCollection.rst new file mode 100644 index 0000000000..65497d6541 --- /dev/null +++ b/docs/api/ddfs/models/oci.ddfs.models.WorkRequestSummaryCollection.rst @@ -0,0 +1,11 @@ +WorkRequestSummaryCollection +============================ + +.. currentmodule:: oci.ddfs.models + +.. autoclass:: WorkRequestSummaryCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26.rst b/docs/api/distributed_database_v26.rst new file mode 100644 index 0000000000..d68343bf23 --- /dev/null +++ b/docs/api/distributed_database_v26.rst @@ -0,0 +1,184 @@ +Distributed Database V26 +======================== + +.. autosummary:: + :toctree: distributed_database_v26/client + :nosignatures: + :template: autosummary/service_client.rst + + oci.distributed_database_v26.DistributedAutonomousDbServiceClient + oci.distributed_database_v26.DistributedDbPrivateEndpointServiceClient + oci.distributed_database_v26.DistributedDbServiceClient + oci.distributed_database_v26.DistributedDbWorkRequestServiceClient + oci.distributed_database_v26.DistributedAutonomousDbServiceClientCompositeOperations + oci.distributed_database_v26.DistributedDbPrivateEndpointServiceClientCompositeOperations + oci.distributed_database_v26.DistributedDbServiceClientCompositeOperations + oci.distributed_database_v26.DistributedDbWorkRequestServiceClientCompositeOperations + +-------- + Models +-------- + +.. autosummary:: + :toctree: distributed_database_v26/models + :nosignatures: + :template: autosummary/model_class.rst + + oci.distributed_database_v26.models.AddDistributedAutonomousDatabaseGdsControlNodeDetails + oci.distributed_database_v26.models.AddDistributedDatabaseGdsControlNodeDetails + oci.distributed_database_v26.models.AutoResourceManagementConfigurationDetails + oci.distributed_database_v26.models.AutonomousCompositeDataGuardShardSpace + oci.distributed_database_v26.models.AutonomousCompositeDataGuardShardSpaceReplica + oci.distributed_database_v26.models.AutonomousCompositeRaftShardSpace + oci.distributed_database_v26.models.AutonomousCompositeShardSpaceRaftCluster + oci.distributed_database_v26.models.AutonomousSystemDataGuardDatabase + oci.distributed_database_v26.models.AutonomousSystemDataGuardReplica + oci.distributed_database_v26.models.AutonomousSystemRaftCluster + oci.distributed_database_v26.models.AutonomousUserShardSpace + oci.distributed_database_v26.models.AutonomousUserShardSpaceReplica + oci.distributed_database_v26.models.ChangeDistributedAutonomousDatabaseCompartmentDetails + oci.distributed_database_v26.models.ChangeDistributedAutonomousDbBackupConfigDetails + oci.distributed_database_v26.models.ChangeDistributedDatabaseCompartmentDetails + oci.distributed_database_v26.models.ChangeDistributedDatabasePrivateEndpointCompartmentDetails + oci.distributed_database_v26.models.ChangeDistributedDbBackupConfigDetails + oci.distributed_database_v26.models.CompositeDataGuardShardSpace + oci.distributed_database_v26.models.CompositeDataGuardShardSpaceReplica + oci.distributed_database_v26.models.CompositeRaftShardSpace + oci.distributed_database_v26.models.CompositeShardSpaceRaftCluster + oci.distributed_database_v26.models.ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails + oci.distributed_database_v26.models.ConfigureDistributedAutonomousDatabaseGsmWalletDetails + oci.distributed_database_v26.models.ConfigureDistributedAutonomousDatabaseGsmsDetails + oci.distributed_database_v26.models.ConfigureDistributedDatabaseAutoResourceManagementDetails + oci.distributed_database_v26.models.ConfigureDistributedDatabaseGsmsDetails + oci.distributed_database_v26.models.CreateAutonomousCatalogDatabaseDetails + oci.distributed_database_v26.models.CreateAutonomousCatalogDetails + oci.distributed_database_v26.models.CreateAutonomousCatalogReplicaDetails + oci.distributed_database_v26.models.CreateAutonomousCompositeDataGuardShardSpaceDetails + oci.distributed_database_v26.models.CreateAutonomousCompositeDataGuardShardSpaceReplicaDetails + oci.distributed_database_v26.models.CreateAutonomousCompositeRaftShardSpaceDetails + oci.distributed_database_v26.models.CreateAutonomousCompositeShardSpaceRaftClusterDetails + oci.distributed_database_v26.models.CreateAutonomousSystemDataGuardDatabaseDetails + oci.distributed_database_v26.models.CreateAutonomousSystemDataGuardReplicaDetails + oci.distributed_database_v26.models.CreateAutonomousSystemRaftClusterDetails + oci.distributed_database_v26.models.CreateAutonomousUserShardSpaceDetails + oci.distributed_database_v26.models.CreateAutonomousUserShardSpaceReplicaDetails + oci.distributed_database_v26.models.CreateCompositeDataGuardShardSpaceDetails + oci.distributed_database_v26.models.CreateCompositeDataGuardShardSpaceReplicaDetails + oci.distributed_database_v26.models.CreateCompositeRaftShardSpaceDetails + oci.distributed_database_v26.models.CreateCompositeShardSpaceRaftClusterDetails + oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails + oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseDetails + oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseShardDatabaseDetails + oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails + oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDatabaseDetails + oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails + oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails + oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails + oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDetails + oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogReplicaDetails + oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails + oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails + oci.distributed_database_v26.models.CreateDistributedDatabaseDetails + oci.distributed_database_v26.models.CreateDistributedDatabasePrivateEndpointDetails + oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseDetails + oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseWithDbHomeDetails + oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseWithExadbXdDetails + oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseWithExadbXsDetails + oci.distributed_database_v26.models.CreateDistributedDatabaseShardWithExadbXsNewClusterDetails + oci.distributed_database_v26.models.CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails + oci.distributed_database_v26.models.CreateSystemDataGuardDatabaseDetails + oci.distributed_database_v26.models.CreateSystemDataGuardReplicaDetails + oci.distributed_database_v26.models.CreateSystemRaftClusterDetails + oci.distributed_database_v26.models.CreateUserShardSpaceDetails + oci.distributed_database_v26.models.CreateUserShardSpaceReplicaDetails + oci.distributed_database_v26.models.DbStorageVaultDetails + oci.distributed_database_v26.models.DistributedAutonomousDatabase + oci.distributed_database_v26.models.DistributedAutonomousDatabaseAutoResourceManagementDetails + oci.distributed_database_v26.models.DistributedAutonomousDatabaseCatalog + oci.distributed_database_v26.models.DistributedAutonomousDatabaseCatalogDatabase + oci.distributed_database_v26.models.DistributedAutonomousDatabaseCatalogReplica + oci.distributed_database_v26.models.DistributedAutonomousDatabaseCatalogWithDedicatedInfra + oci.distributed_database_v26.models.DistributedAutonomousDatabaseCollection + oci.distributed_database_v26.models.DistributedAutonomousDatabaseConnectionString + oci.distributed_database_v26.models.DistributedAutonomousDatabaseGdsControlNode + oci.distributed_database_v26.models.DistributedAutonomousDatabaseGdsControlNodeImage + oci.distributed_database_v26.models.DistributedAutonomousDatabaseGsm + oci.distributed_database_v26.models.DistributedAutonomousDatabaseGsmImage + oci.distributed_database_v26.models.DistributedAutonomousDatabaseRaftMetric + oci.distributed_database_v26.models.DistributedAutonomousDatabaseRuChangeLog + oci.distributed_database_v26.models.DistributedAutonomousDatabaseRuChangeLogSummary + oci.distributed_database_v26.models.DistributedAutonomousDatabaseShardDatabase + oci.distributed_database_v26.models.DistributedAutonomousDatabaseShardWithDedicatedInfra + oci.distributed_database_v26.models.DistributedAutonomousDatabaseSummary + oci.distributed_database_v26.models.DistributedAutonomousDbBackupConfig + oci.distributed_database_v26.models.DistributedAutonomousDbBackupDestination + oci.distributed_database_v26.models.DistributedAutonomousDbMetadata + oci.distributed_database_v26.models.DistributedDatabase + oci.distributed_database_v26.models.DistributedDatabaseAutoResourceManagementDetails + oci.distributed_database_v26.models.DistributedDatabaseCatalog + oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabase + oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithDbHome + oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithExadbXd + oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithExadbXs + oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster + oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster + oci.distributed_database_v26.models.DistributedDatabaseCatalogReplicaDetails + oci.distributed_database_v26.models.DistributedDatabaseCollection + oci.distributed_database_v26.models.DistributedDatabaseGdsControlNode + oci.distributed_database_v26.models.DistributedDatabaseGsm + oci.distributed_database_v26.models.DistributedDatabasePrivateEndpoint + oci.distributed_database_v26.models.DistributedDatabasePrivateEndpointCollection + oci.distributed_database_v26.models.DistributedDatabasePrivateEndpointSummary + oci.distributed_database_v26.models.DistributedDatabaseRaftMetric + oci.distributed_database_v26.models.DistributedDatabaseRuChangeLog + oci.distributed_database_v26.models.DistributedDatabaseRuChangeLogSummary + oci.distributed_database_v26.models.DistributedDatabaseShardDatabase + oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithDbHome + oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithExadbXd + oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithExadbXs + oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithExadbXsNewCluster + oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster + oci.distributed_database_v26.models.DistributedDatabaseSummary + oci.distributed_database_v26.models.DistributedDbBackupConfig + oci.distributed_database_v26.models.DistributedDbBackupDestination + oci.distributed_database_v26.models.DistributedDbConnectionString + oci.distributed_database_v26.models.DistributedDbGdsControlNodeImage + oci.distributed_database_v26.models.DistributedDbGsmImage + oci.distributed_database_v26.models.DistributedDbMetadata + oci.distributed_database_v26.models.DistributedDbStorageVault + oci.distributed_database_v26.models.DistributedDbVmCluster + oci.distributed_database_v26.models.GenerateDistributedAutonomousDatabaseWalletDetails + oci.distributed_database_v26.models.GenerateDistributedDatabaseWalletDetails + oci.distributed_database_v26.models.MoveDistributedAutonomousDatabaseReplicationUnitDetails + oci.distributed_database_v26.models.MoveDistributedDatabaseReplicationUnitDetails + oci.distributed_database_v26.models.PatchDistributedAutonomousDatabaseDetails + oci.distributed_database_v26.models.PatchDistributedDatabaseDetails + oci.distributed_database_v26.models.PatchDistributedDatabasePrivateEndpointDetails + oci.distributed_database_v26.models.PatchInsertInstruction + oci.distributed_database_v26.models.PatchInstruction + oci.distributed_database_v26.models.PatchMergeInstruction + oci.distributed_database_v26.models.PatchRemoveInstruction + oci.distributed_database_v26.models.RotateDistributedAutonomousDatabaseDetails + oci.distributed_database_v26.models.RotateDistributedAutonomousDatabasePasswordsDetails + oci.distributed_database_v26.models.RotateDistributedDatabaseDetails + oci.distributed_database_v26.models.RotateDistributedDatabasePasswordsDetails + oci.distributed_database_v26.models.ScaleDistributedAutonomousDatabaseGsmsDetails + oci.distributed_database_v26.models.ScaleDistributedDatabaseGsmsDetails + oci.distributed_database_v26.models.SystemDataGuardDatabase + oci.distributed_database_v26.models.SystemDataGuardReplica + oci.distributed_database_v26.models.SystemRaftCluster + oci.distributed_database_v26.models.UpdateDistributedAutonomousDatabaseDetails + oci.distributed_database_v26.models.UpdateDistributedDatabaseDetails + oci.distributed_database_v26.models.UpdateDistributedDatabasePrivateEndpointDetails + oci.distributed_database_v26.models.UserShardSpace + oci.distributed_database_v26.models.UserShardSpaceReplica + oci.distributed_database_v26.models.VcnNsgIdsDetails + oci.distributed_database_v26.models.VmClusterDetails + oci.distributed_database_v26.models.WorkRequest + oci.distributed_database_v26.models.WorkRequestError + oci.distributed_database_v26.models.WorkRequestErrorCollection + oci.distributed_database_v26.models.WorkRequestLogEntry + oci.distributed_database_v26.models.WorkRequestLogEntryCollection + oci.distributed_database_v26.models.WorkRequestResource + oci.distributed_database_v26.models.WorkRequestSummary + oci.distributed_database_v26.models.WorkRequestSummaryCollection diff --git a/docs/api/distributed_database_v26/client/oci.distributed_database_v26.DistributedAutonomousDbServiceClient.rst b/docs/api/distributed_database_v26/client/oci.distributed_database_v26.DistributedAutonomousDbServiceClient.rst new file mode 100644 index 0000000000..7c1feb4059 --- /dev/null +++ b/docs/api/distributed_database_v26/client/oci.distributed_database_v26.DistributedAutonomousDbServiceClient.rst @@ -0,0 +1,8 @@ +DistributedAutonomousDbServiceClient +==================================== + +.. currentmodule:: oci.distributed_database_v26 + +.. autoclass:: DistributedAutonomousDbServiceClient + :special-members: __init__ + :members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/client/oci.distributed_database_v26.DistributedAutonomousDbServiceClientCompositeOperations.rst b/docs/api/distributed_database_v26/client/oci.distributed_database_v26.DistributedAutonomousDbServiceClientCompositeOperations.rst new file mode 100644 index 0000000000..a7e24d032a --- /dev/null +++ b/docs/api/distributed_database_v26/client/oci.distributed_database_v26.DistributedAutonomousDbServiceClientCompositeOperations.rst @@ -0,0 +1,8 @@ +DistributedAutonomousDbServiceClientCompositeOperations +======================================================= + +.. currentmodule:: oci.distributed_database_v26 + +.. autoclass:: DistributedAutonomousDbServiceClientCompositeOperations + :special-members: __init__ + :members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/client/oci.distributed_database_v26.DistributedDbPrivateEndpointServiceClient.rst b/docs/api/distributed_database_v26/client/oci.distributed_database_v26.DistributedDbPrivateEndpointServiceClient.rst new file mode 100644 index 0000000000..6bd235b778 --- /dev/null +++ b/docs/api/distributed_database_v26/client/oci.distributed_database_v26.DistributedDbPrivateEndpointServiceClient.rst @@ -0,0 +1,8 @@ +DistributedDbPrivateEndpointServiceClient +========================================= + +.. currentmodule:: oci.distributed_database_v26 + +.. autoclass:: DistributedDbPrivateEndpointServiceClient + :special-members: __init__ + :members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/client/oci.distributed_database_v26.DistributedDbPrivateEndpointServiceClientCompositeOperations.rst b/docs/api/distributed_database_v26/client/oci.distributed_database_v26.DistributedDbPrivateEndpointServiceClientCompositeOperations.rst new file mode 100644 index 0000000000..3383be9843 --- /dev/null +++ b/docs/api/distributed_database_v26/client/oci.distributed_database_v26.DistributedDbPrivateEndpointServiceClientCompositeOperations.rst @@ -0,0 +1,8 @@ +DistributedDbPrivateEndpointServiceClientCompositeOperations +============================================================ + +.. currentmodule:: oci.distributed_database_v26 + +.. autoclass:: DistributedDbPrivateEndpointServiceClientCompositeOperations + :special-members: __init__ + :members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/client/oci.distributed_database_v26.DistributedDbServiceClient.rst b/docs/api/distributed_database_v26/client/oci.distributed_database_v26.DistributedDbServiceClient.rst new file mode 100644 index 0000000000..82cb1144a1 --- /dev/null +++ b/docs/api/distributed_database_v26/client/oci.distributed_database_v26.DistributedDbServiceClient.rst @@ -0,0 +1,8 @@ +DistributedDbServiceClient +========================== + +.. currentmodule:: oci.distributed_database_v26 + +.. autoclass:: DistributedDbServiceClient + :special-members: __init__ + :members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/client/oci.distributed_database_v26.DistributedDbServiceClientCompositeOperations.rst b/docs/api/distributed_database_v26/client/oci.distributed_database_v26.DistributedDbServiceClientCompositeOperations.rst new file mode 100644 index 0000000000..1bb18506cc --- /dev/null +++ b/docs/api/distributed_database_v26/client/oci.distributed_database_v26.DistributedDbServiceClientCompositeOperations.rst @@ -0,0 +1,8 @@ +DistributedDbServiceClientCompositeOperations +============================================= + +.. currentmodule:: oci.distributed_database_v26 + +.. autoclass:: DistributedDbServiceClientCompositeOperations + :special-members: __init__ + :members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/client/oci.distributed_database_v26.DistributedDbWorkRequestServiceClient.rst b/docs/api/distributed_database_v26/client/oci.distributed_database_v26.DistributedDbWorkRequestServiceClient.rst new file mode 100644 index 0000000000..59d7bf3bb7 --- /dev/null +++ b/docs/api/distributed_database_v26/client/oci.distributed_database_v26.DistributedDbWorkRequestServiceClient.rst @@ -0,0 +1,8 @@ +DistributedDbWorkRequestServiceClient +===================================== + +.. currentmodule:: oci.distributed_database_v26 + +.. autoclass:: DistributedDbWorkRequestServiceClient + :special-members: __init__ + :members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/client/oci.distributed_database_v26.DistributedDbWorkRequestServiceClientCompositeOperations.rst b/docs/api/distributed_database_v26/client/oci.distributed_database_v26.DistributedDbWorkRequestServiceClientCompositeOperations.rst new file mode 100644 index 0000000000..0632867225 --- /dev/null +++ b/docs/api/distributed_database_v26/client/oci.distributed_database_v26.DistributedDbWorkRequestServiceClientCompositeOperations.rst @@ -0,0 +1,8 @@ +DistributedDbWorkRequestServiceClientCompositeOperations +======================================================== + +.. currentmodule:: oci.distributed_database_v26 + +.. autoclass:: DistributedDbWorkRequestServiceClientCompositeOperations + :special-members: __init__ + :members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AddDistributedAutonomousDatabaseGdsControlNodeDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AddDistributedAutonomousDatabaseGdsControlNodeDetails.rst new file mode 100644 index 0000000000..ed2d434beb --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AddDistributedAutonomousDatabaseGdsControlNodeDetails.rst @@ -0,0 +1,11 @@ +AddDistributedAutonomousDatabaseGdsControlNodeDetails +===================================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: AddDistributedAutonomousDatabaseGdsControlNodeDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AddDistributedDatabaseGdsControlNodeDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AddDistributedDatabaseGdsControlNodeDetails.rst new file mode 100644 index 0000000000..5552441b52 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AddDistributedDatabaseGdsControlNodeDetails.rst @@ -0,0 +1,11 @@ +AddDistributedDatabaseGdsControlNodeDetails +=========================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: AddDistributedDatabaseGdsControlNodeDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutoResourceManagementConfigurationDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutoResourceManagementConfigurationDetails.rst new file mode 100644 index 0000000000..1cdb8f8e28 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutoResourceManagementConfigurationDetails.rst @@ -0,0 +1,11 @@ +AutoResourceManagementConfigurationDetails +========================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: AutoResourceManagementConfigurationDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousCompositeDataGuardShardSpace.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousCompositeDataGuardShardSpace.rst new file mode 100644 index 0000000000..8a3617a2fd --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousCompositeDataGuardShardSpace.rst @@ -0,0 +1,11 @@ +AutonomousCompositeDataGuardShardSpace +====================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: AutonomousCompositeDataGuardShardSpace + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousCompositeDataGuardShardSpaceReplica.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousCompositeDataGuardShardSpaceReplica.rst new file mode 100644 index 0000000000..264c680f0f --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousCompositeDataGuardShardSpaceReplica.rst @@ -0,0 +1,11 @@ +AutonomousCompositeDataGuardShardSpaceReplica +============================================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: AutonomousCompositeDataGuardShardSpaceReplica + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousCompositeRaftShardSpace.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousCompositeRaftShardSpace.rst new file mode 100644 index 0000000000..4507f484d3 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousCompositeRaftShardSpace.rst @@ -0,0 +1,11 @@ +AutonomousCompositeRaftShardSpace +================================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: AutonomousCompositeRaftShardSpace + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousCompositeShardSpaceRaftCluster.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousCompositeShardSpaceRaftCluster.rst new file mode 100644 index 0000000000..c729af24e0 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousCompositeShardSpaceRaftCluster.rst @@ -0,0 +1,11 @@ +AutonomousCompositeShardSpaceRaftCluster +======================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: AutonomousCompositeShardSpaceRaftCluster + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousSystemDataGuardDatabase.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousSystemDataGuardDatabase.rst new file mode 100644 index 0000000000..21bfb97b16 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousSystemDataGuardDatabase.rst @@ -0,0 +1,11 @@ +AutonomousSystemDataGuardDatabase +================================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: AutonomousSystemDataGuardDatabase + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousSystemDataGuardReplica.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousSystemDataGuardReplica.rst new file mode 100644 index 0000000000..09fa550e45 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousSystemDataGuardReplica.rst @@ -0,0 +1,11 @@ +AutonomousSystemDataGuardReplica +================================ + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: AutonomousSystemDataGuardReplica + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousSystemRaftCluster.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousSystemRaftCluster.rst new file mode 100644 index 0000000000..c33256e9a6 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousSystemRaftCluster.rst @@ -0,0 +1,11 @@ +AutonomousSystemRaftCluster +=========================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: AutonomousSystemRaftCluster + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousUserShardSpace.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousUserShardSpace.rst new file mode 100644 index 0000000000..6f6817bf95 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousUserShardSpace.rst @@ -0,0 +1,11 @@ +AutonomousUserShardSpace +======================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: AutonomousUserShardSpace + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousUserShardSpaceReplica.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousUserShardSpaceReplica.rst new file mode 100644 index 0000000000..98aadc612c --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.AutonomousUserShardSpaceReplica.rst @@ -0,0 +1,11 @@ +AutonomousUserShardSpaceReplica +=============================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: AutonomousUserShardSpaceReplica + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ChangeDistributedAutonomousDatabaseCompartmentDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ChangeDistributedAutonomousDatabaseCompartmentDetails.rst new file mode 100644 index 0000000000..783b91538d --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ChangeDistributedAutonomousDatabaseCompartmentDetails.rst @@ -0,0 +1,11 @@ +ChangeDistributedAutonomousDatabaseCompartmentDetails +===================================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: ChangeDistributedAutonomousDatabaseCompartmentDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ChangeDistributedAutonomousDbBackupConfigDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ChangeDistributedAutonomousDbBackupConfigDetails.rst new file mode 100644 index 0000000000..5b4c3c171f --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ChangeDistributedAutonomousDbBackupConfigDetails.rst @@ -0,0 +1,11 @@ +ChangeDistributedAutonomousDbBackupConfigDetails +================================================ + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: ChangeDistributedAutonomousDbBackupConfigDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ChangeDistributedDatabaseCompartmentDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ChangeDistributedDatabaseCompartmentDetails.rst new file mode 100644 index 0000000000..5f647a72f2 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ChangeDistributedDatabaseCompartmentDetails.rst @@ -0,0 +1,11 @@ +ChangeDistributedDatabaseCompartmentDetails +=========================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: ChangeDistributedDatabaseCompartmentDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ChangeDistributedDatabasePrivateEndpointCompartmentDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ChangeDistributedDatabasePrivateEndpointCompartmentDetails.rst new file mode 100644 index 0000000000..3f47089201 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ChangeDistributedDatabasePrivateEndpointCompartmentDetails.rst @@ -0,0 +1,11 @@ +ChangeDistributedDatabasePrivateEndpointCompartmentDetails +========================================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: ChangeDistributedDatabasePrivateEndpointCompartmentDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ChangeDistributedDbBackupConfigDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ChangeDistributedDbBackupConfigDetails.rst new file mode 100644 index 0000000000..763fce4c20 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ChangeDistributedDbBackupConfigDetails.rst @@ -0,0 +1,11 @@ +ChangeDistributedDbBackupConfigDetails +====================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: ChangeDistributedDbBackupConfigDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CompositeDataGuardShardSpace.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CompositeDataGuardShardSpace.rst new file mode 100644 index 0000000000..b280d22089 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CompositeDataGuardShardSpace.rst @@ -0,0 +1,11 @@ +CompositeDataGuardShardSpace +============================ + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CompositeDataGuardShardSpace + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CompositeDataGuardShardSpaceReplica.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CompositeDataGuardShardSpaceReplica.rst new file mode 100644 index 0000000000..e302ea7e19 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CompositeDataGuardShardSpaceReplica.rst @@ -0,0 +1,11 @@ +CompositeDataGuardShardSpaceReplica +=================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CompositeDataGuardShardSpaceReplica + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CompositeRaftShardSpace.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CompositeRaftShardSpace.rst new file mode 100644 index 0000000000..983d24d1ec --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CompositeRaftShardSpace.rst @@ -0,0 +1,11 @@ +CompositeRaftShardSpace +======================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CompositeRaftShardSpace + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CompositeShardSpaceRaftCluster.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CompositeShardSpaceRaftCluster.rst new file mode 100644 index 0000000000..87382d1a10 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CompositeShardSpaceRaftCluster.rst @@ -0,0 +1,11 @@ +CompositeShardSpaceRaftCluster +============================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CompositeShardSpaceRaftCluster + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails.rst new file mode 100644 index 0000000000..3a59bdd668 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails.rst @@ -0,0 +1,11 @@ +ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails +=================================================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ConfigureDistributedAutonomousDatabaseGsmWalletDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ConfigureDistributedAutonomousDatabaseGsmWalletDetails.rst new file mode 100644 index 0000000000..318cadac87 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ConfigureDistributedAutonomousDatabaseGsmWalletDetails.rst @@ -0,0 +1,11 @@ +ConfigureDistributedAutonomousDatabaseGsmWalletDetails +====================================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: ConfigureDistributedAutonomousDatabaseGsmWalletDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ConfigureDistributedAutonomousDatabaseGsmsDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ConfigureDistributedAutonomousDatabaseGsmsDetails.rst new file mode 100644 index 0000000000..7032aec94d --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ConfigureDistributedAutonomousDatabaseGsmsDetails.rst @@ -0,0 +1,11 @@ +ConfigureDistributedAutonomousDatabaseGsmsDetails +================================================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: ConfigureDistributedAutonomousDatabaseGsmsDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ConfigureDistributedDatabaseAutoResourceManagementDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ConfigureDistributedDatabaseAutoResourceManagementDetails.rst new file mode 100644 index 0000000000..4d5153d9ee --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ConfigureDistributedDatabaseAutoResourceManagementDetails.rst @@ -0,0 +1,11 @@ +ConfigureDistributedDatabaseAutoResourceManagementDetails +========================================================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: ConfigureDistributedDatabaseAutoResourceManagementDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ConfigureDistributedDatabaseGsmsDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ConfigureDistributedDatabaseGsmsDetails.rst new file mode 100644 index 0000000000..afc2aeb907 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ConfigureDistributedDatabaseGsmsDetails.rst @@ -0,0 +1,11 @@ +ConfigureDistributedDatabaseGsmsDetails +======================================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: ConfigureDistributedDatabaseGsmsDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousCatalogDatabaseDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousCatalogDatabaseDetails.rst new file mode 100644 index 0000000000..da6347451e --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousCatalogDatabaseDetails.rst @@ -0,0 +1,11 @@ +CreateAutonomousCatalogDatabaseDetails +====================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateAutonomousCatalogDatabaseDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousCatalogDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousCatalogDetails.rst new file mode 100644 index 0000000000..efba46d416 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousCatalogDetails.rst @@ -0,0 +1,11 @@ +CreateAutonomousCatalogDetails +============================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateAutonomousCatalogDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousCatalogReplicaDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousCatalogReplicaDetails.rst new file mode 100644 index 0000000000..a2824fa1ec --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousCatalogReplicaDetails.rst @@ -0,0 +1,11 @@ +CreateAutonomousCatalogReplicaDetails +===================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateAutonomousCatalogReplicaDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousCompositeDataGuardShardSpaceDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousCompositeDataGuardShardSpaceDetails.rst new file mode 100644 index 0000000000..fe38ac9084 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousCompositeDataGuardShardSpaceDetails.rst @@ -0,0 +1,11 @@ +CreateAutonomousCompositeDataGuardShardSpaceDetails +=================================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateAutonomousCompositeDataGuardShardSpaceDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousCompositeDataGuardShardSpaceReplicaDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousCompositeDataGuardShardSpaceReplicaDetails.rst new file mode 100644 index 0000000000..e0ec5dfd2e --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousCompositeDataGuardShardSpaceReplicaDetails.rst @@ -0,0 +1,11 @@ +CreateAutonomousCompositeDataGuardShardSpaceReplicaDetails +========================================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateAutonomousCompositeDataGuardShardSpaceReplicaDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousCompositeRaftShardSpaceDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousCompositeRaftShardSpaceDetails.rst new file mode 100644 index 0000000000..6cec37c4a5 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousCompositeRaftShardSpaceDetails.rst @@ -0,0 +1,11 @@ +CreateAutonomousCompositeRaftShardSpaceDetails +============================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateAutonomousCompositeRaftShardSpaceDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousCompositeShardSpaceRaftClusterDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousCompositeShardSpaceRaftClusterDetails.rst new file mode 100644 index 0000000000..9a979cd8ac --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousCompositeShardSpaceRaftClusterDetails.rst @@ -0,0 +1,11 @@ +CreateAutonomousCompositeShardSpaceRaftClusterDetails +===================================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateAutonomousCompositeShardSpaceRaftClusterDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousSystemDataGuardDatabaseDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousSystemDataGuardDatabaseDetails.rst new file mode 100644 index 0000000000..c361bb7e82 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousSystemDataGuardDatabaseDetails.rst @@ -0,0 +1,11 @@ +CreateAutonomousSystemDataGuardDatabaseDetails +============================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateAutonomousSystemDataGuardDatabaseDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousSystemDataGuardReplicaDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousSystemDataGuardReplicaDetails.rst new file mode 100644 index 0000000000..4055ddfcf8 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousSystemDataGuardReplicaDetails.rst @@ -0,0 +1,11 @@ +CreateAutonomousSystemDataGuardReplicaDetails +============================================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateAutonomousSystemDataGuardReplicaDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousSystemRaftClusterDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousSystemRaftClusterDetails.rst new file mode 100644 index 0000000000..58a9e67d9d --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousSystemRaftClusterDetails.rst @@ -0,0 +1,11 @@ +CreateAutonomousSystemRaftClusterDetails +======================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateAutonomousSystemRaftClusterDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousUserShardSpaceDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousUserShardSpaceDetails.rst new file mode 100644 index 0000000000..fa51b755a5 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousUserShardSpaceDetails.rst @@ -0,0 +1,11 @@ +CreateAutonomousUserShardSpaceDetails +===================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateAutonomousUserShardSpaceDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousUserShardSpaceReplicaDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousUserShardSpaceReplicaDetails.rst new file mode 100644 index 0000000000..2cfb2b399d --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateAutonomousUserShardSpaceReplicaDetails.rst @@ -0,0 +1,11 @@ +CreateAutonomousUserShardSpaceReplicaDetails +============================================ + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateAutonomousUserShardSpaceReplicaDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateCompositeDataGuardShardSpaceDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateCompositeDataGuardShardSpaceDetails.rst new file mode 100644 index 0000000000..5fbe3e3cb0 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateCompositeDataGuardShardSpaceDetails.rst @@ -0,0 +1,11 @@ +CreateCompositeDataGuardShardSpaceDetails +========================================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateCompositeDataGuardShardSpaceDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateCompositeDataGuardShardSpaceReplicaDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateCompositeDataGuardShardSpaceReplicaDetails.rst new file mode 100644 index 0000000000..6c23ca1fca --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateCompositeDataGuardShardSpaceReplicaDetails.rst @@ -0,0 +1,11 @@ +CreateCompositeDataGuardShardSpaceReplicaDetails +================================================ + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateCompositeDataGuardShardSpaceReplicaDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateCompositeRaftShardSpaceDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateCompositeRaftShardSpaceDetails.rst new file mode 100644 index 0000000000..62b41ebb79 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateCompositeRaftShardSpaceDetails.rst @@ -0,0 +1,11 @@ +CreateCompositeRaftShardSpaceDetails +==================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateCompositeRaftShardSpaceDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateCompositeShardSpaceRaftClusterDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateCompositeShardSpaceRaftClusterDetails.rst new file mode 100644 index 0000000000..b835c6b452 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateCompositeShardSpaceRaftClusterDetails.rst @@ -0,0 +1,11 @@ +CreateCompositeShardSpaceRaftClusterDetails +=========================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateCompositeShardSpaceRaftClusterDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails.rst new file mode 100644 index 0000000000..fed1bb3ff0 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails.rst @@ -0,0 +1,11 @@ +CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails +=================================================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseDetails.rst new file mode 100644 index 0000000000..014e3f050b --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseDetails.rst @@ -0,0 +1,11 @@ +CreateDistributedAutonomousDatabaseDetails +========================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateDistributedAutonomousDatabaseDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseShardDatabaseDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseShardDatabaseDetails.rst new file mode 100644 index 0000000000..ab8a4d3c0c --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseShardDatabaseDetails.rst @@ -0,0 +1,11 @@ +CreateDistributedAutonomousDatabaseShardDatabaseDetails +======================================================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateDistributedAutonomousDatabaseShardDatabaseDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails.rst new file mode 100644 index 0000000000..f9aeb03d92 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails.rst @@ -0,0 +1,11 @@ +CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails +================================================================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDatabaseDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDatabaseDetails.rst new file mode 100644 index 0000000000..c5bd20f8d4 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDatabaseDetails.rst @@ -0,0 +1,11 @@ +CreateDistributedDatabaseCatalogDatabaseDetails +=============================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateDistributedDatabaseCatalogDatabaseDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails.rst new file mode 100644 index 0000000000..814b542d81 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails.rst @@ -0,0 +1,11 @@ +CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails +========================================================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails.rst new file mode 100644 index 0000000000..0b6070c63a --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails.rst @@ -0,0 +1,11 @@ +CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails +========================================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails.rst new file mode 100644 index 0000000000..1c4ca3cd4c --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails.rst @@ -0,0 +1,11 @@ +CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails +========================================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDetails.rst new file mode 100644 index 0000000000..91b66a856c --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDetails.rst @@ -0,0 +1,11 @@ +CreateDistributedDatabaseCatalogDetails +======================================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateDistributedDatabaseCatalogDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogReplicaDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogReplicaDetails.rst new file mode 100644 index 0000000000..62bf29a731 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogReplicaDetails.rst @@ -0,0 +1,11 @@ +CreateDistributedDatabaseCatalogReplicaDetails +============================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateDistributedDatabaseCatalogReplicaDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails.rst new file mode 100644 index 0000000000..8a0ad3336b --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails.rst @@ -0,0 +1,11 @@ +CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails +============================================================ + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails.rst new file mode 100644 index 0000000000..a1c1c4aa9a --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails.rst @@ -0,0 +1,11 @@ +CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails +==================================================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseDetails.rst new file mode 100644 index 0000000000..07d089e06e --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseDetails.rst @@ -0,0 +1,11 @@ +CreateDistributedDatabaseDetails +================================ + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateDistributedDatabaseDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabasePrivateEndpointDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabasePrivateEndpointDetails.rst new file mode 100644 index 0000000000..8f26c0f521 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabasePrivateEndpointDetails.rst @@ -0,0 +1,11 @@ +CreateDistributedDatabasePrivateEndpointDetails +=============================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateDistributedDatabasePrivateEndpointDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseDetails.rst new file mode 100644 index 0000000000..d48fcc9ef9 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseDetails.rst @@ -0,0 +1,11 @@ +CreateDistributedDatabaseShardDatabaseDetails +============================================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateDistributedDatabaseShardDatabaseDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseWithDbHomeDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseWithDbHomeDetails.rst new file mode 100644 index 0000000000..7792d06664 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseWithDbHomeDetails.rst @@ -0,0 +1,11 @@ +CreateDistributedDatabaseShardDatabaseWithDbHomeDetails +======================================================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateDistributedDatabaseShardDatabaseWithDbHomeDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseWithExadbXdDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseWithExadbXdDetails.rst new file mode 100644 index 0000000000..d77bda3c70 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseWithExadbXdDetails.rst @@ -0,0 +1,11 @@ +CreateDistributedDatabaseShardDatabaseWithExadbXdDetails +======================================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateDistributedDatabaseShardDatabaseWithExadbXdDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseWithExadbXsDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseWithExadbXsDetails.rst new file mode 100644 index 0000000000..67b659fcf1 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseWithExadbXsDetails.rst @@ -0,0 +1,11 @@ +CreateDistributedDatabaseShardDatabaseWithExadbXsDetails +======================================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateDistributedDatabaseShardDatabaseWithExadbXsDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseShardWithExadbXsNewClusterDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseShardWithExadbXsNewClusterDetails.rst new file mode 100644 index 0000000000..31938675dc --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseShardWithExadbXsNewClusterDetails.rst @@ -0,0 +1,11 @@ +CreateDistributedDatabaseShardWithExadbXsNewClusterDetails +========================================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateDistributedDatabaseShardWithExadbXsNewClusterDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails.rst new file mode 100644 index 0000000000..a0001599d1 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails.rst @@ -0,0 +1,11 @@ +CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails +================================================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateSystemDataGuardDatabaseDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateSystemDataGuardDatabaseDetails.rst new file mode 100644 index 0000000000..cfd1edaeb8 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateSystemDataGuardDatabaseDetails.rst @@ -0,0 +1,11 @@ +CreateSystemDataGuardDatabaseDetails +==================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateSystemDataGuardDatabaseDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateSystemDataGuardReplicaDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateSystemDataGuardReplicaDetails.rst new file mode 100644 index 0000000000..cebec97cde --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateSystemDataGuardReplicaDetails.rst @@ -0,0 +1,11 @@ +CreateSystemDataGuardReplicaDetails +=================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateSystemDataGuardReplicaDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateSystemRaftClusterDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateSystemRaftClusterDetails.rst new file mode 100644 index 0000000000..b7f4418914 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateSystemRaftClusterDetails.rst @@ -0,0 +1,11 @@ +CreateSystemRaftClusterDetails +============================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateSystemRaftClusterDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateUserShardSpaceDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateUserShardSpaceDetails.rst new file mode 100644 index 0000000000..ede5dd57c5 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateUserShardSpaceDetails.rst @@ -0,0 +1,11 @@ +CreateUserShardSpaceDetails +=========================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateUserShardSpaceDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateUserShardSpaceReplicaDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateUserShardSpaceReplicaDetails.rst new file mode 100644 index 0000000000..5060a6156d --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.CreateUserShardSpaceReplicaDetails.rst @@ -0,0 +1,11 @@ +CreateUserShardSpaceReplicaDetails +================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: CreateUserShardSpaceReplicaDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DbStorageVaultDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DbStorageVaultDetails.rst new file mode 100644 index 0000000000..0ec086c50a --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DbStorageVaultDetails.rst @@ -0,0 +1,11 @@ +DbStorageVaultDetails +===================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DbStorageVaultDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabase.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabase.rst new file mode 100644 index 0000000000..10b5111346 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabase.rst @@ -0,0 +1,11 @@ +DistributedAutonomousDatabase +============================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedAutonomousDatabase + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseAutoResourceManagementDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseAutoResourceManagementDetails.rst new file mode 100644 index 0000000000..3446c58b87 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseAutoResourceManagementDetails.rst @@ -0,0 +1,11 @@ +DistributedAutonomousDatabaseAutoResourceManagementDetails +========================================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedAutonomousDatabaseAutoResourceManagementDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseCatalog.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseCatalog.rst new file mode 100644 index 0000000000..6b04b49188 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseCatalog.rst @@ -0,0 +1,11 @@ +DistributedAutonomousDatabaseCatalog +==================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedAutonomousDatabaseCatalog + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseCatalogDatabase.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseCatalogDatabase.rst new file mode 100644 index 0000000000..e0a8fd5218 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseCatalogDatabase.rst @@ -0,0 +1,11 @@ +DistributedAutonomousDatabaseCatalogDatabase +============================================ + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedAutonomousDatabaseCatalogDatabase + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseCatalogReplica.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseCatalogReplica.rst new file mode 100644 index 0000000000..8ed42ceef7 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseCatalogReplica.rst @@ -0,0 +1,11 @@ +DistributedAutonomousDatabaseCatalogReplica +=========================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedAutonomousDatabaseCatalogReplica + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseCatalogWithDedicatedInfra.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseCatalogWithDedicatedInfra.rst new file mode 100644 index 0000000000..cd46ea8354 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseCatalogWithDedicatedInfra.rst @@ -0,0 +1,11 @@ +DistributedAutonomousDatabaseCatalogWithDedicatedInfra +====================================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedAutonomousDatabaseCatalogWithDedicatedInfra + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseCollection.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseCollection.rst new file mode 100644 index 0000000000..625958f750 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseCollection.rst @@ -0,0 +1,11 @@ +DistributedAutonomousDatabaseCollection +======================================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedAutonomousDatabaseCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseConnectionString.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseConnectionString.rst new file mode 100644 index 0000000000..bd49bc11f2 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseConnectionString.rst @@ -0,0 +1,11 @@ +DistributedAutonomousDatabaseConnectionString +============================================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedAutonomousDatabaseConnectionString + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseGdsControlNode.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseGdsControlNode.rst new file mode 100644 index 0000000000..73422c03aa --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseGdsControlNode.rst @@ -0,0 +1,11 @@ +DistributedAutonomousDatabaseGdsControlNode +=========================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedAutonomousDatabaseGdsControlNode + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseGdsControlNodeImage.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseGdsControlNodeImage.rst new file mode 100644 index 0000000000..793fc3eb13 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseGdsControlNodeImage.rst @@ -0,0 +1,11 @@ +DistributedAutonomousDatabaseGdsControlNodeImage +================================================ + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedAutonomousDatabaseGdsControlNodeImage + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseGsm.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseGsm.rst new file mode 100644 index 0000000000..021ba20b5f --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseGsm.rst @@ -0,0 +1,11 @@ +DistributedAutonomousDatabaseGsm +================================ + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedAutonomousDatabaseGsm + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseGsmImage.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseGsmImage.rst new file mode 100644 index 0000000000..43bd919623 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseGsmImage.rst @@ -0,0 +1,11 @@ +DistributedAutonomousDatabaseGsmImage +===================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedAutonomousDatabaseGsmImage + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseRaftMetric.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseRaftMetric.rst new file mode 100644 index 0000000000..a9361b95f7 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseRaftMetric.rst @@ -0,0 +1,11 @@ +DistributedAutonomousDatabaseRaftMetric +======================================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedAutonomousDatabaseRaftMetric + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseRuChangeLog.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseRuChangeLog.rst new file mode 100644 index 0000000000..844317834f --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseRuChangeLog.rst @@ -0,0 +1,11 @@ +DistributedAutonomousDatabaseRuChangeLog +======================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedAutonomousDatabaseRuChangeLog + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseRuChangeLogSummary.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseRuChangeLogSummary.rst new file mode 100644 index 0000000000..4d6dbdde51 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseRuChangeLogSummary.rst @@ -0,0 +1,11 @@ +DistributedAutonomousDatabaseRuChangeLogSummary +=============================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedAutonomousDatabaseRuChangeLogSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseShardDatabase.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseShardDatabase.rst new file mode 100644 index 0000000000..0f2ca2d64a --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseShardDatabase.rst @@ -0,0 +1,11 @@ +DistributedAutonomousDatabaseShardDatabase +========================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedAutonomousDatabaseShardDatabase + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseShardWithDedicatedInfra.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseShardWithDedicatedInfra.rst new file mode 100644 index 0000000000..a259bb53e1 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseShardWithDedicatedInfra.rst @@ -0,0 +1,11 @@ +DistributedAutonomousDatabaseShardWithDedicatedInfra +==================================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedAutonomousDatabaseShardWithDedicatedInfra + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseSummary.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseSummary.rst new file mode 100644 index 0000000000..1c1d12e2e3 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDatabaseSummary.rst @@ -0,0 +1,11 @@ +DistributedAutonomousDatabaseSummary +==================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedAutonomousDatabaseSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDbBackupConfig.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDbBackupConfig.rst new file mode 100644 index 0000000000..701741a1d6 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDbBackupConfig.rst @@ -0,0 +1,11 @@ +DistributedAutonomousDbBackupConfig +=================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedAutonomousDbBackupConfig + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDbBackupDestination.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDbBackupDestination.rst new file mode 100644 index 0000000000..2b1e852fce --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDbBackupDestination.rst @@ -0,0 +1,11 @@ +DistributedAutonomousDbBackupDestination +======================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedAutonomousDbBackupDestination + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDbMetadata.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDbMetadata.rst new file mode 100644 index 0000000000..2f9d991b9a --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedAutonomousDbMetadata.rst @@ -0,0 +1,11 @@ +DistributedAutonomousDbMetadata +=============================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedAutonomousDbMetadata + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabase.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabase.rst new file mode 100644 index 0000000000..a767fcca5a --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabase.rst @@ -0,0 +1,11 @@ +DistributedDatabase +=================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedDatabase + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseAutoResourceManagementDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseAutoResourceManagementDetails.rst new file mode 100644 index 0000000000..0634923ce0 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseAutoResourceManagementDetails.rst @@ -0,0 +1,11 @@ +DistributedDatabaseAutoResourceManagementDetails +================================================ + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedDatabaseAutoResourceManagementDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCatalog.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCatalog.rst new file mode 100644 index 0000000000..d2289d821e --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCatalog.rst @@ -0,0 +1,11 @@ +DistributedDatabaseCatalog +========================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedDatabaseCatalog + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabase.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabase.rst new file mode 100644 index 0000000000..85c12b8175 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabase.rst @@ -0,0 +1,11 @@ +DistributedDatabaseCatalogDatabase +================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedDatabaseCatalogDatabase + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithDbHome.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithDbHome.rst new file mode 100644 index 0000000000..90aa872e49 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithDbHome.rst @@ -0,0 +1,11 @@ +DistributedDatabaseCatalogDatabaseWithDbHome +============================================ + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedDatabaseCatalogDatabaseWithDbHome + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithExadbXd.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithExadbXd.rst new file mode 100644 index 0000000000..19db3cc8c7 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithExadbXd.rst @@ -0,0 +1,11 @@ +DistributedDatabaseCatalogDatabaseWithExadbXd +============================================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedDatabaseCatalogDatabaseWithExadbXd + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithExadbXs.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithExadbXs.rst new file mode 100644 index 0000000000..7c63da9f9d --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithExadbXs.rst @@ -0,0 +1,11 @@ +DistributedDatabaseCatalogDatabaseWithExadbXs +============================================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedDatabaseCatalogDatabaseWithExadbXs + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster.rst new file mode 100644 index 0000000000..9689227959 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster.rst @@ -0,0 +1,11 @@ +DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster +======================================================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster.rst new file mode 100644 index 0000000000..c6f0b104f4 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster.rst @@ -0,0 +1,11 @@ +DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster +=============================================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCatalogReplicaDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCatalogReplicaDetails.rst new file mode 100644 index 0000000000..733d32682a --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCatalogReplicaDetails.rst @@ -0,0 +1,11 @@ +DistributedDatabaseCatalogReplicaDetails +======================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedDatabaseCatalogReplicaDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCollection.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCollection.rst new file mode 100644 index 0000000000..7e836b34fb --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseCollection.rst @@ -0,0 +1,11 @@ +DistributedDatabaseCollection +============================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedDatabaseCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseGdsControlNode.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseGdsControlNode.rst new file mode 100644 index 0000000000..454e304934 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseGdsControlNode.rst @@ -0,0 +1,11 @@ +DistributedDatabaseGdsControlNode +================================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedDatabaseGdsControlNode + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseGsm.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseGsm.rst new file mode 100644 index 0000000000..0f6426a502 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseGsm.rst @@ -0,0 +1,11 @@ +DistributedDatabaseGsm +====================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedDatabaseGsm + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabasePrivateEndpoint.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabasePrivateEndpoint.rst new file mode 100644 index 0000000000..1eee7b5ff0 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabasePrivateEndpoint.rst @@ -0,0 +1,11 @@ +DistributedDatabasePrivateEndpoint +================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedDatabasePrivateEndpoint + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabasePrivateEndpointCollection.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabasePrivateEndpointCollection.rst new file mode 100644 index 0000000000..f3f03548b8 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabasePrivateEndpointCollection.rst @@ -0,0 +1,11 @@ +DistributedDatabasePrivateEndpointCollection +============================================ + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedDatabasePrivateEndpointCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabasePrivateEndpointSummary.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabasePrivateEndpointSummary.rst new file mode 100644 index 0000000000..609955744f --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabasePrivateEndpointSummary.rst @@ -0,0 +1,11 @@ +DistributedDatabasePrivateEndpointSummary +========================================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedDatabasePrivateEndpointSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseRaftMetric.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseRaftMetric.rst new file mode 100644 index 0000000000..40a5ec6511 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseRaftMetric.rst @@ -0,0 +1,11 @@ +DistributedDatabaseRaftMetric +============================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedDatabaseRaftMetric + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseRuChangeLog.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseRuChangeLog.rst new file mode 100644 index 0000000000..0071cad55a --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseRuChangeLog.rst @@ -0,0 +1,11 @@ +DistributedDatabaseRuChangeLog +============================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedDatabaseRuChangeLog + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseRuChangeLogSummary.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseRuChangeLogSummary.rst new file mode 100644 index 0000000000..11a5044a0a --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseRuChangeLogSummary.rst @@ -0,0 +1,11 @@ +DistributedDatabaseRuChangeLogSummary +===================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedDatabaseRuChangeLogSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseShardDatabase.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseShardDatabase.rst new file mode 100644 index 0000000000..d72ab26330 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseShardDatabase.rst @@ -0,0 +1,11 @@ +DistributedDatabaseShardDatabase +================================ + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedDatabaseShardDatabase + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithDbHome.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithDbHome.rst new file mode 100644 index 0000000000..70c8b45761 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithDbHome.rst @@ -0,0 +1,11 @@ +DistributedDatabaseShardDatabaseWithDbHome +========================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedDatabaseShardDatabaseWithDbHome + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithExadbXd.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithExadbXd.rst new file mode 100644 index 0000000000..ff22ba8cd1 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithExadbXd.rst @@ -0,0 +1,11 @@ +DistributedDatabaseShardDatabaseWithExadbXd +=========================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedDatabaseShardDatabaseWithExadbXd + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithExadbXs.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithExadbXs.rst new file mode 100644 index 0000000000..d1eddb931a --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithExadbXs.rst @@ -0,0 +1,11 @@ +DistributedDatabaseShardDatabaseWithExadbXs +=========================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedDatabaseShardDatabaseWithExadbXs + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithExadbXsNewCluster.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithExadbXsNewCluster.rst new file mode 100644 index 0000000000..e251860604 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithExadbXsNewCluster.rst @@ -0,0 +1,11 @@ +DistributedDatabaseShardDatabaseWithExadbXsNewCluster +===================================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedDatabaseShardDatabaseWithExadbXsNewCluster + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster.rst new file mode 100644 index 0000000000..68e3d993e4 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster.rst @@ -0,0 +1,11 @@ +DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster +============================================================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseSummary.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseSummary.rst new file mode 100644 index 0000000000..b0c48815df --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDatabaseSummary.rst @@ -0,0 +1,11 @@ +DistributedDatabaseSummary +========================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedDatabaseSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDbBackupConfig.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDbBackupConfig.rst new file mode 100644 index 0000000000..8844b77ffd --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDbBackupConfig.rst @@ -0,0 +1,11 @@ +DistributedDbBackupConfig +========================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedDbBackupConfig + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDbBackupDestination.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDbBackupDestination.rst new file mode 100644 index 0000000000..592e9de70a --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDbBackupDestination.rst @@ -0,0 +1,11 @@ +DistributedDbBackupDestination +============================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedDbBackupDestination + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDbConnectionString.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDbConnectionString.rst new file mode 100644 index 0000000000..e5a84b3c14 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDbConnectionString.rst @@ -0,0 +1,11 @@ +DistributedDbConnectionString +============================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedDbConnectionString + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDbGdsControlNodeImage.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDbGdsControlNodeImage.rst new file mode 100644 index 0000000000..6d2f5c741d --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDbGdsControlNodeImage.rst @@ -0,0 +1,11 @@ +DistributedDbGdsControlNodeImage +================================ + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedDbGdsControlNodeImage + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDbGsmImage.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDbGsmImage.rst new file mode 100644 index 0000000000..ab0cafc18d --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDbGsmImage.rst @@ -0,0 +1,11 @@ +DistributedDbGsmImage +===================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedDbGsmImage + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDbMetadata.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDbMetadata.rst new file mode 100644 index 0000000000..72cf818587 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDbMetadata.rst @@ -0,0 +1,11 @@ +DistributedDbMetadata +===================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedDbMetadata + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDbStorageVault.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDbStorageVault.rst new file mode 100644 index 0000000000..506b5cf6b4 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDbStorageVault.rst @@ -0,0 +1,11 @@ +DistributedDbStorageVault +========================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedDbStorageVault + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDbVmCluster.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDbVmCluster.rst new file mode 100644 index 0000000000..837f31665a --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.DistributedDbVmCluster.rst @@ -0,0 +1,11 @@ +DistributedDbVmCluster +====================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: DistributedDbVmCluster + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.GenerateDistributedAutonomousDatabaseWalletDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.GenerateDistributedAutonomousDatabaseWalletDetails.rst new file mode 100644 index 0000000000..9efa476eb8 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.GenerateDistributedAutonomousDatabaseWalletDetails.rst @@ -0,0 +1,11 @@ +GenerateDistributedAutonomousDatabaseWalletDetails +================================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: GenerateDistributedAutonomousDatabaseWalletDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.GenerateDistributedDatabaseWalletDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.GenerateDistributedDatabaseWalletDetails.rst new file mode 100644 index 0000000000..1d52c830d1 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.GenerateDistributedDatabaseWalletDetails.rst @@ -0,0 +1,11 @@ +GenerateDistributedDatabaseWalletDetails +======================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: GenerateDistributedDatabaseWalletDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.MoveDistributedAutonomousDatabaseReplicationUnitDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.MoveDistributedAutonomousDatabaseReplicationUnitDetails.rst new file mode 100644 index 0000000000..6571f95e4c --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.MoveDistributedAutonomousDatabaseReplicationUnitDetails.rst @@ -0,0 +1,11 @@ +MoveDistributedAutonomousDatabaseReplicationUnitDetails +======================================================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: MoveDistributedAutonomousDatabaseReplicationUnitDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.MoveDistributedDatabaseReplicationUnitDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.MoveDistributedDatabaseReplicationUnitDetails.rst new file mode 100644 index 0000000000..af8598f49c --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.MoveDistributedDatabaseReplicationUnitDetails.rst @@ -0,0 +1,11 @@ +MoveDistributedDatabaseReplicationUnitDetails +============================================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: MoveDistributedDatabaseReplicationUnitDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.PatchDistributedAutonomousDatabaseDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.PatchDistributedAutonomousDatabaseDetails.rst new file mode 100644 index 0000000000..83c3ace6fb --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.PatchDistributedAutonomousDatabaseDetails.rst @@ -0,0 +1,11 @@ +PatchDistributedAutonomousDatabaseDetails +========================================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: PatchDistributedAutonomousDatabaseDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.PatchDistributedDatabaseDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.PatchDistributedDatabaseDetails.rst new file mode 100644 index 0000000000..ae17a16b58 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.PatchDistributedDatabaseDetails.rst @@ -0,0 +1,11 @@ +PatchDistributedDatabaseDetails +=============================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: PatchDistributedDatabaseDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.PatchDistributedDatabasePrivateEndpointDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.PatchDistributedDatabasePrivateEndpointDetails.rst new file mode 100644 index 0000000000..14af99e39d --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.PatchDistributedDatabasePrivateEndpointDetails.rst @@ -0,0 +1,11 @@ +PatchDistributedDatabasePrivateEndpointDetails +============================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: PatchDistributedDatabasePrivateEndpointDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.PatchInsertInstruction.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.PatchInsertInstruction.rst new file mode 100644 index 0000000000..844e96928e --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.PatchInsertInstruction.rst @@ -0,0 +1,11 @@ +PatchInsertInstruction +====================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: PatchInsertInstruction + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.PatchInstruction.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.PatchInstruction.rst new file mode 100644 index 0000000000..f5d74d9e5a --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.PatchInstruction.rst @@ -0,0 +1,11 @@ +PatchInstruction +================ + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: PatchInstruction + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.PatchMergeInstruction.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.PatchMergeInstruction.rst new file mode 100644 index 0000000000..7812a13594 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.PatchMergeInstruction.rst @@ -0,0 +1,11 @@ +PatchMergeInstruction +===================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: PatchMergeInstruction + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.PatchRemoveInstruction.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.PatchRemoveInstruction.rst new file mode 100644 index 0000000000..1b270a8b7a --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.PatchRemoveInstruction.rst @@ -0,0 +1,11 @@ +PatchRemoveInstruction +====================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: PatchRemoveInstruction + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.RotateDistributedAutonomousDatabaseDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.RotateDistributedAutonomousDatabaseDetails.rst new file mode 100644 index 0000000000..7303798cea --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.RotateDistributedAutonomousDatabaseDetails.rst @@ -0,0 +1,11 @@ +RotateDistributedAutonomousDatabaseDetails +========================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: RotateDistributedAutonomousDatabaseDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.RotateDistributedAutonomousDatabasePasswordsDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.RotateDistributedAutonomousDatabasePasswordsDetails.rst new file mode 100644 index 0000000000..c0abffe0f1 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.RotateDistributedAutonomousDatabasePasswordsDetails.rst @@ -0,0 +1,11 @@ +RotateDistributedAutonomousDatabasePasswordsDetails +=================================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: RotateDistributedAutonomousDatabasePasswordsDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.RotateDistributedDatabaseDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.RotateDistributedDatabaseDetails.rst new file mode 100644 index 0000000000..50bbaf500b --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.RotateDistributedDatabaseDetails.rst @@ -0,0 +1,11 @@ +RotateDistributedDatabaseDetails +================================ + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: RotateDistributedDatabaseDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.RotateDistributedDatabasePasswordsDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.RotateDistributedDatabasePasswordsDetails.rst new file mode 100644 index 0000000000..a1799d692b --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.RotateDistributedDatabasePasswordsDetails.rst @@ -0,0 +1,11 @@ +RotateDistributedDatabasePasswordsDetails +========================================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: RotateDistributedDatabasePasswordsDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ScaleDistributedAutonomousDatabaseGsmsDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ScaleDistributedAutonomousDatabaseGsmsDetails.rst new file mode 100644 index 0000000000..96416d1167 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ScaleDistributedAutonomousDatabaseGsmsDetails.rst @@ -0,0 +1,11 @@ +ScaleDistributedAutonomousDatabaseGsmsDetails +============================================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: ScaleDistributedAutonomousDatabaseGsmsDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ScaleDistributedDatabaseGsmsDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ScaleDistributedDatabaseGsmsDetails.rst new file mode 100644 index 0000000000..36c1eaccd6 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.ScaleDistributedDatabaseGsmsDetails.rst @@ -0,0 +1,11 @@ +ScaleDistributedDatabaseGsmsDetails +=================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: ScaleDistributedDatabaseGsmsDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.SystemDataGuardDatabase.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.SystemDataGuardDatabase.rst new file mode 100644 index 0000000000..362257af03 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.SystemDataGuardDatabase.rst @@ -0,0 +1,11 @@ +SystemDataGuardDatabase +======================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: SystemDataGuardDatabase + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.SystemDataGuardReplica.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.SystemDataGuardReplica.rst new file mode 100644 index 0000000000..12d8ddfaff --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.SystemDataGuardReplica.rst @@ -0,0 +1,11 @@ +SystemDataGuardReplica +====================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: SystemDataGuardReplica + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.SystemRaftCluster.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.SystemRaftCluster.rst new file mode 100644 index 0000000000..fe2ffc8c2f --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.SystemRaftCluster.rst @@ -0,0 +1,11 @@ +SystemRaftCluster +================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: SystemRaftCluster + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.UpdateDistributedAutonomousDatabaseDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.UpdateDistributedAutonomousDatabaseDetails.rst new file mode 100644 index 0000000000..60d07f021b --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.UpdateDistributedAutonomousDatabaseDetails.rst @@ -0,0 +1,11 @@ +UpdateDistributedAutonomousDatabaseDetails +========================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: UpdateDistributedAutonomousDatabaseDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.UpdateDistributedDatabaseDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.UpdateDistributedDatabaseDetails.rst new file mode 100644 index 0000000000..1db8fba573 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.UpdateDistributedDatabaseDetails.rst @@ -0,0 +1,11 @@ +UpdateDistributedDatabaseDetails +================================ + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: UpdateDistributedDatabaseDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.UpdateDistributedDatabasePrivateEndpointDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.UpdateDistributedDatabasePrivateEndpointDetails.rst new file mode 100644 index 0000000000..e09a62d096 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.UpdateDistributedDatabasePrivateEndpointDetails.rst @@ -0,0 +1,11 @@ +UpdateDistributedDatabasePrivateEndpointDetails +=============================================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: UpdateDistributedDatabasePrivateEndpointDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.UserShardSpace.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.UserShardSpace.rst new file mode 100644 index 0000000000..877fbdb0d9 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.UserShardSpace.rst @@ -0,0 +1,11 @@ +UserShardSpace +============== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: UserShardSpace + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.UserShardSpaceReplica.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.UserShardSpaceReplica.rst new file mode 100644 index 0000000000..5f82a76d49 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.UserShardSpaceReplica.rst @@ -0,0 +1,11 @@ +UserShardSpaceReplica +===================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: UserShardSpaceReplica + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.VcnNsgIdsDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.VcnNsgIdsDetails.rst new file mode 100644 index 0000000000..072427666f --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.VcnNsgIdsDetails.rst @@ -0,0 +1,11 @@ +VcnNsgIdsDetails +================ + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: VcnNsgIdsDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.VmClusterDetails.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.VmClusterDetails.rst new file mode 100644 index 0000000000..c1eac6a8ab --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.VmClusterDetails.rst @@ -0,0 +1,11 @@ +VmClusterDetails +================ + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: VmClusterDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.WorkRequest.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.WorkRequest.rst new file mode 100644 index 0000000000..262f680659 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.WorkRequest.rst @@ -0,0 +1,11 @@ +WorkRequest +=========== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: WorkRequest + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.WorkRequestError.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.WorkRequestError.rst new file mode 100644 index 0000000000..636666f577 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.WorkRequestError.rst @@ -0,0 +1,11 @@ +WorkRequestError +================ + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: WorkRequestError + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.WorkRequestErrorCollection.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.WorkRequestErrorCollection.rst new file mode 100644 index 0000000000..2652be9255 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.WorkRequestErrorCollection.rst @@ -0,0 +1,11 @@ +WorkRequestErrorCollection +========================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: WorkRequestErrorCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.WorkRequestLogEntry.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.WorkRequestLogEntry.rst new file mode 100644 index 0000000000..d7ebf8ea5f --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.WorkRequestLogEntry.rst @@ -0,0 +1,11 @@ +WorkRequestLogEntry +=================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: WorkRequestLogEntry + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.WorkRequestLogEntryCollection.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.WorkRequestLogEntryCollection.rst new file mode 100644 index 0000000000..a686b63ba0 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.WorkRequestLogEntryCollection.rst @@ -0,0 +1,11 @@ +WorkRequestLogEntryCollection +============================= + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: WorkRequestLogEntryCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.WorkRequestResource.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.WorkRequestResource.rst new file mode 100644 index 0000000000..9a6bc00dbc --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.WorkRequestResource.rst @@ -0,0 +1,11 @@ +WorkRequestResource +=================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: WorkRequestResource + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.WorkRequestSummary.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.WorkRequestSummary.rst new file mode 100644 index 0000000000..2cd5f86b8f --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.WorkRequestSummary.rst @@ -0,0 +1,11 @@ +WorkRequestSummary +================== + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: WorkRequestSummary + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.WorkRequestSummaryCollection.rst b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.WorkRequestSummaryCollection.rst new file mode 100644 index 0000000000..5b398edb24 --- /dev/null +++ b/docs/api/distributed_database_v26/models/oci.distributed_database_v26.models.WorkRequestSummaryCollection.rst @@ -0,0 +1,11 @@ +WorkRequestSummaryCollection +============================ + +.. currentmodule:: oci.distributed_database_v26.models + +.. autoclass:: WorkRequestSummaryCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/landing.rst b/docs/api/landing.rst index 91b5c74184..0d8e075f07 100644 --- a/docs/api/landing.rst +++ b/docs/api/landing.rst @@ -97,10 +97,14 @@ API Reference * :doc:`Diagnosability ` * :doc:`Disaster Recovery ` * :doc:`Discovery ` -* :doc:`Distributed Autonomous Db Service ` -* :doc:`Distributed Db Private Endpoint Service ` -* :doc:`Distributed Db Service ` -* :doc:`Distributed Db Work Request Service ` +* :doc:`Distributed Autonomous Db Service ` +* :doc:`Distributed Autonomous Db Service ` +* :doc:`Distributed Db Private Endpoint Service ` +* :doc:`Distributed Db Private Endpoint Service ` +* :doc:`Distributed Db Service ` +* :doc:`Distributed Db Service ` +* :doc:`Distributed Db Work Request Service ` +* :doc:`Distributed Db Work Request Service ` * :doc:`Domain ` * :doc:`Domain Governance ` * :doc:`Dynamic Set ` @@ -141,6 +145,7 @@ API Reference * :doc:`Identity ` * :doc:`Identity Domains ` * :doc:`Incident ` +* :doc:`Instance ` * :doc:`Integration Instance ` * :doc:`Internal Demand Signal ` * :doc:`Inventory ` @@ -396,6 +401,7 @@ API Reference datacc dblm dbmulticloud + ddfs delegate_access_control demand_signal desktops @@ -403,6 +409,7 @@ API Reference dif disaster_recovery distributed_database + distributed_database_v26 dns em_warehouse email diff --git a/docs/api/resource_manager.rst b/docs/api/resource_manager.rst index 67a9232650..03c711c571 100644 --- a/docs/api/resource_manager.rst +++ b/docs/api/resource_manager.rst @@ -93,6 +93,7 @@ Resource Manager oci.resource_manager.models.JobOutputsCollection oci.resource_manager.models.JobSummary oci.resource_manager.models.LogEntry + oci.resource_manager.models.LogEntryCollection oci.resource_manager.models.ObjectStorageConfigSource oci.resource_manager.models.ObjectStorageConfigSourceRecord oci.resource_manager.models.PlanJobOperationDetails diff --git a/docs/api/resource_manager/models/oci.resource_manager.models.LogEntryCollection.rst b/docs/api/resource_manager/models/oci.resource_manager.models.LogEntryCollection.rst new file mode 100644 index 0000000000..1d61976588 --- /dev/null +++ b/docs/api/resource_manager/models/oci.resource_manager.models.LogEntryCollection.rst @@ -0,0 +1,11 @@ +LogEntryCollection +================== + +.. currentmodule:: oci.resource_manager.models + +.. autoclass:: LogEntryCollection + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/conf.py b/docs/conf.py index c273774301..5fa741b7d5 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -5,12 +5,16 @@ import os import re import sys -import pkg_resources import sphinx_rtd_theme from docutils.utils import Reporter from sphinx.domains.python import PythonDomain +try: + from importlib import metadata as importlib_metadata +except ImportError: + import importlib_metadata + # Add any Sphinx extension module names here, as strings. They can be # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom # ones. @@ -42,14 +46,13 @@ author = "Oracle" try: - release = pkg_resources.get_distribution("oci").version -except pkg_resources.DistributionNotFound: + release = importlib_metadata.version("oci") +except importlib_metadata.PackageNotFoundError: print("To build the documentation, The distribution information of oci") print("Has to be available. Either install the package into your") print("development environment or run 'setup.py develop' to setup the") print("metadata. A virtualenv is recommended!") sys.exit(1) -del pkg_resources version = ".".join(release.split(".")[:3]) language = "en" diff --git a/docs/requirements.txt b/docs/requirements.txt index 5f79bdb288..b689c0c6a0 100644 --- a/docs/requirements.txt +++ b/docs/requirements.txt @@ -13,4 +13,5 @@ Jinja2>=3.1.5,<4.0.0; python_version >= '3.7' setuptools==59.6.0; python_version == '3.6' setuptools==68.0.0; python_version == '3.7' setuptools==75.3.2; python_version == '3.8' -setuptools==78.1.1; python_version >= '3.9' \ No newline at end of file +setuptools>=78.1.1,<84; python_version >= '3.9' +importlib-metadata; python_version < '3.8' diff --git a/examples/database_tools/adbs_create_connection_public_ip.py b/examples/database_tools/adbs_create_connection_public_ip.py index b63d875f72..af0903c7ce 100644 --- a/examples/database_tools/adbs_create_connection_public_ip.py +++ b/examples/database_tools/adbs_create_connection_public_ip.py @@ -34,7 +34,6 @@ from utils.dbtools import get_dbtools_clients, get_database_clients, get_secrets_client, get_kms_vault_client from utils.dbtools import get_vaults_clients, get_wallet_and_create_secrets, delete_secret -import pkg_resources from datetime import datetime, timedelta # Set do_clean_up_at_end = False to keep the secrets and connection created @@ -49,7 +48,7 @@ # Specify the password for the ADB-S database ADMIN user db_password = "example-password" -print("Using oci version:", pkg_resources.get_distribution("oci").version) +print("Using oci version:", oci.__version__) class DBToolsExample: diff --git a/examples/database_tools/adbs_create_connection_with_pe.py b/examples/database_tools/adbs_create_connection_with_pe.py index 07e92c40ed..b7bc2c1e35 100644 --- a/examples/database_tools/adbs_create_connection_with_pe.py +++ b/examples/database_tools/adbs_create_connection_with_pe.py @@ -39,7 +39,6 @@ from utils.dbtools import get_vaults_clients, delete_secret, get_wallet_and_create_secrets from utils.dbtools import Colors -import pkg_resources from datetime import datetime, timedelta # Set do_clean_up_at_end = False to keep the secrets, connection, and PE created @@ -61,7 +60,7 @@ db_username = "changeme_user" db_password = "example-password" -print("Using oci version:", pkg_resources.get_distribution("oci").version) +print("Using oci version:", oci.__version__) class DBToolsExample: diff --git a/examples/database_tools/db_system_create_connection_private_subnet.py b/examples/database_tools/db_system_create_connection_private_subnet.py index 0a599c1227..8e630a4936 100644 --- a/examples/database_tools/db_system_create_connection_private_subnet.py +++ b/examples/database_tools/db_system_create_connection_private_subnet.py @@ -41,7 +41,6 @@ from utils.dbtools import get_vaults_clients, create_secret, delete_secret from utils.dbtools import Colors -import pkg_resources import base64 from datetime import datetime, timedelta @@ -64,7 +63,7 @@ db_username = "system" db_password = "example-password" -print("Using oci version:", pkg_resources.get_distribution("oci").version) +print("Using oci version:", oci.__version__) class DBToolsExample: diff --git a/examples/database_tools/mysql_create_connection_public_ip.py b/examples/database_tools/mysql_create_connection_public_ip.py index 90009eac89..049b556b2c 100644 --- a/examples/database_tools/mysql_create_connection_public_ip.py +++ b/examples/database_tools/mysql_create_connection_public_ip.py @@ -37,7 +37,6 @@ from utils.dbtools import create_secret, delete_secret from utils.dbtools import Colors -import pkg_resources import base64 from datetime import datetime, timedelta @@ -57,7 +56,7 @@ db_username = "example-username" db_password = "example-password" -print("Using oci version:", pkg_resources.get_distribution("oci").version) +print("Using oci version:", oci.__version__) class DBToolsExample: diff --git a/examples/database_tools/mysql_db_system_create_connection_with_pe.py b/examples/database_tools/mysql_db_system_create_connection_with_pe.py index 8721ac88dd..3328f19b43 100644 --- a/examples/database_tools/mysql_db_system_create_connection_with_pe.py +++ b/examples/database_tools/mysql_db_system_create_connection_with_pe.py @@ -41,7 +41,6 @@ from utils.dbtools import create_secret, delete_secret from utils.dbtools import Colors -import pkg_resources import base64 from datetime import datetime, timedelta @@ -67,7 +66,7 @@ db_username = "example-username" db_password = "example-password" -print("Using oci version:", pkg_resources.get_distribution("oci").version) +print("Using oci version:", oci.__version__) class DBToolsExample: diff --git a/examples/showoci/CHANGELOG.rst b/examples/showoci/CHANGELOG.rst index a54af8a984..09ea8ee1b3 100644 --- a/examples/showoci/CHANGELOG.rst +++ b/examples/showoci/CHANGELOG.rst @@ -4,6 +4,15 @@ All notable changes to this project will be documented in this file. The format is based on `Keep a Changelog `_. +===================== +26.08.19 - 26.08.19 +===================== +* Added Cloud Guard problems, managed lists, and data mask rules +* Added enabled detector and responder recipe rule condition and configuration details +* Added separate Cloud Guard detector and responder recipe CSV exports; detector rules include enabled rules only +* Added separate OIC CSV columns for Process Automation and Human Task attachments +* Added optional KMS key enrichment with key metadata and versions, expanded CSV and console output, and KMS key summary counts, use -keydata + ===================== 26.07.14 - 26.07.14 ===================== diff --git a/examples/showoci/showoci.py b/examples/showoci/showoci.py index 34b0b9de23..18d7c46b26 100644 --- a/examples/showoci/showoci.py +++ b/examples/showoci/showoci.py @@ -126,7 +126,7 @@ import os import time -version = "26.07.14" +version = "26.08.19" ########################################################################## # check OCI version @@ -345,6 +345,7 @@ def set_parser_arguments(argsList=[]): parser.add_argument('-ic', action='store_true', default=False, dest='identity_compartments', help='Print Identity Compartments only.') parser.add_argument('-isc', action='store_true', default=False, dest='skip_identity_user_credential', help='Skip Identity User Credential extract.') parser.add_argument('-ifilter', default="", dest='ifilter', help='Filter IAM domains by Domain Names using comma seperated') + parser.add_argument('-keydata', action='store_true', default=False, dest='kms_addiontal_keys_attributes', help='Fetch Additional KMS Key Attributes.') parser.add_argument('-s', '-api', '-rm', '-fun', action='store_true', default=False, dest='streams_queues', help='Print API, Functions, Resource management, Gateways, FSDR, Streams and Queues.') @@ -489,6 +490,9 @@ def set_service_extract_flags(cmd): if cmd.threads: prm.threads = cmd.threads + if cmd.kms_addiontal_keys_attributes: + prm.read_kms_addiontal_keys_attributes = True + if cmd.exclude: prm.exclude = str(cmd.exclude).split(",") diff --git a/examples/showoci/showoci_data.py b/examples/showoci/showoci_data.py index 68e754bebc..eb386f245f 100644 --- a/examples/showoci/showoci_data.py +++ b/examples/showoci/showoci_data.py @@ -20,7 +20,7 @@ class ShowOCIData(object): - version = "26.07.14" + version = "26.08.19" ############################################ # ShowOCIService - Service object to query @@ -4673,6 +4673,19 @@ def __get_security_main(self, region_name, compartment): if cg: security_services['cloud_guard'] = cg + # Cloud Guard configuration and findings + cg_problems = self.service.search_multi_items(self.service.C_SECURITY, self.service.C_SECURITY_CLOUD_GUARD_PROBLEMS, 'region_name', region_name, 'compartment_id', compartment['id']) + if cg_problems: + security_services['cloud_guard_problems'] = cg_problems + + cg_managed_lists = self.service.search_multi_items(self.service.C_SECURITY, self.service.C_SECURITY_CLOUD_GUARD_MANAGED_LISTS, 'region_name', region_name, 'compartment_id', compartment['id']) + if cg_managed_lists: + security_services['cloud_guard_managed_lists'] = cg_managed_lists + + cg_data_mask_rules = self.service.search_multi_items(self.service.C_SECURITY, self.service.C_SECURITY_CLOUD_GUARD_DATA_MASK_RULES, 'region_name', region_name, 'compartment_id', compartment['id']) + if cg_data_mask_rules: + security_services['cloud_guard_data_mask_rules'] = cg_data_mask_rules + # bastions bs = self.service.search_multi_items(self.service.C_SECURITY, self.service.C_SECURITY_BASTION, 'region_name', region_name, 'compartment_id', compartment['id']) if bs: @@ -4707,13 +4720,14 @@ def __get_security_main(self, region_name, compartment): keys = self.service.search_multi_items(self.service.C_SECURITY, self.service.C_SECURITY_KEYS, 'region_name', region_name, 'compartment_id', compartment['id']) if keys: for key in keys: - vault = self.service.search_unique_item( - self.service.C_SECURITY, - self.service.C_SECURITY_VAULTS, - 'id', - key['vault_id'] - ) - key['vault_name'] = vault['name'] if vault else "" + if not key['vault_name']: + vault = self.service.search_unique_item( + self.service.C_SECURITY, + self.service.C_SECURITY_VAULTS, + 'id', + key['vault_id'] + ) + key['vault_name'] = vault['name'] if vault else "" security_services['kms_keys'] = keys # kms_secrets diff --git a/examples/showoci/showoci_output.py b/examples/showoci/showoci_output.py index bbd4ef97e1..5880b7adda 100644 --- a/examples/showoci/showoci_output.py +++ b/examples/showoci/showoci_output.py @@ -22,7 +22,7 @@ class ShowOCIOutput(object): - version = "26.07.14" + version = "26.08.19" ########################################################################## # spaces for align @@ -2616,6 +2616,10 @@ def __print_paas_services_main(self, paas_services): print(self.taba + val['display_name'] + ", (" + val['integration_instance_type'] + "), Created: " + val['time_created'][0:16] + " (" + val['lifecycle_state'] + ")") print(self.tabs + "Pack : " + val['message_packs'] + ", " + ("BYOL License" if val['is_byol'] else "License Included")) print(self.tabs + "URL : " + val['instance_url']) + if val['process_automation_attachments']: + print(self.tabs + "Process Automation: " + val['process_automation_attachments']) + if val['human_task_attachments']: + print(self.tabs + "Human Task: " + val['human_task_attachments']) if val['disaster_recovery_role']: print(self.tabs + "DR Role : " + val['disaster_recovery_role']) if val['private_endpoint_outbound_connection_type']: @@ -2740,9 +2744,28 @@ def __print_security_main(self, security): for dr in val['target_detector_recipes']: print(self.tabs + "Det Recipes: Owner = " + dr['owner'] + ", " + dr['display_name'] + ", Created: " + dr['time_created'][0:16] + " (" + dr['lifecycle_state'] + ")" + " Rules: " + str(len(dr['effective_detector_rules']))) + for rule in dr.get('enabled_rules', []): + print(self.tabs2 + "Enabled rule: " + rule['display_name']) for dr in val['target_responder_recipes']: print(self.tabs + "Res Recipes: Owner = " + dr['owner'] + ", " + dr['display_name'] + ", Created: " + dr['time_created'][0:16] + " Rules: " + str(len(dr['effective_responder_rules']))) + for rule in dr.get('enabled_rules', []): + print(self.tabs2 + "Enabled rule: " + rule['display_name']) + + if 'cloud_guard_problems' in security: + self.print_header("Cloud Guard Problems", 2) + for val in security['cloud_guard_problems']: + print(self.taba + val['resource_name'] + ", " + val['risk_level'] + ", " + val['lifecycle_detail']) + + if 'cloud_guard_managed_lists' in security: + self.print_header("Cloud Guard Managed Lists", 2) + for val in security['cloud_guard_managed_lists']: + print(self.taba + val['display_name'] + ", " + val['list_type'] + " (" + val['lifecycle_state'] + ")") + + if 'cloud_guard_data_mask_rules' in security: + self.print_header("Cloud Guard Data Mask Rules", 2) + for val in security['cloud_guard_data_mask_rules']: + print(self.taba + val['display_name'] + ", " + val['data_mask_rule_status'] + " (" + val['lifecycle_state'] + ")") # bastions if 'bastions' in security: @@ -2765,6 +2788,15 @@ def __print_security_main(self, security): print(self.tabs2 + "Replicas : " + rep['status'] + ", " + rep['region'] + ", " + rep['crypto_endpoint']) print("") + # kms_keys + if 'kms_keys' in security: + self.print_header("KMS Keys", 2) + for val in security['kms_keys']: + print(self.taba + val['name'] + ", Vault: " + val['vault_name'] + ", " + + val['key_algorithm'] + " " + val['key_length'] + ", Created: " + + val['time_created'][0:16] + " (" + val['lifecycle_state'] + ")") + print("") + # kms_secrets if 'kms_secrets' in security: self.print_header("KMS Vault Secrets", 2) @@ -3625,6 +3657,8 @@ def __summary_security(self, security): self.__summary_core_size(security['kms_vaults']) self.__summary_core_size(security['kms_vaults'], "sum_info_hsm", 'key_count') self.__summary_core_size(security['kms_vaults'], "sum_info_soft", 'software_key_count') + if 'kms_keys' in security: + self.__summary_core_count(security['kms_keys'], "KMS Keys") if 'kms_secrets' in security: self.__summary_core_size(security['kms_secrets']) if 'certificates' in security: @@ -4592,6 +4626,11 @@ class ShowOCICSV(object): csv_security_kms_key = [] csv_security_kms_secret = [] csv_security_cloud_guard = [] + csv_security_cloud_guard_detector_recipes = [] + csv_security_cloud_guard_responder_recipes = [] + csv_security_cloud_guard_problems = [] + csv_security_cloud_guard_managed_lists = [] + csv_security_cloud_guard_data_mask_rules = [] csv_container = [] csv_container_nodepool = [] csv_edge_waas_policies = [] @@ -4806,6 +4845,11 @@ def generate_csv(self, data, csv_file_header, tenancy, add_date_field=True, csv_ self.__export_to_csv_file("security_log_analytics_ns", self.csv_security_log_analytics_namespace) self.__export_to_csv_file("security_log_analytics", self.csv_security_log_analytics) self.__export_to_csv_file("security_cloud_guards", self.csv_security_cloud_guard) + self.__export_to_csv_file("security_cloud_guard_detector_recipes", self.csv_security_cloud_guard_detector_recipes) + self.__export_to_csv_file("security_cloud_guard_responder_recipes", self.csv_security_cloud_guard_responder_recipes) + self.__export_to_csv_file("security_cloud_guard_problems", self.csv_security_cloud_guard_problems) + self.__export_to_csv_file("security_cloud_guard_managed_lists", self.csv_security_cloud_guard_managed_lists) + self.__export_to_csv_file("security_cloud_guard_data_mask_rules", self.csv_security_cloud_guard_data_mask_rules) self.__export_to_csv_file("security_kms_vaults", self.csv_security_kms_vault) self.__export_to_csv_file("security_kms_keys", self.csv_security_kms_key) self.__export_to_csv_file("security_kms_secrets", self.csv_security_kms_secret) @@ -4881,7 +4925,7 @@ def extract_tags_to_columns(self, list_of_dicts): new_result = [] for row in list_of_dicts: for tag_type in ['defined_tags', 'freeform_tags']: - if tag_type in row: + if tag_type and tag_type in row and row[tag_type]: tags = row[tag_type].split(', ') for tag in tags: tag_split = tag.split("=") @@ -9400,6 +9444,17 @@ def __csv_security_main(self, region_name, data): if 'cloud_guard' in data: self.__csv_security_cloud_guard(region_name, data['cloud_guard']) + self.__csv_security_cloud_guard_detector_recipes(region_name, data['cloud_guard']) + self.__csv_security_cloud_guard_responder_recipes(region_name, data['cloud_guard']) + + if 'cloud_guard_problems' in data: + self.__csv_security_cloud_guard_items(region_name, data['cloud_guard_problems'], self.csv_security_cloud_guard_problems) + + if 'cloud_guard_managed_lists' in data: + self.__csv_security_cloud_guard_items(region_name, data['cloud_guard_managed_lists'], self.csv_security_cloud_guard_managed_lists) + + if 'cloud_guard_data_mask_rules' in data: + self.__csv_security_cloud_guard_items(region_name, data['cloud_guard_data_mask_rules'], self.csv_security_cloud_guard_data_mask_rules) if 'kms_vaults' in data: self.__csv_security_kms_vaults(region_name, data['kms_vaults']) @@ -9650,10 +9705,6 @@ def __csv_security_cloud_guard(self, region_name, cloud_guards): 'target_resource_name': ar['target_resource_name'], 'inherited_by_compartments': ar['inherited_by_compartments'], 'inherited_by_compartments_names': ar['inherited_by_compartments_names'], - 'target_detector_recipes': self.__csv_list_to_str(ar['target_detector_recipes'], 'display_name'), - 'target_responder_recipes': self.__csv_list_to_str(ar['target_responder_recipes'], 'display_name'), - 'target_detector_rules': "", - 'target_responder_rules': "", 'recipe_count': ar['recipe_count'], 'time_created': ar['time_created'][0:16], 'time_updated': ar['time_updated'][0:16], @@ -9663,27 +9714,76 @@ def __csv_security_cloud_guard(self, region_name, cloud_guards): 'id': ar['id'] } - # target_detector_rules - if ar['target_detector_recipes']: - arrrules = [] - for dt in ar['target_detector_recipes']: - for rule in dt['effective_detector_rules']: - arrrules.append(rule) - data['target_detector_rules'] = self.__csv_list_to_str(list(set(arrrules))) - - # target_detector_rules - if ar['target_responder_recipes']: - arrrules = [] - for dt in ar['target_responder_recipes']: - for rule in dt['effective_responder_rules']: - arrrules.append(rule) - data['target_responder_rules'] = self.__csv_list_to_str(list(set(arrrules))) - self.csv_security_cloud_guard.append(data) except Exception as e: self.__print_error("__csv_security_cloud_guard", e) + def __csv_security_cloud_guard_detector_recipes(self, region_name, cloud_guards): + try: + for target in cloud_guards: + for recipe in target['target_detector_recipes']: + for rule in recipe.get('enabled_rules', []): + self.csv_security_cloud_guard_detector_recipes.append({ + 'region_name': region_name, + 'compartment_name': target['compartment_name'], + 'compartment_id': target['compartment_id'], + 'compartment_path': target['compartment_path'], + 'target_id': target['id'], + 'target_name': target['display_name'], + 'target_resource_id': target['target_resource_id'], + 'recipe_id': recipe['id'], + 'detector_recipe_id': recipe['detector_recipe_id'], + 'recipe_name': recipe['display_name'], + 'recipe_owner': recipe['owner'], + 'detector': recipe['detector'], + 'detector_rule_id': rule['id'], + 'detector_rule_name': rule['display_name'], + 'detector_rule_description': rule['description'], + 'condition': str(rule['condition']), + 'configurations': str(rule['configurations']), + 'rule_lifecycle_state': rule['lifecycle_state'], + 'rule_time_updated': rule['time_updated'][0:16] + }) + except Exception as e: + self.__print_error("__csv_security_cloud_guard_detector_recipes", e) + + def __csv_security_cloud_guard_responder_recipes(self, region_name, cloud_guards): + try: + for target in cloud_guards: + for recipe in target['target_responder_recipes']: + self.csv_security_cloud_guard_responder_recipes.append({ + 'region_name': region_name, + 'compartment_name': target['compartment_name'], + 'compartment_id': target['compartment_id'], + 'compartment_path': target['compartment_path'], + 'target_id': target['id'], + 'target_name': target['display_name'], + 'target_resource_id': target['target_resource_id'], + 'recipe_id': recipe['id'], + 'responder_recipe_id': recipe['responder_recipe_id'], + 'name': recipe['display_name'], + 'description': recipe['description'], + 'owner': recipe['owner'], + 'effective_responder_rules': str(recipe['effective_responder_rules']), + 'enabled_rule_configurations': str(recipe.get('enabled_rules', [])), + 'time_created': recipe['time_created'][0:16], + 'time_updated': recipe['time_updated'][0:16] + }) + except Exception as e: + self.__print_error("__csv_security_cloud_guard_responder_recipes", e) + + def __csv_security_cloud_guard_items(self, region_name, items, output): + """Export dynamic Cloud Guard resources without dropping their configuration fields.""" + try: + for item in items: + data = {'region_name': region_name} + for key, value in item.items(): + data[key] = str(value) if isinstance(value, (dict, list)) else value + output.append(data) + except Exception as e: + self.__print_error("__csv_security_cloud_guard_items", e) + ########################################################################## # KMS Vaults ########################################################################## @@ -9741,12 +9841,24 @@ def __csv_security_kms_keys(self, region_name, kms_keys): 'current_key_version': ar['current_key_version'], 'vault_id': ar['vault_id'], 'vault_name': ar['vault_name'], + 'vault_management_endpoint': ar['vault_management_endpoint'], 'key_algorithm': ar['key_algorithm'], 'key_length': ar['key_length'], 'time_created': ar['time_created'][0:16], + 'time_of_deletion': ar['time_of_deletion'], + 'lifecycle_state': ar['lifecycle_state'], + 'protection_mode': ar['protection_mode'], + 'restored_from_key_id': ar['restored_from_key_id'], + 'replica_details': str(ar['replica_details']), + 'is_primary': ar['is_primary'], + 'is_auto_rotation_enabled': ar['is_auto_rotation_enabled'], + 'auto_key_rotation_details': str(ar['auto_key_rotation_details']), + 'external_key_reference_details': str(ar['external_key_reference_details']), + 'key_versions': str(ar['key_versions']), 'key_id': ar['id'], 'id': ar['id'], - 'freeform_tags': self.__get_freeform_tags(ar['freeform_tags']) + 'freeform_tags': self.__get_freeform_tags(ar['freeform_tags']), + 'defined_tags': self.__get_defined_tags(ar['defined_tags']) } self.csv_security_kms_key.append(data) @@ -10309,6 +10421,8 @@ def __csv_paas_oic(self, region_name, services): 'idcs_info_app_name': ar['idcs_info_app_name'], 'idcs_info_instance_primary_audience_url': ar['idcs_info_instance_primary_audience_url'], 'attachments': str(ar['attachments']), + 'process_automation_attachments': ar['process_automation_attachments'], + 'human_task_attachments': ar['human_task_attachments'], 'disaster_recovery_role': ar['disaster_recovery_role'], 'disaster_recovery_regional_instance_url': ar['disaster_recovery_regional_instance_url'], 'disaster_recovery_peer_role': ar['disaster_recovery_peer_role'], diff --git a/examples/showoci/showoci_service.py b/examples/showoci/showoci_service.py index c25aa75a31..b1777c3033 100644 --- a/examples/showoci/showoci_service.py +++ b/examples/showoci/showoci_service.py @@ -39,7 +39,7 @@ # class ShowOCIService ########################################################################## class ShowOCIService(object): - version = "26.07.14" + version = "26.08.19" oci_compatible_version = "2.165.1" thread_lock = threading.Lock() collection_ljust = 40 @@ -261,6 +261,9 @@ class ShowOCIService(object): # Security and Logging C_SECURITY = "security" C_SECURITY_CLOUD_GUARD = "cloud_guard" + C_SECURITY_CLOUD_GUARD_PROBLEMS = "cloud_guard_problems" + C_SECURITY_CLOUD_GUARD_MANAGED_LISTS = "cloud_guard_managed_lists" + C_SECURITY_CLOUD_GUARD_DATA_MASK_RULES = "cloud_guard_data_mask_rules" C_SECURITY_VAULTS = "vaults" C_SECURITY_KEYS = "keys" C_SECURITY_SECRETS = "secrets" @@ -14885,6 +14888,9 @@ def __load_section_monitor_notification_security_quotas_main(self): # add the key if not exists self.__initialize_data_key(self.C_SECURITY, self.C_SECURITY_BASTION) self.__initialize_data_key(self.C_SECURITY, self.C_SECURITY_CLOUD_GUARD) + self.__initialize_data_key(self.C_SECURITY, self.C_SECURITY_CLOUD_GUARD_PROBLEMS) + self.__initialize_data_key(self.C_SECURITY, self.C_SECURITY_CLOUD_GUARD_MANAGED_LISTS) + self.__initialize_data_key(self.C_SECURITY, self.C_SECURITY_CLOUD_GUARD_DATA_MASK_RULES) self.__initialize_data_key(self.C_SECURITY, self.C_SECURITY_LOGGING_UA) self.__initialize_data_key(self.C_SECURITY, self.C_SECURITY_LOGGING) self.__initialize_data_key(self.C_SECURITY, self.C_SECURITY_LOG_ANALYTICS) @@ -14946,6 +14952,9 @@ def __load_section_monitor_notification_security_quotas_main(self): sec[self.C_SECURITY_KEYS] += self.__load_security_kms_keys(search_client) sec[self.C_SECURITY_SECRETS] += self.__load_security_kms_secrets(search_client) sec[self.C_SECURITY_CLOUD_GUARD] += self.__load_security_cloud_guard(cg_client, compartments) + sec[self.C_SECURITY_CLOUD_GUARD_PROBLEMS] += self.__load_security_cloud_guard_problems(cg_client, compartments) + sec[self.C_SECURITY_CLOUD_GUARD_MANAGED_LISTS] += self.__load_security_cloud_guard_managed_lists(cg_client, compartments) + sec[self.C_SECURITY_CLOUD_GUARD_DATA_MASK_RULES] += self.__load_security_cloud_guard_data_mask_rules(cg_client, compartments) email[self.C_EMAIL_SENDERS] += self.__load_email_senders(email_client, compartments) email[self.C_EMAIL_SUPPRESSIONS] += self.__load_email_suppressions(email_client, compartments) @@ -14983,6 +14992,9 @@ def __load_section_monitor_notification_security_quotas_main(self): future_SECURITY_KEYS = executor.submit(self.__load_security_kms_keys, search_client) future_SECURITY_SECRETS = executor.submit(self.__load_security_kms_secrets, search_client) future_SECURITY_CLOUD_GUARD = executor.submit(self.__load_security_cloud_guard, cg_client, compartments) + future_SECURITY_CLOUD_GUARD_PROBLEMS = executor.submit(self.__load_security_cloud_guard_problems, cg_client, compartments) + future_SECURITY_CLOUD_GUARD_MANAGED_LISTS = executor.submit(self.__load_security_cloud_guard_managed_lists, cg_client, compartments) + future_SECURITY_CLOUD_GUARD_DATA_MASK_RULES = executor.submit(self.__load_security_cloud_guard_data_mask_rules, cg_client, compartments) future_EMAIL_SENDERS = executor.submit(self.__load_email_senders, email_client, compartments) future_EMAIL_SUPPRESSIONS = executor.submit(self.__load_email_suppressions, email_client, compartments) future_BUDGETS_BUDGETS = executor.submit(self.__load_budgets_budgets, budget_client, tenancy['id']) @@ -15012,6 +15024,9 @@ def __load_section_monitor_notification_security_quotas_main(self): sec[self.C_SECURITY_KEYS] += next(as_completed([future_SECURITY_KEYS])).result() sec[self.C_SECURITY_SECRETS] += next(as_completed([future_SECURITY_SECRETS])).result() sec[self.C_SECURITY_CLOUD_GUARD] += next(as_completed([future_SECURITY_CLOUD_GUARD])).result() + sec[self.C_SECURITY_CLOUD_GUARD_PROBLEMS] += next(as_completed([future_SECURITY_CLOUD_GUARD_PROBLEMS])).result() + sec[self.C_SECURITY_CLOUD_GUARD_MANAGED_LISTS] += next(as_completed([future_SECURITY_CLOUD_GUARD_MANAGED_LISTS])).result() + sec[self.C_SECURITY_CLOUD_GUARD_DATA_MASK_RULES] += next(as_completed([future_SECURITY_CLOUD_GUARD_DATA_MASK_RULES])).result() email[self.C_EMAIL_SENDERS] += next(as_completed([future_EMAIL_SENDERS])).result() email[self.C_EMAIL_SUPPRESSIONS] += next(as_completed([future_EMAIL_SUPPRESSIONS])).result() budget[self.C_BUDGETS_BUDGETS] += next(as_completed([future_BUDGETS_BUDGETS])).result() @@ -17970,6 +17985,8 @@ def __load_paas_oic(self, oic_client, compartments): 'idcs_info_app_name': '', 'idcs_info_instance_primary_audience_url': '', 'attachments': [], + 'process_automation_attachments': '', + 'human_task_attachments': '', 'disaster_recovery_role': '', 'disaster_recovery_regional_instance_url': '', 'disaster_recovery_peer_role': '', @@ -18003,6 +18020,10 @@ def __load_paas_oic(self, oic_client, compartments): 'target_instance_url': self.get_value(x.target_instance_url), 'target_service_type': self.get_value(x.target_service_type) } for x in oico.attachments] if oico.attachments else [] + val['process_automation_attachments'] = self.__get_oic_attachments_by_service_type( + val['attachments'], 'PROCESS_AUTOMATION') + val['human_task_attachments'] = self.__get_oic_attachments_by_service_type( + val['attachments'], 'HUMAN') val['disaster_recovery_role'] = self.get_value(oico.disaster_recovery_details.role) if oico.disaster_recovery_details else "" val['disaster_recovery_regional_instance_url'] = self.get_value(oico.disaster_recovery_details.regional_instance_url) if oico.disaster_recovery_details else "" val['disaster_recovery_peer_role'] = self.get_value(oico.disaster_recovery_details.cross_region_integration_instance_details.role) if oico.cross_region_integration_instance_details and oico.disaster_recovery_details.cross_region_integration_instance_details else "" @@ -18028,6 +18049,17 @@ def __load_paas_oic(self, oic_client, compartments): self.__print_error(e) return data + ########################################################################## + # __get_oic_attachments_by_service_type + ########################################################################## + def __get_oic_attachments_by_service_type(self, attachments, service_type): + """Return attachment identifiers and URLs for a requested OIC service type.""" + matches = [] + for attachment in attachments: + if service_type in attachment['target_service_type'].upper(): + matches.append(attachment['target_id'] + ' | ' + attachment['target_instance_url']) + return '; '.join(matches) + ########################################################################## # __load_paas_osvc - vmware ########################################################################## @@ -19041,6 +19073,242 @@ def __load_quotas(self, quotas_client, compartments): self.__print_error(e) return data + ########################################################################## + # Load Cloud Guard problems using list_problems + ########################################################################## + def __load_security_cloud_guard_problems(self, cg_client, compartments): + data = [] + cnt = 0 + errstr = "" + start_time = time.time() + header = "Cloud Guard Problems" + try: + self.__load_print_status_with_threads(header) + if not cg_client: + self.__load_print_thread_exclude(header) + return data + + # The Cloud Guard list_problems API is available only from the + # tenancy home region. + if self.config['region'] != self.tenancy_home_region: + errstr = "Can run on home region only, skipping." + self.__load_print_thread_cnt(header, cnt, start_time, errstr) + return data + + for compartment in compartments: + if self.__if_managed_paas_compartment(compartment['name']): + continue + try: + problems = oci.pagination.list_call_get_all_results( + cg_client.list_problems, + compartment['id'], + retry_strategy=oci.retry.DEFAULT_RETRY_STRATEGY + ).data + + for problem in problems: + value = self.__cloud_guard_to_dict(problem) + value['compartment_name'] = str(compartment['name']) + value['compartment_path'] = str(compartment['path']) + value['region_name'] = str(self.config['region']) + data.append(value) + cnt += 1 + + except oci.exceptions.ServiceError as e: + if self.__check_service_error(e, compartment): + self.__load_print_auth_warning(to_print=self.flags.skip_threads) + errstr += "a" + else: + self.__load_print_error(e, compartment) + errstr += "e" + + except oci.exceptions.ConnectTimeout: + self.__load_print_auth_warning(to_print=self.flags.skip_threads) + errstr += "a" + except Exception as e: + self.__load_print_error(e, compartment) + errstr += "e" + self.__load_print_thread_cnt(header, cnt, start_time, errstr) + return data + except Exception as e: + self.__print_error(e) + return data + + ########################################################################## + # Load Cloud Guard managed lists using list_managed_lists + ########################################################################## + def __load_security_cloud_guard_managed_lists(self, cg_client, compartments): + data = [] + cnt = 0 + errstr = "" + start_time = time.time() + header = "Cloud Guard Managed Lists" + try: + self.__load_print_status_with_threads(header) + if not cg_client: + self.__load_print_thread_exclude(header) + return data + for compartment in compartments: + if self.__if_managed_paas_compartment(compartment['name']): + continue + try: + managed_lists = oci.pagination.list_call_get_all_results( + cg_client.list_managed_lists, compartment['id'], + retry_strategy=oci.retry.DEFAULT_RETRY_STRATEGY).data + for managed_list in managed_lists: + value = self.__cloud_guard_to_dict(managed_list) + value['compartment_name'] = str(compartment['name']) + value['compartment_path'] = str(compartment['path']) + value['region_name'] = str(self.config['region']) + data.append(value) + cnt += 1 + except oci.exceptions.ServiceError as e: + if self.__check_service_error(e, compartment): + self.__load_print_auth_warning(to_print=self.flags.skip_threads) + errstr += "a" + else: + self.__load_print_error(e, compartment) + errstr += "e" + except oci.exceptions.ConnectTimeout: + self.__load_print_auth_warning(to_print=self.flags.skip_threads) + errstr += "a" + except Exception as e: + self.__load_print_error(e, compartment) + errstr += "e" + self.__load_print_thread_cnt(header, cnt, start_time, errstr) + return data + except Exception as e: + self.__print_error(e) + return data + + ########################################################################## + # Load Cloud Guard data mask rules using list_data_mask_rules + ########################################################################## + def __load_security_cloud_guard_data_mask_rules(self, cg_client, compartments): + + data = [] + # A parent-compartment query can include rules from its subcompartments. + # Query every selected compartment (filters may omit the parent), but add + # each rule only once. + + seen_rule_ids = set() + cnt = 0 + errstr = "" + start_time = time.time() + header = "Cloud Guard Data Mask Rules" + try: + self.__load_print_status_with_threads(header) + if not cg_client: + self.__load_print_thread_exclude(header) + return data + + for compartment in compartments: + if self.__if_managed_paas_compartment(compartment['name']): + continue + try: + data_mask_rules = oci.pagination.list_call_get_all_results( + cg_client.list_data_mask_rules, compartment['id'], + retry_strategy=oci.retry.DEFAULT_RETRY_STRATEGY + ).data + + for data_mask_rule in data_mask_rules: + + # if rule already seen, skip it + rule_id = str(data_mask_rule.id) + if rule_id in seen_rule_ids: + continue + + value = self.__cloud_guard_to_dict(data_mask_rule) + value['compartment_name'] = str(compartment['name']) + value['compartment_path'] = str(compartment['path']) + value['region_name'] = str(self.config['region']) + data.append(value) + + # Add the rule ID to the set of seen rule IDs to avoid duplicates. + seen_rule_ids.add(rule_id) + cnt += 1 + + except oci.exceptions.ServiceError as e: + # Data Mask Rules are not available in every compartment. + if e.code == 'NotAuthorizedOrNotFound': + continue + if self.__check_service_error(e, compartment): + self.__load_print_auth_warning(to_print=self.flags.skip_threads) + errstr += "a" + else: + self.__load_print_error(e, compartment) + errstr += "e" + + except oci.exceptions.ConnectTimeout: + self.__load_print_auth_warning(to_print=self.flags.skip_threads) + errstr += "a" + except Exception as e: + self.__load_print_error(e, compartment) + errstr += "e" + + self.__load_print_thread_cnt(header, cnt, start_time, errstr) + return data + except Exception as e: + self.__print_error(e) + return data + + ########################################################################## + # __cloud_guard_to_dict + ########################################################################## + def __cloud_guard_to_dict(self, value): + """Convert SDK objects to plain, JSON-safe values for Cloud Guard output.""" + value = oci.util.to_dict(value) + if isinstance(value, dict): + return {key: self.__cloud_guard_to_dict(val) for key, val in value.items()} + if isinstance(value, list): + return [self.__cloud_guard_to_dict(val) for val in value] + if isinstance(value, datetime.datetime): + return str(value) + return value + + ########################################################################## + # Load enabled detector recipe rules using list_detector_recipe_detector_rules + ########################################################################## + def __load_cloud_guard_detector_recipe_rules(self, cg_client, recipe_id, compartment_id): + """Return condition and configuration for enabled detector recipe rules.""" + try: + rules = oci.pagination.list_call_get_all_results( + cg_client.list_detector_recipe_detector_rules, recipe_id, compartment_id, + retry_strategy=oci.retry.DEFAULT_RETRY_STRATEGY).data + enabled_rules = [] + for rule in rules: + details = rule.detector_details + if details and getattr(details, 'is_enabled', False): + value = self.__cloud_guard_to_dict(rule) + value['condition'] = self.__cloud_guard_to_dict(getattr(details, 'condition', None)) + value['configurations'] = self.__cloud_guard_to_dict(getattr(details, 'configurations', None)) + enabled_rules.append(value) + return enabled_rules + except Exception as e: + self.__print_error(e) + return [] + + ########################################################################## + # Load enabled responder recipe rules using list_responder_recipe_responder_rules + ########################################################################## + def __load_cloud_guard_responder_recipe_rules(self, cg_client, recipe_id, compartment_id): + """Return condition and configuration for enabled responder recipe rules.""" + try: + rules = oci.pagination.list_call_get_all_results( + cg_client.list_responder_recipe_responder_rules, recipe_id, compartment_id, + retry_strategy=oci.retry.DEFAULT_RETRY_STRATEGY).data + enabled_rules = [] + for rule in rules: + details = rule.details + if details and getattr(details, 'is_enabled', False): + value = self.__cloud_guard_to_dict(rule) + value['condition'] = self.__cloud_guard_to_dict(getattr(details, 'condition', None)) + value['configurations'] = self.__cloud_guard_to_dict(getattr(details, 'configurations', None)) + enabled_rules.append(value) + return enabled_rules + except Exception as e: + self.__print_error(e) + return [] + ########################################################################## # __load_security_cloud_guard ########################################################################## @@ -19158,6 +19426,7 @@ def __load_security_cloud_guard(self, cg_client, compartments): 'owner': str(arr.owner), 'detector': str(arr.detector), 'effective_detector_rules': [y.detector_rule_id for y in arr.effective_detector_rules] if arr.effective_detector_rules else [], + 'enabled_rules': self.__load_cloud_guard_detector_recipe_rules(cg_client, arr.detector_recipe_id, compartment['id']), 'time_created': str(arr.time_created), 'time_updated': str(arr.time_updated), 'lifecycle_state': str(arr.lifecycle_state), @@ -19175,6 +19444,7 @@ def __load_security_cloud_guard(self, cg_client, compartments): 'time_created': str(arr.time_created), 'time_updated': str(arr.time_updated), 'effective_responder_rules': [y.responder_rule_id for y in arr.effective_responder_rules] if arr.effective_responder_rules else [], + 'enabled_rules': self.__load_cloud_guard_responder_recipe_rules(cg_client, arr.responder_recipe_id, compartment['id']), } for arr in itemfull.target_responder_recipes] if itemfull.target_responder_recipes else [] except oci.exceptions.ServiceError as e: @@ -19284,7 +19554,6 @@ def __load_security_kms_keys(self, search_client): 'compartment_id': self.get_value(item.compartment_id), 'name': self.get_value(item.display_name), 'time_created': self.get_date(item.time_created), - 'freeform_tags': [] if item.freeform_tags is None else item.freeform_tags, 'compartment_name': str(compartment['name']), 'compartment_path': str(compartment['path']), 'region_name': str(self.config['region']), @@ -19292,11 +19561,29 @@ def __load_security_kms_keys(self, search_client): 'current_key_version': self.get_value(ad['currentKeyVersion']) if "currentKeyVersion" in ad else "", 'vault_id': self.get_value(ad['vaultId']) if "vaultId" in ad else "", 'key_algorithm': self.get_value(ad['keyShape']['algorithm']) if "vaultId" in ad and "algorithm" in ad['keyShape'] else "", - 'key_length': self.get_value(ad['keyShape']['length']) if "vaultId" in ad and "length" in ad['keyShape'] else "" + 'key_length': self.get_value(ad['keyShape']['length']) if "vaultId" in ad and "length" in ad['keyShape'] else "", + 'freeform_tags': [] if item.freeform_tags is None else item.freeform_tags, + # Added in case additional data requested + 'vault_name': "", + 'vault_management_endpoint': "", + 'defined_tags': [], + 'key_versions': [], + 'protection_mode': "", + 'lifecycle_state': "", + 'time_of_deletion': "", + 'restored_from_key_id': "", + 'replica_details': {}, + 'is_primary': "", + 'is_auto_rotation_enabled': "", + 'auto_key_rotation_details': {}, + 'external_key_reference_details': {} } cnt += 1 data.append(val) + if self.flags.read_kms_addiontal_keys_attributes: + self.__load_security_kms_keys_additional_data(data) + self.__load_print_thread_cnt(header, cnt, start_time, errstr) return data @@ -19310,6 +19597,93 @@ def __load_security_kms_keys(self, search_client): self.__print_error(e) return data + ########################################################################## + # __load_security_kms_keys_additional_data + ########################################################################## + def __load_security_kms_keys_additional_data(self, kms_keys): + + try: + if not kms_keys: + return + + kms_vault_client = self.__create_client(oci.key_management.KmsVaultClient, key=self.EXCLUDE_KMS) + if not kms_vault_client: + return + + kms_keys.sort(key=lambda key: key['vault_id']) + vault_id = None + vault_name = "" + kms_management_client = None + vault_management_endpoint = "" + + for kms_key in kms_keys: + try: + # Check if vault_id is present + if not kms_key['vault_id']: + continue + + # check if vault_id is different from previous key, if so create new client for that vault + if kms_key['vault_id'] != vault_id: + vault = kms_vault_client.get_vault( + kms_key['vault_id'], + retry_strategy=oci.retry.DEFAULT_RETRY_STRATEGY + ).data + vault_name = self.get_value(vault.display_name) + vault_management_endpoint = self.get_value(vault.management_endpoint) + kms_management_client = self.__create_client( + oci.key_management.KmsManagementClient, + service_endpoint=vault_management_endpoint, + key=self.EXCLUDE_KMS + ) + vault_id = kms_key['vault_id'] + + # if no management client, skip this key + if not kms_management_client: + continue + + # query the key details and versions + key = kms_management_client.get_key( + kms_key['id'], + retry_strategy=oci.retry.DEFAULT_RETRY_STRATEGY + ).data + key_versions = oci.pagination.list_call_get_all_results( + kms_management_client.list_key_versions, + kms_key['id'], + retry_strategy=oci.retry.DEFAULT_RETRY_STRATEGY + ).data + + kms_key['vault_name'] = vault_name + kms_key['vault_management_endpoint'] = vault_management_endpoint + kms_key['freeform_tags'] = [] if key.freeform_tags is None else key.freeform_tags + kms_key['defined_tags'] = [] if key.defined_tags is None else key.defined_tags + kms_key['key_versions'] = [oci.util.to_dict(version) for version in key_versions] + kms_key['protection_mode'] = self.get_value(key.protection_mode) + kms_key['lifecycle_state'] = self.get_value(key.lifecycle_state) + kms_key['time_created'] = self.get_date(key.time_created) + kms_key['time_of_deletion'] = self.get_date(key.time_of_deletion) + kms_key['restored_from_key_id'] = self.get_value(key.restored_from_key_id) + kms_key['replica_details'] = {} if key.replica_details is None else oci.util.to_dict(key.replica_details) + kms_key['is_primary'] = self.get_value(key.is_primary) + kms_key['is_auto_rotation_enabled'] = self.get_value(key.is_auto_rotation_enabled) + kms_key['auto_key_rotation_details'] = {} if key.auto_key_rotation_details is None else oci.util.to_dict(key.auto_key_rotation_details) + kms_key['external_key_reference_details'] = {} if key.external_key_reference_details is None else oci.util.to_dict(key.external_key_reference_details) + + # if failed to get key details, skip this key and continue with next + except oci.exceptions.RequestException as e: + if not self.__check_request_error(e): + self.__load_print_error(e) + except Exception as e: + self.__print_error(e) + + except oci.exceptions.RequestException as e: + if self.__check_request_error(e): + return + else: + self.__load_print_error(e) + return + except Exception as e: + self.__print_error(e) + ########################################################################## # __load_security_kms_secrets ########################################################################## @@ -20995,6 +21369,7 @@ class ShowOCIFlags(object): read_root_compartment = True read_paas_native = False read_security = False + read_kms_addiontal_keys_attributes = False read_function = False read_api = False read_limits = False diff --git a/pyproject.toml b/pyproject.toml index 05d81e88bc..b72206fe9a 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -7,7 +7,7 @@ requires = [ "setuptools==59.6.0; python_version == '3.6'", "setuptools==68.0.0; python_version == '3.7'", "setuptools==75.3.2; python_version == '3.8'", - "setuptools==78.1.1,<81; python_version >= '3.9'", + "setuptools>=78.1.1,<84; python_version >= '3.9'", "wheel" ] build-backend = "setuptools.build_meta" @@ -43,7 +43,7 @@ classifiers=[ dependencies = [ "certifi", "configparser==4.0.2 ; python_version < '3'", - "cryptography>=3.2.1,<50.0.0", + "cryptography>=3.2.1,<51.0.0", "pyOpenSSL>=17.5.0,<27.0.0", "python-dateutil>=2.5.3,<3.0.0", "pytz>=2016.10", diff --git a/requirements.txt b/requirements.txt index 9c0ac4bb3d..4a4158df90 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,7 +1,7 @@ certifi coverage==4.5.2 cryptography==42.0.8; python_full_version == '3.9.0' or python_full_version == '3.9.1' -cryptography>=3.2.1,<50.0.0; python_full_version != '3.9.0' and python_full_version != '3.9.1' +cryptography>=3.2.1,<51.0.0; python_full_version != '3.9.0' and python_full_version != '3.9.1' flake8>=3.6.0,<6 mock==2.0.0 pyOpenSSL>=17.5.0,<27.0.0 @@ -22,7 +22,7 @@ wheel<=0.39.0 setuptools==59.6.0; python_version == '3.6' setuptools==68.0.0; python_version == '3.7' setuptools==75.3.2; python_version == '3.8' -setuptools>=78.1.1,<81; python_version >= '3.9' +setuptools>=78.1.1,<84; python_version >= '3.9' circuitbreaker>=1.3.1,<2.0.0; python_version <= '3.6' circuitbreaker>=1.3.1,<3.0.0; python_version >= '3.7' urllib3==1.26.20; python_version < '3.10.0' @@ -32,4 +32,4 @@ PyJWT>=2.12.0; python_version >= '3.9' Jinja2<3.0.0; python_version == '3.6' Jinja2>=3.1.5,<4.0.0; python_version >= '3.7' crc32c==2.5; python_version == '3.6' -crc32c==2.7.1; python_version >= '3.7' \ No newline at end of file +crc32c==2.8.0; python_version >= '3.7' diff --git a/setup.py b/setup.py index aef85adbf9..6cd769ee9c 100644 --- a/setup.py +++ b/setup.py @@ -32,7 +32,7 @@ def open_relative(*path): requires = [ "certifi", "configparser==4.0.2 ; python_version < '3'", - "cryptography>=3.2.1,<50.0.0", + "cryptography>=3.2.1,<51.0.0", "pyOpenSSL>=17.5.0,<27.0.0", "python-dateutil>=2.5.3,<3.0.0", "pytz>=2016.10", @@ -82,5 +82,5 @@ def open_relative(*path): "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", ], - extras_require = extras_require + extras_require=extras_require ) diff --git a/src/oci/__init__.py b/src/oci/__init__.py index ff65e4fd63..a3dbcf22ff 100644 --- a/src/oci/__init__.py +++ b/src/oci/__init__.py @@ -19,7 +19,7 @@ else: __all__ = [ "BaseClient", "Request", "Response", "Signer", "config", "constants", "decorators", "exceptions", "regions", "wait_until", "pagination", "auth", "retry", "fips", "circuit_breaker", "developer_tool_configuration", - "access_governance_cp", "adm", "ai_data_platform", "ai_document", "ai_language", "ai_speech", "ai_vision", "analytics", "announcements_service", "api_platform", "apiaccesscontrol", "apigateway", "apm_config", "apm_control_plane", "apm_synthetics", "apm_traces", "appmgmt_control", "artifacts", "audit", "autoscaling", "bastion", "batch", "bds", "blockchain", "budget", "capacity_management", "certificates", "certificates_management", "cims", "cloud_bridge", "cloud_guard", "cloud_migrations", "cluster_placement_groups", "compute_cloud_at_customer", "compute_instance_agent", "container_engine", "container_instances", "container_registry", "core", "costad", "dashboard_service", "data_catalog", "data_flow", "data_integration", "data_labeling_service", "data_labeling_service_dataplane", "data_safe", "data_science", "database", "database_management", "database_migration", "database_tools", "database_tools_runtime", "datacc", "dblm", "dbmulticloud", "delegate_access_control", "demand_signal", "desktops", "devops", "dif", "disaster_recovery", "distributed_database", "dns", "em_warehouse", "email", "email_data_plane", "events", "file_storage", "fleet_apps_management", "fleet_software_update", "functions", "fusion_apps", "gdp", "generative_ai", "generative_ai_agent", "generative_ai_agent_runtime", "generative_ai_data", "generative_ai_inference", "generic_artifacts_content", "golden_gate", "governance_rules_control_plane", "healthchecks", "identity", "identity_data_plane", "identity_domains", "integration", "iot", "jms", "jms_java_downloads", "jms_utils", "key_management", "license_manager", "limits", "limits_increase", "load_balancer", "lockbox", "log_analytics", "logging", "loggingingestion", "loggingsearch", "lustre_file_storage", "managed_kafka", "management_agent", "management_dashboard", "marketplace", "marketplace_private_offer", "marketplace_publisher", "media_services", "mngdmac", "model_deployment", "monitoring", "multicloud", "mysql", "network_firewall", "network_load_balancer", "nosql", "object_storage", "oce", "oci_control_center", "ocvp", "oda", "onesubscription", "ons", "opa", "opensearch", "operator_access_control", "opsi", "optimizer", "os_management_hub", "osp_gateway", "osub_billing_schedule", "osub_organization_subscription", "osub_subscription", "osub_usage", "psa", "psql", "queue", "recovery", "redis", "resource_analytics", "resource_manager", "resource_scheduler", "resource_search", "rover", "sch", "secrets", "security_attribute", "self", "service_catalog", "service_manager_proxy", "stack_monitoring", "streaming", "tenant_manager_control_plane", "threat_intelligence", "usage", "usage_api", "vault", "vbs_inst", "visual_builder", "vn_monitoring", "vulnerability_scanning", "waa", "waas", "waf", "wlms", "work_requests", "zpr" + "access_governance_cp", "adm", "ai_data_platform", "ai_document", "ai_language", "ai_speech", "ai_vision", "analytics", "announcements_service", "api_platform", "apiaccesscontrol", "apigateway", "apm_config", "apm_control_plane", "apm_synthetics", "apm_traces", "appmgmt_control", "artifacts", "audit", "autoscaling", "bastion", "batch", "bds", "blockchain", "budget", "capacity_management", "certificates", "certificates_management", "cims", "cloud_bridge", "cloud_guard", "cloud_migrations", "cluster_placement_groups", "compute_cloud_at_customer", "compute_instance_agent", "container_engine", "container_instances", "container_registry", "core", "costad", "dashboard_service", "data_catalog", "data_flow", "data_integration", "data_labeling_service", "data_labeling_service_dataplane", "data_safe", "data_science", "database", "database_management", "database_migration", "database_tools", "database_tools_runtime", "datacc", "dblm", "dbmulticloud", "ddfs", "delegate_access_control", "demand_signal", "desktops", "devops", "dif", "disaster_recovery", "distributed_database", "distributed_database_v26", "dns", "em_warehouse", "email", "email_data_plane", "events", "file_storage", "fleet_apps_management", "fleet_software_update", "functions", "fusion_apps", "gdp", "generative_ai", "generative_ai_agent", "generative_ai_agent_runtime", "generative_ai_data", "generative_ai_inference", "generic_artifacts_content", "golden_gate", "governance_rules_control_plane", "healthchecks", "identity", "identity_data_plane", "identity_domains", "integration", "iot", "jms", "jms_java_downloads", "jms_utils", "key_management", "license_manager", "limits", "limits_increase", "load_balancer", "lockbox", "log_analytics", "logging", "loggingingestion", "loggingsearch", "lustre_file_storage", "managed_kafka", "management_agent", "management_dashboard", "marketplace", "marketplace_private_offer", "marketplace_publisher", "media_services", "mngdmac", "model_deployment", "monitoring", "multicloud", "mysql", "network_firewall", "network_load_balancer", "nosql", "object_storage", "oce", "oci_control_center", "ocvp", "oda", "onesubscription", "ons", "opa", "opensearch", "operator_access_control", "opsi", "optimizer", "os_management_hub", "osp_gateway", "osub_billing_schedule", "osub_organization_subscription", "osub_subscription", "osub_usage", "psa", "psql", "queue", "recovery", "redis", "resource_analytics", "resource_manager", "resource_scheduler", "resource_search", "rover", "sch", "secrets", "security_attribute", "self", "service_catalog", "service_manager_proxy", "stack_monitoring", "streaming", "tenant_manager_control_plane", "threat_intelligence", "usage", "usage_api", "vault", "vbs_inst", "visual_builder", "vn_monitoring", "vulnerability_scanning", "waa", "waas", "waf", "wlms", "work_requests", "zpr" ] if sys.version_info >= (3, 7) and os.getenv("OCI_PYTHON_SDK_LAZY_IMPORTS_DISABLED", "False").lower() != "true": def __getattr__(x): @@ -30,4 +30,4 @@ def __getattr__(x): return importlib.import_module(__name__ + "." + x) raise AttributeError("module " + __name__ + " has no attribute" + x) else: - from . import access_governance_cp, adm, ai_data_platform, ai_document, ai_language, ai_speech, ai_vision, analytics, announcements_service, api_platform, apiaccesscontrol, apigateway, apm_config, apm_control_plane, apm_synthetics, apm_traces, appmgmt_control, artifacts, audit, autoscaling, bastion, batch, bds, blockchain, budget, capacity_management, certificates, certificates_management, cims, cloud_bridge, cloud_guard, cloud_migrations, cluster_placement_groups, compute_cloud_at_customer, compute_instance_agent, container_engine, container_instances, container_registry, core, costad, dashboard_service, data_catalog, data_flow, data_integration, data_labeling_service, data_labeling_service_dataplane, data_safe, data_science, database, database_management, database_migration, database_tools, database_tools_runtime, datacc, dblm, dbmulticloud, delegate_access_control, demand_signal, desktops, devops, dif, disaster_recovery, distributed_database, dns, em_warehouse, email, email_data_plane, events, file_storage, fleet_apps_management, fleet_software_update, functions, fusion_apps, gdp, generative_ai, generative_ai_agent, generative_ai_agent_runtime, generative_ai_data, generative_ai_inference, generic_artifacts_content, golden_gate, governance_rules_control_plane, healthchecks, identity, identity_data_plane, identity_domains, integration, iot, jms, jms_java_downloads, jms_utils, key_management, license_manager, limits, limits_increase, load_balancer, lockbox, log_analytics, logging, loggingingestion, loggingsearch, lustre_file_storage, managed_kafka, management_agent, management_dashboard, marketplace, marketplace_private_offer, marketplace_publisher, media_services, mngdmac, model_deployment, monitoring, multicloud, mysql, network_firewall, network_load_balancer, nosql, object_storage, oce, oci_control_center, ocvp, oda, onesubscription, ons, opa, opensearch, operator_access_control, opsi, optimizer, os_management_hub, osp_gateway, osub_billing_schedule, osub_organization_subscription, osub_subscription, osub_usage, psa, psql, queue, recovery, redis, resource_analytics, resource_manager, resource_scheduler, resource_search, rover, sch, secrets, security_attribute, self, service_catalog, service_manager_proxy, stack_monitoring, streaming, tenant_manager_control_plane, threat_intelligence, usage, usage_api, vault, vbs_inst, visual_builder, vn_monitoring, vulnerability_scanning, waa, waas, waf, wlms, work_requests, zpr + from . import access_governance_cp, adm, ai_data_platform, ai_document, ai_language, ai_speech, ai_vision, analytics, announcements_service, api_platform, apiaccesscontrol, apigateway, apm_config, apm_control_plane, apm_synthetics, apm_traces, appmgmt_control, artifacts, audit, autoscaling, bastion, batch, bds, blockchain, budget, capacity_management, certificates, certificates_management, cims, cloud_bridge, cloud_guard, cloud_migrations, cluster_placement_groups, compute_cloud_at_customer, compute_instance_agent, container_engine, container_instances, container_registry, core, costad, dashboard_service, data_catalog, data_flow, data_integration, data_labeling_service, data_labeling_service_dataplane, data_safe, data_science, database, database_management, database_migration, database_tools, database_tools_runtime, datacc, dblm, dbmulticloud, ddfs, delegate_access_control, demand_signal, desktops, devops, dif, disaster_recovery, distributed_database, distributed_database_v26, dns, em_warehouse, email, email_data_plane, events, file_storage, fleet_apps_management, fleet_software_update, functions, fusion_apps, gdp, generative_ai, generative_ai_agent, generative_ai_agent_runtime, generative_ai_data, generative_ai_inference, generic_artifacts_content, golden_gate, governance_rules_control_plane, healthchecks, identity, identity_data_plane, identity_domains, integration, iot, jms, jms_java_downloads, jms_utils, key_management, license_manager, limits, limits_increase, load_balancer, lockbox, log_analytics, logging, loggingingestion, loggingsearch, lustre_file_storage, managed_kafka, management_agent, management_dashboard, marketplace, marketplace_private_offer, marketplace_publisher, media_services, mngdmac, model_deployment, monitoring, multicloud, mysql, network_firewall, network_load_balancer, nosql, object_storage, oce, oci_control_center, ocvp, oda, onesubscription, ons, opa, opensearch, operator_access_control, opsi, optimizer, os_management_hub, osp_gateway, osub_billing_schedule, osub_organization_subscription, osub_subscription, osub_usage, psa, psql, queue, recovery, redis, resource_analytics, resource_manager, resource_scheduler, resource_search, rover, sch, secrets, security_attribute, self, service_catalog, service_manager_proxy, stack_monitoring, streaming, tenant_manager_control_plane, threat_intelligence, usage, usage_api, vault, vbs_inst, visual_builder, vn_monitoring, vulnerability_scanning, waa, waas, waf, wlms, work_requests, zpr diff --git a/src/oci/base_client.py b/src/oci/base_client.py index c23c9afbbe..23b117c334 100644 --- a/src/oci/base_client.py +++ b/src/oci/base_client.py @@ -359,17 +359,33 @@ def __init__(self, *args, **kwargs): class OCIHTTPAdapter(requests.adapters.HTTPAdapter): - """HTTP adapter that confines OCI Expect-header support to one session.""" - - # UploadManager uses this marker to preserve OCI transport behavior when it - # replaces an adapter only to increase connection pool size. - uses_oci_connection_pool = True + """HTTPS transport adapter for configuring certain OCI-specific request behavior. + This adapter is mounted for all HTTPS requests made by ``BaseClient``. It preserves OCI-specific transport behavior + for: + - the Expect-header flow + - applying the underscore-hostname workaround needed for urllib3 2.x + hostname verification. + """ + + # UploadManager uses this marker to preserve OCI transport adapter behavior + # when it replaces an adapter only to increase connection pool size. + preserves_oci_https_adapter_behavior = True def init_poolmanager(self, connections, maxsize, block=requests.adapters.DEFAULT_POOLBLOCK, **pool_kwargs): - """Initialize a per-adapter pool manager with OCI HTTPS support.""" + """Initialize a per-adapter pool manager.""" self._pool_connections = connections self._pool_maxsize = maxsize self._pool_block = block + self._use_oci_connection_pool = enable_expect_header # as of now we only need to use a custom pool if the enable expect header is set + + if not self._use_oci_connection_pool: + self.poolmanager = urllib3.PoolManager( + num_pools=connections, + maxsize=maxsize, + block=block, + **pool_kwargs + ) + return self.poolmanager = OCIPoolManager( num_pools=connections, @@ -380,6 +396,9 @@ def init_poolmanager(self, connections, maxsize, block=requests.adapters.DEFAULT def proxy_manager_for(self, proxy, **proxy_kwargs): """Return a scoped OCI proxy manager for regular HTTP/HTTPS proxies.""" + if not getattr(self, '_use_oci_connection_pool', enable_expect_header): + return super(OCIHTTPAdapter, self).proxy_manager_for(proxy, **proxy_kwargs) + if proxy in self.proxy_manager: return self.proxy_manager[proxy] @@ -397,6 +416,35 @@ def proxy_manager_for(self, proxy, **proxy_kwargs): self.proxy_manager[proxy] = manager return manager + def cert_verify(self, conn, url, verify, cert): + """Verify a SSL certificate while preserving certificate verification while using urllib3 hostname matching for + underscore-containing hosts. + + urllib3 2.x relies on Python/OpenSSL certificate verification by default: + https://urllib3.readthedocs.io/en/stable/v2-migration-guide.html#certificate-verification-via-sslcontext + OpenSSL rejects some underscore-containing host labels during hostname verification. Setting ``assert_hostname`` + for these hosts makes urllib3 perform hostname matching against the request host while certificate verification + remains enabled. + References: + https://urllib3.readthedocs.io/en/stable/advanced-usage.html#verifying-tls-against-a-different-host + https://requests.readthedocs.io/en/latest/api/#requests.adapters.HTTPAdapter.cert_verify + """ + super(OCIHTTPAdapter, self).cert_verify(conn, url, verify, cert) + if not verify: + return + + # Respect explicit caller behavior if already configured. + if getattr(conn, 'assert_hostname', None) is not None: + return + + try: + parsed_host = urllib3.util.parse_url(url).host + except Exception: + return + + if parsed_host and "_" in parsed_host: + conn.assert_hostname = parsed_host + class BaseClient(object): primitive_type_map = { @@ -466,7 +514,7 @@ def __init__(self, service, config, signer, type_mapping, **kwargs): self.complex_type_mappings = type_mapping self.type_mappings = merge_type_mappings(self.primitive_type_map, type_mapping) self.session = requests.Session() - self._configure_session_for_expect_header() + self._configure_http_adapter() # If the user doesn't specify timeout explicitly we would use default timeout. self.timeout = kwargs.get('timeout') if 'timeout' in kwargs else (DEFAULT_CONNECTION_TIMEOUT, DEFAULT_READ_TIMEOUT) @@ -503,14 +551,18 @@ def __init__(self, service, config, signer, type_mapping, **kwargs): self.request = circuit_breaker(self.request) self.logger.debug('Endpoint: {}'.format(self._endpoint)) - def _configure_session_for_expect_header(self): - """Mount OCI's scoped HTTPS adapter when Expect-header support is enabled. + def _configure_http_adapter(self): + """Mount OCI's HTTPS transport adapter for all client HTTPS requests. - This keeps OCIConnectionPool limited to this BaseClient session instead - of replacing urllib3's process-wide HTTPS pool class. + Previously an adapter was added only to those requests that had enable expect header set to True. This adapter + is no longer limited to the Expect-header flow. It is now mounted for every HTTPS request so one transport path + can handle: + - OCI-specific connection-pool behavior when Expect-header support is enabled + - request-level hostname handling for underscore-containing hosts under urllib3 2.x. + Also since a single session can mount only one adapter, modifying any flow would require updates to this single + transport adapter. """ - if enable_expect_header: - self.session.mount('https://', OCIHTTPAdapter()) + self.session.mount('https://', OCIHTTPAdapter()) def handle_service_endpoint_template(self, region_id, service_endpoint_template, service_endpoint_template_per_realm): should_enable_realm_template = self.should_allow_template_per_realm() diff --git a/src/oci/core/models/__init__.py b/src/oci/core/models/__init__.py index 0abeb00f71..7d7d720835 100644 --- a/src/oci/core/models/__init__.py +++ b/src/oci/core/models/__init__.py @@ -529,6 +529,7 @@ from .public_ip_pool import PublicIpPool from .public_ip_pool_collection import PublicIpPoolCollection from .public_ip_pool_summary import PublicIpPoolSummary +from .quick_recycle_settings import QuickRecycleSettings from .reboot_migrate_action_details import RebootMigrateActionDetails from .recycle_details import RecycleDetails from .remote_peering_connection import RemotePeeringConnection @@ -1243,6 +1244,7 @@ "PublicIpPool": PublicIpPool, "PublicIpPoolCollection": PublicIpPoolCollection, "PublicIpPoolSummary": PublicIpPoolSummary, + "QuickRecycleSettings": QuickRecycleSettings, "RebootMigrateActionDetails": RebootMigrateActionDetails, "RecycleDetails": RecycleDetails, "RemotePeeringConnection": RemotePeeringConnection, diff --git a/src/oci/core/models/capture_filter.py b/src/oci/core/models/capture_filter.py index d2813a9fc0..1e27aa50ad 100644 --- a/src/oci/core/models/capture_filter.py +++ b/src/oci/core/models/capture_filter.py @@ -84,6 +84,10 @@ def __init__(self, **kwargs): Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type filter_type: str + :param system_tags: + The value to assign to the system_tags property of this CaptureFilter. + :type system_tags: dict(str, dict(str, object)) + :param time_created: The value to assign to the time_created property of this CaptureFilter. :type time_created: datetime @@ -105,6 +109,7 @@ def __init__(self, **kwargs): 'id': 'str', 'lifecycle_state': 'str', 'filter_type': 'str', + 'system_tags': 'dict(str, dict(str, object))', 'time_created': 'datetime', 'vtap_capture_filter_rules': 'list[VtapCaptureFilterRuleDetails]', 'flow_log_capture_filter_rules': 'list[FlowLogCaptureFilterRuleDetails]' @@ -117,6 +122,7 @@ def __init__(self, **kwargs): 'id': 'id', 'lifecycle_state': 'lifecycleState', 'filter_type': 'filterType', + 'system_tags': 'systemTags', 'time_created': 'timeCreated', 'vtap_capture_filter_rules': 'vtapCaptureFilterRules', 'flow_log_capture_filter_rules': 'flowLogCaptureFilterRules' @@ -128,6 +134,7 @@ def __init__(self, **kwargs): self._id = None self._lifecycle_state = None self._filter_type = None + self._system_tags = None self._time_created = None self._vtap_capture_filter_rules = None self._flow_log_capture_filter_rules = None @@ -342,6 +349,32 @@ def filter_type(self, filter_type): filter_type = 'UNKNOWN_ENUM_VALUE' self._filter_type = filter_type + @property + def system_tags(self): + """ + Gets the system_tags of this CaptureFilter. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :return: The system_tags of this CaptureFilter. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this CaptureFilter. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :param system_tags: The system_tags of this CaptureFilter. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + @property def time_created(self): """ diff --git a/src/oci/core/models/dhcp_options.py b/src/oci/core/models/dhcp_options.py index b202d3a043..4ae40ebfd7 100644 --- a/src/oci/core/models/dhcp_options.py +++ b/src/oci/core/models/dhcp_options.py @@ -96,6 +96,10 @@ def __init__(self, **kwargs): The value to assign to the options property of this DhcpOptions. :type options: list[oci.core.models.DhcpOption] + :param system_tags: + The value to assign to the system_tags property of this DhcpOptions. + :type system_tags: dict(str, dict(str, object)) + :param time_created: The value to assign to the time_created property of this DhcpOptions. :type time_created: datetime @@ -119,6 +123,7 @@ def __init__(self, **kwargs): 'id': 'str', 'lifecycle_state': 'str', 'options': 'list[DhcpOption]', + 'system_tags': 'dict(str, dict(str, object))', 'time_created': 'datetime', 'vcn_id': 'str', 'domain_name_type': 'str' @@ -131,6 +136,7 @@ def __init__(self, **kwargs): 'id': 'id', 'lifecycle_state': 'lifecycleState', 'options': 'options', + 'system_tags': 'systemTags', 'time_created': 'timeCreated', 'vcn_id': 'vcnId', 'domain_name_type': 'domainNameType' @@ -142,6 +148,7 @@ def __init__(self, **kwargs): self._id = None self._lifecycle_state = None self._options = None + self._system_tags = None self._time_created = None self._vcn_id = None self._domain_name_type = None @@ -350,6 +357,32 @@ def options(self, options): """ self._options = options + @property + def system_tags(self): + """ + Gets the system_tags of this DhcpOptions. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :return: The system_tags of this DhcpOptions. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this DhcpOptions. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :param system_tags: The system_tags of this DhcpOptions. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + @property def time_created(self): """ diff --git a/src/oci/core/models/host_group_configuration.py b/src/oci/core/models/host_group_configuration.py index b394d6a77f..47f8fdf405 100644 --- a/src/oci/core/models/host_group_configuration.py +++ b/src/oci/core/models/host_group_configuration.py @@ -50,6 +50,10 @@ def __init__(self, **kwargs): Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type recycle_level: str + :param quick_recycle_settings: + The value to assign to the quick_recycle_settings property of this HostGroupConfiguration. + :type quick_recycle_settings: oci.core.models.QuickRecycleSettings + :param state: The value to assign to the state property of this HostGroupConfiguration. Allowed values for this property are: "VALID", "INVALID", 'UNKNOWN_ENUM_VALUE'. @@ -61,17 +65,20 @@ def __init__(self, **kwargs): 'target': 'str', 'firmware_bundle_id': 'str', 'recycle_level': 'str', + 'quick_recycle_settings': 'QuickRecycleSettings', 'state': 'str' } self.attribute_map = { 'target': 'target', 'firmware_bundle_id': 'firmwareBundleId', 'recycle_level': 'recycleLevel', + 'quick_recycle_settings': 'quickRecycleSettings', 'state': 'state' } self._target = None self._firmware_bundle_id = None self._recycle_level = None + self._quick_recycle_settings = None self._state = None @property @@ -156,6 +163,26 @@ def recycle_level(self, recycle_level): recycle_level = 'UNKNOWN_ENUM_VALUE' self._recycle_level = recycle_level + @property + def quick_recycle_settings(self): + """ + Gets the quick_recycle_settings of this HostGroupConfiguration. + + :return: The quick_recycle_settings of this HostGroupConfiguration. + :rtype: oci.core.models.QuickRecycleSettings + """ + return self._quick_recycle_settings + + @quick_recycle_settings.setter + def quick_recycle_settings(self, quick_recycle_settings): + """ + Sets the quick_recycle_settings of this HostGroupConfiguration. + + :param quick_recycle_settings: The quick_recycle_settings of this HostGroupConfiguration. + :type: oci.core.models.QuickRecycleSettings + """ + self._quick_recycle_settings = quick_recycle_settings + @property def state(self): """ diff --git a/src/oci/core/models/internet_gateway.py b/src/oci/core/models/internet_gateway.py index 922144a7b5..dbc6d87ea9 100644 --- a/src/oci/core/models/internet_gateway.py +++ b/src/oci/core/models/internet_gateway.py @@ -75,6 +75,10 @@ def __init__(self, **kwargs): Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str + :param system_tags: + The value to assign to the system_tags property of this InternetGateway. + :type system_tags: dict(str, dict(str, object)) + :param time_created: The value to assign to the time_created property of this InternetGateway. :type time_created: datetime @@ -96,6 +100,7 @@ def __init__(self, **kwargs): 'id': 'str', 'is_enabled': 'bool', 'lifecycle_state': 'str', + 'system_tags': 'dict(str, dict(str, object))', 'time_created': 'datetime', 'vcn_id': 'str', 'route_table_id': 'str' @@ -108,6 +113,7 @@ def __init__(self, **kwargs): 'id': 'id', 'is_enabled': 'isEnabled', 'lifecycle_state': 'lifecycleState', + 'system_tags': 'systemTags', 'time_created': 'timeCreated', 'vcn_id': 'vcnId', 'route_table_id': 'routeTableId' @@ -119,6 +125,7 @@ def __init__(self, **kwargs): self._id = None self._is_enabled = None self._lifecycle_state = None + self._system_tags = None self._time_created = None self._vcn_id = None self._route_table_id = None @@ -329,6 +336,32 @@ def lifecycle_state(self, lifecycle_state): lifecycle_state = 'UNKNOWN_ENUM_VALUE' self._lifecycle_state = lifecycle_state + @property + def system_tags(self): + """ + Gets the system_tags of this InternetGateway. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :return: The system_tags of this InternetGateway. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this InternetGateway. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :param system_tags: The system_tags of this InternetGateway. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + @property def time_created(self): """ diff --git a/src/oci/core/models/ipv6.py b/src/oci/core/models/ipv6.py index 810fe698b2..d8e25f8709 100644 --- a/src/oci/core/models/ipv6.py +++ b/src/oci/core/models/ipv6.py @@ -99,6 +99,10 @@ def __init__(self, **kwargs): The value to assign to the subnet_id property of this Ipv6. :type subnet_id: str + :param system_tags: + The value to assign to the system_tags property of this Ipv6. + :type system_tags: dict(str, dict(str, object)) + :param time_created: The value to assign to the time_created property of this Ipv6. :type time_created: datetime @@ -138,6 +142,7 @@ def __init__(self, **kwargs): 'cidr_prefix_length': 'int', 'lifecycle_state': 'str', 'subnet_id': 'str', + 'system_tags': 'dict(str, dict(str, object))', 'time_created': 'datetime', 'vnic_id': 'str', 'ip_state': 'str', @@ -155,6 +160,7 @@ def __init__(self, **kwargs): 'cidr_prefix_length': 'cidrPrefixLength', 'lifecycle_state': 'lifecycleState', 'subnet_id': 'subnetId', + 'system_tags': 'systemTags', 'time_created': 'timeCreated', 'vnic_id': 'vnicId', 'ip_state': 'ipState', @@ -171,6 +177,7 @@ def __init__(self, **kwargs): self._cidr_prefix_length = None self._lifecycle_state = None self._subnet_id = None + self._system_tags = None self._time_created = None self._vnic_id = None self._ip_state = None @@ -442,6 +449,32 @@ def subnet_id(self, subnet_id): """ self._subnet_id = subnet_id + @property + def system_tags(self): + """ + Gets the system_tags of this Ipv6. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :return: The system_tags of this Ipv6. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this Ipv6. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :param system_tags: The system_tags of this Ipv6. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + @property def time_created(self): """ diff --git a/src/oci/core/models/network_security_group.py b/src/oci/core/models/network_security_group.py index 20858feb3d..46a4113ce6 100644 --- a/src/oci/core/models/network_security_group.py +++ b/src/oci/core/models/network_security_group.py @@ -102,6 +102,10 @@ def __init__(self, **kwargs): Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str + :param system_tags: + The value to assign to the system_tags property of this NetworkSecurityGroup. + :type system_tags: dict(str, dict(str, object)) + :param time_created: The value to assign to the time_created property of this NetworkSecurityGroup. :type time_created: datetime @@ -118,6 +122,7 @@ def __init__(self, **kwargs): 'freeform_tags': 'dict(str, str)', 'id': 'str', 'lifecycle_state': 'str', + 'system_tags': 'dict(str, dict(str, object))', 'time_created': 'datetime', 'vcn_id': 'str' } @@ -128,6 +133,7 @@ def __init__(self, **kwargs): 'freeform_tags': 'freeformTags', 'id': 'id', 'lifecycle_state': 'lifecycleState', + 'system_tags': 'systemTags', 'time_created': 'timeCreated', 'vcn_id': 'vcnId' } @@ -137,6 +143,7 @@ def __init__(self, **kwargs): self._freeform_tags = None self._id = None self._lifecycle_state = None + self._system_tags = None self._time_created = None self._vcn_id = None @@ -320,6 +327,32 @@ def lifecycle_state(self, lifecycle_state): lifecycle_state = 'UNKNOWN_ENUM_VALUE' self._lifecycle_state = lifecycle_state + @property + def system_tags(self): + """ + Gets the system_tags of this NetworkSecurityGroup. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :return: The system_tags of this NetworkSecurityGroup. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this NetworkSecurityGroup. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :param system_tags: The system_tags of this NetworkSecurityGroup. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + @property def time_created(self): """ diff --git a/src/oci/core/models/quick_recycle_settings.py b/src/oci/core/models/quick_recycle_settings.py new file mode 100644 index 0000000000..f5647daeda --- /dev/null +++ b/src/oci/core/models/quick_recycle_settings.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class QuickRecycleSettings(object): + """ + Additional quick recycle settings. + """ + + def __init__(self, **kwargs): + """ + Initializes a new QuickRecycleSettings object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param nvme_wipe: + The value to assign to the nvme_wipe property of this QuickRecycleSettings. + :type nvme_wipe: bool + + """ + self.swagger_types = { + 'nvme_wipe': 'bool' + } + self.attribute_map = { + 'nvme_wipe': 'nvmeWipe' + } + self._nvme_wipe = None + + @property + def nvme_wipe(self): + """ + Gets the nvme_wipe of this QuickRecycleSettings. + Whether to wipe NVMe data during quick recycle. + + + :return: The nvme_wipe of this QuickRecycleSettings. + :rtype: bool + """ + return self._nvme_wipe + + @nvme_wipe.setter + def nvme_wipe(self, nvme_wipe): + """ + Sets the nvme_wipe of this QuickRecycleSettings. + Whether to wipe NVMe data during quick recycle. + + + :param nvme_wipe: The nvme_wipe of this QuickRecycleSettings. + :type: bool + """ + self._nvme_wipe = nvme_wipe + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/core/models/route_table.py b/src/oci/core/models/route_table.py index be5397da7e..3e2a02355f 100644 --- a/src/oci/core/models/route_table.py +++ b/src/oci/core/models/route_table.py @@ -75,6 +75,10 @@ def __init__(self, **kwargs): The value to assign to the route_rules property of this RouteTable. :type route_rules: list[oci.core.models.RouteRule] + :param system_tags: + The value to assign to the system_tags property of this RouteTable. + :type system_tags: dict(str, dict(str, object)) + :param time_created: The value to assign to the time_created property of this RouteTable. :type time_created: datetime @@ -92,6 +96,7 @@ def __init__(self, **kwargs): 'id': 'str', 'lifecycle_state': 'str', 'route_rules': 'list[RouteRule]', + 'system_tags': 'dict(str, dict(str, object))', 'time_created': 'datetime', 'vcn_id': 'str' } @@ -103,6 +108,7 @@ def __init__(self, **kwargs): 'id': 'id', 'lifecycle_state': 'lifecycleState', 'route_rules': 'routeRules', + 'system_tags': 'systemTags', 'time_created': 'timeCreated', 'vcn_id': 'vcnId' } @@ -113,6 +119,7 @@ def __init__(self, **kwargs): self._id = None self._lifecycle_state = None self._route_rules = None + self._system_tags = None self._time_created = None self._vcn_id = None @@ -320,6 +327,32 @@ def route_rules(self, route_rules): """ self._route_rules = route_rules + @property + def system_tags(self): + """ + Gets the system_tags of this RouteTable. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :return: The system_tags of this RouteTable. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this RouteTable. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :param system_tags: The system_tags of this RouteTable. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + @property def time_created(self): """ diff --git a/src/oci/core/models/security_list.py b/src/oci/core/models/security_list.py index 6100926881..55b869f27d 100644 --- a/src/oci/core/models/security_list.py +++ b/src/oci/core/models/security_list.py @@ -89,6 +89,10 @@ def __init__(self, **kwargs): Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state: str + :param system_tags: + The value to assign to the system_tags property of this SecurityList. + :type system_tags: dict(str, dict(str, object)) + :param time_created: The value to assign to the time_created property of this SecurityList. :type time_created: datetime @@ -107,6 +111,7 @@ def __init__(self, **kwargs): 'id': 'str', 'ingress_security_rules': 'list[IngressSecurityRule]', 'lifecycle_state': 'str', + 'system_tags': 'dict(str, dict(str, object))', 'time_created': 'datetime', 'vcn_id': 'str' } @@ -119,6 +124,7 @@ def __init__(self, **kwargs): 'id': 'id', 'ingress_security_rules': 'ingressSecurityRules', 'lifecycle_state': 'lifecycleState', + 'system_tags': 'systemTags', 'time_created': 'timeCreated', 'vcn_id': 'vcnId' } @@ -130,6 +136,7 @@ def __init__(self, **kwargs): self._id = None self._ingress_security_rules = None self._lifecycle_state = None + self._system_tags = None self._time_created = None self._vcn_id = None @@ -361,6 +368,32 @@ def lifecycle_state(self, lifecycle_state): lifecycle_state = 'UNKNOWN_ENUM_VALUE' self._lifecycle_state = lifecycle_state + @property + def system_tags(self): + """ + Gets the system_tags of this SecurityList. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :return: The system_tags of this SecurityList. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this SecurityList. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :param system_tags: The system_tags of this SecurityList. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + @property def time_created(self): """ diff --git a/src/oci/core/models/subnet.py b/src/oci/core/models/subnet.py index 880023c766..c5ed485623 100644 --- a/src/oci/core/models/subnet.py +++ b/src/oci/core/models/subnet.py @@ -130,6 +130,10 @@ def __init__(self, **kwargs): The value to assign to the subnet_domain_name property of this Subnet. :type subnet_domain_name: str + :param system_tags: + The value to assign to the system_tags property of this Subnet. + :type system_tags: dict(str, dict(str, object)) + :param time_created: The value to assign to the time_created property of this Subnet. :type time_created: datetime @@ -167,6 +171,7 @@ def __init__(self, **kwargs): 'route_table_id': 'str', 'security_list_ids': 'list[str]', 'subnet_domain_name': 'str', + 'system_tags': 'dict(str, dict(str, object))', 'time_created': 'datetime', 'vcn_id': 'str', 'virtual_router_ip': 'str', @@ -192,6 +197,7 @@ def __init__(self, **kwargs): 'route_table_id': 'routeTableId', 'security_list_ids': 'securityListIds', 'subnet_domain_name': 'subnetDomainName', + 'system_tags': 'systemTags', 'time_created': 'timeCreated', 'vcn_id': 'vcnId', 'virtual_router_ip': 'virtualRouterIp', @@ -216,6 +222,7 @@ def __init__(self, **kwargs): self._route_table_id = None self._security_list_ids = None self._subnet_domain_name = None + self._system_tags = None self._time_created = None self._vcn_id = None self._virtual_router_ip = None @@ -843,6 +850,32 @@ def subnet_domain_name(self, subnet_domain_name): """ self._subnet_domain_name = subnet_domain_name + @property + def system_tags(self): + """ + Gets the system_tags of this Subnet. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :return: The system_tags of this Subnet. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this Subnet. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :param system_tags: The system_tags of this Subnet. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + @property def time_created(self): """ diff --git a/src/oci/core/models/vcn.py b/src/oci/core/models/vcn.py index 8bd0f75511..900b945af4 100644 --- a/src/oci/core/models/vcn.py +++ b/src/oci/core/models/vcn.py @@ -100,6 +100,10 @@ def __init__(self, **kwargs): The value to assign to the security_attributes property of this Vcn. :type security_attributes: dict(str, dict(str, object)) + :param system_tags: + The value to assign to the system_tags property of this Vcn. + :type system_tags: dict(str, dict(str, object)) + :param id: The value to assign to the id property of this Vcn. :type id: str @@ -141,6 +145,7 @@ def __init__(self, **kwargs): 'dns_label': 'str', 'freeform_tags': 'dict(str, str)', 'security_attributes': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))', 'id': 'str', 'ipv6_cidr_blocks': 'list[str]', 'lifecycle_state': 'str', @@ -162,6 +167,7 @@ def __init__(self, **kwargs): 'dns_label': 'dnsLabel', 'freeform_tags': 'freeformTags', 'security_attributes': 'securityAttributes', + 'system_tags': 'systemTags', 'id': 'id', 'ipv6_cidr_blocks': 'ipv6CidrBlocks', 'lifecycle_state': 'lifecycleState', @@ -182,6 +188,7 @@ def __init__(self, **kwargs): self._dns_label = None self._freeform_tags = None self._security_attributes = None + self._system_tags = None self._id = None self._ipv6_cidr_blocks = None self._lifecycle_state = None @@ -585,6 +592,32 @@ def security_attributes(self, security_attributes): """ self._security_attributes = security_attributes + @property + def system_tags(self): + """ + Gets the system_tags of this Vcn. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :return: The system_tags of this Vcn. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this Vcn. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :param system_tags: The system_tags of this Vcn. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + @property def id(self): """ diff --git a/src/oci/core/models/vlan.py b/src/oci/core/models/vlan.py index 26997e9fd5..3362b52767 100644 --- a/src/oci/core/models/vlan.py +++ b/src/oci/core/models/vlan.py @@ -95,6 +95,10 @@ def __init__(self, **kwargs): The value to assign to the route_table_id property of this Vlan. :type route_table_id: str + :param system_tags: + The value to assign to the system_tags property of this Vlan. + :type system_tags: dict(str, dict(str, object)) + :param time_created: The value to assign to the time_created property of this Vlan. :type time_created: datetime @@ -116,6 +120,7 @@ def __init__(self, **kwargs): 'nsg_ids': 'list[str]', 'vlan_tag': 'int', 'route_table_id': 'str', + 'system_tags': 'dict(str, dict(str, object))', 'time_created': 'datetime', 'vcn_id': 'str' } @@ -131,6 +136,7 @@ def __init__(self, **kwargs): 'nsg_ids': 'nsgIds', 'vlan_tag': 'vlanTag', 'route_table_id': 'routeTableId', + 'system_tags': 'systemTags', 'time_created': 'timeCreated', 'vcn_id': 'vcnId' } @@ -145,6 +151,7 @@ def __init__(self, **kwargs): self._nsg_ids = None self._vlan_tag = None self._route_table_id = None + self._system_tags = None self._time_created = None self._vcn_id = None @@ -474,6 +481,32 @@ def route_table_id(self, route_table_id): """ self._route_table_id = route_table_id + @property + def system_tags(self): + """ + Gets the system_tags of this Vlan. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :return: The system_tags of this Vlan. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this Vlan. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :param system_tags: The system_tags of this Vlan. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + @property def time_created(self): """ diff --git a/src/oci/core/models/vnic.py b/src/oci/core/models/vnic.py index 6f71494540..41c4c7a720 100644 --- a/src/oci/core/models/vnic.py +++ b/src/oci/core/models/vnic.py @@ -130,6 +130,10 @@ def __init__(self, **kwargs): The value to assign to the subnet_id property of this Vnic. :type subnet_id: str + :param system_tags: + The value to assign to the system_tags property of this Vnic. + :type system_tags: dict(str, dict(str, object)) + :param time_created: The value to assign to the time_created property of this Vnic. :type time_created: datetime @@ -161,6 +165,7 @@ def __init__(self, **kwargs): 'public_ip': 'str', 'skip_source_dest_check': 'bool', 'subnet_id': 'str', + 'system_tags': 'dict(str, dict(str, object))', 'time_created': 'datetime', 'ipv6_addresses': 'list[str]', 'route_table_id': 'str' @@ -183,6 +188,7 @@ def __init__(self, **kwargs): 'public_ip': 'publicIp', 'skip_source_dest_check': 'skipSourceDestCheck', 'subnet_id': 'subnetId', + 'system_tags': 'systemTags', 'time_created': 'timeCreated', 'ipv6_addresses': 'ipv6Addresses', 'route_table_id': 'routeTableId' @@ -204,6 +210,7 @@ def __init__(self, **kwargs): self._public_ip = None self._skip_source_dest_check = None self._subnet_id = None + self._system_tags = None self._time_created = None self._ipv6_addresses = None self._route_table_id = None @@ -766,6 +773,32 @@ def subnet_id(self, subnet_id): """ self._subnet_id = subnet_id + @property + def system_tags(self): + """ + Gets the system_tags of this Vnic. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :return: The system_tags of this Vnic. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this Vnic. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :param system_tags: The system_tags of this Vnic. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + @property def time_created(self): """ diff --git a/src/oci/core/models/vtap.py b/src/oci/core/models/vtap.py index c0389edfa4..5b92f1e6da 100644 --- a/src/oci/core/models/vtap.py +++ b/src/oci/core/models/vtap.py @@ -135,6 +135,10 @@ def __init__(self, **kwargs): Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type lifecycle_state_details: str + :param system_tags: + The value to assign to the system_tags property of this Vtap. + :type system_tags: dict(str, dict(str, object)) + :param time_created: The value to assign to the time_created property of this Vtap. :type time_created: datetime @@ -209,6 +213,7 @@ def __init__(self, **kwargs): 'id': 'str', 'lifecycle_state': 'str', 'lifecycle_state_details': 'str', + 'system_tags': 'dict(str, dict(str, object))', 'time_created': 'datetime', 'source_id': 'str', 'target_id': 'str', @@ -233,6 +238,7 @@ def __init__(self, **kwargs): 'id': 'id', 'lifecycle_state': 'lifecycleState', 'lifecycle_state_details': 'lifecycleStateDetails', + 'system_tags': 'systemTags', 'time_created': 'timeCreated', 'source_id': 'sourceId', 'target_id': 'targetId', @@ -256,6 +262,7 @@ def __init__(self, **kwargs): self._id = None self._lifecycle_state = None self._lifecycle_state_details = None + self._system_tags = None self._time_created = None self._source_id = None self._target_id = None @@ -509,6 +516,32 @@ def lifecycle_state_details(self, lifecycle_state_details): lifecycle_state_details = 'UNKNOWN_ENUM_VALUE' self._lifecycle_state_details = lifecycle_state_details + @property + def system_tags(self): + """ + Gets the system_tags of this Vtap. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :return: The system_tags of this Vtap. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this Vtap. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{ \"orcl-cloud\": { \"free-tier-retained\": \"true\" } }` + + + :param system_tags: The system_tags of this Vtap. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + @property def time_created(self): """ diff --git a/src/oci/database/models/autonomous_database.py b/src/oci/database/models/autonomous_database.py index a67c95f627..3a0090b622 100644 --- a/src/oci/database/models/autonomous_database.py +++ b/src/oci/database/models/autonomous_database.py @@ -908,6 +908,22 @@ def __init__(self, **kwargs): The value to assign to the cluster_placement_group_id property of this AutonomousDatabase. :type cluster_placement_group_id: str + :param ad_scheduled_for_update: + The value to assign to the ad_scheduled_for_update property of this AutonomousDatabase. + :type ad_scheduled_for_update: str + + :param time_earliest_available_ad_update: + The value to assign to the time_earliest_available_ad_update property of this AutonomousDatabase. + :type time_earliest_available_ad_update: datetime + + :param time_latest_available_ad_update: + The value to assign to the time_latest_available_ad_update property of this AutonomousDatabase. + :type time_latest_available_ad_update: datetime + + :param time_scheduled_ad_update: + The value to assign to the time_scheduled_ad_update property of this AutonomousDatabase. + :type time_scheduled_ad_update: datetime + :param clone_table_space_list: The value to assign to the clone_table_space_list property of this AutonomousDatabase. :type clone_table_space_list: list[int] @@ -1064,6 +1080,10 @@ def __init__(self, **kwargs): 'net_services_architecture': 'str', 'availability_domain': 'str', 'cluster_placement_group_id': 'str', + 'ad_scheduled_for_update': 'str', + 'time_earliest_available_ad_update': 'datetime', + 'time_latest_available_ad_update': 'datetime', + 'time_scheduled_ad_update': 'datetime', 'clone_table_space_list': 'list[int]', 'clone_type': 'str', 'additional_attributes': 'dict(str, str)', @@ -1206,6 +1226,10 @@ def __init__(self, **kwargs): 'net_services_architecture': 'netServicesArchitecture', 'availability_domain': 'availabilityDomain', 'cluster_placement_group_id': 'clusterPlacementGroupId', + 'ad_scheduled_for_update': 'adScheduledForUpdate', + 'time_earliest_available_ad_update': 'timeEarliestAvailableAdUpdate', + 'time_latest_available_ad_update': 'timeLatestAvailableAdUpdate', + 'time_scheduled_ad_update': 'timeScheduledAdUpdate', 'clone_table_space_list': 'cloneTableSpaceList', 'clone_type': 'cloneType', 'additional_attributes': 'additionalAttributes', @@ -1347,6 +1371,10 @@ def __init__(self, **kwargs): self._net_services_architecture = None self._availability_domain = None self._cluster_placement_group_id = None + self._ad_scheduled_for_update = None + self._time_earliest_available_ad_update = None + self._time_latest_available_ad_update = None + self._time_scheduled_ad_update = None self._clone_table_space_list = None self._clone_type = None self._additional_attributes = None @@ -5022,6 +5050,102 @@ def cluster_placement_group_id(self, cluster_placement_group_id): """ self._cluster_placement_group_id = cluster_placement_group_id + @property + def ad_scheduled_for_update(self): + """ + Gets the ad_scheduled_for_update of this AutonomousDatabase. + The Availability Domain which is planned for Scheduled Update + + + :return: The ad_scheduled_for_update of this AutonomousDatabase. + :rtype: str + """ + return self._ad_scheduled_for_update + + @ad_scheduled_for_update.setter + def ad_scheduled_for_update(self, ad_scheduled_for_update): + """ + Sets the ad_scheduled_for_update of this AutonomousDatabase. + The Availability Domain which is planned for Scheduled Update + + + :param ad_scheduled_for_update: The ad_scheduled_for_update of this AutonomousDatabase. + :type: str + """ + self._ad_scheduled_for_update = ad_scheduled_for_update + + @property + def time_earliest_available_ad_update(self): + """ + Gets the time_earliest_available_ad_update of this AutonomousDatabase. + The earliest date and time to which you can schedule an Autonomous Database availability domain update. + + + :return: The time_earliest_available_ad_update of this AutonomousDatabase. + :rtype: datetime + """ + return self._time_earliest_available_ad_update + + @time_earliest_available_ad_update.setter + def time_earliest_available_ad_update(self, time_earliest_available_ad_update): + """ + Sets the time_earliest_available_ad_update of this AutonomousDatabase. + The earliest date and time to which you can schedule an Autonomous Database availability domain update. + + + :param time_earliest_available_ad_update: The time_earliest_available_ad_update of this AutonomousDatabase. + :type: datetime + """ + self._time_earliest_available_ad_update = time_earliest_available_ad_update + + @property + def time_latest_available_ad_update(self): + """ + Gets the time_latest_available_ad_update of this AutonomousDatabase. + The latest date and time to which you can schedule an Autonomous Database availability domain update. + + + :return: The time_latest_available_ad_update of this AutonomousDatabase. + :rtype: datetime + """ + return self._time_latest_available_ad_update + + @time_latest_available_ad_update.setter + def time_latest_available_ad_update(self, time_latest_available_ad_update): + """ + Sets the time_latest_available_ad_update of this AutonomousDatabase. + The latest date and time to which you can schedule an Autonomous Database availability domain update. + + + :param time_latest_available_ad_update: The time_latest_available_ad_update of this AutonomousDatabase. + :type: datetime + """ + self._time_latest_available_ad_update = time_latest_available_ad_update + + @property + def time_scheduled_ad_update(self): + """ + Gets the time_scheduled_ad_update of this AutonomousDatabase. + The date and time to which the Autonomous Database availability domain update is scheduled. + + + :return: The time_scheduled_ad_update of this AutonomousDatabase. + :rtype: datetime + """ + return self._time_scheduled_ad_update + + @time_scheduled_ad_update.setter + def time_scheduled_ad_update(self, time_scheduled_ad_update): + """ + Sets the time_scheduled_ad_update of this AutonomousDatabase. + The date and time to which the Autonomous Database availability domain update is scheduled. + + + :param time_scheduled_ad_update: The time_scheduled_ad_update of this AutonomousDatabase. + :type: datetime + """ + self._time_scheduled_ad_update = time_scheduled_ad_update + @property def clone_table_space_list(self): """ diff --git a/src/oci/database/models/autonomous_database_summary.py b/src/oci/database/models/autonomous_database_summary.py index 3e9d171e03..8aeb6236bb 100644 --- a/src/oci/database/models/autonomous_database_summary.py +++ b/src/oci/database/models/autonomous_database_summary.py @@ -906,6 +906,22 @@ def __init__(self, **kwargs): The value to assign to the cluster_placement_group_id property of this AutonomousDatabaseSummary. :type cluster_placement_group_id: str + :param ad_scheduled_for_update: + The value to assign to the ad_scheduled_for_update property of this AutonomousDatabaseSummary. + :type ad_scheduled_for_update: str + + :param time_earliest_available_ad_update: + The value to assign to the time_earliest_available_ad_update property of this AutonomousDatabaseSummary. + :type time_earliest_available_ad_update: datetime + + :param time_latest_available_ad_update: + The value to assign to the time_latest_available_ad_update property of this AutonomousDatabaseSummary. + :type time_latest_available_ad_update: datetime + + :param time_scheduled_ad_update: + The value to assign to the time_scheduled_ad_update property of this AutonomousDatabaseSummary. + :type time_scheduled_ad_update: datetime + :param clone_table_space_list: The value to assign to the clone_table_space_list property of this AutonomousDatabaseSummary. :type clone_table_space_list: list[int] @@ -1061,6 +1077,10 @@ def __init__(self, **kwargs): 'net_services_architecture': 'str', 'availability_domain': 'str', 'cluster_placement_group_id': 'str', + 'ad_scheduled_for_update': 'str', + 'time_earliest_available_ad_update': 'datetime', + 'time_latest_available_ad_update': 'datetime', + 'time_scheduled_ad_update': 'datetime', 'clone_table_space_list': 'list[int]', 'clone_type': 'str', 'additional_attributes': 'dict(str, str)', @@ -1202,6 +1222,10 @@ def __init__(self, **kwargs): 'net_services_architecture': 'netServicesArchitecture', 'availability_domain': 'availabilityDomain', 'cluster_placement_group_id': 'clusterPlacementGroupId', + 'ad_scheduled_for_update': 'adScheduledForUpdate', + 'time_earliest_available_ad_update': 'timeEarliestAvailableAdUpdate', + 'time_latest_available_ad_update': 'timeLatestAvailableAdUpdate', + 'time_scheduled_ad_update': 'timeScheduledAdUpdate', 'clone_table_space_list': 'cloneTableSpaceList', 'clone_type': 'cloneType', 'additional_attributes': 'additionalAttributes', @@ -1342,6 +1366,10 @@ def __init__(self, **kwargs): self._net_services_architecture = None self._availability_domain = None self._cluster_placement_group_id = None + self._ad_scheduled_for_update = None + self._time_earliest_available_ad_update = None + self._time_latest_available_ad_update = None + self._time_scheduled_ad_update = None self._clone_table_space_list = None self._clone_type = None self._additional_attributes = None @@ -4993,6 +5021,102 @@ def cluster_placement_group_id(self, cluster_placement_group_id): """ self._cluster_placement_group_id = cluster_placement_group_id + @property + def ad_scheduled_for_update(self): + """ + Gets the ad_scheduled_for_update of this AutonomousDatabaseSummary. + The Availability Domain which is planned for Scheduled Update + + + :return: The ad_scheduled_for_update of this AutonomousDatabaseSummary. + :rtype: str + """ + return self._ad_scheduled_for_update + + @ad_scheduled_for_update.setter + def ad_scheduled_for_update(self, ad_scheduled_for_update): + """ + Sets the ad_scheduled_for_update of this AutonomousDatabaseSummary. + The Availability Domain which is planned for Scheduled Update + + + :param ad_scheduled_for_update: The ad_scheduled_for_update of this AutonomousDatabaseSummary. + :type: str + """ + self._ad_scheduled_for_update = ad_scheduled_for_update + + @property + def time_earliest_available_ad_update(self): + """ + Gets the time_earliest_available_ad_update of this AutonomousDatabaseSummary. + The earliest date and time to which you can schedule an Autonomous Database availability domain update. + + + :return: The time_earliest_available_ad_update of this AutonomousDatabaseSummary. + :rtype: datetime + """ + return self._time_earliest_available_ad_update + + @time_earliest_available_ad_update.setter + def time_earliest_available_ad_update(self, time_earliest_available_ad_update): + """ + Sets the time_earliest_available_ad_update of this AutonomousDatabaseSummary. + The earliest date and time to which you can schedule an Autonomous Database availability domain update. + + + :param time_earliest_available_ad_update: The time_earliest_available_ad_update of this AutonomousDatabaseSummary. + :type: datetime + """ + self._time_earliest_available_ad_update = time_earliest_available_ad_update + + @property + def time_latest_available_ad_update(self): + """ + Gets the time_latest_available_ad_update of this AutonomousDatabaseSummary. + The latest date and time to which you can schedule an Autonomous Database availability domain update. + + + :return: The time_latest_available_ad_update of this AutonomousDatabaseSummary. + :rtype: datetime + """ + return self._time_latest_available_ad_update + + @time_latest_available_ad_update.setter + def time_latest_available_ad_update(self, time_latest_available_ad_update): + """ + Sets the time_latest_available_ad_update of this AutonomousDatabaseSummary. + The latest date and time to which you can schedule an Autonomous Database availability domain update. + + + :param time_latest_available_ad_update: The time_latest_available_ad_update of this AutonomousDatabaseSummary. + :type: datetime + """ + self._time_latest_available_ad_update = time_latest_available_ad_update + + @property + def time_scheduled_ad_update(self): + """ + Gets the time_scheduled_ad_update of this AutonomousDatabaseSummary. + The date and time to which the Autonomous Database availability domain update is scheduled. + + + :return: The time_scheduled_ad_update of this AutonomousDatabaseSummary. + :rtype: datetime + """ + return self._time_scheduled_ad_update + + @time_scheduled_ad_update.setter + def time_scheduled_ad_update(self, time_scheduled_ad_update): + """ + Sets the time_scheduled_ad_update of this AutonomousDatabaseSummary. + The date and time to which the Autonomous Database availability domain update is scheduled. + + + :param time_scheduled_ad_update: The time_scheduled_ad_update of this AutonomousDatabaseSummary. + :type: datetime + """ + self._time_scheduled_ad_update = time_scheduled_ad_update + @property def clone_table_space_list(self): """ diff --git a/src/oci/database/models/autonomous_dw_database.py b/src/oci/database/models/autonomous_dw_database.py index c7bb53b083..e1a13f5ebf 100644 --- a/src/oci/database/models/autonomous_dw_database.py +++ b/src/oci/database/models/autonomous_dw_database.py @@ -886,6 +886,22 @@ def __init__(self, **kwargs): The value to assign to the cluster_placement_group_id property of this AutonomousDwDatabase. :type cluster_placement_group_id: str + :param ad_scheduled_for_update: + The value to assign to the ad_scheduled_for_update property of this AutonomousDwDatabase. + :type ad_scheduled_for_update: str + + :param time_earliest_available_ad_update: + The value to assign to the time_earliest_available_ad_update property of this AutonomousDwDatabase. + :type time_earliest_available_ad_update: datetime + + :param time_latest_available_ad_update: + The value to assign to the time_latest_available_ad_update property of this AutonomousDwDatabase. + :type time_latest_available_ad_update: datetime + + :param time_scheduled_ad_update: + The value to assign to the time_scheduled_ad_update property of this AutonomousDwDatabase. + :type time_scheduled_ad_update: datetime + :param clone_table_space_list: The value to assign to the clone_table_space_list property of this AutonomousDwDatabase. :type clone_table_space_list: list[int] @@ -1040,6 +1056,10 @@ def __init__(self, **kwargs): 'net_services_architecture': 'str', 'availability_domain': 'str', 'cluster_placement_group_id': 'str', + 'ad_scheduled_for_update': 'str', + 'time_earliest_available_ad_update': 'datetime', + 'time_latest_available_ad_update': 'datetime', + 'time_scheduled_ad_update': 'datetime', 'clone_table_space_list': 'list[int]', 'clone_type': 'str', 'additional_attributes': 'dict(str, str)', @@ -1181,6 +1201,10 @@ def __init__(self, **kwargs): 'net_services_architecture': 'netServicesArchitecture', 'availability_domain': 'availabilityDomain', 'cluster_placement_group_id': 'clusterPlacementGroupId', + 'ad_scheduled_for_update': 'adScheduledForUpdate', + 'time_earliest_available_ad_update': 'timeEarliestAvailableAdUpdate', + 'time_latest_available_ad_update': 'timeLatestAvailableAdUpdate', + 'time_scheduled_ad_update': 'timeScheduledAdUpdate', 'clone_table_space_list': 'cloneTableSpaceList', 'clone_type': 'cloneType', 'additional_attributes': 'additionalAttributes', @@ -1321,6 +1345,10 @@ def __init__(self, **kwargs): self._net_services_architecture = None self._availability_domain = None self._cluster_placement_group_id = None + self._ad_scheduled_for_update = None + self._time_earliest_available_ad_update = None + self._time_latest_available_ad_update = None + self._time_scheduled_ad_update = None self._clone_table_space_list = None self._clone_type = None self._additional_attributes = None @@ -4990,6 +5018,102 @@ def cluster_placement_group_id(self, cluster_placement_group_id): """ self._cluster_placement_group_id = cluster_placement_group_id + @property + def ad_scheduled_for_update(self): + """ + Gets the ad_scheduled_for_update of this AutonomousDwDatabase. + The Availability Domain which is planned for Scheduled Update + + + :return: The ad_scheduled_for_update of this AutonomousDwDatabase. + :rtype: str + """ + return self._ad_scheduled_for_update + + @ad_scheduled_for_update.setter + def ad_scheduled_for_update(self, ad_scheduled_for_update): + """ + Sets the ad_scheduled_for_update of this AutonomousDwDatabase. + The Availability Domain which is planned for Scheduled Update + + + :param ad_scheduled_for_update: The ad_scheduled_for_update of this AutonomousDwDatabase. + :type: str + """ + self._ad_scheduled_for_update = ad_scheduled_for_update + + @property + def time_earliest_available_ad_update(self): + """ + Gets the time_earliest_available_ad_update of this AutonomousDwDatabase. + The earliest date and time to which you can schedule an Autonomous Database availability domain update. + + + :return: The time_earliest_available_ad_update of this AutonomousDwDatabase. + :rtype: datetime + """ + return self._time_earliest_available_ad_update + + @time_earliest_available_ad_update.setter + def time_earliest_available_ad_update(self, time_earliest_available_ad_update): + """ + Sets the time_earliest_available_ad_update of this AutonomousDwDatabase. + The earliest date and time to which you can schedule an Autonomous Database availability domain update. + + + :param time_earliest_available_ad_update: The time_earliest_available_ad_update of this AutonomousDwDatabase. + :type: datetime + """ + self._time_earliest_available_ad_update = time_earliest_available_ad_update + + @property + def time_latest_available_ad_update(self): + """ + Gets the time_latest_available_ad_update of this AutonomousDwDatabase. + The latest date and time to which you can schedule an Autonomous Database availability domain update. + + + :return: The time_latest_available_ad_update of this AutonomousDwDatabase. + :rtype: datetime + """ + return self._time_latest_available_ad_update + + @time_latest_available_ad_update.setter + def time_latest_available_ad_update(self, time_latest_available_ad_update): + """ + Sets the time_latest_available_ad_update of this AutonomousDwDatabase. + The latest date and time to which you can schedule an Autonomous Database availability domain update. + + + :param time_latest_available_ad_update: The time_latest_available_ad_update of this AutonomousDwDatabase. + :type: datetime + """ + self._time_latest_available_ad_update = time_latest_available_ad_update + + @property + def time_scheduled_ad_update(self): + """ + Gets the time_scheduled_ad_update of this AutonomousDwDatabase. + The date and time to which the Autonomous Database availability domain update is scheduled. + + + :return: The time_scheduled_ad_update of this AutonomousDwDatabase. + :rtype: datetime + """ + return self._time_scheduled_ad_update + + @time_scheduled_ad_update.setter + def time_scheduled_ad_update(self, time_scheduled_ad_update): + """ + Sets the time_scheduled_ad_update of this AutonomousDwDatabase. + The date and time to which the Autonomous Database availability domain update is scheduled. + + + :param time_scheduled_ad_update: The time_scheduled_ad_update of this AutonomousDwDatabase. + :type: datetime + """ + self._time_scheduled_ad_update = time_scheduled_ad_update + @property def clone_table_space_list(self): """ diff --git a/src/oci/database/models/create_autonomous_database_base.py b/src/oci/database/models/create_autonomous_database_base.py index 8a819568ad..e35e853ca2 100644 --- a/src/oci/database/models/create_autonomous_database_base.py +++ b/src/oci/database/models/create_autonomous_database_base.py @@ -123,6 +123,10 @@ def __init__(self, **kwargs): The value to assign to the compartment_id property of this CreateAutonomousDatabaseBase. :type compartment_id: str + :param availability_domain: + The value to assign to the availability_domain property of this CreateAutonomousDatabaseBase. + :type availability_domain: str + :param character_set: The value to assign to the character_set property of this CreateAutonomousDatabaseBase. :type character_set: str @@ -348,6 +352,7 @@ def __init__(self, **kwargs): self.swagger_types = { 'subscription_id': 'str', 'compartment_id': 'str', + 'availability_domain': 'str', 'character_set': 'str', 'ncharacter_set': 'str', 'db_name': 'str', @@ -406,6 +411,7 @@ def __init__(self, **kwargs): self.attribute_map = { 'subscription_id': 'subscriptionId', 'compartment_id': 'compartmentId', + 'availability_domain': 'availabilityDomain', 'character_set': 'characterSet', 'ncharacter_set': 'ncharacterSet', 'db_name': 'dbName', @@ -463,6 +469,7 @@ def __init__(self, **kwargs): } self._subscription_id = None self._compartment_id = None + self._availability_domain = None self._character_set = None self._ncharacter_set = None self._db_name = None @@ -611,6 +618,30 @@ def compartment_id(self, compartment_id): """ self._compartment_id = compartment_id + @property + def availability_domain(self): + """ + Gets the availability_domain of this CreateAutonomousDatabaseBase. + The Autonomous Database Serverless instance's availability domain. + + + :return: The availability_domain of this CreateAutonomousDatabaseBase. + :rtype: str + """ + return self._availability_domain + + @availability_domain.setter + def availability_domain(self, availability_domain): + """ + Sets the availability_domain of this CreateAutonomousDatabaseBase. + The Autonomous Database Serverless instance's availability domain. + + + :param availability_domain: The availability_domain of this CreateAutonomousDatabaseBase. + :type: str + """ + self._availability_domain = availability_domain + @property def character_set(self): """ diff --git a/src/oci/database/models/create_autonomous_database_clone_details.py b/src/oci/database/models/create_autonomous_database_clone_details.py index 80b42a5acd..cf65b3297a 100644 --- a/src/oci/database/models/create_autonomous_database_clone_details.py +++ b/src/oci/database/models/create_autonomous_database_clone_details.py @@ -41,6 +41,10 @@ def __init__(self, **kwargs): The value to assign to the compartment_id property of this CreateAutonomousDatabaseCloneDetails. :type compartment_id: str + :param availability_domain: + The value to assign to the availability_domain property of this CreateAutonomousDatabaseCloneDetails. + :type availability_domain: str + :param character_set: The value to assign to the character_set property of this CreateAutonomousDatabaseCloneDetails. :type character_set: str @@ -275,6 +279,7 @@ def __init__(self, **kwargs): self.swagger_types = { 'subscription_id': 'str', 'compartment_id': 'str', + 'availability_domain': 'str', 'character_set': 'str', 'ncharacter_set': 'str', 'db_name': 'str', @@ -335,6 +340,7 @@ def __init__(self, **kwargs): self.attribute_map = { 'subscription_id': 'subscriptionId', 'compartment_id': 'compartmentId', + 'availability_domain': 'availabilityDomain', 'character_set': 'characterSet', 'ncharacter_set': 'ncharacterSet', 'db_name': 'dbName', @@ -394,6 +400,7 @@ def __init__(self, **kwargs): } self._subscription_id = None self._compartment_id = None + self._availability_domain = None self._character_set = None self._ncharacter_set = None self._db_name = None diff --git a/src/oci/database/models/create_autonomous_database_details.py b/src/oci/database/models/create_autonomous_database_details.py index 6f2b151b67..e57e506506 100644 --- a/src/oci/database/models/create_autonomous_database_details.py +++ b/src/oci/database/models/create_autonomous_database_details.py @@ -29,6 +29,10 @@ def __init__(self, **kwargs): The value to assign to the compartment_id property of this CreateAutonomousDatabaseDetails. :type compartment_id: str + :param availability_domain: + The value to assign to the availability_domain property of this CreateAutonomousDatabaseDetails. + :type availability_domain: str + :param character_set: The value to assign to the character_set property of this CreateAutonomousDatabaseDetails. :type character_set: str @@ -254,6 +258,7 @@ def __init__(self, **kwargs): self.swagger_types = { 'subscription_id': 'str', 'compartment_id': 'str', + 'availability_domain': 'str', 'character_set': 'str', 'ncharacter_set': 'str', 'db_name': 'str', @@ -312,6 +317,7 @@ def __init__(self, **kwargs): self.attribute_map = { 'subscription_id': 'subscriptionId', 'compartment_id': 'compartmentId', + 'availability_domain': 'availabilityDomain', 'character_set': 'characterSet', 'ncharacter_set': 'ncharacterSet', 'db_name': 'dbName', @@ -369,6 +375,7 @@ def __init__(self, **kwargs): } self._subscription_id = None self._compartment_id = None + self._availability_domain = None self._character_set = None self._ncharacter_set = None self._db_name = None diff --git a/src/oci/database/models/create_autonomous_database_from_backup_details.py b/src/oci/database/models/create_autonomous_database_from_backup_details.py index 7e2013fe27..e4502672d5 100644 --- a/src/oci/database/models/create_autonomous_database_from_backup_details.py +++ b/src/oci/database/models/create_autonomous_database_from_backup_details.py @@ -41,6 +41,10 @@ def __init__(self, **kwargs): The value to assign to the compartment_id property of this CreateAutonomousDatabaseFromBackupDetails. :type compartment_id: str + :param availability_domain: + The value to assign to the availability_domain property of this CreateAutonomousDatabaseFromBackupDetails. + :type availability_domain: str + :param character_set: The value to assign to the character_set property of this CreateAutonomousDatabaseFromBackupDetails. :type character_set: str @@ -279,6 +283,7 @@ def __init__(self, **kwargs): self.swagger_types = { 'subscription_id': 'str', 'compartment_id': 'str', + 'availability_domain': 'str', 'character_set': 'str', 'ncharacter_set': 'str', 'db_name': 'str', @@ -340,6 +345,7 @@ def __init__(self, **kwargs): self.attribute_map = { 'subscription_id': 'subscriptionId', 'compartment_id': 'compartmentId', + 'availability_domain': 'availabilityDomain', 'character_set': 'characterSet', 'ncharacter_set': 'ncharacterSet', 'db_name': 'dbName', @@ -400,6 +406,7 @@ def __init__(self, **kwargs): } self._subscription_id = None self._compartment_id = None + self._availability_domain = None self._character_set = None self._ncharacter_set = None self._db_name = None diff --git a/src/oci/database/models/create_autonomous_database_from_backup_timestamp_details.py b/src/oci/database/models/create_autonomous_database_from_backup_timestamp_details.py index 719d07727e..8398af79cc 100644 --- a/src/oci/database/models/create_autonomous_database_from_backup_timestamp_details.py +++ b/src/oci/database/models/create_autonomous_database_from_backup_timestamp_details.py @@ -41,6 +41,10 @@ def __init__(self, **kwargs): The value to assign to the compartment_id property of this CreateAutonomousDatabaseFromBackupTimestampDetails. :type compartment_id: str + :param availability_domain: + The value to assign to the availability_domain property of this CreateAutonomousDatabaseFromBackupTimestampDetails. + :type availability_domain: str + :param character_set: The value to assign to the character_set property of this CreateAutonomousDatabaseFromBackupTimestampDetails. :type character_set: str @@ -287,6 +291,7 @@ def __init__(self, **kwargs): self.swagger_types = { 'subscription_id': 'str', 'compartment_id': 'str', + 'availability_domain': 'str', 'character_set': 'str', 'ncharacter_set': 'str', 'db_name': 'str', @@ -350,6 +355,7 @@ def __init__(self, **kwargs): self.attribute_map = { 'subscription_id': 'subscriptionId', 'compartment_id': 'compartmentId', + 'availability_domain': 'availabilityDomain', 'character_set': 'characterSet', 'ncharacter_set': 'ncharacterSet', 'db_name': 'dbName', @@ -412,6 +418,7 @@ def __init__(self, **kwargs): } self._subscription_id = None self._compartment_id = None + self._availability_domain = None self._character_set = None self._ncharacter_set = None self._db_name = None diff --git a/src/oci/database/models/create_cross_region_autonomous_database_data_guard_details.py b/src/oci/database/models/create_cross_region_autonomous_database_data_guard_details.py index 831fba921f..6e2de80f86 100644 --- a/src/oci/database/models/create_cross_region_autonomous_database_data_guard_details.py +++ b/src/oci/database/models/create_cross_region_autonomous_database_data_guard_details.py @@ -49,6 +49,10 @@ def __init__(self, **kwargs): The value to assign to the compartment_id property of this CreateCrossRegionAutonomousDatabaseDataGuardDetails. :type compartment_id: str + :param availability_domain: + The value to assign to the availability_domain property of this CreateCrossRegionAutonomousDatabaseDataGuardDetails. + :type availability_domain: str + :param character_set: The value to assign to the character_set property of this CreateCrossRegionAutonomousDatabaseDataGuardDetails. :type character_set: str @@ -278,6 +282,7 @@ def __init__(self, **kwargs): self.swagger_types = { 'subscription_id': 'str', 'compartment_id': 'str', + 'availability_domain': 'str', 'character_set': 'str', 'ncharacter_set': 'str', 'db_name': 'str', @@ -337,6 +342,7 @@ def __init__(self, **kwargs): self.attribute_map = { 'subscription_id': 'subscriptionId', 'compartment_id': 'compartmentId', + 'availability_domain': 'availabilityDomain', 'character_set': 'characterSet', 'ncharacter_set': 'ncharacterSet', 'db_name': 'dbName', @@ -395,6 +401,7 @@ def __init__(self, **kwargs): } self._subscription_id = None self._compartment_id = None + self._availability_domain = None self._character_set = None self._ncharacter_set = None self._db_name = None diff --git a/src/oci/database/models/create_cross_region_disaster_recovery_details.py b/src/oci/database/models/create_cross_region_disaster_recovery_details.py index 0e4693f30c..85fd63eba8 100644 --- a/src/oci/database/models/create_cross_region_disaster_recovery_details.py +++ b/src/oci/database/models/create_cross_region_disaster_recovery_details.py @@ -48,6 +48,10 @@ def __init__(self, **kwargs): The value to assign to the compartment_id property of this CreateCrossRegionDisasterRecoveryDetails. :type compartment_id: str + :param availability_domain: + The value to assign to the availability_domain property of this CreateCrossRegionDisasterRecoveryDetails. + :type availability_domain: str + :param character_set: The value to assign to the character_set property of this CreateCrossRegionDisasterRecoveryDetails. :type character_set: str @@ -285,6 +289,7 @@ def __init__(self, **kwargs): self.swagger_types = { 'subscription_id': 'str', 'compartment_id': 'str', + 'availability_domain': 'str', 'character_set': 'str', 'ncharacter_set': 'str', 'db_name': 'str', @@ -346,6 +351,7 @@ def __init__(self, **kwargs): self.attribute_map = { 'subscription_id': 'subscriptionId', 'compartment_id': 'compartmentId', + 'availability_domain': 'availabilityDomain', 'character_set': 'characterSet', 'ncharacter_set': 'ncharacterSet', 'db_name': 'dbName', @@ -406,6 +412,7 @@ def __init__(self, **kwargs): } self._subscription_id = None self._compartment_id = None + self._availability_domain = None self._character_set = None self._ncharacter_set = None self._db_name = None diff --git a/src/oci/database/models/create_cross_tenancy_disaster_recovery_details.py b/src/oci/database/models/create_cross_tenancy_disaster_recovery_details.py index a0bfd12a8d..f6de116127 100644 --- a/src/oci/database/models/create_cross_tenancy_disaster_recovery_details.py +++ b/src/oci/database/models/create_cross_tenancy_disaster_recovery_details.py @@ -49,6 +49,10 @@ def __init__(self, **kwargs): The value to assign to the compartment_id property of this CreateCrossTenancyDisasterRecoveryDetails. :type compartment_id: str + :param availability_domain: + The value to assign to the availability_domain property of this CreateCrossTenancyDisasterRecoveryDetails. + :type availability_domain: str + :param character_set: The value to assign to the character_set property of this CreateCrossTenancyDisasterRecoveryDetails. :type character_set: str @@ -286,6 +290,7 @@ def __init__(self, **kwargs): self.swagger_types = { 'subscription_id': 'str', 'compartment_id': 'str', + 'availability_domain': 'str', 'character_set': 'str', 'ncharacter_set': 'str', 'db_name': 'str', @@ -347,6 +352,7 @@ def __init__(self, **kwargs): self.attribute_map = { 'subscription_id': 'subscriptionId', 'compartment_id': 'compartmentId', + 'availability_domain': 'availabilityDomain', 'character_set': 'characterSet', 'ncharacter_set': 'ncharacterSet', 'db_name': 'dbName', @@ -407,6 +413,7 @@ def __init__(self, **kwargs): } self._subscription_id = None self._compartment_id = None + self._availability_domain = None self._character_set = None self._ncharacter_set = None self._db_name = None diff --git a/src/oci/database/models/create_refreshable_autonomous_database_clone_details.py b/src/oci/database/models/create_refreshable_autonomous_database_clone_details.py index e5518e7987..b1cb896388 100644 --- a/src/oci/database/models/create_refreshable_autonomous_database_clone_details.py +++ b/src/oci/database/models/create_refreshable_autonomous_database_clone_details.py @@ -57,6 +57,10 @@ def __init__(self, **kwargs): The value to assign to the compartment_id property of this CreateRefreshableAutonomousDatabaseCloneDetails. :type compartment_id: str + :param availability_domain: + The value to assign to the availability_domain property of this CreateRefreshableAutonomousDatabaseCloneDetails. + :type availability_domain: str + :param character_set: The value to assign to the character_set property of this CreateRefreshableAutonomousDatabaseCloneDetails. :type character_set: str @@ -313,6 +317,7 @@ def __init__(self, **kwargs): self.swagger_types = { 'subscription_id': 'str', 'compartment_id': 'str', + 'availability_domain': 'str', 'character_set': 'str', 'ncharacter_set': 'str', 'db_name': 'str', @@ -378,6 +383,7 @@ def __init__(self, **kwargs): self.attribute_map = { 'subscription_id': 'subscriptionId', 'compartment_id': 'compartmentId', + 'availability_domain': 'availabilityDomain', 'character_set': 'characterSet', 'ncharacter_set': 'ncharacterSet', 'db_name': 'dbName', @@ -442,6 +448,7 @@ def __init__(self, **kwargs): } self._subscription_id = None self._compartment_id = None + self._availability_domain = None self._character_set = None self._ncharacter_set = None self._db_name = None diff --git a/src/oci/database/models/undelete_autonomous_database_details.py b/src/oci/database/models/undelete_autonomous_database_details.py index e70fc69ba4..ce306924a0 100644 --- a/src/oci/database/models/undelete_autonomous_database_details.py +++ b/src/oci/database/models/undelete_autonomous_database_details.py @@ -29,6 +29,10 @@ def __init__(self, **kwargs): The value to assign to the compartment_id property of this UndeleteAutonomousDatabaseDetails. :type compartment_id: str + :param availability_domain: + The value to assign to the availability_domain property of this UndeleteAutonomousDatabaseDetails. + :type availability_domain: str + :param character_set: The value to assign to the character_set property of this UndeleteAutonomousDatabaseDetails. :type character_set: str @@ -258,6 +262,7 @@ def __init__(self, **kwargs): self.swagger_types = { 'subscription_id': 'str', 'compartment_id': 'str', + 'availability_domain': 'str', 'character_set': 'str', 'ncharacter_set': 'str', 'db_name': 'str', @@ -317,6 +322,7 @@ def __init__(self, **kwargs): self.attribute_map = { 'subscription_id': 'subscriptionId', 'compartment_id': 'compartmentId', + 'availability_domain': 'availabilityDomain', 'character_set': 'characterSet', 'ncharacter_set': 'ncharacterSet', 'db_name': 'dbName', @@ -375,6 +381,7 @@ def __init__(self, **kwargs): } self._subscription_id = None self._compartment_id = None + self._availability_domain = None self._character_set = None self._ncharacter_set = None self._db_name = None diff --git a/src/oci/database/models/update_autonomous_database_details.py b/src/oci/database/models/update_autonomous_database_details.py index 0f75a219e0..42e3cf67f1 100644 --- a/src/oci/database/models/update_autonomous_database_details.py +++ b/src/oci/database/models/update_autonomous_database_details.py @@ -147,6 +147,22 @@ def __init__(self, **kwargs): The value to assign to the is_free_tier property of this UpdateAutonomousDatabaseDetails. :type is_free_tier: bool + :param availability_domain: + The value to assign to the availability_domain property of this UpdateAutonomousDatabaseDetails. + :type availability_domain: str + + :param time_scheduled_ad_update: + The value to assign to the time_scheduled_ad_update property of this UpdateAutonomousDatabaseDetails. + :type time_scheduled_ad_update: datetime + + :param is_disable_ad_update_schedule: + The value to assign to the is_disable_ad_update_schedule property of this UpdateAutonomousDatabaseDetails. + :type is_disable_ad_update_schedule: bool + + :param is_schedule_ad_update_to_earliest: + The value to assign to the is_schedule_ad_update_to_earliest property of this UpdateAutonomousDatabaseDetails. + :type is_schedule_ad_update_to_earliest: bool + :param admin_password: The value to assign to the admin_password property of this UpdateAutonomousDatabaseDetails. :type admin_password: str @@ -364,6 +380,10 @@ def __init__(self, **kwargs): 'data_storage_size_in_gbs': 'int', 'display_name': 'str', 'is_free_tier': 'bool', + 'availability_domain': 'str', + 'time_scheduled_ad_update': 'datetime', + 'is_disable_ad_update_schedule': 'bool', + 'is_schedule_ad_update_to_earliest': 'bool', 'admin_password': 'str', 'db_name': 'str', 'freeform_tags': 'dict(str, str)', @@ -428,6 +448,10 @@ def __init__(self, **kwargs): 'data_storage_size_in_gbs': 'dataStorageSizeInGBs', 'display_name': 'displayName', 'is_free_tier': 'isFreeTier', + 'availability_domain': 'availabilityDomain', + 'time_scheduled_ad_update': 'timeScheduledAdUpdate', + 'is_disable_ad_update_schedule': 'isDisableAdUpdateSchedule', + 'is_schedule_ad_update_to_earliest': 'isScheduleAdUpdateToEarliest', 'admin_password': 'adminPassword', 'db_name': 'dbName', 'freeform_tags': 'freeformTags', @@ -491,6 +515,10 @@ def __init__(self, **kwargs): self._data_storage_size_in_gbs = None self._display_name = None self._is_free_tier = None + self._availability_domain = None + self._time_scheduled_ad_update = None + self._is_disable_ad_update_schedule = None + self._is_schedule_ad_update_to_earliest = None self._admin_password = None self._db_name = None self._freeform_tags = None @@ -924,6 +952,102 @@ def is_free_tier(self, is_free_tier): """ self._is_free_tier = is_free_tier + @property + def availability_domain(self): + """ + Gets the availability_domain of this UpdateAutonomousDatabaseDetails. + The Autonomous Database Serverless instance's availability domain. + + + :return: The availability_domain of this UpdateAutonomousDatabaseDetails. + :rtype: str + """ + return self._availability_domain + + @availability_domain.setter + def availability_domain(self, availability_domain): + """ + Sets the availability_domain of this UpdateAutonomousDatabaseDetails. + The Autonomous Database Serverless instance's availability domain. + + + :param availability_domain: The availability_domain of this UpdateAutonomousDatabaseDetails. + :type: str + """ + self._availability_domain = availability_domain + + @property + def time_scheduled_ad_update(self): + """ + Gets the time_scheduled_ad_update of this UpdateAutonomousDatabaseDetails. + The date and time when the Autonomous Database availability domain is to be updated. + + + :return: The time_scheduled_ad_update of this UpdateAutonomousDatabaseDetails. + :rtype: datetime + """ + return self._time_scheduled_ad_update + + @time_scheduled_ad_update.setter + def time_scheduled_ad_update(self, time_scheduled_ad_update): + """ + Sets the time_scheduled_ad_update of this UpdateAutonomousDatabaseDetails. + The date and time when the Autonomous Database availability domain is to be updated. + + + :param time_scheduled_ad_update: The time_scheduled_ad_update of this UpdateAutonomousDatabaseDetails. + :type: datetime + """ + self._time_scheduled_ad_update = time_scheduled_ad_update + + @property + def is_disable_ad_update_schedule(self): + """ + Gets the is_disable_ad_update_schedule of this UpdateAutonomousDatabaseDetails. + True, if you want to disable Autonomous Database availability domain scheduled update. + + + :return: The is_disable_ad_update_schedule of this UpdateAutonomousDatabaseDetails. + :rtype: bool + """ + return self._is_disable_ad_update_schedule + + @is_disable_ad_update_schedule.setter + def is_disable_ad_update_schedule(self, is_disable_ad_update_schedule): + """ + Sets the is_disable_ad_update_schedule of this UpdateAutonomousDatabaseDetails. + True, if you want to disable Autonomous Database availability domain scheduled update. + + + :param is_disable_ad_update_schedule: The is_disable_ad_update_schedule of this UpdateAutonomousDatabaseDetails. + :type: bool + """ + self._is_disable_ad_update_schedule = is_disable_ad_update_schedule + + @property + def is_schedule_ad_update_to_earliest(self): + """ + Gets the is_schedule_ad_update_to_earliest of this UpdateAutonomousDatabaseDetails. + True, if you want to schedule Autonomous Database availability domain update to the earliest available time. + + + :return: The is_schedule_ad_update_to_earliest of this UpdateAutonomousDatabaseDetails. + :rtype: bool + """ + return self._is_schedule_ad_update_to_earliest + + @is_schedule_ad_update_to_earliest.setter + def is_schedule_ad_update_to_earliest(self, is_schedule_ad_update_to_earliest): + """ + Sets the is_schedule_ad_update_to_earliest of this UpdateAutonomousDatabaseDetails. + True, if you want to schedule Autonomous Database availability domain update to the earliest available time. + + + :param is_schedule_ad_update_to_earliest: The is_schedule_ad_update_to_earliest of this UpdateAutonomousDatabaseDetails. + :type: bool + """ + self._is_schedule_ad_update_to_earliest = is_schedule_ad_update_to_earliest + @property def admin_password(self): """ diff --git a/src/oci/ddfs/__init__.py b/src/oci/ddfs/__init__.py new file mode 100644 index 0000000000..455f94a93b --- /dev/null +++ b/src/oci/ddfs/__init__.py @@ -0,0 +1,14 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260831 + +from __future__ import absolute_import + + +from .instance_client import InstanceClient +from .instance_client_composite_operations import InstanceClientCompositeOperations +from . import models + +__all__ = ["InstanceClient", "InstanceClientCompositeOperations", "models"] diff --git a/src/oci/ddfs/instance_client.py b/src/oci/ddfs/instance_client.py new file mode 100644 index 0000000000..522b5ee492 --- /dev/null +++ b/src/oci/ddfs/instance_client.py @@ -0,0 +1,1614 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260831 + +from __future__ import absolute_import + +from oci._vendor import requests # noqa: F401 +from oci._vendor import six + +from oci import retry, circuit_breaker # noqa: F401 +from oci.base_client import BaseClient +from oci.config import get_config_value_or_default, validate_config +from oci.signer import Signer +from oci.util import Sentinel, get_signer_from_authentication_type, AUTHENTICATION_TYPE_FIELD_NAME +from oci.exceptions import InvalidDeveloperToolConfiguration +from oci.developer_tool_configuration import OCI_SDK_ENABLED_SERVICES_SET +from .models import ddfs_type_mapping +missing = Sentinel("Missing") + + +class InstanceClient(object): + """ + Use the Device Data FHIR Service API to manage DDFS instances. + """ + + def __init__(self, config, **kwargs): + """ + Creates a new service client + + :param dict config: + Configuration keys and values as per `SDK and Tool Configuration `__. + The :py:meth:`~oci.config.from_file` method can be used to load configuration from a file. Alternatively, a ``dict`` can be passed. You can validate_config + the dict using :py:meth:`~oci.config.validate_config` + + :param str service_endpoint: (optional) + The endpoint of the service to call using this client. For example ``https://iaas.us-ashburn-1.oraclecloud.com``. If this keyword argument is + not provided then it will be derived using the region in the config parameter. You should only provide this keyword argument if you have an explicit + need to specify a service endpoint. + + :param timeout: (optional) + The connection and read timeouts for the client. The default values are connection timeout 10 seconds and read timeout 60 seconds. This keyword argument can be provided + as a single float, in which case the value provided is used for both the read and connection timeouts, or as a tuple of two floats. If + a tuple is provided then the first value is used as the connection timeout and the second value as the read timeout. + :type timeout: float or tuple(float, float) + + :param signer: (optional) + The signer to use when signing requests made by the service client. The default is to use a :py:class:`~oci.signer.Signer` based on the values + provided in the config parameter. + + One use case for this parameter is for `Instance Principals authentication `__ + by passing an instance of :py:class:`~oci.auth.signers.InstancePrincipalsSecurityTokenSigner` as the value for this keyword argument + :type signer: :py:class:`~oci.signer.AbstractBaseSigner` + + :param obj retry_strategy: (optional) + A retry strategy to apply to all calls made by this service client (i.e. at the client level). There is no retry strategy applied by default. + Retry strategies can also be applied at the operation level by passing a ``retry_strategy`` keyword argument as part of calling the operation. + Any value provided at the operation level will override whatever is specified at the client level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` + is also available. The specifics of the default retry strategy are described `here `__. + + :param obj circuit_breaker_strategy: (optional) + A circuit breaker strategy to apply to all calls made by this service client (i.e. at the client level). + This client uses :py:data:`~oci.circuit_breaker.DEFAULT_CIRCUIT_BREAKER_STRATEGY` as default if no circuit breaker strategy is provided. + The specifics of circuit breaker strategy are described `here `__. + + :param function circuit_breaker_callback: (optional) + Callback function to receive any exceptions triggerred by the circuit breaker. + + :param bool client_level_realm_specific_endpoint_template_enabled: (optional) + A boolean flag to indicate whether or not this client should be created with realm specific endpoint template enabled or disable. By default, this will be set as None. + + :param allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this client should allow control characters in the response object. By default, the client will not + allow control characters to be in the response object. + + :param enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this client should enable strict url encoding in path params of a request. + By default, the client will not enable strict url encoding + """ + if not OCI_SDK_ENABLED_SERVICES_SET.is_service_enabled("ddfs"): + raise InvalidDeveloperToolConfiguration("The Developer Tool Configuration has disabled this service, this behavior is controlled by OCI_SDK_ENABLED_SERVICES_SET variable. Please check if your local developer-tool-configuration file configured the service you're targeting or contact the cloud provider on the availability of this service") + + validate_config(config, signer=kwargs.get('signer')) + if 'signer' in kwargs: + signer = kwargs['signer'] + + elif AUTHENTICATION_TYPE_FIELD_NAME in config: + signer = get_signer_from_authentication_type(config) + + else: + signer = Signer( + tenancy=config["tenancy"], + user=config["user"], + fingerprint=config["fingerprint"], + private_key_file_location=config.get("key_file"), + pass_phrase=get_config_value_or_default(config, "pass_phrase"), + private_key_content=config.get("key_content") + ) + + base_client_init_kwargs = { + 'regional_client': True, + 'service_endpoint': kwargs.get('service_endpoint'), + 'base_path': '/20260831', + 'service_endpoint_template': 'https://ddfs.{region}.oci.{secondLevelDomain}', + 'service_endpoint_template_per_realm': { }, # noqa: E201 E202 + 'service_uses_dualstack_endpoints_by_default': False, + 'skip_deserialization': kwargs.get('skip_deserialization', False), + 'circuit_breaker_strategy': kwargs.get('circuit_breaker_strategy', circuit_breaker.GLOBAL_CIRCUIT_BREAKER_STRATEGY), + 'client_level_realm_specific_endpoint_template_enabled': kwargs.get('client_level_realm_specific_endpoint_template_enabled'), + 'client_level_dualstack_endpoints_enabled': kwargs.get('client_level_dualstack_endpoints_enabled') + } + if 'timeout' in kwargs: + base_client_init_kwargs['timeout'] = kwargs.get('timeout') + if base_client_init_kwargs.get('circuit_breaker_strategy') is None: + base_client_init_kwargs['circuit_breaker_strategy'] = circuit_breaker.DEFAULT_CIRCUIT_BREAKER_STRATEGY + if 'allow_control_chars' in kwargs: + base_client_init_kwargs['allow_control_chars'] = kwargs.get('allow_control_chars') + if 'enable_strict_url_encoding' in kwargs: + base_client_init_kwargs['enable_strict_url_encoding'] = kwargs.get('enable_strict_url_encoding') + self.base_client = BaseClient("instance", config, signer, ddfs_type_mapping, **base_client_init_kwargs) + self.retry_strategy = kwargs.get('retry_strategy') + self.circuit_breaker_callback = kwargs.get('circuit_breaker_callback') + + def cancel_work_request(self, work_request_id, **kwargs): + """ + Cancels a work request. + + + :param str work_request_id: (required) + The `OCID`__ of the asynchronous work request. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the + `if-match` parameter to the value of the etag from a previous GET or POST response for + that resource. The resource will be updated or deleted only if the etag you provide + matches the resource's current etag value. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use cancel_work_request API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['workRequestId'] + resource_path = "/workRequests/{workRequestId}" + method = "DELETE" + operation_name = "cancel_work_request" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"cancel_work_request got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "workRequestId": work_request_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def change_instance_compartment(self, instance_id, change_instance_compartment_details, **kwargs): + """ + Moves an Instance into a different compartment within the same tenancy. For information about moving resources between + compartments, see `Moving Resources to a Different Compartment`__. + + __ https://docs.oracle.com/iaas/Content/Identity/Tasks/managingcompartments.htm#moveRes + + + :param str instance_id: (required) + The `OCID`__ of the Instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param oci.ddfs.models.ChangeInstanceCompartmentDetails change_instance_compartment_details: (required) + The compartment move details. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the + `if-match` parameter to the value of the etag from a previous GET or POST response for + that resource. The resource will be updated or deleted only if the etag you provide + matches the resource's current etag value. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use change_instance_compartment API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['instanceId'] + resource_path = "/instances/{instanceId}/actions/changeCompartment" + method = "POST" + operation_name = "change_instance_compartment" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"change_instance_compartment got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "instanceId": instance_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=change_instance_compartment_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=change_instance_compartment_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def create_instance(self, create_instance_details, **kwargs): + """ + Creates an Instance. + + + :param oci.ddfs.models.CreateInstanceDetails create_instance_details: (required) + Details for the new Instance. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of running that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and removed from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.ddfs.models.Instance` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use create_instance API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = [] + resource_path = "/instances" + method = "POST" + operation_name = "create_instance" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_retry_token", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"create_instance got unknown kwargs: {extra_kwargs!r}") + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + header_params=header_params, + body=create_instance_details, + response_type="Instance", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + header_params=header_params, + body=create_instance_details, + response_type="Instance", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def delete_instance(self, instance_id, **kwargs): + """ + Deletes an Instance. + + + :param str instance_id: (required) + The `OCID`__ of the Instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the + `if-match` parameter to the value of the etag from a previous GET or POST response for + that resource. The resource will be updated or deleted only if the etag you provide + matches the resource's current etag value. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use delete_instance API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['instanceId'] + resource_path = "/instances/{instanceId}" + method = "DELETE" + operation_name = "delete_instance" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"delete_instance got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "instanceId": instance_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def get_instance(self, instance_id, **kwargs): + """ + Gets information about an Instance. + + + :param str instance_id: (required) + The `OCID`__ of the Instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.ddfs.models.Instance` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_instance API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['instanceId'] + resource_path = "/instances/{instanceId}" + method = "GET" + operation_name = "get_instance" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"get_instance got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "instanceId": instance_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="Instance", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="Instance", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def get_work_request(self, work_request_id, **kwargs): + """ + Gets the details of a work request. + + + :param str work_request_id: (required) + The `OCID`__ of the asynchronous work request. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.ddfs.models.WorkRequest` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_work_request API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['workRequestId'] + resource_path = "/workRequests/{workRequestId}" + method = "GET" + operation_name = "get_work_request" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"get_work_request got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "workRequestId": work_request_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="WorkRequest", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="WorkRequest", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_instances(self, **kwargs): + """ + Gets a list of Instances. + + + :param str compartment_id: (optional) + The `OCID`__ of the compartment in which to list resources. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str lifecycle_state: (optional) + A filter to return only resources that match the given lifecycle state. The + state value is case-insensitive. + + Allowed values are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED" + + :param str display_name: (optional) + A filter to return only resources that match the given display name exactly. + + :param str id: (optional) + The `OCID`__ of the Instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param int limit: (optional) + For list pagination. The maximum number of results per page, or items to return in a + paginated \"List\" call. For important details about how pagination works, see + `List Pagination`__. + + __ https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param str page: (optional) + For list pagination. The value of the opc-next-page response header from the previous + \"List\" call. For important details about how pagination works, see + `List Pagination`__. + + __ https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param str sort_order: (optional) + The sort order to use, either ascending (`ASC`) or descending (`DESC`). + + Allowed values are: "ASC", "DESC" + + :param str sort_by: (optional) + The field to sort by. You can provide only one sort order. Default order for `timeCreated` + is descending. Default order for `displayName` is ascending. + + Allowed values are: "timeCreated", "displayName" + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.ddfs.models.InstanceCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_instances API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = [] + resource_path = "/instances" + method = "GET" + operation_name = "list_instances" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "compartment_id", + "lifecycle_state", + "display_name", + "id", + "limit", + "page", + "sort_order", + "sort_by", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_instances got unknown kwargs: {extra_kwargs!r}") + + if 'lifecycle_state' in kwargs: + lifecycle_state_allowed_values = ["CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED"] + if kwargs['lifecycle_state'] not in lifecycle_state_allowed_values: + raise ValueError( + f"Invalid value for `lifecycle_state`, must be one of { lifecycle_state_allowed_values }" + ) + + if 'sort_order' in kwargs: + sort_order_allowed_values = ["ASC", "DESC"] + if kwargs['sort_order'] not in sort_order_allowed_values: + raise ValueError( + f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + ) + + if 'sort_by' in kwargs: + sort_by_allowed_values = ["timeCreated", "displayName"] + if kwargs['sort_by'] not in sort_by_allowed_values: + raise ValueError( + f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" + ) + + query_params = { + "compartmentId": kwargs.get("compartment_id", missing), + "lifecycleState": kwargs.get("lifecycle_state", missing), + "displayName": kwargs.get("display_name", missing), + "id": kwargs.get("id", missing), + "limit": kwargs.get("limit", missing), + "page": kwargs.get("page", missing), + "sortOrder": kwargs.get("sort_order", missing), + "sortBy": kwargs.get("sort_by", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="InstanceCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="InstanceCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_work_request_errors(self, work_request_id, **kwargs): + """ + Lists the errors for a work request. + + + :param str work_request_id: (required) + The `OCID`__ of the asynchronous work request. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param str page: (optional) + For list pagination. The value of the opc-next-page response header from the previous + \"List\" call. For important details about how pagination works, see + `List Pagination`__. + + __ https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param int limit: (optional) + For list pagination. The maximum number of results per page, or items to return in a + paginated \"List\" call. For important details about how pagination works, see + `List Pagination`__. + + __ https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param str sort_by: (optional) + The field to sort by. Only one sort order may be provided. Default order for `timeCreated` is descending. + + Allowed values are: "timeCreated" + + :param str sort_order: (optional) + The sort order to use, either ascending (`ASC`) or descending (`DESC`). + + Allowed values are: "ASC", "DESC" + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.ddfs.models.WorkRequestErrorCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_work_request_errors API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['workRequestId'] + resource_path = "/workRequests/{workRequestId}/errors" + method = "GET" + operation_name = "list_work_request_errors" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id", + "page", + "limit", + "sort_by", + "sort_order" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_work_request_errors got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "workRequestId": work_request_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + if 'sort_by' in kwargs: + sort_by_allowed_values = ["timeCreated"] + if kwargs['sort_by'] not in sort_by_allowed_values: + raise ValueError( + f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" + ) + + if 'sort_order' in kwargs: + sort_order_allowed_values = ["ASC", "DESC"] + if kwargs['sort_order'] not in sort_order_allowed_values: + raise ValueError( + f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + ) + + query_params = { + "page": kwargs.get("page", missing), + "limit": kwargs.get("limit", missing), + "sortBy": kwargs.get("sort_by", missing), + "sortOrder": kwargs.get("sort_order", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="WorkRequestErrorCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="WorkRequestErrorCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_work_request_logs(self, work_request_id, **kwargs): + """ + Lists the logs for a work request. + + + :param str work_request_id: (required) + The `OCID`__ of the asynchronous work request. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param str page: (optional) + For list pagination. The value of the opc-next-page response header from the previous + \"List\" call. For important details about how pagination works, see + `List Pagination`__. + + __ https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param int limit: (optional) + For list pagination. The maximum number of results per page, or items to return in a + paginated \"List\" call. For important details about how pagination works, see + `List Pagination`__. + + __ https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param str sort_by: (optional) + The field to sort by. Only one sort order may be provided. Default order for `timeCreated` is descending. + + Allowed values are: "timeCreated" + + :param str sort_order: (optional) + The sort order to use, either ascending (`ASC`) or descending (`DESC`). + + Allowed values are: "ASC", "DESC" + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.ddfs.models.WorkRequestLogEntryCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_work_request_logs API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['workRequestId'] + resource_path = "/workRequests/{workRequestId}/logs" + method = "GET" + operation_name = "list_work_request_logs" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id", + "page", + "limit", + "sort_by", + "sort_order" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_work_request_logs got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "workRequestId": work_request_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + if 'sort_by' in kwargs: + sort_by_allowed_values = ["timeCreated"] + if kwargs['sort_by'] not in sort_by_allowed_values: + raise ValueError( + f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" + ) + + if 'sort_order' in kwargs: + sort_order_allowed_values = ["ASC", "DESC"] + if kwargs['sort_order'] not in sort_order_allowed_values: + raise ValueError( + f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + ) + + query_params = { + "page": kwargs.get("page", missing), + "limit": kwargs.get("limit", missing), + "sortBy": kwargs.get("sort_by", missing), + "sortOrder": kwargs.get("sort_order", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="WorkRequestLogEntryCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="WorkRequestLogEntryCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_work_requests(self, **kwargs): + """ + Lists the work requests in a compartment. + + + :param str compartment_id: (optional) + The `OCID`__ of the compartment in which to list resources. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str work_request_id: (optional) + The `OCID`__ of the asynchronous work request. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str status: (optional) + A filter to return only work requests that match the given status. + + Allowed values are: "ACCEPTED", "IN_PROGRESS", "WAITING", "NEEDS_ATTENTION", "FAILED", "SUCCEEDED", "CANCELLING", "CANCELLED" + + :param str resource_id: (optional) + The `OCID`__ of the resource affected by the work request. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param str page: (optional) + For list pagination. The value of the opc-next-page response header from the previous + \"List\" call. For important details about how pagination works, see + `List Pagination`__. + + __ https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param int limit: (optional) + For list pagination. The maximum number of results per page, or items to return in a + paginated \"List\" call. For important details about how pagination works, see + `List Pagination`__. + + __ https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param str sort_order: (optional) + The sort order to use, either ascending (`ASC`) or descending (`DESC`). + + Allowed values are: "ASC", "DESC" + + :param str sort_by: (optional) + The field to sort by. Only one sort order may be provided. Default order for `timeAccepted` is descending. + + Allowed values are: "timeAccepted" + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.ddfs.models.WorkRequestSummaryCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_work_requests API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = [] + resource_path = "/workRequests" + method = "GET" + operation_name = "list_work_requests" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "compartment_id", + "work_request_id", + "status", + "resource_id", + "opc_request_id", + "page", + "limit", + "sort_order", + "sort_by" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_work_requests got unknown kwargs: {extra_kwargs!r}") + + if 'status' in kwargs: + status_allowed_values = ["ACCEPTED", "IN_PROGRESS", "WAITING", "NEEDS_ATTENTION", "FAILED", "SUCCEEDED", "CANCELLING", "CANCELLED"] + if kwargs['status'] not in status_allowed_values: + raise ValueError( + f"Invalid value for `status`, must be one of { status_allowed_values }" + ) + + if 'sort_order' in kwargs: + sort_order_allowed_values = ["ASC", "DESC"] + if kwargs['sort_order'] not in sort_order_allowed_values: + raise ValueError( + f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + ) + + if 'sort_by' in kwargs: + sort_by_allowed_values = ["timeAccepted"] + if kwargs['sort_by'] not in sort_by_allowed_values: + raise ValueError( + f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" + ) + + query_params = { + "compartmentId": kwargs.get("compartment_id", missing), + "workRequestId": kwargs.get("work_request_id", missing), + "status": kwargs.get("status", missing), + "resourceId": kwargs.get("resource_id", missing), + "page": kwargs.get("page", missing), + "limit": kwargs.get("limit", missing), + "sortOrder": kwargs.get("sort_order", missing), + "sortBy": kwargs.get("sort_by", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="WorkRequestSummaryCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="WorkRequestSummaryCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def update_instance(self, instance_id, update_instance_details, **kwargs): + """ + Updates an Instance. + + + :param str instance_id: (required) + The `OCID`__ of the Instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param oci.ddfs.models.UpdateInstanceDetails update_instance_details: (required) + The information to be updated. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call for a resource, set the + `if-match` parameter to the value of the etag from a previous GET or POST response for + that resource. The resource will be updated or deleted only if the etag you provide + matches the resource's current etag value. + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact + Oracle about a particular request, please provide the request ID. + The only valid characters for request IDs are letters, numbers, + underscore, and dash. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use update_instance API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['instanceId'] + resource_path = "/instances/{instanceId}" + method = "PUT" + operation_name = "update_instance" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"update_instance got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "instanceId": instance_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=update_instance_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=update_instance_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) diff --git a/src/oci/ddfs/instance_client_composite_operations.py b/src/oci/ddfs/instance_client_composite_operations.py new file mode 100644 index 0000000000..d37dfafc75 --- /dev/null +++ b/src/oci/ddfs/instance_client_composite_operations.py @@ -0,0 +1,202 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260831 + +import oci # noqa: F401 +from oci.util import WAIT_RESOURCE_NOT_FOUND # noqa: F401 + + +class InstanceClientCompositeOperations(object): + """ + This class provides a wrapper around :py:class:`~oci.ddfs.InstanceClient` and offers convenience methods + for operations that would otherwise need to be chained together. For example, instead of performing an action + on a resource (e.g. launching an instance, creating a load balancer) and then using a waiter to wait for the resource + to enter a given state, you can call a single method in this class to accomplish the same functionality + """ + + def __init__(self, client, **kwargs): + """ + Creates a new InstanceClientCompositeOperations object + + :param InstanceClient client: + The service client which will be wrapped by this object + """ + self.client = client + + def change_instance_compartment_and_wait_for_state(self, instance_id, change_instance_compartment_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.ddfs.InstanceClient.change_instance_compartment` and waits for the :py:class:`~oci.ddfs.models.WorkRequest` + to enter the given state(s). + + :param str instance_id: (required) + The `OCID`__ of the Instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param oci.ddfs.models.ChangeInstanceCompartmentDetails change_instance_compartment_details: (required) + The compartment move details. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.ddfs.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.ddfs.InstanceClient.change_instance_compartment` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.change_instance_compartment(instance_id, change_instance_compartment_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def create_instance_and_wait_for_state(self, create_instance_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.ddfs.InstanceClient.create_instance` and waits for the :py:class:`~oci.ddfs.models.WorkRequest` + to enter the given state(s). + + :param oci.ddfs.models.CreateInstanceDetails create_instance_details: (required) + Details for the new Instance. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.ddfs.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.ddfs.InstanceClient.create_instance` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.create_instance(create_instance_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def delete_instance_and_wait_for_state(self, instance_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.ddfs.InstanceClient.delete_instance` and waits for the :py:class:`~oci.ddfs.models.WorkRequest` + to enter the given state(s). + + :param str instance_id: (required) + The `OCID`__ of the Instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.ddfs.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.ddfs.InstanceClient.delete_instance` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = None + try: + operation_result = self.client.delete_instance(instance_id, **operation_kwargs) + except oci.exceptions.ServiceError as e: + if e.status == 404: + return WAIT_RESOURCE_NOT_FOUND + else: + raise e + + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def update_instance_and_wait_for_state(self, instance_id, update_instance_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.ddfs.InstanceClient.update_instance` and waits for the :py:class:`~oci.ddfs.models.WorkRequest` + to enter the given state(s). + + :param str instance_id: (required) + The `OCID`__ of the Instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param oci.ddfs.models.UpdateInstanceDetails update_instance_details: (required) + The information to be updated. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.ddfs.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.ddfs.InstanceClient.update_instance` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.update_instance(instance_id, update_instance_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) diff --git a/src/oci/ddfs/models/__init__.py b/src/oci/ddfs/models/__init__.py new file mode 100644 index 0000000000..a66fe5c070 --- /dev/null +++ b/src/oci/ddfs/models/__init__.py @@ -0,0 +1,40 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260831 + +from __future__ import absolute_import + +from .change_instance_compartment_details import ChangeInstanceCompartmentDetails +from .create_instance_details import CreateInstanceDetails +from .instance import Instance +from .instance_collection import InstanceCollection +from .instance_summary import InstanceSummary +from .update_instance_details import UpdateInstanceDetails +from .work_request import WorkRequest +from .work_request_error import WorkRequestError +from .work_request_error_collection import WorkRequestErrorCollection +from .work_request_log_entry import WorkRequestLogEntry +from .work_request_log_entry_collection import WorkRequestLogEntryCollection +from .work_request_resource import WorkRequestResource +from .work_request_summary import WorkRequestSummary +from .work_request_summary_collection import WorkRequestSummaryCollection + +# Maps type names to classes for ddfs services. +ddfs_type_mapping = { + "ChangeInstanceCompartmentDetails": ChangeInstanceCompartmentDetails, + "CreateInstanceDetails": CreateInstanceDetails, + "Instance": Instance, + "InstanceCollection": InstanceCollection, + "InstanceSummary": InstanceSummary, + "UpdateInstanceDetails": UpdateInstanceDetails, + "WorkRequest": WorkRequest, + "WorkRequestError": WorkRequestError, + "WorkRequestErrorCollection": WorkRequestErrorCollection, + "WorkRequestLogEntry": WorkRequestLogEntry, + "WorkRequestLogEntryCollection": WorkRequestLogEntryCollection, + "WorkRequestResource": WorkRequestResource, + "WorkRequestSummary": WorkRequestSummary, + "WorkRequestSummaryCollection": WorkRequestSummaryCollection +} diff --git a/src/oci/ddfs/models/change_instance_compartment_details.py b/src/oci/ddfs/models/change_instance_compartment_details.py new file mode 100644 index 0000000000..c5a24d4099 --- /dev/null +++ b/src/oci/ddfs/models/change_instance_compartment_details.py @@ -0,0 +1,74 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260831 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ChangeInstanceCompartmentDetails(object): + """ + The configuration details for the move operation. + """ + + def __init__(self, **kwargs): + """ + Initializes a new ChangeInstanceCompartmentDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param compartment_id: + The value to assign to the compartment_id property of this ChangeInstanceCompartmentDetails. + :type compartment_id: str + + """ + self.swagger_types = { + 'compartment_id': 'str' + } + self.attribute_map = { + 'compartment_id': 'compartmentId' + } + self._compartment_id = None + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this ChangeInstanceCompartmentDetails. + The `OCID`__ of the compartment to move the Instance to. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this ChangeInstanceCompartmentDetails. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this ChangeInstanceCompartmentDetails. + The `OCID`__ of the compartment to move the Instance to. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this ChangeInstanceCompartmentDetails. + :type: str + """ + self._compartment_id = compartment_id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/ddfs/models/create_instance_details.py b/src/oci/ddfs/models/create_instance_details.py new file mode 100644 index 0000000000..b82376d439 --- /dev/null +++ b/src/oci/ddfs/models/create_instance_details.py @@ -0,0 +1,224 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260831 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateInstanceDetails(object): + """ + The data to create an Instance. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateInstanceDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param display_name: + The value to assign to the display_name property of this CreateInstanceDetails. + :type display_name: str + + :param idcs_url: + The value to assign to the idcs_url property of this CreateInstanceDetails. + :type idcs_url: str + + :param compartment_id: + The value to assign to the compartment_id property of this CreateInstanceDetails. + :type compartment_id: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this CreateInstanceDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this CreateInstanceDetails. + :type defined_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'display_name': 'str', + 'idcs_url': 'str', + 'compartment_id': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'display_name': 'displayName', + 'idcs_url': 'idcsUrl', + 'compartment_id': 'compartmentId', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' + } + self._display_name = None + self._idcs_url = None + self._compartment_id = None + self._freeform_tags = None + self._defined_tags = None + + @property + def display_name(self): + """ + Gets the display_name of this CreateInstanceDetails. + A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information. + + + :return: The display_name of this CreateInstanceDetails. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this CreateInstanceDetails. + A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information. + + + :param display_name: The display_name of this CreateInstanceDetails. + :type: str + """ + self._display_name = display_name + + @property + def idcs_url(self): + """ + **[Required]** Gets the idcs_url of this CreateInstanceDetails. + The Oracle Identity Cloud Service (IDCS) URL for the identity domain associated with the instance. + Use the IDCS tenant URL from your identity domain configuration. + + Example: `https://idcs-1234567890.identity.oraclecloud.com` + + + :return: The idcs_url of this CreateInstanceDetails. + :rtype: str + """ + return self._idcs_url + + @idcs_url.setter + def idcs_url(self, idcs_url): + """ + Sets the idcs_url of this CreateInstanceDetails. + The Oracle Identity Cloud Service (IDCS) URL for the identity domain associated with the instance. + Use the IDCS tenant URL from your identity domain configuration. + + Example: `https://idcs-1234567890.identity.oraclecloud.com` + + + :param idcs_url: The idcs_url of this CreateInstanceDetails. + :type: str + """ + self._idcs_url = idcs_url + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this CreateInstanceDetails. + The `OCID`__ of the compartment to create the Instance in. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this CreateInstanceDetails. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this CreateInstanceDetails. + The `OCID`__ of the compartment to create the Instance in. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this CreateInstanceDetails. + :type: str + """ + self._compartment_id = compartment_id + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this CreateInstanceDetails. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this CreateInstanceDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this CreateInstanceDetails. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this CreateInstanceDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this CreateInstanceDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this CreateInstanceDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this CreateInstanceDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this CreateInstanceDetails. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/ddfs/models/instance.py b/src/oci/ddfs/models/instance.py new file mode 100644 index 0000000000..92de48cbf9 --- /dev/null +++ b/src/oci/ddfs/models/instance.py @@ -0,0 +1,540 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260831 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class Instance(object): + """ + A Device Data FHIR Service instance. + + To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to + an administrator. If you're an administrator who needs to write policies to give users access, see + `Getting Started with Policies`__. + + __ https://docs.oracle.com/iaas/Content/Identity/policiesgs/get-started-with-policies.htm + """ + + #: A constant which can be used with the lifecycle_state property of a Instance. + #: This constant has a value of "CREATING" + LIFECYCLE_STATE_CREATING = "CREATING" + + #: A constant which can be used with the lifecycle_state property of a Instance. + #: This constant has a value of "UPDATING" + LIFECYCLE_STATE_UPDATING = "UPDATING" + + #: A constant which can be used with the lifecycle_state property of a Instance. + #: This constant has a value of "ACTIVE" + LIFECYCLE_STATE_ACTIVE = "ACTIVE" + + #: A constant which can be used with the lifecycle_state property of a Instance. + #: This constant has a value of "DELETING" + LIFECYCLE_STATE_DELETING = "DELETING" + + #: A constant which can be used with the lifecycle_state property of a Instance. + #: This constant has a value of "DELETED" + LIFECYCLE_STATE_DELETED = "DELETED" + + #: A constant which can be used with the lifecycle_state property of a Instance. + #: This constant has a value of "FAILED" + LIFECYCLE_STATE_FAILED = "FAILED" + + def __init__(self, **kwargs): + """ + Initializes a new Instance object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this Instance. + :type id: str + + :param display_name: + The value to assign to the display_name property of this Instance. + :type display_name: str + + :param compartment_id: + The value to assign to the compartment_id property of this Instance. + :type compartment_id: str + + :param idcs_url: + The value to assign to the idcs_url property of this Instance. + :type idcs_url: str + + :param public_ip: + The value to assign to the public_ip property of this Instance. + :type public_ip: str + + :param fhir_service_endpoint: + The value to assign to the fhir_service_endpoint property of this Instance. + :type fhir_service_endpoint: str + + :param time_created: + The value to assign to the time_created property of this Instance. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this Instance. + :type time_updated: datetime + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this Instance. + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + :param lifecycle_details: + The value to assign to the lifecycle_details property of this Instance. + :type lifecycle_details: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this Instance. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this Instance. + :type defined_tags: dict(str, dict(str, object)) + + :param system_tags: + The value to assign to the system_tags property of this Instance. + :type system_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'id': 'str', + 'display_name': 'str', + 'compartment_id': 'str', + 'idcs_url': 'str', + 'public_ip': 'str', + 'fhir_service_endpoint': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'lifecycle_state': 'str', + 'lifecycle_details': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'id': 'id', + 'display_name': 'displayName', + 'compartment_id': 'compartmentId', + 'idcs_url': 'idcsUrl', + 'public_ip': 'publicIp', + 'fhir_service_endpoint': 'fhirServiceEndpoint', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'lifecycle_state': 'lifecycleState', + 'lifecycle_details': 'lifecycleDetails', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags' + } + self._id = None + self._display_name = None + self._compartment_id = None + self._idcs_url = None + self._public_ip = None + self._fhir_service_endpoint = None + self._time_created = None + self._time_updated = None + self._lifecycle_state = None + self._lifecycle_details = None + self._freeform_tags = None + self._defined_tags = None + self._system_tags = None + + @property + def id(self): + """ + **[Required]** Gets the id of this Instance. + The `OCID`__ of the Instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this Instance. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this Instance. + The `OCID`__ of the Instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this Instance. + :type: str + """ + self._id = id + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this Instance. + A user-friendly name. Does not have to be unique, and it's changeable. + + + :return: The display_name of this Instance. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this Instance. + A user-friendly name. Does not have to be unique, and it's changeable. + + + :param display_name: The display_name of this Instance. + :type: str + """ + self._display_name = display_name + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this Instance. + The `OCID`__ of the compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this Instance. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this Instance. + The `OCID`__ of the compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this Instance. + :type: str + """ + self._compartment_id = compartment_id + + @property + def idcs_url(self): + """ + **[Required]** Gets the idcs_url of this Instance. + The Oracle Identity Cloud Service (IDCS) URL for the identity domain associated with the instance. + Use the IDCS tenant URL from your identity domain configuration. + + Example: `https://idcs-1234567890.identity.oraclecloud.com` + + + :return: The idcs_url of this Instance. + :rtype: str + """ + return self._idcs_url + + @idcs_url.setter + def idcs_url(self, idcs_url): + """ + Sets the idcs_url of this Instance. + The Oracle Identity Cloud Service (IDCS) URL for the identity domain associated with the instance. + Use the IDCS tenant URL from your identity domain configuration. + + Example: `https://idcs-1234567890.identity.oraclecloud.com` + + + :param idcs_url: The idcs_url of this Instance. + :type: str + """ + self._idcs_url = idcs_url + + @property + def public_ip(self): + """ + Gets the public_ip of this Instance. + The public IP address for the instance's FHIR service endpoint. + + + :return: The public_ip of this Instance. + :rtype: str + """ + return self._public_ip + + @public_ip.setter + def public_ip(self, public_ip): + """ + Sets the public_ip of this Instance. + The public IP address for the instance's FHIR service endpoint. + + + :param public_ip: The public_ip of this Instance. + :type: str + """ + self._public_ip = public_ip + + @property + def fhir_service_endpoint(self): + """ + Gets the fhir_service_endpoint of this Instance. + The HTTPS endpoint for the instance's Fast Healthcare Interoperability Resources (FHIR) service. + + Example: `https://example.ddfs.oraclecloud.com/api/fhir` + + + :return: The fhir_service_endpoint of this Instance. + :rtype: str + """ + return self._fhir_service_endpoint + + @fhir_service_endpoint.setter + def fhir_service_endpoint(self, fhir_service_endpoint): + """ + Sets the fhir_service_endpoint of this Instance. + The HTTPS endpoint for the instance's Fast Healthcare Interoperability Resources (FHIR) service. + + Example: `https://example.ddfs.oraclecloud.com/api/fhir` + + + :param fhir_service_endpoint: The fhir_service_endpoint of this Instance. + :type: str + """ + self._fhir_service_endpoint = fhir_service_endpoint + + @property + def time_created(self): + """ + **[Required]** Gets the time_created of this Instance. + The date and time the Instance was created, in the format defined by `RFC 3339`__. + + Example: `2016-08-25T21:10:29.600Z` + + __ https://tools.ietf.org/html/rfc3339 + + + :return: The time_created of this Instance. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this Instance. + The date and time the Instance was created, in the format defined by `RFC 3339`__. + + Example: `2016-08-25T21:10:29.600Z` + + __ https://tools.ietf.org/html/rfc3339 + + + :param time_created: The time_created of this Instance. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + Gets the time_updated of this Instance. + The date and time the Instance was updated, in the format defined by `RFC 3339`__. + + Example: `2016-08-25T21:10:29.600Z` + + __ https://tools.ietf.org/html/rfc3339 + + + :return: The time_updated of this Instance. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this Instance. + The date and time the Instance was updated, in the format defined by `RFC 3339`__. + + Example: `2016-08-25T21:10:29.600Z` + + __ https://tools.ietf.org/html/rfc3339 + + + :param time_updated: The time_updated of this Instance. + :type: datetime + """ + self._time_updated = time_updated + + @property + def lifecycle_state(self): + """ + **[Required]** Gets the lifecycle_state of this Instance. + The current state of the Instance. + + Allowed values for this property are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this Instance. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this Instance. + The current state of the Instance. + + + :param lifecycle_state: The lifecycle_state of this Instance. + :type: str + """ + allowed_values = ["CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + + @property + def lifecycle_details(self): + """ + Gets the lifecycle_details of this Instance. + A message that describes the current state of the Instance in more detail. For example, + can be used to provide actionable information for a resource in the Failed state. + + + :return: The lifecycle_details of this Instance. + :rtype: str + """ + return self._lifecycle_details + + @lifecycle_details.setter + def lifecycle_details(self, lifecycle_details): + """ + Sets the lifecycle_details of this Instance. + A message that describes the current state of the Instance in more detail. For example, + can be used to provide actionable information for a resource in the Failed state. + + + :param lifecycle_details: The lifecycle_details of this Instance. + :type: str + """ + self._lifecycle_details = lifecycle_details + + @property + def freeform_tags(self): + """ + **[Required]** Gets the freeform_tags of this Instance. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this Instance. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this Instance. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this Instance. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + **[Required]** Gets the defined_tags of this Instance. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this Instance. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this Instance. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this Instance. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def system_tags(self): + """ + Gets the system_tags of this Instance. + System tags for this resource. Each key is predefined and scoped to a namespace. + + Example: `{\"orcl-cloud\": {\"example-key\": \"example-value\"}}` + + + :return: The system_tags of this Instance. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this Instance. + System tags for this resource. Each key is predefined and scoped to a namespace. + + Example: `{\"orcl-cloud\": {\"example-key\": \"example-value\"}}` + + + :param system_tags: The system_tags of this Instance. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/ddfs/models/instance_collection.py b/src/oci/ddfs/models/instance_collection.py new file mode 100644 index 0000000000..9c21f37f46 --- /dev/null +++ b/src/oci/ddfs/models/instance_collection.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260831 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class InstanceCollection(object): + """ + Results of an instance search. Contains both InstanceSummary items and other information, such as metadata. + """ + + def __init__(self, **kwargs): + """ + Initializes a new InstanceCollection object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this InstanceCollection. + :type items: list[oci.ddfs.models.InstanceSummary] + + """ + self.swagger_types = { + 'items': 'list[InstanceSummary]' + } + self.attribute_map = { + 'items': 'items' + } + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this InstanceCollection. + List of instances. + + + :return: The items of this InstanceCollection. + :rtype: list[oci.ddfs.models.InstanceSummary] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this InstanceCollection. + List of instances. + + + :param items: The items of this InstanceCollection. + :type: list[oci.ddfs.models.InstanceSummary] + """ + self._items = items + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/ddfs/models/instance_summary.py b/src/oci/ddfs/models/instance_summary.py new file mode 100644 index 0000000000..e869eeb54a --- /dev/null +++ b/src/oci/ddfs/models/instance_summary.py @@ -0,0 +1,436 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260831 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class InstanceSummary(object): + """ + Summary information about an Instance. + """ + + def __init__(self, **kwargs): + """ + Initializes a new InstanceSummary object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this InstanceSummary. + :type id: str + + :param display_name: + The value to assign to the display_name property of this InstanceSummary. + :type display_name: str + + :param compartment_id: + The value to assign to the compartment_id property of this InstanceSummary. + :type compartment_id: str + + :param idcs_url: + The value to assign to the idcs_url property of this InstanceSummary. + :type idcs_url: str + + :param time_created: + The value to assign to the time_created property of this InstanceSummary. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this InstanceSummary. + :type time_updated: datetime + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this InstanceSummary. + :type lifecycle_state: str + + :param lifecycle_details: + The value to assign to the lifecycle_details property of this InstanceSummary. + :type lifecycle_details: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this InstanceSummary. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this InstanceSummary. + :type defined_tags: dict(str, dict(str, object)) + + :param system_tags: + The value to assign to the system_tags property of this InstanceSummary. + :type system_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'id': 'str', + 'display_name': 'str', + 'compartment_id': 'str', + 'idcs_url': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'lifecycle_state': 'str', + 'lifecycle_details': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'id': 'id', + 'display_name': 'displayName', + 'compartment_id': 'compartmentId', + 'idcs_url': 'idcsUrl', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'lifecycle_state': 'lifecycleState', + 'lifecycle_details': 'lifecycleDetails', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags' + } + self._id = None + self._display_name = None + self._compartment_id = None + self._idcs_url = None + self._time_created = None + self._time_updated = None + self._lifecycle_state = None + self._lifecycle_details = None + self._freeform_tags = None + self._defined_tags = None + self._system_tags = None + + @property + def id(self): + """ + **[Required]** Gets the id of this InstanceSummary. + The `OCID`__ of the Instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this InstanceSummary. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this InstanceSummary. + The `OCID`__ of the Instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this InstanceSummary. + :type: str + """ + self._id = id + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this InstanceSummary. + A user-friendly name. Does not have to be unique, and it's changeable. + + + :return: The display_name of this InstanceSummary. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this InstanceSummary. + A user-friendly name. Does not have to be unique, and it's changeable. + + + :param display_name: The display_name of this InstanceSummary. + :type: str + """ + self._display_name = display_name + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this InstanceSummary. + The `OCID`__ of the compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this InstanceSummary. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this InstanceSummary. + The `OCID`__ of the compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this InstanceSummary. + :type: str + """ + self._compartment_id = compartment_id + + @property + def idcs_url(self): + """ + **[Required]** Gets the idcs_url of this InstanceSummary. + The Oracle Identity Cloud Service (IDCS) URL for the identity domain associated with the instance. + Use the IDCS tenant URL from your identity domain configuration. + + Example: `https://idcs-1234567890.identity.oraclecloud.com` + + + :return: The idcs_url of this InstanceSummary. + :rtype: str + """ + return self._idcs_url + + @idcs_url.setter + def idcs_url(self, idcs_url): + """ + Sets the idcs_url of this InstanceSummary. + The Oracle Identity Cloud Service (IDCS) URL for the identity domain associated with the instance. + Use the IDCS tenant URL from your identity domain configuration. + + Example: `https://idcs-1234567890.identity.oraclecloud.com` + + + :param idcs_url: The idcs_url of this InstanceSummary. + :type: str + """ + self._idcs_url = idcs_url + + @property + def time_created(self): + """ + **[Required]** Gets the time_created of this InstanceSummary. + The date and time the Instance was created, in the format defined by `RFC 3339`__. + + Example: `2016-08-25T21:10:29.600Z` + + __ https://tools.ietf.org/html/rfc3339 + + + :return: The time_created of this InstanceSummary. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this InstanceSummary. + The date and time the Instance was created, in the format defined by `RFC 3339`__. + + Example: `2016-08-25T21:10:29.600Z` + + __ https://tools.ietf.org/html/rfc3339 + + + :param time_created: The time_created of this InstanceSummary. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + Gets the time_updated of this InstanceSummary. + The date and time the Instance was updated, in the format defined by `RFC 3339`__. + + Example: `2016-08-25T21:10:29.600Z` + + __ https://tools.ietf.org/html/rfc3339 + + + :return: The time_updated of this InstanceSummary. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this InstanceSummary. + The date and time the Instance was updated, in the format defined by `RFC 3339`__. + + Example: `2016-08-25T21:10:29.600Z` + + __ https://tools.ietf.org/html/rfc3339 + + + :param time_updated: The time_updated of this InstanceSummary. + :type: datetime + """ + self._time_updated = time_updated + + @property + def lifecycle_state(self): + """ + **[Required]** Gets the lifecycle_state of this InstanceSummary. + The current state of the Instance. + + + :return: The lifecycle_state of this InstanceSummary. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this InstanceSummary. + The current state of the Instance. + + + :param lifecycle_state: The lifecycle_state of this InstanceSummary. + :type: str + """ + self._lifecycle_state = lifecycle_state + + @property + def lifecycle_details(self): + """ + Gets the lifecycle_details of this InstanceSummary. + A message that describes the current state of the Instance in more detail. For example, + can be used to provide actionable information for a resource in the Failed state. + + + :return: The lifecycle_details of this InstanceSummary. + :rtype: str + """ + return self._lifecycle_details + + @lifecycle_details.setter + def lifecycle_details(self, lifecycle_details): + """ + Sets the lifecycle_details of this InstanceSummary. + A message that describes the current state of the Instance in more detail. For example, + can be used to provide actionable information for a resource in the Failed state. + + + :param lifecycle_details: The lifecycle_details of this InstanceSummary. + :type: str + """ + self._lifecycle_details = lifecycle_details + + @property + def freeform_tags(self): + """ + **[Required]** Gets the freeform_tags of this InstanceSummary. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this InstanceSummary. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this InstanceSummary. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this InstanceSummary. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + **[Required]** Gets the defined_tags of this InstanceSummary. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this InstanceSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this InstanceSummary. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this InstanceSummary. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def system_tags(self): + """ + Gets the system_tags of this InstanceSummary. + System tags for this resource. Each key is predefined and scoped to a namespace. + + Example: `{\"orcl-cloud\": {\"example-key\": \"example-value\"}}` + + + :return: The system_tags of this InstanceSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this InstanceSummary. + System tags for this resource. Each key is predefined and scoped to a namespace. + + Example: `{\"orcl-cloud\": {\"example-key\": \"example-value\"}}` + + + :param system_tags: The system_tags of this InstanceSummary. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/ddfs/models/update_instance_details.py b/src/oci/ddfs/models/update_instance_details.py new file mode 100644 index 0000000000..b7e74f2f4f --- /dev/null +++ b/src/oci/ddfs/models/update_instance_details.py @@ -0,0 +1,152 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260831 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class UpdateInstanceDetails(object): + """ + The data to update an Instance. + """ + + def __init__(self, **kwargs): + """ + Initializes a new UpdateInstanceDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param display_name: + The value to assign to the display_name property of this UpdateInstanceDetails. + :type display_name: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this UpdateInstanceDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this UpdateInstanceDetails. + :type defined_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'display_name': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'display_name': 'displayName', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' + } + self._display_name = None + self._freeform_tags = None + self._defined_tags = None + + @property + def display_name(self): + """ + Gets the display_name of this UpdateInstanceDetails. + A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information. + + + :return: The display_name of this UpdateInstanceDetails. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this UpdateInstanceDetails. + A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information. + + + :param display_name: The display_name of this UpdateInstanceDetails. + :type: str + """ + self._display_name = display_name + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this UpdateInstanceDetails. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this UpdateInstanceDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this UpdateInstanceDetails. + 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\"}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this UpdateInstanceDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this UpdateInstanceDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this UpdateInstanceDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this UpdateInstanceDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this UpdateInstanceDetails. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/ddfs/models/work_request.py b/src/oci/ddfs/models/work_request.py new file mode 100644 index 0000000000..faa07c1871 --- /dev/null +++ b/src/oci/ddfs/models/work_request.py @@ -0,0 +1,449 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260831 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class WorkRequest(object): + """ + An asynchronous work request. Work requests help you monitor long-running operations. When you start a long-running operation, + the service creates a work request. A work request is an activity log that lets you track each step in the operation's + progress. Each work request has an OCID that lets you interact with it programmatically and use it for automation. + """ + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "CREATE_INSTANCE" + OPERATION_TYPE_CREATE_INSTANCE = "CREATE_INSTANCE" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "UPDATE_INSTANCE" + OPERATION_TYPE_UPDATE_INSTANCE = "UPDATE_INSTANCE" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "DELETE_INSTANCE" + OPERATION_TYPE_DELETE_INSTANCE = "DELETE_INSTANCE" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "MOVE_INSTANCE" + OPERATION_TYPE_MOVE_INSTANCE = "MOVE_INSTANCE" + + #: A constant which can be used with the status property of a WorkRequest. + #: This constant has a value of "ACCEPTED" + STATUS_ACCEPTED = "ACCEPTED" + + #: A constant which can be used with the status property of a WorkRequest. + #: This constant has a value of "IN_PROGRESS" + STATUS_IN_PROGRESS = "IN_PROGRESS" + + #: A constant which can be used with the status property of a WorkRequest. + #: This constant has a value of "WAITING" + STATUS_WAITING = "WAITING" + + #: A constant which can be used with the status property of a WorkRequest. + #: This constant has a value of "NEEDS_ATTENTION" + STATUS_NEEDS_ATTENTION = "NEEDS_ATTENTION" + + #: A constant which can be used with the status property of a WorkRequest. + #: This constant has a value of "FAILED" + STATUS_FAILED = "FAILED" + + #: A constant which can be used with the status property of a WorkRequest. + #: This constant has a value of "SUCCEEDED" + STATUS_SUCCEEDED = "SUCCEEDED" + + #: A constant which can be used with the status property of a WorkRequest. + #: This constant has a value of "CANCELLING" + STATUS_CANCELLING = "CANCELLING" + + #: A constant which can be used with the status property of a WorkRequest. + #: This constant has a value of "CANCELLED" + STATUS_CANCELLED = "CANCELLED" + + def __init__(self, **kwargs): + """ + Initializes a new WorkRequest object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param operation_type: + The value to assign to the operation_type property of this WorkRequest. + Allowed values for this property are: "CREATE_INSTANCE", "UPDATE_INSTANCE", "DELETE_INSTANCE", "MOVE_INSTANCE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type operation_type: str + + :param status: + The value to assign to the status property of this WorkRequest. + Allowed values for this property are: "ACCEPTED", "IN_PROGRESS", "WAITING", "NEEDS_ATTENTION", "FAILED", "SUCCEEDED", "CANCELLING", "CANCELLED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type status: str + + :param id: + The value to assign to the id property of this WorkRequest. + :type id: str + + :param compartment_id: + The value to assign to the compartment_id property of this WorkRequest. + :type compartment_id: str + + :param resources: + The value to assign to the resources property of this WorkRequest. + :type resources: list[oci.ddfs.models.WorkRequestResource] + + :param percent_complete: + The value to assign to the percent_complete property of this WorkRequest. + :type percent_complete: float + + :param time_accepted: + The value to assign to the time_accepted property of this WorkRequest. + :type time_accepted: datetime + + :param time_started: + The value to assign to the time_started property of this WorkRequest. + :type time_started: datetime + + :param time_finished: + The value to assign to the time_finished property of this WorkRequest. + :type time_finished: datetime + + :param time_updated: + The value to assign to the time_updated property of this WorkRequest. + :type time_updated: datetime + + """ + self.swagger_types = { + 'operation_type': 'str', + 'status': 'str', + 'id': 'str', + 'compartment_id': 'str', + 'resources': 'list[WorkRequestResource]', + 'percent_complete': 'float', + 'time_accepted': 'datetime', + 'time_started': 'datetime', + 'time_finished': 'datetime', + 'time_updated': 'datetime' + } + self.attribute_map = { + 'operation_type': 'operationType', + 'status': 'status', + 'id': 'id', + 'compartment_id': 'compartmentId', + 'resources': 'resources', + 'percent_complete': 'percentComplete', + 'time_accepted': 'timeAccepted', + 'time_started': 'timeStarted', + 'time_finished': 'timeFinished', + 'time_updated': 'timeUpdated' + } + self._operation_type = None + self._status = None + self._id = None + self._compartment_id = None + self._resources = None + self._percent_complete = None + self._time_accepted = None + self._time_started = None + self._time_finished = None + self._time_updated = None + + @property + def operation_type(self): + """ + **[Required]** Gets the operation_type of this WorkRequest. + The asynchronous operation tracked by this work request. + + Allowed values for this property are: "CREATE_INSTANCE", "UPDATE_INSTANCE", "DELETE_INSTANCE", "MOVE_INSTANCE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The operation_type of this WorkRequest. + :rtype: str + """ + return self._operation_type + + @operation_type.setter + def operation_type(self, operation_type): + """ + Sets the operation_type of this WorkRequest. + The asynchronous operation tracked by this work request. + + + :param operation_type: The operation_type of this WorkRequest. + :type: str + """ + allowed_values = ["CREATE_INSTANCE", "UPDATE_INSTANCE", "DELETE_INSTANCE", "MOVE_INSTANCE"] + if not value_allowed_none_or_none_sentinel(operation_type, allowed_values): + operation_type = 'UNKNOWN_ENUM_VALUE' + self._operation_type = operation_type + + @property + def status(self): + """ + **[Required]** Gets the status of this WorkRequest. + The status of the work request. + + Allowed values for this property are: "ACCEPTED", "IN_PROGRESS", "WAITING", "NEEDS_ATTENTION", "FAILED", "SUCCEEDED", "CANCELLING", "CANCELLED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The status of this WorkRequest. + :rtype: str + """ + return self._status + + @status.setter + def status(self, status): + """ + Sets the status of this WorkRequest. + The status of the work request. + + + :param status: The status of this WorkRequest. + :type: str + """ + allowed_values = ["ACCEPTED", "IN_PROGRESS", "WAITING", "NEEDS_ATTENTION", "FAILED", "SUCCEEDED", "CANCELLING", "CANCELLED"] + if not value_allowed_none_or_none_sentinel(status, allowed_values): + status = 'UNKNOWN_ENUM_VALUE' + self._status = status + + @property + def id(self): + """ + **[Required]** Gets the id of this WorkRequest. + The `OCID`__ of the work request. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this WorkRequest. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this WorkRequest. + The `OCID`__ of the work request. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this WorkRequest. + :type: str + """ + self._id = id + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this WorkRequest. + The `OCID`__ of the compartment that contains the work request. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this WorkRequest. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this WorkRequest. + The `OCID`__ of the compartment that contains the work request. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this WorkRequest. + :type: str + """ + self._compartment_id = compartment_id + + @property + def resources(self): + """ + **[Required]** Gets the resources of this WorkRequest. + The resources that are affected by the work request. + + + :return: The resources of this WorkRequest. + :rtype: list[oci.ddfs.models.WorkRequestResource] + """ + return self._resources + + @resources.setter + def resources(self, resources): + """ + Sets the resources of this WorkRequest. + The resources that are affected by the work request. + + + :param resources: The resources of this WorkRequest. + :type: list[oci.ddfs.models.WorkRequestResource] + """ + self._resources = resources + + @property + def percent_complete(self): + """ + **[Required]** Gets the percent_complete of this WorkRequest. + Shows the progress of the operation tracked by the work request, as a percentage of the total work + that must be performed. + + + :return: The percent_complete of this WorkRequest. + :rtype: float + """ + return self._percent_complete + + @percent_complete.setter + def percent_complete(self, percent_complete): + """ + Sets the percent_complete of this WorkRequest. + Shows the progress of the operation tracked by the work request, as a percentage of the total work + that must be performed. + + + :param percent_complete: The percent_complete of this WorkRequest. + :type: float + """ + self._percent_complete = percent_complete + + @property + def time_accepted(self): + """ + **[Required]** Gets the time_accepted of this WorkRequest. + The date and time the work request was created, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/html/rfc3339 + + + :return: The time_accepted of this WorkRequest. + :rtype: datetime + """ + return self._time_accepted + + @time_accepted.setter + def time_accepted(self, time_accepted): + """ + Sets the time_accepted of this WorkRequest. + The date and time the work request was created, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/html/rfc3339 + + + :param time_accepted: The time_accepted of this WorkRequest. + :type: datetime + """ + self._time_accepted = time_accepted + + @property + def time_started(self): + """ + Gets the time_started of this WorkRequest. + The date and time the work request was started, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/html/rfc3339 + + + :return: The time_started of this WorkRequest. + :rtype: datetime + """ + return self._time_started + + @time_started.setter + def time_started(self, time_started): + """ + Sets the time_started of this WorkRequest. + The date and time the work request was started, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/html/rfc3339 + + + :param time_started: The time_started of this WorkRequest. + :type: datetime + """ + self._time_started = time_started + + @property + def time_finished(self): + """ + Gets the time_finished of this WorkRequest. + The date and time the work request was finished, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/rfc/rfc3339 + + + :return: The time_finished of this WorkRequest. + :rtype: datetime + """ + return self._time_finished + + @time_finished.setter + def time_finished(self, time_finished): + """ + Sets the time_finished of this WorkRequest. + The date and time the work request was finished, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/rfc/rfc3339 + + + :param time_finished: The time_finished of this WorkRequest. + :type: datetime + """ + self._time_finished = time_finished + + @property + def time_updated(self): + """ + Gets the time_updated of this WorkRequest. + The date and time the work request was updated, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/rfc/rfc3339 + + + :return: The time_updated of this WorkRequest. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this WorkRequest. + The date and time the work request was updated, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/rfc/rfc3339 + + + :param time_updated: The time_updated of this WorkRequest. + :type: datetime + """ + self._time_updated = time_updated + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/ddfs/models/work_request_error.py b/src/oci/ddfs/models/work_request_error.py new file mode 100644 index 0000000000..a142a85922 --- /dev/null +++ b/src/oci/ddfs/models/work_request_error.py @@ -0,0 +1,144 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260831 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class WorkRequestError(object): + """ + An error encountered while performing an operation that is tracked by a work request. + """ + + def __init__(self, **kwargs): + """ + Initializes a new WorkRequestError object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param code: + The value to assign to the code property of this WorkRequestError. + :type code: str + + :param message: + The value to assign to the message property of this WorkRequestError. + :type message: str + + :param timestamp: + The value to assign to the timestamp property of this WorkRequestError. + :type timestamp: datetime + + """ + self.swagger_types = { + 'code': 'str', + 'message': 'str', + 'timestamp': 'datetime' + } + self.attribute_map = { + 'code': 'code', + 'message': 'message', + 'timestamp': 'timestamp' + } + self._code = None + self._message = None + self._timestamp = None + + @property + def code(self): + """ + **[Required]** Gets the code of this WorkRequestError. + A machine-usable code for the error that occurred. For a list of error codes, see + `API Errors`__. + + __ https://docs.oracle.com/iaas/Content/API/References/apierrors.htm + + + :return: The code of this WorkRequestError. + :rtype: str + """ + return self._code + + @code.setter + def code(self, code): + """ + Sets the code of this WorkRequestError. + A machine-usable code for the error that occurred. For a list of error codes, see + `API Errors`__. + + __ https://docs.oracle.com/iaas/Content/API/References/apierrors.htm + + + :param code: The code of this WorkRequestError. + :type: str + """ + self._code = code + + @property + def message(self): + """ + **[Required]** Gets the message of this WorkRequestError. + A human-readable error message. + + + :return: The message of this WorkRequestError. + :rtype: str + """ + return self._message + + @message.setter + def message(self, message): + """ + Sets the message of this WorkRequestError. + A human-readable error message. + + + :param message: The message of this WorkRequestError. + :type: str + """ + self._message = message + + @property + def timestamp(self): + """ + **[Required]** Gets the timestamp of this WorkRequestError. + The date and time the error occurred, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/html/rfc3339 + + + :return: The timestamp of this WorkRequestError. + :rtype: datetime + """ + return self._timestamp + + @timestamp.setter + def timestamp(self, timestamp): + """ + Sets the timestamp of this WorkRequestError. + The date and time the error occurred, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/html/rfc3339 + + + :param timestamp: The timestamp of this WorkRequestError. + :type: datetime + """ + self._timestamp = timestamp + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/ddfs/models/work_request_error_collection.py b/src/oci/ddfs/models/work_request_error_collection.py new file mode 100644 index 0000000000..d4dc3169b6 --- /dev/null +++ b/src/oci/ddfs/models/work_request_error_collection.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260831 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class WorkRequestErrorCollection(object): + """ + A list of work request errors. Can contain both errors and other information, such as metadata. + """ + + def __init__(self, **kwargs): + """ + Initializes a new WorkRequestErrorCollection object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this WorkRequestErrorCollection. + :type items: list[oci.ddfs.models.WorkRequestError] + + """ + self.swagger_types = { + 'items': 'list[WorkRequestError]' + } + self.attribute_map = { + 'items': 'items' + } + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this WorkRequestErrorCollection. + A list of work request errors. + + + :return: The items of this WorkRequestErrorCollection. + :rtype: list[oci.ddfs.models.WorkRequestError] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this WorkRequestErrorCollection. + A list of work request errors. + + + :param items: The items of this WorkRequestErrorCollection. + :type: list[oci.ddfs.models.WorkRequestError] + """ + self._items = items + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/ddfs/models/work_request_log_entry.py b/src/oci/ddfs/models/work_request_log_entry.py new file mode 100644 index 0000000000..488b40647d --- /dev/null +++ b/src/oci/ddfs/models/work_request_log_entry.py @@ -0,0 +1,107 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260831 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class WorkRequestLogEntry(object): + """ + A log message from performing an operation that is tracked by a work request. + """ + + def __init__(self, **kwargs): + """ + Initializes a new WorkRequestLogEntry object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param message: + The value to assign to the message property of this WorkRequestLogEntry. + :type message: str + + :param timestamp: + The value to assign to the timestamp property of this WorkRequestLogEntry. + :type timestamp: datetime + + """ + self.swagger_types = { + 'message': 'str', + 'timestamp': 'datetime' + } + self.attribute_map = { + 'message': 'message', + 'timestamp': 'timestamp' + } + self._message = None + self._timestamp = None + + @property + def message(self): + """ + **[Required]** Gets the message of this WorkRequestLogEntry. + A human-readable log message. + + + :return: The message of this WorkRequestLogEntry. + :rtype: str + """ + return self._message + + @message.setter + def message(self, message): + """ + Sets the message of this WorkRequestLogEntry. + A human-readable log message. + + + :param message: The message of this WorkRequestLogEntry. + :type: str + """ + self._message = message + + @property + def timestamp(self): + """ + **[Required]** Gets the timestamp of this WorkRequestLogEntry. + The date and time the log message was written, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/html/rfc3339 + + + :return: The timestamp of this WorkRequestLogEntry. + :rtype: datetime + """ + return self._timestamp + + @timestamp.setter + def timestamp(self, timestamp): + """ + Sets the timestamp of this WorkRequestLogEntry. + The date and time the log message was written, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/html/rfc3339 + + + :param timestamp: The timestamp of this WorkRequestLogEntry. + :type: datetime + """ + self._timestamp = timestamp + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/ddfs/models/work_request_log_entry_collection.py b/src/oci/ddfs/models/work_request_log_entry_collection.py new file mode 100644 index 0000000000..a5d8dcf30c --- /dev/null +++ b/src/oci/ddfs/models/work_request_log_entry_collection.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260831 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class WorkRequestLogEntryCollection(object): + """ + A list of work request logs. Can contain both logs and other information, such as metadata. + """ + + def __init__(self, **kwargs): + """ + Initializes a new WorkRequestLogEntryCollection object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this WorkRequestLogEntryCollection. + :type items: list[oci.ddfs.models.WorkRequestLogEntry] + + """ + self.swagger_types = { + 'items': 'list[WorkRequestLogEntry]' + } + self.attribute_map = { + 'items': 'items' + } + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this WorkRequestLogEntryCollection. + A list of work request log entries. + + + :return: The items of this WorkRequestLogEntryCollection. + :rtype: list[oci.ddfs.models.WorkRequestLogEntry] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this WorkRequestLogEntryCollection. + A list of work request log entries. + + + :param items: The items of this WorkRequestLogEntryCollection. + :type: list[oci.ddfs.models.WorkRequestLogEntry] + """ + self._items = items + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/ddfs/models/work_request_resource.py b/src/oci/ddfs/models/work_request_resource.py new file mode 100644 index 0000000000..383a9c34d8 --- /dev/null +++ b/src/oci/ddfs/models/work_request_resource.py @@ -0,0 +1,236 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260831 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class WorkRequestResource(object): + """ + A resource created or operated on by a work request. + """ + + #: A constant which can be used with the action_type property of a WorkRequestResource. + #: This constant has a value of "CREATED" + ACTION_TYPE_CREATED = "CREATED" + + #: A constant which can be used with the action_type property of a WorkRequestResource. + #: This constant has a value of "UPDATED" + ACTION_TYPE_UPDATED = "UPDATED" + + #: A constant which can be used with the action_type property of a WorkRequestResource. + #: This constant has a value of "DELETED" + ACTION_TYPE_DELETED = "DELETED" + + #: A constant which can be used with the action_type property of a WorkRequestResource. + #: This constant has a value of "IN_PROGRESS" + ACTION_TYPE_IN_PROGRESS = "IN_PROGRESS" + + #: A constant which can be used with the action_type property of a WorkRequestResource. + #: This constant has a value of "RELATED" + ACTION_TYPE_RELATED = "RELATED" + + #: A constant which can be used with the action_type property of a WorkRequestResource. + #: This constant has a value of "FAILED" + ACTION_TYPE_FAILED = "FAILED" + + def __init__(self, **kwargs): + """ + Initializes a new WorkRequestResource object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param entity_type: + The value to assign to the entity_type property of this WorkRequestResource. + :type entity_type: str + + :param action_type: + The value to assign to the action_type property of this WorkRequestResource. + Allowed values for this property are: "CREATED", "UPDATED", "DELETED", "IN_PROGRESS", "RELATED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type action_type: str + + :param identifier: + The value to assign to the identifier property of this WorkRequestResource. + :type identifier: str + + :param entity_uri: + The value to assign to the entity_uri property of this WorkRequestResource. + :type entity_uri: str + + :param metadata: + The value to assign to the metadata property of this WorkRequestResource. + :type metadata: dict(str, str) + + """ + self.swagger_types = { + 'entity_type': 'str', + 'action_type': 'str', + 'identifier': 'str', + 'entity_uri': 'str', + 'metadata': 'dict(str, str)' + } + self.attribute_map = { + 'entity_type': 'entityType', + 'action_type': 'actionType', + 'identifier': 'identifier', + 'entity_uri': 'entityUri', + 'metadata': 'metadata' + } + self._entity_type = None + self._action_type = None + self._identifier = None + self._entity_uri = None + self._metadata = None + + @property + def entity_type(self): + """ + **[Required]** Gets the entity_type of this WorkRequestResource. + The resource type that the work request affects. + + + :return: The entity_type of this WorkRequestResource. + :rtype: str + """ + return self._entity_type + + @entity_type.setter + def entity_type(self, entity_type): + """ + Sets the entity_type of this WorkRequestResource. + The resource type that the work request affects. + + + :param entity_type: The entity_type of this WorkRequestResource. + :type: str + """ + self._entity_type = entity_type + + @property + def action_type(self): + """ + **[Required]** Gets the action_type of this WorkRequestResource. + The way in which this resource is affected by the operation tracked in the work request. + A resource being created, updated, or deleted remains in the IN_PROGRESS state until + work is complete for that resource, at which point it transitions to CREATED, UPDATED, + or DELETED, respectively. + + Allowed values for this property are: "CREATED", "UPDATED", "DELETED", "IN_PROGRESS", "RELATED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The action_type of this WorkRequestResource. + :rtype: str + """ + return self._action_type + + @action_type.setter + def action_type(self, action_type): + """ + Sets the action_type of this WorkRequestResource. + The way in which this resource is affected by the operation tracked in the work request. + A resource being created, updated, or deleted remains in the IN_PROGRESS state until + work is complete for that resource, at which point it transitions to CREATED, UPDATED, + or DELETED, respectively. + + + :param action_type: The action_type of this WorkRequestResource. + :type: str + """ + allowed_values = ["CREATED", "UPDATED", "DELETED", "IN_PROGRESS", "RELATED", "FAILED"] + if not value_allowed_none_or_none_sentinel(action_type, allowed_values): + action_type = 'UNKNOWN_ENUM_VALUE' + self._action_type = action_type + + @property + def identifier(self): + """ + **[Required]** Gets the identifier of this WorkRequestResource. + An `OCID`__ or other unique identifier for the resource. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The identifier of this WorkRequestResource. + :rtype: str + """ + return self._identifier + + @identifier.setter + def identifier(self, identifier): + """ + Sets the identifier of this WorkRequestResource. + An `OCID`__ or other unique identifier for the resource. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param identifier: The identifier of this WorkRequestResource. + :type: str + """ + self._identifier = identifier + + @property + def entity_uri(self): + """ + Gets the entity_uri of this WorkRequestResource. + The URI path that you can use for a GET request to access the resource metadata. + + + :return: The entity_uri of this WorkRequestResource. + :rtype: str + """ + return self._entity_uri + + @entity_uri.setter + def entity_uri(self, entity_uri): + """ + Sets the entity_uri of this WorkRequestResource. + The URI path that you can use for a GET request to access the resource metadata. + + + :param entity_uri: The entity_uri of this WorkRequestResource. + :type: str + """ + self._entity_uri = entity_uri + + @property + def metadata(self): + """ + Gets the metadata of this WorkRequestResource. + Additional information that helps to explain the resource. + + + :return: The metadata of this WorkRequestResource. + :rtype: dict(str, str) + """ + return self._metadata + + @metadata.setter + def metadata(self, metadata): + """ + Sets the metadata of this WorkRequestResource. + Additional information that helps to explain the resource. + + + :param metadata: The metadata of this WorkRequestResource. + :type: dict(str, str) + """ + self._metadata = metadata + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/ddfs/models/work_request_summary.py b/src/oci/ddfs/models/work_request_summary.py new file mode 100644 index 0000000000..7567f815dc --- /dev/null +++ b/src/oci/ddfs/models/work_request_summary.py @@ -0,0 +1,447 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260831 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class WorkRequestSummary(object): + """ + Summary information about an asynchronous work request. + """ + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "CREATE_INSTANCE" + OPERATION_TYPE_CREATE_INSTANCE = "CREATE_INSTANCE" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "UPDATE_INSTANCE" + OPERATION_TYPE_UPDATE_INSTANCE = "UPDATE_INSTANCE" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "DELETE_INSTANCE" + OPERATION_TYPE_DELETE_INSTANCE = "DELETE_INSTANCE" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "MOVE_INSTANCE" + OPERATION_TYPE_MOVE_INSTANCE = "MOVE_INSTANCE" + + #: A constant which can be used with the status property of a WorkRequestSummary. + #: This constant has a value of "ACCEPTED" + STATUS_ACCEPTED = "ACCEPTED" + + #: A constant which can be used with the status property of a WorkRequestSummary. + #: This constant has a value of "IN_PROGRESS" + STATUS_IN_PROGRESS = "IN_PROGRESS" + + #: A constant which can be used with the status property of a WorkRequestSummary. + #: This constant has a value of "WAITING" + STATUS_WAITING = "WAITING" + + #: A constant which can be used with the status property of a WorkRequestSummary. + #: This constant has a value of "NEEDS_ATTENTION" + STATUS_NEEDS_ATTENTION = "NEEDS_ATTENTION" + + #: A constant which can be used with the status property of a WorkRequestSummary. + #: This constant has a value of "FAILED" + STATUS_FAILED = "FAILED" + + #: A constant which can be used with the status property of a WorkRequestSummary. + #: This constant has a value of "SUCCEEDED" + STATUS_SUCCEEDED = "SUCCEEDED" + + #: A constant which can be used with the status property of a WorkRequestSummary. + #: This constant has a value of "CANCELLING" + STATUS_CANCELLING = "CANCELLING" + + #: A constant which can be used with the status property of a WorkRequestSummary. + #: This constant has a value of "CANCELLED" + STATUS_CANCELLED = "CANCELLED" + + def __init__(self, **kwargs): + """ + Initializes a new WorkRequestSummary object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param operation_type: + The value to assign to the operation_type property of this WorkRequestSummary. + Allowed values for this property are: "CREATE_INSTANCE", "UPDATE_INSTANCE", "DELETE_INSTANCE", "MOVE_INSTANCE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type operation_type: str + + :param status: + The value to assign to the status property of this WorkRequestSummary. + Allowed values for this property are: "ACCEPTED", "IN_PROGRESS", "WAITING", "NEEDS_ATTENTION", "FAILED", "SUCCEEDED", "CANCELLING", "CANCELLED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type status: str + + :param id: + The value to assign to the id property of this WorkRequestSummary. + :type id: str + + :param compartment_id: + The value to assign to the compartment_id property of this WorkRequestSummary. + :type compartment_id: str + + :param resources: + The value to assign to the resources property of this WorkRequestSummary. + :type resources: list[oci.ddfs.models.WorkRequestResource] + + :param percent_complete: + The value to assign to the percent_complete property of this WorkRequestSummary. + :type percent_complete: float + + :param time_accepted: + The value to assign to the time_accepted property of this WorkRequestSummary. + :type time_accepted: datetime + + :param time_started: + The value to assign to the time_started property of this WorkRequestSummary. + :type time_started: datetime + + :param time_finished: + The value to assign to the time_finished property of this WorkRequestSummary. + :type time_finished: datetime + + :param time_updated: + The value to assign to the time_updated property of this WorkRequestSummary. + :type time_updated: datetime + + """ + self.swagger_types = { + 'operation_type': 'str', + 'status': 'str', + 'id': 'str', + 'compartment_id': 'str', + 'resources': 'list[WorkRequestResource]', + 'percent_complete': 'float', + 'time_accepted': 'datetime', + 'time_started': 'datetime', + 'time_finished': 'datetime', + 'time_updated': 'datetime' + } + self.attribute_map = { + 'operation_type': 'operationType', + 'status': 'status', + 'id': 'id', + 'compartment_id': 'compartmentId', + 'resources': 'resources', + 'percent_complete': 'percentComplete', + 'time_accepted': 'timeAccepted', + 'time_started': 'timeStarted', + 'time_finished': 'timeFinished', + 'time_updated': 'timeUpdated' + } + self._operation_type = None + self._status = None + self._id = None + self._compartment_id = None + self._resources = None + self._percent_complete = None + self._time_accepted = None + self._time_started = None + self._time_finished = None + self._time_updated = None + + @property + def operation_type(self): + """ + **[Required]** Gets the operation_type of this WorkRequestSummary. + The asynchronous operation tracked by this work request. + + Allowed values for this property are: "CREATE_INSTANCE", "UPDATE_INSTANCE", "DELETE_INSTANCE", "MOVE_INSTANCE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The operation_type of this WorkRequestSummary. + :rtype: str + """ + return self._operation_type + + @operation_type.setter + def operation_type(self, operation_type): + """ + Sets the operation_type of this WorkRequestSummary. + The asynchronous operation tracked by this work request. + + + :param operation_type: The operation_type of this WorkRequestSummary. + :type: str + """ + allowed_values = ["CREATE_INSTANCE", "UPDATE_INSTANCE", "DELETE_INSTANCE", "MOVE_INSTANCE"] + if not value_allowed_none_or_none_sentinel(operation_type, allowed_values): + operation_type = 'UNKNOWN_ENUM_VALUE' + self._operation_type = operation_type + + @property + def status(self): + """ + **[Required]** Gets the status of this WorkRequestSummary. + The status of the work request. + + Allowed values for this property are: "ACCEPTED", "IN_PROGRESS", "WAITING", "NEEDS_ATTENTION", "FAILED", "SUCCEEDED", "CANCELLING", "CANCELLED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The status of this WorkRequestSummary. + :rtype: str + """ + return self._status + + @status.setter + def status(self, status): + """ + Sets the status of this WorkRequestSummary. + The status of the work request. + + + :param status: The status of this WorkRequestSummary. + :type: str + """ + allowed_values = ["ACCEPTED", "IN_PROGRESS", "WAITING", "NEEDS_ATTENTION", "FAILED", "SUCCEEDED", "CANCELLING", "CANCELLED"] + if not value_allowed_none_or_none_sentinel(status, allowed_values): + status = 'UNKNOWN_ENUM_VALUE' + self._status = status + + @property + def id(self): + """ + **[Required]** Gets the id of this WorkRequestSummary. + The `OCID`__ of the work request. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this WorkRequestSummary. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this WorkRequestSummary. + The `OCID`__ of the work request. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this WorkRequestSummary. + :type: str + """ + self._id = id + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this WorkRequestSummary. + The `OCID`__ of the compartment that contains the work request. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this WorkRequestSummary. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this WorkRequestSummary. + The `OCID`__ of the compartment that contains the work request. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this WorkRequestSummary. + :type: str + """ + self._compartment_id = compartment_id + + @property + def resources(self): + """ + **[Required]** Gets the resources of this WorkRequestSummary. + The resources that are affected by this work request. + + + :return: The resources of this WorkRequestSummary. + :rtype: list[oci.ddfs.models.WorkRequestResource] + """ + return self._resources + + @resources.setter + def resources(self, resources): + """ + Sets the resources of this WorkRequestSummary. + The resources that are affected by this work request. + + + :param resources: The resources of this WorkRequestSummary. + :type: list[oci.ddfs.models.WorkRequestResource] + """ + self._resources = resources + + @property + def percent_complete(self): + """ + **[Required]** Gets the percent_complete of this WorkRequestSummary. + Shows the progress of the operation tracked by the work request, as a percentage of the total work + that must be performed. + + + :return: The percent_complete of this WorkRequestSummary. + :rtype: float + """ + return self._percent_complete + + @percent_complete.setter + def percent_complete(self, percent_complete): + """ + Sets the percent_complete of this WorkRequestSummary. + Shows the progress of the operation tracked by the work request, as a percentage of the total work + that must be performed. + + + :param percent_complete: The percent_complete of this WorkRequestSummary. + :type: float + """ + self._percent_complete = percent_complete + + @property + def time_accepted(self): + """ + **[Required]** Gets the time_accepted of this WorkRequestSummary. + The date and time the work request was created, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/html/rfc3339 + + + :return: The time_accepted of this WorkRequestSummary. + :rtype: datetime + """ + return self._time_accepted + + @time_accepted.setter + def time_accepted(self, time_accepted): + """ + Sets the time_accepted of this WorkRequestSummary. + The date and time the work request was created, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/html/rfc3339 + + + :param time_accepted: The time_accepted of this WorkRequestSummary. + :type: datetime + """ + self._time_accepted = time_accepted + + @property + def time_started(self): + """ + Gets the time_started of this WorkRequestSummary. + The date and time the work request was started, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/html/rfc3339 + + + :return: The time_started of this WorkRequestSummary. + :rtype: datetime + """ + return self._time_started + + @time_started.setter + def time_started(self, time_started): + """ + Sets the time_started of this WorkRequestSummary. + The date and time the work request was started, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/html/rfc3339 + + + :param time_started: The time_started of this WorkRequestSummary. + :type: datetime + """ + self._time_started = time_started + + @property + def time_finished(self): + """ + Gets the time_finished of this WorkRequestSummary. + The date and time the work request was finished, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/rfc/rfc3339 + + + :return: The time_finished of this WorkRequestSummary. + :rtype: datetime + """ + return self._time_finished + + @time_finished.setter + def time_finished(self, time_finished): + """ + Sets the time_finished of this WorkRequestSummary. + The date and time the work request was finished, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/rfc/rfc3339 + + + :param time_finished: The time_finished of this WorkRequestSummary. + :type: datetime + """ + self._time_finished = time_finished + + @property + def time_updated(self): + """ + Gets the time_updated of this WorkRequestSummary. + The date and time the work request was updated, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/rfc/rfc3339 + + + :return: The time_updated of this WorkRequestSummary. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this WorkRequestSummary. + The date and time the work request was updated, in the format defined by + `RFC 3339`__. + + __ https://tools.ietf.org/rfc/rfc3339 + + + :param time_updated: The time_updated of this WorkRequestSummary. + :type: datetime + """ + self._time_updated = time_updated + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/ddfs/models/work_request_summary_collection.py b/src/oci/ddfs/models/work_request_summary_collection.py new file mode 100644 index 0000000000..384edd45e0 --- /dev/null +++ b/src/oci/ddfs/models/work_request_summary_collection.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260831 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class WorkRequestSummaryCollection(object): + """ + A list of work requests. Can contain both work requests and other information, such as metadata. + """ + + def __init__(self, **kwargs): + """ + Initializes a new WorkRequestSummaryCollection object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this WorkRequestSummaryCollection. + :type items: list[oci.ddfs.models.WorkRequestSummary] + + """ + self.swagger_types = { + 'items': 'list[WorkRequestSummary]' + } + self.attribute_map = { + 'items': 'items' + } + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this WorkRequestSummaryCollection. + A list of work requests. + + + :return: The items of this WorkRequestSummaryCollection. + :rtype: list[oci.ddfs.models.WorkRequestSummary] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this WorkRequestSummaryCollection. + A list of work requests. + + + :param items: The items of this WorkRequestSummaryCollection. + :type: list[oci.ddfs.models.WorkRequestSummary] + """ + self._items = items + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/__init__.py b/src/oci/distributed_database_v26/__init__.py new file mode 100644 index 0000000000..5f6ec92692 --- /dev/null +++ b/src/oci/distributed_database_v26/__init__.py @@ -0,0 +1,20 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +from __future__ import absolute_import + + +from .distributed_autonomous_db_service_client import DistributedAutonomousDbServiceClient +from .distributed_autonomous_db_service_client_composite_operations import DistributedAutonomousDbServiceClientCompositeOperations +from .distributed_db_private_endpoint_service_client import DistributedDbPrivateEndpointServiceClient +from .distributed_db_private_endpoint_service_client_composite_operations import DistributedDbPrivateEndpointServiceClientCompositeOperations +from .distributed_db_service_client import DistributedDbServiceClient +from .distributed_db_service_client_composite_operations import DistributedDbServiceClientCompositeOperations +from .distributed_db_work_request_service_client import DistributedDbWorkRequestServiceClient +from .distributed_db_work_request_service_client_composite_operations import DistributedDbWorkRequestServiceClientCompositeOperations +from . import models + +__all__ = ["DistributedAutonomousDbServiceClient", "DistributedAutonomousDbServiceClientCompositeOperations", "DistributedDbPrivateEndpointServiceClient", "DistributedDbPrivateEndpointServiceClientCompositeOperations", "DistributedDbServiceClient", "DistributedDbServiceClientCompositeOperations", "DistributedDbWorkRequestServiceClient", "DistributedDbWorkRequestServiceClientCompositeOperations", "models"] diff --git a/src/oci/distributed_database_v26/distributed_autonomous_db_service_client.py b/src/oci/distributed_database_v26/distributed_autonomous_db_service_client.py new file mode 100644 index 0000000000..08228826bd --- /dev/null +++ b/src/oci/distributed_database_v26/distributed_autonomous_db_service_client.py @@ -0,0 +1,3183 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +from __future__ import absolute_import + +from oci._vendor import requests # noqa: F401 +from oci._vendor import six + +from oci import retry, circuit_breaker # noqa: F401 +from oci.base_client import BaseClient +from oci.config import get_config_value_or_default, validate_config +from oci.signer import Signer +from oci.util import Sentinel, get_signer_from_authentication_type, AUTHENTICATION_TYPE_FIELD_NAME +from oci.exceptions import InvalidDeveloperToolConfiguration +from oci.developer_tool_configuration import OCI_SDK_ENABLED_SERVICES_SET +from .models import distributed_database_v26_type_mapping +missing = Sentinel("Missing") + + +class DistributedAutonomousDbServiceClient(object): + """ + Use the Globally Distributed Database service APIs to create and manage the Globally distributed databases. + """ + + def __init__(self, config, **kwargs): + """ + Creates a new service client + + :param dict config: + Configuration keys and values as per `SDK and Tool Configuration `__. + The :py:meth:`~oci.config.from_file` method can be used to load configuration from a file. Alternatively, a ``dict`` can be passed. You can validate_config + the dict using :py:meth:`~oci.config.validate_config` + + :param str service_endpoint: (optional) + The endpoint of the service to call using this client. For example ``https://iaas.us-ashburn-1.oraclecloud.com``. If this keyword argument is + not provided then it will be derived using the region in the config parameter. You should only provide this keyword argument if you have an explicit + need to specify a service endpoint. + + :param timeout: (optional) + The connection and read timeouts for the client. The default values are connection timeout 10 seconds and read timeout 60 seconds. This keyword argument can be provided + as a single float, in which case the value provided is used for both the read and connection timeouts, or as a tuple of two floats. If + a tuple is provided then the first value is used as the connection timeout and the second value as the read timeout. + :type timeout: float or tuple(float, float) + + :param signer: (optional) + The signer to use when signing requests made by the service client. The default is to use a :py:class:`~oci.signer.Signer` based on the values + provided in the config parameter. + + One use case for this parameter is for `Instance Principals authentication `__ + by passing an instance of :py:class:`~oci.auth.signers.InstancePrincipalsSecurityTokenSigner` as the value for this keyword argument + :type signer: :py:class:`~oci.signer.AbstractBaseSigner` + + :param obj retry_strategy: (optional) + A retry strategy to apply to all calls made by this service client (i.e. at the client level). There is no retry strategy applied by default. + Retry strategies can also be applied at the operation level by passing a ``retry_strategy`` keyword argument as part of calling the operation. + Any value provided at the operation level will override whatever is specified at the client level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` + is also available. The specifics of the default retry strategy are described `here `__. + + :param obj circuit_breaker_strategy: (optional) + A circuit breaker strategy to apply to all calls made by this service client (i.e. at the client level). + This client uses :py:data:`~oci.circuit_breaker.DEFAULT_CIRCUIT_BREAKER_STRATEGY` as default if no circuit breaker strategy is provided. + The specifics of circuit breaker strategy are described `here `__. + + :param function circuit_breaker_callback: (optional) + Callback function to receive any exceptions triggerred by the circuit breaker. + + :param bool client_level_realm_specific_endpoint_template_enabled: (optional) + A boolean flag to indicate whether or not this client should be created with realm specific endpoint template enabled or disable. By default, this will be set as None. + + :param allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this client should allow control characters in the response object. By default, the client will not + allow control characters to be in the response object. + + :param enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this client should enable strict url encoding in path params of a request. + By default, the client will not enable strict url encoding + """ + if not OCI_SDK_ENABLED_SERVICES_SET.is_service_enabled("distributed_database_v26"): + raise InvalidDeveloperToolConfiguration("The Developer Tool Configuration has disabled this service, this behavior is controlled by OCI_SDK_ENABLED_SERVICES_SET variable. Please check if your local developer-tool-configuration file configured the service you're targeting or contact the cloud provider on the availability of this service") + + validate_config(config, signer=kwargs.get('signer')) + if 'signer' in kwargs: + signer = kwargs['signer'] + + elif AUTHENTICATION_TYPE_FIELD_NAME in config: + signer = get_signer_from_authentication_type(config) + + else: + signer = Signer( + tenancy=config["tenancy"], + user=config["user"], + fingerprint=config["fingerprint"], + private_key_file_location=config.get("key_file"), + pass_phrase=get_config_value_or_default(config, "pass_phrase"), + private_key_content=config.get("key_content") + ) + + base_client_init_kwargs = { + 'regional_client': True, + 'service_endpoint': kwargs.get('service_endpoint'), + 'base_path': '/20260101', + 'service_endpoint_template': 'https://globaldb.{region}.oci.{secondLevelDomain}', + 'service_endpoint_template_per_realm': { }, # noqa: E201 E202 + 'service_uses_dualstack_endpoints_by_default': False, + 'skip_deserialization': kwargs.get('skip_deserialization', False), + 'circuit_breaker_strategy': kwargs.get('circuit_breaker_strategy', circuit_breaker.GLOBAL_CIRCUIT_BREAKER_STRATEGY), + 'client_level_realm_specific_endpoint_template_enabled': kwargs.get('client_level_realm_specific_endpoint_template_enabled'), + 'client_level_dualstack_endpoints_enabled': kwargs.get('client_level_dualstack_endpoints_enabled') + } + if 'timeout' in kwargs: + base_client_init_kwargs['timeout'] = kwargs.get('timeout') + if base_client_init_kwargs.get('circuit_breaker_strategy') is None: + base_client_init_kwargs['circuit_breaker_strategy'] = circuit_breaker.DEFAULT_CIRCUIT_BREAKER_STRATEGY + if 'allow_control_chars' in kwargs: + base_client_init_kwargs['allow_control_chars'] = kwargs.get('allow_control_chars') + if 'enable_strict_url_encoding' in kwargs: + base_client_init_kwargs['enable_strict_url_encoding'] = kwargs.get('enable_strict_url_encoding') + self.base_client = BaseClient("distributed_autonomous_db_service", config, signer, distributed_database_v26_type_mapping, **base_client_init_kwargs) + self.retry_strategy = kwargs.get('retry_strategy') + self.circuit_breaker_callback = kwargs.get('circuit_breaker_callback') + + def add_distributed_autonomous_database_gds_control_node(self, distributed_autonomous_database_id, add_distributed_autonomous_database_gds_control_node_details, **kwargs): + """ + Add new Global database services control(GDS CTL) node for the Globally distributed autonomous database. + + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param oci.distributed_database_v26.models.AddDistributedAutonomousDatabaseGdsControlNodeDetails add_distributed_autonomous_database_gds_control_node_details: (required) + Details required to provision the new Global database services control(GDS CTL) node for the Distributed autonomous database. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use add_distributed_autonomous_database_gds_control_node API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedAutonomousDatabaseId'] + resource_path = "/distributedAutonomousDatabases/{distributedAutonomousDatabaseId}/actions/addGdsControlNode" + method = "POST" + operation_name = "add_distributed_autonomous_database_gds_control_node" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedAutonomousDatabase/AddDistributedAutonomousDatabaseGdsControlNode" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id", + "if_match", + "opc_retry_token" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"add_distributed_autonomous_database_gds_control_node got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedAutonomousDatabaseId": distributed_autonomous_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=add_distributed_autonomous_database_gds_control_node_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=add_distributed_autonomous_database_gds_control_node_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def change_distributed_autonomous_database_compartment(self, change_distributed_autonomous_database_compartment_details, distributed_autonomous_database_id, **kwargs): + """ + Move the Globally distributed autonomous database and its dependent resources to the specified compartment. + + + :param oci.distributed_database_v26.models.ChangeDistributedAutonomousDatabaseCompartmentDetails change_distributed_autonomous_database_compartment_details: (required) + Request to move the Globally distributed autonomous database to a different compartment. + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use change_distributed_autonomous_database_compartment API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedAutonomousDatabaseId'] + resource_path = "/distributedAutonomousDatabases/{distributedAutonomousDatabaseId}/actions/changeCompartment" + method = "POST" + operation_name = "change_distributed_autonomous_database_compartment" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedAutonomousDatabase/ChangeDistributedAutonomousDatabaseCompartment" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id", + "if_match", + "opc_retry_token" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"change_distributed_autonomous_database_compartment got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedAutonomousDatabaseId": distributed_autonomous_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=change_distributed_autonomous_database_compartment_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=change_distributed_autonomous_database_compartment_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def change_distributed_autonomous_db_backup_config(self, distributed_autonomous_database_id, change_distributed_autonomous_db_backup_config_details, **kwargs): + """ + Change the DbBackupConfig for the Globally distributed autonomous database. + + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param oci.distributed_database_v26.models.ChangeDistributedAutonomousDbBackupConfigDetails change_distributed_autonomous_db_backup_config_details: (required) + Details of the DistributedAutonomousDbBackupConfig for the Globally distributed autonomous database. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use change_distributed_autonomous_db_backup_config API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedAutonomousDatabaseId'] + resource_path = "/distributedAutonomousDatabases/{distributedAutonomousDatabaseId}/actions/changeDbBackupConfig" + method = "POST" + operation_name = "change_distributed_autonomous_db_backup_config" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedAutonomousDatabase/ChangeDistributedAutonomousDbBackupConfig" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id", + "if_match", + "opc_retry_token" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"change_distributed_autonomous_db_backup_config got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedAutonomousDatabaseId": distributed_autonomous_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=change_distributed_autonomous_db_backup_config_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=change_distributed_autonomous_db_backup_config_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def configure_distributed_autonomous_database_auto_resource_management(self, distributed_autonomous_database_id, configure_distributed_autonomous_database_auto_resource_management_details, **kwargs): + """ + Configure autoResourceManagement options for the Globally distributed autonomous database. + + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param oci.distributed_database_v26.models.ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails configure_distributed_autonomous_database_auto_resource_management_details: (required) + The payload for configuring autoResourceManagement for autonomous distributed database. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.distributed_database_v26.models.DistributedAutonomousDatabaseAutoResourceManagementDetails` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use configure_distributed_autonomous_database_auto_resource_management API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedAutonomousDatabaseId'] + resource_path = "/distributedAutonomousDatabases/{distributedAutonomousDatabaseId}/actions/configureAutoResourceManagement" + method = "POST" + operation_name = "configure_distributed_autonomous_database_auto_resource_management" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedAutonomousDatabase/ConfigureDistributedAutonomousDatabaseAutoResourceManagement" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_retry_token", + "opc_request_id", + "if_match" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"configure_distributed_autonomous_database_auto_resource_management got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedAutonomousDatabaseId": distributed_autonomous_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=configure_distributed_autonomous_database_auto_resource_management_details, + response_type="DistributedAutonomousDatabaseAutoResourceManagementDetails", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=configure_distributed_autonomous_database_auto_resource_management_details, + response_type="DistributedAutonomousDatabaseAutoResourceManagementDetails", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def configure_distributed_autonomous_database_gsm_wallet(self, configure_distributed_autonomous_database_gsm_wallet_details, distributed_autonomous_database_id, **kwargs): + """ + Configure wallets on Global Service Manager(GSM) instances for a Globally distributed autonomous database. + + + :param oci.distributed_database_v26.models.ConfigureDistributedAutonomousDatabaseGsmWalletDetails configure_distributed_autonomous_database_gsm_wallet_details: (required) + Details to configure wallets on GSM instances for the distributed autonomous database. + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use configure_distributed_autonomous_database_gsm_wallet API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedAutonomousDatabaseId'] + resource_path = "/distributedAutonomousDatabases/{distributedAutonomousDatabaseId}/actions/configureGsmWallet" + method = "POST" + operation_name = "configure_distributed_autonomous_database_gsm_wallet" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedAutonomousDatabase/ConfigureDistributedAutonomousDatabaseGsmWallet" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_retry_token", + "opc_request_id", + "if_match" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"configure_distributed_autonomous_database_gsm_wallet got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedAutonomousDatabaseId": distributed_autonomous_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=configure_distributed_autonomous_database_gsm_wallet_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=configure_distributed_autonomous_database_gsm_wallet_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def configure_distributed_autonomous_database_gsms(self, configure_distributed_autonomous_database_gsms_details, distributed_autonomous_database_id, **kwargs): + """ + Configure new Global Service Manager(GSM aka shard manager) instances for the Globally distributed autonomous database. + + + :param oci.distributed_database_v26.models.ConfigureDistributedAutonomousDatabaseGsmsDetails configure_distributed_autonomous_database_gsms_details: (required) + Details to configure the new GSM instances for the distributed autonomous database. + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use configure_distributed_autonomous_database_gsms API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedAutonomousDatabaseId'] + resource_path = "/distributedAutonomousDatabases/{distributedAutonomousDatabaseId}/actions/configureGsms" + method = "POST" + operation_name = "configure_distributed_autonomous_database_gsms" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedAutonomousDatabase/ConfigureDistributedAutonomousDatabaseGsms" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_retry_token", + "opc_request_id", + "if_match" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"configure_distributed_autonomous_database_gsms got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedAutonomousDatabaseId": distributed_autonomous_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=configure_distributed_autonomous_database_gsms_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=configure_distributed_autonomous_database_gsms_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def configure_distributed_autonomous_database_sharding(self, distributed_autonomous_database_id, **kwargs): + """ + Once all components of Globally distributed autonomous database are provisioned, this + api shall be invoked to configure sharding on the Globally distributed autonomous database. Note that this 'ConfigureSharding' API also needs to be + invoked after successfully adding a new shard to the Globally distributed autonomous database using PATCH api. If this API is not + invoked after successfully adding a new shard, then that new shard will not be a participant in sharding topology of + the Globally distributed autonomous database. + + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param bool is_rebalance_required: (optional) + The flag to indicate whether chunks need to be re-balanced. This flag is not applicable for USER-defined + sharding type. + + :param str certificate_id: (optional) + The ID of the cluster certificate. + + :param str ca_bundle_id: (optional) + The ID of the Ca Bundle. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use configure_distributed_autonomous_database_sharding API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedAutonomousDatabaseId'] + resource_path = "/distributedAutonomousDatabases/{distributedAutonomousDatabaseId}/actions/configureSharding" + method = "POST" + operation_name = "configure_distributed_autonomous_database_sharding" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedAutonomousDatabase/ConfigureDistributedAutonomousDatabaseSharding" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "is_rebalance_required", + "certificate_id", + "ca_bundle_id", + "opc_retry_token", + "opc_request_id", + "if_match" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"configure_distributed_autonomous_database_sharding got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedAutonomousDatabaseId": distributed_autonomous_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + query_params = { + "isRebalanceRequired": kwargs.get("is_rebalance_required", missing), + "certificateId": kwargs.get("certificate_id", missing), + "caBundleId": kwargs.get("ca_bundle_id", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def create_distributed_autonomous_database(self, create_distributed_autonomous_database_details, **kwargs): + """ + Creates a Globally distributed autonomous database. + + + :param oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseDetails create_distributed_autonomous_database_details: (required) + Details of the Globally distributed autonomous database to be created. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.distributed_database_v26.models.DistributedAutonomousDatabase` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use create_distributed_autonomous_database API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = [] + resource_path = "/distributedAutonomousDatabases" + method = "POST" + operation_name = "create_distributed_autonomous_database" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_retry_token", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"create_distributed_autonomous_database got unknown kwargs: {extra_kwargs!r}") + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + header_params=header_params, + body=create_distributed_autonomous_database_details, + response_type="DistributedAutonomousDatabase", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + header_params=header_params, + body=create_distributed_autonomous_database_details, + response_type="DistributedAutonomousDatabase", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def delete_distributed_autonomous_database(self, distributed_autonomous_database_id, **kwargs): + """ + Terminate the given Globally distributed autonomous databases. + + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use delete_distributed_autonomous_database API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedAutonomousDatabaseId'] + resource_path = "/distributedAutonomousDatabases/{distributedAutonomousDatabaseId}" + method = "DELETE" + operation_name = "delete_distributed_autonomous_database" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedAutonomousDatabase/DeleteDistributedAutonomousDatabase" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id", + "opc_retry_token", + "if_match" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"delete_distributed_autonomous_database got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedAutonomousDatabaseId": distributed_autonomous_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "if-match": kwargs.get("if_match", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def generate_distributed_autonomous_database_wallet(self, distributed_autonomous_database_id, generate_distributed_autonomous_database_wallet_details, **kwargs): + """ + Generate the wallet associated with Globally distributed autonomous database. + + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param oci.distributed_database_v26.models.GenerateDistributedAutonomousDatabaseWalletDetails generate_distributed_autonomous_database_wallet_details: (required) + Details for generating Globally distributed autonomous database wallet. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type stream + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use generate_distributed_autonomous_database_wallet API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedAutonomousDatabaseId'] + resource_path = "/distributedAutonomousDatabases/{distributedAutonomousDatabaseId}/actions/generateWallet" + method = "POST" + operation_name = "generate_distributed_autonomous_database_wallet" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedAutonomousDatabase/GenerateDistributedAutonomousDatabaseWallet" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id", + "if_match", + "opc_retry_token" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"generate_distributed_autonomous_database_wallet got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedAutonomousDatabaseId": distributed_autonomous_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/octet-stream", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=generate_distributed_autonomous_database_wallet_details, + response_type="stream", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=generate_distributed_autonomous_database_wallet_details, + response_type="stream", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def get_distributed_autonomous_database(self, distributed_autonomous_database_id, **kwargs): + """ + Gets the details of the Globally distributed autonomous database identified by given id. + + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param str metadata: (optional) + Comma-separated argument names for which metadata should be retrieved. + + :param str if_none_match: (optional) + For conditional requests. In the GET call for a resource, set the + `If-None-Match` header to the value of the ETag from a previous GET (or + POST or PUT) response for that resource. The server will return with + either a 304 Not Modified response if the resource has not changed, or a + 200 OK response with the updated representation. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.distributed_database_v26.models.DistributedAutonomousDatabase` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_distributed_autonomous_database API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedAutonomousDatabaseId'] + resource_path = "/distributedAutonomousDatabases/{distributedAutonomousDatabaseId}" + method = "GET" + operation_name = "get_distributed_autonomous_database" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedAutonomousDatabase/GetDistributedAutonomousDatabase" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "metadata", + "if_none_match", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"get_distributed_autonomous_database got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedAutonomousDatabaseId": distributed_autonomous_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + query_params = { + "metadata": kwargs.get("metadata", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-none-match": kwargs.get("if_none_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="DistributedAutonomousDatabase", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="DistributedAutonomousDatabase", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def get_distributed_autonomous_database_raft_metric(self, distributed_autonomous_database_id, **kwargs): + """ + Operation to retrieve RAFT metrics for the Globally distributed autonomous database. If the Globally distributed + autonomous database is not RAFT based then empty response is returned from the API. + + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.distributed_database_v26.models.DistributedAutonomousDatabaseRaftMetric` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_distributed_autonomous_database_raft_metric API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedAutonomousDatabaseId'] + resource_path = "/distributedAutonomousDatabases/{distributedAutonomousDatabaseId}/raftMetrics" + method = "GET" + operation_name = "get_distributed_autonomous_database_raft_metric" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedDatabase/GetDistributedAutonomousDatabaseRaftMetric" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"get_distributed_autonomous_database_raft_metric got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedAutonomousDatabaseId": distributed_autonomous_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="DistributedAutonomousDatabaseRaftMetric", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="DistributedAutonomousDatabaseRaftMetric", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def get_distributed_autonomous_database_ru_change_log(self, distributed_autonomous_database_id, **kwargs): + """ + Operation to retrieve move RU invocation history and status for the Globally distributed autonomous database. + Results are ordered by created timestamp in descending order. + + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param str source_shard_name: (optional) + The source shard name to filter RU change log entries. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.distributed_database_v26.models.DistributedAutonomousDatabaseRuChangeLog` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_distributed_autonomous_database_ru_change_log API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedAutonomousDatabaseId'] + resource_path = "/distributedAutonomousDatabases/{distributedAutonomousDatabaseId}/ruChangeLog" + method = "GET" + operation_name = "get_distributed_autonomous_database_ru_change_log" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedDatabase/GetDistributedAutonomousDatabaseRuChangeLog" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "source_shard_name", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"get_distributed_autonomous_database_ru_change_log got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedAutonomousDatabaseId": distributed_autonomous_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + query_params = { + "sourceShardName": kwargs.get("source_shard_name", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="DistributedAutonomousDatabaseRuChangeLog", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="DistributedAutonomousDatabaseRuChangeLog", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_distributed_autonomous_databases(self, compartment_id, **kwargs): + """ + List of Globally distributed autonomous databases. + + + :param str compartment_id: (required) + The ID of the compartment in which to list resources. + + :param bool compartment_id_in_subtree: (optional) + When set to true, returns resources in the specified compartment and in all of its child compartments recursively. Defaults to false. + + :param str private_endpoint_id: (optional) + A filter to return only resources that are associated with the given privateEndpointId. + + :param str lifecycle_state: (optional) + A filter to return only resources whose lifecycleState matches the specified value. + + Allowed values are: "ACTIVE", "FAILED", "NEEDS_ATTENTION", "INACTIVE", "DELETING", "DELETED", "UPDATING", "CREATING" + + :param int limit: (optional) + The maximum number of items to return. + + :param str page: (optional) + A token representing the position at which to start retrieving results. This must come from the `opc-next-page` header field of a previous response. + + :param str sort_order: (optional) + The sort order to use, either 'ASC' or 'DESC'. + + Allowed values are: "ASC", "DESC" + + :param str sort_by: (optional) + The field to sort by. Only one sort order may be provided. Default order for timeCreated is descending. Default order for displayName is ascending. + + Allowed values are: "timeCreated", "timeUpdated" + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param bool is_auto_resource_management_enabled: (optional) + A filter to return only resources where autoResourceManagement is enabled when set to `true`, or disabled when set to `false`. If omitted, no autoResourceManagement-based filtering is applied. + + :param str display_name: (optional) + A filter to return only Globally distributed autonomous databases that match the entire name given. The match is not case sensitive. + + :param str db_deployment_type: (optional) + A filter to return only resources whose dbDeploymentType matches the specified value. + + :param str metadata: (optional) + Comma-separated argument names for which metadata should be retrieved. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.distributed_database_v26.models.DistributedAutonomousDatabaseCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_distributed_autonomous_databases API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['compartmentId'] + resource_path = "/distributedAutonomousDatabases" + method = "GET" + operation_name = "list_distributed_autonomous_databases" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedAutonomousDatabaseCollection/ListDistributedAutonomousDatabases" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "compartment_id_in_subtree", + "private_endpoint_id", + "lifecycle_state", + "limit", + "page", + "sort_order", + "sort_by", + "opc_request_id", + "is_auto_resource_management_enabled", + "display_name", + "db_deployment_type", + "metadata" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_distributed_autonomous_databases got unknown kwargs: {extra_kwargs!r}") + + if 'lifecycle_state' in kwargs: + lifecycle_state_allowed_values = ["ACTIVE", "FAILED", "NEEDS_ATTENTION", "INACTIVE", "DELETING", "DELETED", "UPDATING", "CREATING"] + if kwargs['lifecycle_state'] not in lifecycle_state_allowed_values: + raise ValueError( + f"Invalid value for `lifecycle_state`, must be one of { lifecycle_state_allowed_values }" + ) + + if 'sort_order' in kwargs: + sort_order_allowed_values = ["ASC", "DESC"] + if kwargs['sort_order'] not in sort_order_allowed_values: + raise ValueError( + f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + ) + + if 'sort_by' in kwargs: + sort_by_allowed_values = ["timeCreated", "timeUpdated"] + if kwargs['sort_by'] not in sort_by_allowed_values: + raise ValueError( + f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" + ) + + query_params = { + "compartmentId": compartment_id, + "compartmentIdInSubtree": kwargs.get("compartment_id_in_subtree", missing), + "privateEndpointId": kwargs.get("private_endpoint_id", missing), + "lifecycleState": kwargs.get("lifecycle_state", missing), + "limit": kwargs.get("limit", missing), + "page": kwargs.get("page", missing), + "sortOrder": kwargs.get("sort_order", missing), + "sortBy": kwargs.get("sort_by", missing), + "isAutoResourceManagementEnabled": kwargs.get("is_auto_resource_management_enabled", missing), + "displayName": kwargs.get("display_name", missing), + "dbDeploymentType": kwargs.get("db_deployment_type", missing), + "metadata": kwargs.get("metadata", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="DistributedAutonomousDatabaseCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="DistributedAutonomousDatabaseCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def move_distributed_autonomous_database_replication_unit(self, distributed_autonomous_database_id, move_distributed_autonomous_database_replication_unit_details, **kwargs): + """ + Move the replication units for RAFT based globally distributed autonomous database from source shard to destination shard. + + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param oci.distributed_database_v26.models.MoveDistributedAutonomousDatabaseReplicationUnitDetails move_distributed_autonomous_database_replication_unit_details: (required) + Details required to move the replication units from the source shard to destination shard. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use move_distributed_autonomous_database_replication_unit API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedAutonomousDatabaseId'] + resource_path = "/distributedAutonomousDatabases/{distributedAutonomousDatabaseId}/actions/moveReplicationUnit" + method = "POST" + operation_name = "move_distributed_autonomous_database_replication_unit" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedAutonomousDatabase/MoveDistributedAutonomousDatabaseReplicationUnit" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_retry_token", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"move_distributed_autonomous_database_replication_unit got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedAutonomousDatabaseId": distributed_autonomous_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=move_distributed_autonomous_database_replication_unit_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=move_distributed_autonomous_database_replication_unit_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def patch_distributed_autonomous_database(self, distributed_autonomous_database_id, patch_distributed_autonomous_database_details, **kwargs): + """ + Patch operation to add, remove or update shards to the Globally distributed autonomous database topology. In single patch + operation, multiple shards can be either added, or removed or updated. Combination of inserts, update + and remove in single operation is not allowed. + + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param oci.distributed_database_v26.models.PatchDistributedAutonomousDatabaseDetails patch_distributed_autonomous_database_details: (required) + The payload containing instructions to patch the Globally distributed autonomous database. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use patch_distributed_autonomous_database API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedAutonomousDatabaseId'] + resource_path = "/distributedAutonomousDatabases/{distributedAutonomousDatabaseId}" + method = "PATCH" + operation_name = "patch_distributed_autonomous_database" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedAutonomousDatabase/PatchDistributedAutonomousDatabase" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_retry_token", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"patch_distributed_autonomous_database got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedAutonomousDatabaseId": distributed_autonomous_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=patch_distributed_autonomous_database_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=patch_distributed_autonomous_database_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def recreate_failed_distributed_autonomous_database_resource(self, distributed_autonomous_database_id, resource_name, **kwargs): + """ + Recreate the failed resource for the Globally Distributed Autonomous Database. + + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param str resource_name: (required) + Specify the name of the shard, catalog, or GSM. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use recreate_failed_distributed_autonomous_database_resource API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedAutonomousDatabaseId', 'resourceName'] + resource_path = "/distributedAutonomousDatabases/{distributedAutonomousDatabaseId}/actions/recreateFailedResource" + method = "POST" + operation_name = "recreate_failed_distributed_autonomous_database_resource" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedAutonomousDatabase/RecreateFailedDistributedAutonomousDatabaseResource" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id", + "if_match", + "opc_retry_token" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"recreate_failed_distributed_autonomous_database_resource got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedAutonomousDatabaseId": distributed_autonomous_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + query_params = { + "resourceName": resource_name + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def rotate_distributed_autonomous_database_passwords(self, distributed_autonomous_database_id, rotate_distributed_autonomous_database_passwords_details, **kwargs): + """ + Rotate the gsmuser and gsmcatuser passwords for shards and catalog of the Globally distributed autonomous database. This operation will also remove GdsCtlNodes if present. + + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param oci.distributed_database_v26.models.RotateDistributedAutonomousDatabasePasswordsDetails rotate_distributed_autonomous_database_passwords_details: (required) + Details to rotate passwords for shards and catalogs in the Globally distributed autonomous database. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use rotate_distributed_autonomous_database_passwords API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedAutonomousDatabaseId'] + resource_path = "/distributedAutonomousDatabases/{distributedAutonomousDatabaseId}/actions/rotateDbPasswords" + method = "POST" + operation_name = "rotate_distributed_autonomous_database_passwords" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedAutonomousDatabase/RotateDistributedAutonomousDatabasePasswords" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_retry_token", + "opc_request_id", + "if_match" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"rotate_distributed_autonomous_database_passwords got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedAutonomousDatabaseId": distributed_autonomous_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=rotate_distributed_autonomous_database_passwords_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=rotate_distributed_autonomous_database_passwords_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def scale_distributed_autonomous_database_gsms(self, scale_distributed_autonomous_database_gsms_details, distributed_autonomous_database_id, **kwargs): + """ + Scale global service manager(GSM aka shard director) instances for the Globally distributed autonomous database. + + + :param oci.distributed_database_v26.models.ScaleDistributedAutonomousDatabaseGsmsDetails scale_distributed_autonomous_database_gsms_details: (required) + Empty payload to scale GSM instances for the distributed autonomous database. + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use scale_distributed_autonomous_database_gsms API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedAutonomousDatabaseId'] + resource_path = "/distributedAutonomousDatabases/{distributedAutonomousDatabaseId}/actions/scaleGsms" + method = "POST" + operation_name = "scale_distributed_autonomous_database_gsms" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedAutonomousDatabase/ScaleDistributedAutonomousDatabaseGsms" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_retry_token", + "opc_request_id", + "if_match" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"scale_distributed_autonomous_database_gsms got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedAutonomousDatabaseId": distributed_autonomous_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=scale_distributed_autonomous_database_gsms_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=scale_distributed_autonomous_database_gsms_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def start_distributed_autonomous_database(self, distributed_autonomous_database_id, **kwargs): + """ + Start the shards, catalog, GSMs and GDSCTL instances of Globally distributed autonomous database. + + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use start_distributed_autonomous_database API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedAutonomousDatabaseId'] + resource_path = "/distributedAutonomousDatabases/{distributedAutonomousDatabaseId}/actions/startDatabase" + method = "POST" + operation_name = "start_distributed_autonomous_database" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedAutonomousDatabase/StartDistributedAutonomousDatabase" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_retry_token", + "opc_request_id", + "if_match" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"start_distributed_autonomous_database got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedAutonomousDatabaseId": distributed_autonomous_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def stop_distributed_autonomous_database(self, distributed_autonomous_database_id, **kwargs): + """ + Stop the shards, catalog, GSMs and GDSCTL instances for the Globally distributed autonomous database. + + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use stop_distributed_autonomous_database API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedAutonomousDatabaseId'] + resource_path = "/distributedAutonomousDatabases/{distributedAutonomousDatabaseId}/actions/stopDatabase" + method = "POST" + operation_name = "stop_distributed_autonomous_database" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedAutonomousDatabase/StopDistributedAutonomousDatabase" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_retry_token", + "opc_request_id", + "if_match" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"stop_distributed_autonomous_database got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedAutonomousDatabaseId": distributed_autonomous_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def update_distributed_autonomous_database(self, distributed_autonomous_database_id, update_distributed_autonomous_database_details, **kwargs): + """ + Updates the configuration of the Globally distributed autonomous database. + + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param oci.distributed_database_v26.models.UpdateDistributedAutonomousDatabaseDetails update_distributed_autonomous_database_details: (required) + The configuration of the Globally distributed autonomous database to be updated. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.distributed_database_v26.models.DistributedAutonomousDatabase` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use update_distributed_autonomous_database API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedAutonomousDatabaseId'] + resource_path = "/distributedAutonomousDatabases/{distributedAutonomousDatabaseId}" + method = "PUT" + operation_name = "update_distributed_autonomous_database" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedAutonomousDatabase/UpdateDistributedAutonomousDatabase" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id", + "if_match" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"update_distributed_autonomous_database got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedAutonomousDatabaseId": distributed_autonomous_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=update_distributed_autonomous_database_details, + response_type="DistributedAutonomousDatabase", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=update_distributed_autonomous_database_details, + response_type="DistributedAutonomousDatabase", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def validate_distributed_autonomous_database_ca_bundle(self, distributed_autonomous_database_id, **kwargs): + """ + Validate the CA Bundles consistency of the globally distributed autonomous database. + + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use validate_distributed_autonomous_database_ca_bundle API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedAutonomousDatabaseId'] + resource_path = "/distributedAutonomousDatabases/{distributedAutonomousDatabaseId}/actions/validateCaBundle" + method = "POST" + operation_name = "validate_distributed_autonomous_database_ca_bundle" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedAutonomousDatabase/ValidateDistributedAutonomousDatabaseCaBundle" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_retry_token", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"validate_distributed_autonomous_database_ca_bundle got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedAutonomousDatabaseId": distributed_autonomous_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def validate_distributed_autonomous_database_network(self, distributed_autonomous_database_id, **kwargs): + """ + Validate the network connectivity between components of the globally distributed autonomous database. + + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param bool is_surrogate: (optional) + Determines the surrogates check. Default is true. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use validate_distributed_autonomous_database_network API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedAutonomousDatabaseId'] + resource_path = "/distributedAutonomousDatabases/{distributedAutonomousDatabaseId}/actions/validateNetwork" + method = "POST" + operation_name = "validate_distributed_autonomous_database_network" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedAutonomousDatabase/ValidateDistributedAutonomousDatabaseNetwork" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "is_surrogate", + "if_match", + "opc_retry_token", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"validate_distributed_autonomous_database_network got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedAutonomousDatabaseId": distributed_autonomous_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + query_params = { + "isSurrogate": kwargs.get("is_surrogate", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) diff --git a/src/oci/distributed_database_v26/distributed_autonomous_db_service_client_composite_operations.py b/src/oci/distributed_database_v26/distributed_autonomous_db_service_client_composite_operations.py new file mode 100644 index 0000000000..117b004b3a --- /dev/null +++ b/src/oci/distributed_database_v26/distributed_autonomous_db_service_client_composite_operations.py @@ -0,0 +1,772 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +import oci # noqa: F401 +from oci.util import WAIT_RESOURCE_NOT_FOUND # noqa: F401 + + +class DistributedAutonomousDbServiceClientCompositeOperations(object): + """ + This class provides a wrapper around :py:class:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient` and offers convenience methods + for operations that would otherwise need to be chained together. For example, instead of performing an action + on a resource (e.g. launching an instance, creating a load balancer) and then using a waiter to wait for the resource + to enter a given state, you can call a single method in this class to accomplish the same functionality + """ + + def __init__(self, client, **kwargs): + """ + Creates a new DistributedAutonomousDbServiceClientCompositeOperations object + + :param DistributedAutonomousDbServiceClient client: + The service client which will be wrapped by this object + """ + self.client = client + + def add_distributed_autonomous_database_gds_control_node_and_wait_for_state(self, distributed_autonomous_database_id, add_distributed_autonomous_database_gds_control_node_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.add_distributed_autonomous_database_gds_control_node` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param oci.distributed_database_v26.models.AddDistributedAutonomousDatabaseGdsControlNodeDetails add_distributed_autonomous_database_gds_control_node_details: (required) + Details required to provision the new Global database services control(GDS CTL) node for the Distributed autonomous database. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.add_distributed_autonomous_database_gds_control_node` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.add_distributed_autonomous_database_gds_control_node(distributed_autonomous_database_id, add_distributed_autonomous_database_gds_control_node_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def change_distributed_autonomous_database_compartment_and_wait_for_state(self, change_distributed_autonomous_database_compartment_details, distributed_autonomous_database_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.change_distributed_autonomous_database_compartment` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param oci.distributed_database_v26.models.ChangeDistributedAutonomousDatabaseCompartmentDetails change_distributed_autonomous_database_compartment_details: (required) + Request to move the Globally distributed autonomous database to a different compartment. + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.change_distributed_autonomous_database_compartment` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.change_distributed_autonomous_database_compartment(change_distributed_autonomous_database_compartment_details, distributed_autonomous_database_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def change_distributed_autonomous_db_backup_config_and_wait_for_state(self, distributed_autonomous_database_id, change_distributed_autonomous_db_backup_config_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.change_distributed_autonomous_db_backup_config` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param oci.distributed_database_v26.models.ChangeDistributedAutonomousDbBackupConfigDetails change_distributed_autonomous_db_backup_config_details: (required) + Details of the DistributedAutonomousDbBackupConfig for the Globally distributed autonomous database. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.change_distributed_autonomous_db_backup_config` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.change_distributed_autonomous_db_backup_config(distributed_autonomous_database_id, change_distributed_autonomous_db_backup_config_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def configure_distributed_autonomous_database_gsm_wallet_and_wait_for_state(self, configure_distributed_autonomous_database_gsm_wallet_details, distributed_autonomous_database_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.configure_distributed_autonomous_database_gsm_wallet` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param oci.distributed_database_v26.models.ConfigureDistributedAutonomousDatabaseGsmWalletDetails configure_distributed_autonomous_database_gsm_wallet_details: (required) + Details to configure wallets on GSM instances for the distributed autonomous database. + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.configure_distributed_autonomous_database_gsm_wallet` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.configure_distributed_autonomous_database_gsm_wallet(configure_distributed_autonomous_database_gsm_wallet_details, distributed_autonomous_database_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def configure_distributed_autonomous_database_gsms_and_wait_for_state(self, configure_distributed_autonomous_database_gsms_details, distributed_autonomous_database_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.configure_distributed_autonomous_database_gsms` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param oci.distributed_database_v26.models.ConfigureDistributedAutonomousDatabaseGsmsDetails configure_distributed_autonomous_database_gsms_details: (required) + Details to configure the new GSM instances for the distributed autonomous database. + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.configure_distributed_autonomous_database_gsms` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.configure_distributed_autonomous_database_gsms(configure_distributed_autonomous_database_gsms_details, distributed_autonomous_database_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def configure_distributed_autonomous_database_sharding_and_wait_for_state(self, distributed_autonomous_database_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.configure_distributed_autonomous_database_sharding` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.configure_distributed_autonomous_database_sharding` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.configure_distributed_autonomous_database_sharding(distributed_autonomous_database_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def create_distributed_autonomous_database_and_wait_for_state(self, create_distributed_autonomous_database_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.create_distributed_autonomous_database` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseDetails create_distributed_autonomous_database_details: (required) + Details of the Globally distributed autonomous database to be created. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.create_distributed_autonomous_database` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.create_distributed_autonomous_database(create_distributed_autonomous_database_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def delete_distributed_autonomous_database_and_wait_for_state(self, distributed_autonomous_database_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.delete_distributed_autonomous_database` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.delete_distributed_autonomous_database` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = None + try: + operation_result = self.client.delete_distributed_autonomous_database(distributed_autonomous_database_id, **operation_kwargs) + except oci.exceptions.ServiceError as e: + if e.status == 404: + return WAIT_RESOURCE_NOT_FOUND + else: + raise e + + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def move_distributed_autonomous_database_replication_unit_and_wait_for_state(self, distributed_autonomous_database_id, move_distributed_autonomous_database_replication_unit_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.move_distributed_autonomous_database_replication_unit` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param oci.distributed_database_v26.models.MoveDistributedAutonomousDatabaseReplicationUnitDetails move_distributed_autonomous_database_replication_unit_details: (required) + Details required to move the replication units from the source shard to destination shard. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.move_distributed_autonomous_database_replication_unit` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.move_distributed_autonomous_database_replication_unit(distributed_autonomous_database_id, move_distributed_autonomous_database_replication_unit_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def patch_distributed_autonomous_database_and_wait_for_state(self, distributed_autonomous_database_id, patch_distributed_autonomous_database_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.patch_distributed_autonomous_database` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param oci.distributed_database_v26.models.PatchDistributedAutonomousDatabaseDetails patch_distributed_autonomous_database_details: (required) + The payload containing instructions to patch the Globally distributed autonomous database. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.patch_distributed_autonomous_database` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.patch_distributed_autonomous_database(distributed_autonomous_database_id, patch_distributed_autonomous_database_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def recreate_failed_distributed_autonomous_database_resource_and_wait_for_state(self, distributed_autonomous_database_id, resource_name, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.recreate_failed_distributed_autonomous_database_resource` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param str resource_name: (required) + Specify the name of the shard, catalog, or GSM. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.recreate_failed_distributed_autonomous_database_resource` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.recreate_failed_distributed_autonomous_database_resource(distributed_autonomous_database_id, resource_name, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def rotate_distributed_autonomous_database_passwords_and_wait_for_state(self, distributed_autonomous_database_id, rotate_distributed_autonomous_database_passwords_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.rotate_distributed_autonomous_database_passwords` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param oci.distributed_database_v26.models.RotateDistributedAutonomousDatabasePasswordsDetails rotate_distributed_autonomous_database_passwords_details: (required) + Details to rotate passwords for shards and catalogs in the Globally distributed autonomous database. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.rotate_distributed_autonomous_database_passwords` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.rotate_distributed_autonomous_database_passwords(distributed_autonomous_database_id, rotate_distributed_autonomous_database_passwords_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def scale_distributed_autonomous_database_gsms_and_wait_for_state(self, scale_distributed_autonomous_database_gsms_details, distributed_autonomous_database_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.scale_distributed_autonomous_database_gsms` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param oci.distributed_database_v26.models.ScaleDistributedAutonomousDatabaseGsmsDetails scale_distributed_autonomous_database_gsms_details: (required) + Empty payload to scale GSM instances for the distributed autonomous database. + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.scale_distributed_autonomous_database_gsms` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.scale_distributed_autonomous_database_gsms(scale_distributed_autonomous_database_gsms_details, distributed_autonomous_database_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def start_distributed_autonomous_database_and_wait_for_state(self, distributed_autonomous_database_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.start_distributed_autonomous_database` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.start_distributed_autonomous_database` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.start_distributed_autonomous_database(distributed_autonomous_database_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def stop_distributed_autonomous_database_and_wait_for_state(self, distributed_autonomous_database_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.stop_distributed_autonomous_database` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.stop_distributed_autonomous_database` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.stop_distributed_autonomous_database(distributed_autonomous_database_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def update_distributed_autonomous_database_and_wait_for_state(self, distributed_autonomous_database_id, update_distributed_autonomous_database_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.update_distributed_autonomous_database` and waits for the :py:class:`~oci.distributed_database_v26.models.DistributedAutonomousDatabase` acted upon + to enter the given state(s). + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param oci.distributed_database_v26.models.UpdateDistributedAutonomousDatabaseDetails update_distributed_autonomous_database_details: (required) + The configuration of the Globally distributed autonomous database to be updated. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.DistributedAutonomousDatabase.lifecycle_state` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.update_distributed_autonomous_database` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.update_distributed_autonomous_database(distributed_autonomous_database_id, update_distributed_autonomous_database_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + distributed_autonomous_database_id = operation_result.data.id + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_distributed_autonomous_database(distributed_autonomous_database_id), # noqa: F821 + evaluate_response=lambda r: getattr(r.data, 'lifecycle_state') and getattr(r.data, 'lifecycle_state').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except (NameError, TypeError) as e: + if not e.args: + e.args = ('',) + e.args = e.args + ('This composite operation is currently not supported in the SDK. Please use the operation from the service client and use waiters as an alternative. For more information on waiters, visit: "https://docs.oracle.com/en-us/iaas/tools/python/latest/api/waiters.html"', ) + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def validate_distributed_autonomous_database_ca_bundle_and_wait_for_state(self, distributed_autonomous_database_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.validate_distributed_autonomous_database_ca_bundle` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.validate_distributed_autonomous_database_ca_bundle` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.validate_distributed_autonomous_database_ca_bundle(distributed_autonomous_database_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def validate_distributed_autonomous_database_network_and_wait_for_state(self, distributed_autonomous_database_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.validate_distributed_autonomous_database_network` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param str distributed_autonomous_database_id: (required) + Globally distributed autonomous database identifier. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedAutonomousDbServiceClient.validate_distributed_autonomous_database_network` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.validate_distributed_autonomous_database_network(distributed_autonomous_database_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) diff --git a/src/oci/distributed_database_v26/distributed_db_private_endpoint_service_client.py b/src/oci/distributed_database_v26/distributed_db_private_endpoint_service_client.py new file mode 100644 index 0000000000..8707c23df2 --- /dev/null +++ b/src/oci/distributed_database_v26/distributed_db_private_endpoint_service_client.py @@ -0,0 +1,1133 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +from __future__ import absolute_import + +from oci._vendor import requests # noqa: F401 +from oci._vendor import six + +from oci import retry, circuit_breaker # noqa: F401 +from oci.base_client import BaseClient +from oci.config import get_config_value_or_default, validate_config +from oci.signer import Signer +from oci.util import Sentinel, get_signer_from_authentication_type, AUTHENTICATION_TYPE_FIELD_NAME +from oci.exceptions import InvalidDeveloperToolConfiguration +from oci.developer_tool_configuration import OCI_SDK_ENABLED_SERVICES_SET +from .models import distributed_database_v26_type_mapping +missing = Sentinel("Missing") + + +class DistributedDbPrivateEndpointServiceClient(object): + """ + Use the Globally Distributed Database service APIs to create and manage the Globally distributed databases. + """ + + def __init__(self, config, **kwargs): + """ + Creates a new service client + + :param dict config: + Configuration keys and values as per `SDK and Tool Configuration `__. + The :py:meth:`~oci.config.from_file` method can be used to load configuration from a file. Alternatively, a ``dict`` can be passed. You can validate_config + the dict using :py:meth:`~oci.config.validate_config` + + :param str service_endpoint: (optional) + The endpoint of the service to call using this client. For example ``https://iaas.us-ashburn-1.oraclecloud.com``. If this keyword argument is + not provided then it will be derived using the region in the config parameter. You should only provide this keyword argument if you have an explicit + need to specify a service endpoint. + + :param timeout: (optional) + The connection and read timeouts for the client. The default values are connection timeout 10 seconds and read timeout 60 seconds. This keyword argument can be provided + as a single float, in which case the value provided is used for both the read and connection timeouts, or as a tuple of two floats. If + a tuple is provided then the first value is used as the connection timeout and the second value as the read timeout. + :type timeout: float or tuple(float, float) + + :param signer: (optional) + The signer to use when signing requests made by the service client. The default is to use a :py:class:`~oci.signer.Signer` based on the values + provided in the config parameter. + + One use case for this parameter is for `Instance Principals authentication `__ + by passing an instance of :py:class:`~oci.auth.signers.InstancePrincipalsSecurityTokenSigner` as the value for this keyword argument + :type signer: :py:class:`~oci.signer.AbstractBaseSigner` + + :param obj retry_strategy: (optional) + A retry strategy to apply to all calls made by this service client (i.e. at the client level). There is no retry strategy applied by default. + Retry strategies can also be applied at the operation level by passing a ``retry_strategy`` keyword argument as part of calling the operation. + Any value provided at the operation level will override whatever is specified at the client level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` + is also available. The specifics of the default retry strategy are described `here `__. + + :param obj circuit_breaker_strategy: (optional) + A circuit breaker strategy to apply to all calls made by this service client (i.e. at the client level). + This client uses :py:data:`~oci.circuit_breaker.DEFAULT_CIRCUIT_BREAKER_STRATEGY` as default if no circuit breaker strategy is provided. + The specifics of circuit breaker strategy are described `here `__. + + :param function circuit_breaker_callback: (optional) + Callback function to receive any exceptions triggerred by the circuit breaker. + + :param bool client_level_realm_specific_endpoint_template_enabled: (optional) + A boolean flag to indicate whether or not this client should be created with realm specific endpoint template enabled or disable. By default, this will be set as None. + + :param allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this client should allow control characters in the response object. By default, the client will not + allow control characters to be in the response object. + + :param enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this client should enable strict url encoding in path params of a request. + By default, the client will not enable strict url encoding + """ + if not OCI_SDK_ENABLED_SERVICES_SET.is_service_enabled("distributed_database_v26"): + raise InvalidDeveloperToolConfiguration("The Developer Tool Configuration has disabled this service, this behavior is controlled by OCI_SDK_ENABLED_SERVICES_SET variable. Please check if your local developer-tool-configuration file configured the service you're targeting or contact the cloud provider on the availability of this service") + + validate_config(config, signer=kwargs.get('signer')) + if 'signer' in kwargs: + signer = kwargs['signer'] + + elif AUTHENTICATION_TYPE_FIELD_NAME in config: + signer = get_signer_from_authentication_type(config) + + else: + signer = Signer( + tenancy=config["tenancy"], + user=config["user"], + fingerprint=config["fingerprint"], + private_key_file_location=config.get("key_file"), + pass_phrase=get_config_value_or_default(config, "pass_phrase"), + private_key_content=config.get("key_content") + ) + + base_client_init_kwargs = { + 'regional_client': True, + 'service_endpoint': kwargs.get('service_endpoint'), + 'base_path': '/20260101', + 'service_endpoint_template': 'https://globaldb.{region}.oci.{secondLevelDomain}', + 'service_endpoint_template_per_realm': { }, # noqa: E201 E202 + 'service_uses_dualstack_endpoints_by_default': False, + 'skip_deserialization': kwargs.get('skip_deserialization', False), + 'circuit_breaker_strategy': kwargs.get('circuit_breaker_strategy', circuit_breaker.GLOBAL_CIRCUIT_BREAKER_STRATEGY), + 'client_level_realm_specific_endpoint_template_enabled': kwargs.get('client_level_realm_specific_endpoint_template_enabled'), + 'client_level_dualstack_endpoints_enabled': kwargs.get('client_level_dualstack_endpoints_enabled') + } + if 'timeout' in kwargs: + base_client_init_kwargs['timeout'] = kwargs.get('timeout') + if base_client_init_kwargs.get('circuit_breaker_strategy') is None: + base_client_init_kwargs['circuit_breaker_strategy'] = circuit_breaker.DEFAULT_CIRCUIT_BREAKER_STRATEGY + if 'allow_control_chars' in kwargs: + base_client_init_kwargs['allow_control_chars'] = kwargs.get('allow_control_chars') + if 'enable_strict_url_encoding' in kwargs: + base_client_init_kwargs['enable_strict_url_encoding'] = kwargs.get('enable_strict_url_encoding') + self.base_client = BaseClient("distributed_db_private_endpoint_service", config, signer, distributed_database_v26_type_mapping, **base_client_init_kwargs) + self.retry_strategy = kwargs.get('retry_strategy') + self.circuit_breaker_callback = kwargs.get('circuit_breaker_callback') + + def change_distributed_database_private_endpoint_compartment(self, change_distributed_database_private_endpoint_compartment_details, distributed_database_private_endpoint_id, **kwargs): + """ + Moves the DistributedDatabasePrivateEndpoint to the specified compartment. + + + :param oci.distributed_database_v26.models.ChangeDistributedDatabasePrivateEndpointCompartmentDetails change_distributed_database_private_endpoint_compartment_details: (required) + Request to move the private endpoint to a different compartment. + + :param str distributed_database_private_endpoint_id: (required) + Distributed Database PrivateEndpoint identifier + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use change_distributed_database_private_endpoint_compartment API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedDatabasePrivateEndpointId'] + resource_path = "/distributedDatabasePrivateEndpoints/{distributedDatabasePrivateEndpointId}/actions/changeCompartment" + method = "POST" + operation_name = "change_distributed_database_private_endpoint_compartment" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedDatabasePrivateEndpoint/ChangeDistributedDatabasePrivateEndpointCompartment" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id", + "if_match", + "opc_retry_token" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"change_distributed_database_private_endpoint_compartment got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedDatabasePrivateEndpointId": distributed_database_private_endpoint_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=change_distributed_database_private_endpoint_compartment_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=change_distributed_database_private_endpoint_compartment_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def create_distributed_database_private_endpoint(self, create_distributed_database_private_endpoint_details, **kwargs): + """ + Creates a DistributedDatabasePrivateEndpoint. + + + :param oci.distributed_database_v26.models.CreateDistributedDatabasePrivateEndpointDetails create_distributed_database_private_endpoint_details: (required) + Details of DistributedDatabasePrivateEndpoint to be created. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.distributed_database_v26.models.DistributedDatabasePrivateEndpoint` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use create_distributed_database_private_endpoint API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = [] + resource_path = "/distributedDatabasePrivateEndpoints" + method = "POST" + operation_name = "create_distributed_database_private_endpoint" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_retry_token", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"create_distributed_database_private_endpoint got unknown kwargs: {extra_kwargs!r}") + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + header_params=header_params, + body=create_distributed_database_private_endpoint_details, + response_type="DistributedDatabasePrivateEndpoint", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + header_params=header_params, + body=create_distributed_database_private_endpoint_details, + response_type="DistributedDatabasePrivateEndpoint", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def delete_distributed_database_private_endpoint(self, distributed_database_private_endpoint_id, **kwargs): + """ + Deletes the given DistributedDatabasePrivateEndpoint. + + + :param str distributed_database_private_endpoint_id: (required) + Distributed Database PrivateEndpoint identifier + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use delete_distributed_database_private_endpoint API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedDatabasePrivateEndpointId'] + resource_path = "/distributedDatabasePrivateEndpoints/{distributedDatabasePrivateEndpointId}" + method = "DELETE" + operation_name = "delete_distributed_database_private_endpoint" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedDatabasePrivateEndpoint/DeleteDistributedDatabasePrivateEndpoint" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id", + "opc_retry_token", + "if_match" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"delete_distributed_database_private_endpoint got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedDatabasePrivateEndpointId": distributed_database_private_endpoint_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "if-match": kwargs.get("if_match", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def get_distributed_database_private_endpoint(self, distributed_database_private_endpoint_id, **kwargs): + """ + Get the DistributedDatabasePrivateEndpoint resource. + + + :param str distributed_database_private_endpoint_id: (required) + Distributed Database PrivateEndpoint identifier + + :param str if_none_match: (optional) + For conditional requests. In the GET call for a resource, set the + `If-None-Match` header to the value of the ETag from a previous GET (or + POST or PUT) response for that resource. The server will return with + either a 304 Not Modified response if the resource has not changed, or a + 200 OK response with the updated representation. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.distributed_database_v26.models.DistributedDatabasePrivateEndpoint` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_distributed_database_private_endpoint API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedDatabasePrivateEndpointId'] + resource_path = "/distributedDatabasePrivateEndpoints/{distributedDatabasePrivateEndpointId}" + method = "GET" + operation_name = "get_distributed_database_private_endpoint" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedDatabasePrivateEndpoint/GetDistributedDatabasePrivateEndpoint" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_none_match", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"get_distributed_database_private_endpoint got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedDatabasePrivateEndpointId": distributed_database_private_endpoint_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-none-match": kwargs.get("if_none_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="DistributedDatabasePrivateEndpoint", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="DistributedDatabasePrivateEndpoint", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_distributed_database_private_endpoints(self, compartment_id, **kwargs): + """ + List of DistributedDatabasePrivateEndpoints. + + + :param str compartment_id: (required) + The ID of the compartment in which to list resources. + + :param bool compartment_id_in_subtree: (optional) + When set to true, returns resources in the specified compartment and in all of its child compartments recursively. Defaults to false. + + :param str lifecycle_state: (optional) + A filter to return only resources their lifecycleState matches the given lifecycleState. + + Allowed values are: "ACTIVE", "FAILED", "INACTIVE", "DELETING", "DELETED", "UPDATING", "CREATING" + + :param int limit: (optional) + The maximum number of items to return. + + :param str page: (optional) + A token representing the position at which to start retrieving results. This must come from the `opc-next-page` header field of a previous response. + + :param str sort_order: (optional) + The sort order to use, either 'ASC' or 'DESC'. + + Allowed values are: "ASC", "DESC" + + :param str sort_by: (optional) + The field to sort by. Only one sort order may be provided. Default order for timeCreated is descending. Default order for displayName is ascending. + + Allowed values are: "timeCreated", "timeUpdated" + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str display_name: (optional) + A filter to return only private endpoint that match the entire name given. The match is not case sensitive. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.distributed_database_v26.models.DistributedDatabasePrivateEndpointCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_distributed_database_private_endpoints API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['compartmentId'] + resource_path = "/distributedDatabasePrivateEndpoints" + method = "GET" + operation_name = "list_distributed_database_private_endpoints" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedDatabasePrivateEndpointCollection/ListDistributedDatabasePrivateEndpoints" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "compartment_id_in_subtree", + "lifecycle_state", + "limit", + "page", + "sort_order", + "sort_by", + "opc_request_id", + "display_name" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_distributed_database_private_endpoints got unknown kwargs: {extra_kwargs!r}") + + if 'lifecycle_state' in kwargs: + lifecycle_state_allowed_values = ["ACTIVE", "FAILED", "INACTIVE", "DELETING", "DELETED", "UPDATING", "CREATING"] + if kwargs['lifecycle_state'] not in lifecycle_state_allowed_values: + raise ValueError( + f"Invalid value for `lifecycle_state`, must be one of { lifecycle_state_allowed_values }" + ) + + if 'sort_order' in kwargs: + sort_order_allowed_values = ["ASC", "DESC"] + if kwargs['sort_order'] not in sort_order_allowed_values: + raise ValueError( + f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + ) + + if 'sort_by' in kwargs: + sort_by_allowed_values = ["timeCreated", "timeUpdated"] + if kwargs['sort_by'] not in sort_by_allowed_values: + raise ValueError( + f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" + ) + + query_params = { + "compartmentId": compartment_id, + "compartmentIdInSubtree": kwargs.get("compartment_id_in_subtree", missing), + "lifecycleState": kwargs.get("lifecycle_state", missing), + "limit": kwargs.get("limit", missing), + "page": kwargs.get("page", missing), + "sortOrder": kwargs.get("sort_order", missing), + "sortBy": kwargs.get("sort_by", missing), + "displayName": kwargs.get("display_name", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="DistributedDatabasePrivateEndpointCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="DistributedDatabasePrivateEndpointCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def patch_distributed_database_private_endpoint(self, distributed_database_private_endpoint_id, patch_distributed_database_private_endpoint_details, **kwargs): + """ + Patch operation to update VCN network security group (NSG) IDs associated with the DistributedDatabasePrivateEndpoint. + + + :param str distributed_database_private_endpoint_id: (required) + Distributed Database PrivateEndpoint identifier + + :param oci.distributed_database_v26.models.PatchDistributedDatabasePrivateEndpointDetails patch_distributed_database_private_endpoint_details: (required) + The payload containing instructions to patch the DistributedDatabasePrivateEndpoint. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use patch_distributed_database_private_endpoint API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedDatabasePrivateEndpointId'] + resource_path = "/distributedDatabasePrivateEndpoints/{distributedDatabasePrivateEndpointId}" + method = "PATCH" + operation_name = "patch_distributed_database_private_endpoint" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedDatabasePrivateEndpoint/PatchDistributedDatabasePrivateEndpoint" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_retry_token", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"patch_distributed_database_private_endpoint got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedDatabasePrivateEndpointId": distributed_database_private_endpoint_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=patch_distributed_database_private_endpoint_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=patch_distributed_database_private_endpoint_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def reinstate_proxy_instance(self, distributed_database_private_endpoint_id, **kwargs): + """ + Reinstates the proxy instance associated with the DistributedDatabasePrivateEndpoint. + + + :param str distributed_database_private_endpoint_id: (required) + Distributed Database PrivateEndpoint identifier + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use reinstate_proxy_instance API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedDatabasePrivateEndpointId'] + resource_path = "/distributedDatabasePrivateEndpoints/{distributedDatabasePrivateEndpointId}/actions/reinstateProxyInstance" + method = "POST" + operation_name = "reinstate_proxy_instance" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedDatabasePrivateEndpoint/ReinstateProxyInstance" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id", + "if_match", + "opc_retry_token" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"reinstate_proxy_instance got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedDatabasePrivateEndpointId": distributed_database_private_endpoint_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def update_distributed_database_private_endpoint(self, distributed_database_private_endpoint_id, update_distributed_database_private_endpoint_details, **kwargs): + """ + Updates the configuration of DistributedDatabasePrivateEndpoint. + + + :param str distributed_database_private_endpoint_id: (required) + Distributed Database PrivateEndpoint identifier + + :param oci.distributed_database_v26.models.UpdateDistributedDatabasePrivateEndpointDetails update_distributed_database_private_endpoint_details: (required) + The configuration of private endpoint to be updated. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.distributed_database_v26.models.DistributedDatabasePrivateEndpoint` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use update_distributed_database_private_endpoint API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedDatabasePrivateEndpointId'] + resource_path = "/distributedDatabasePrivateEndpoints/{distributedDatabasePrivateEndpointId}" + method = "PUT" + operation_name = "update_distributed_database_private_endpoint" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedDatabasePrivateEndpoint/UpdateDistributedDatabasePrivateEndpoint" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_retry_token", + "opc_request_id", + "if_match" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"update_distributed_database_private_endpoint got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedDatabasePrivateEndpointId": distributed_database_private_endpoint_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=update_distributed_database_private_endpoint_details, + response_type="DistributedDatabasePrivateEndpoint", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=update_distributed_database_private_endpoint_details, + response_type="DistributedDatabasePrivateEndpoint", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) diff --git a/src/oci/distributed_database_v26/distributed_db_private_endpoint_service_client_composite_operations.py b/src/oci/distributed_database_v26/distributed_db_private_endpoint_service_client_composite_operations.py new file mode 100644 index 0000000000..88e3efbeed --- /dev/null +++ b/src/oci/distributed_database_v26/distributed_db_private_endpoint_service_client_composite_operations.py @@ -0,0 +1,280 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +import oci # noqa: F401 +from oci.util import WAIT_RESOURCE_NOT_FOUND # noqa: F401 + + +class DistributedDbPrivateEndpointServiceClientCompositeOperations(object): + """ + This class provides a wrapper around :py:class:`~oci.distributed_database_v26.DistributedDbPrivateEndpointServiceClient` and offers convenience methods + for operations that would otherwise need to be chained together. For example, instead of performing an action + on a resource (e.g. launching an instance, creating a load balancer) and then using a waiter to wait for the resource + to enter a given state, you can call a single method in this class to accomplish the same functionality + """ + + def __init__(self, client, **kwargs): + """ + Creates a new DistributedDbPrivateEndpointServiceClientCompositeOperations object + + :param DistributedDbPrivateEndpointServiceClient client: + The service client which will be wrapped by this object + """ + self.client = client + + def change_distributed_database_private_endpoint_compartment_and_wait_for_state(self, change_distributed_database_private_endpoint_compartment_details, distributed_database_private_endpoint_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedDbPrivateEndpointServiceClient.change_distributed_database_private_endpoint_compartment` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param oci.distributed_database_v26.models.ChangeDistributedDatabasePrivateEndpointCompartmentDetails change_distributed_database_private_endpoint_compartment_details: (required) + Request to move the private endpoint to a different compartment. + + :param str distributed_database_private_endpoint_id: (required) + Distributed Database PrivateEndpoint identifier + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedDbPrivateEndpointServiceClient.change_distributed_database_private_endpoint_compartment` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.change_distributed_database_private_endpoint_compartment(change_distributed_database_private_endpoint_compartment_details, distributed_database_private_endpoint_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def create_distributed_database_private_endpoint_and_wait_for_state(self, create_distributed_database_private_endpoint_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedDbPrivateEndpointServiceClient.create_distributed_database_private_endpoint` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param oci.distributed_database_v26.models.CreateDistributedDatabasePrivateEndpointDetails create_distributed_database_private_endpoint_details: (required) + Details of DistributedDatabasePrivateEndpoint to be created. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedDbPrivateEndpointServiceClient.create_distributed_database_private_endpoint` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.create_distributed_database_private_endpoint(create_distributed_database_private_endpoint_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def delete_distributed_database_private_endpoint_and_wait_for_state(self, distributed_database_private_endpoint_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedDbPrivateEndpointServiceClient.delete_distributed_database_private_endpoint` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param str distributed_database_private_endpoint_id: (required) + Distributed Database PrivateEndpoint identifier + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedDbPrivateEndpointServiceClient.delete_distributed_database_private_endpoint` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = None + try: + operation_result = self.client.delete_distributed_database_private_endpoint(distributed_database_private_endpoint_id, **operation_kwargs) + except oci.exceptions.ServiceError as e: + if e.status == 404: + return WAIT_RESOURCE_NOT_FOUND + else: + raise e + + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def patch_distributed_database_private_endpoint_and_wait_for_state(self, distributed_database_private_endpoint_id, patch_distributed_database_private_endpoint_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedDbPrivateEndpointServiceClient.patch_distributed_database_private_endpoint` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param str distributed_database_private_endpoint_id: (required) + Distributed Database PrivateEndpoint identifier + + :param oci.distributed_database_v26.models.PatchDistributedDatabasePrivateEndpointDetails patch_distributed_database_private_endpoint_details: (required) + The payload containing instructions to patch the DistributedDatabasePrivateEndpoint. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedDbPrivateEndpointServiceClient.patch_distributed_database_private_endpoint` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.patch_distributed_database_private_endpoint(distributed_database_private_endpoint_id, patch_distributed_database_private_endpoint_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def reinstate_proxy_instance_and_wait_for_state(self, distributed_database_private_endpoint_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedDbPrivateEndpointServiceClient.reinstate_proxy_instance` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param str distributed_database_private_endpoint_id: (required) + Distributed Database PrivateEndpoint identifier + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedDbPrivateEndpointServiceClient.reinstate_proxy_instance` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.reinstate_proxy_instance(distributed_database_private_endpoint_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def update_distributed_database_private_endpoint_and_wait_for_state(self, distributed_database_private_endpoint_id, update_distributed_database_private_endpoint_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedDbPrivateEndpointServiceClient.update_distributed_database_private_endpoint` and waits for the :py:class:`~oci.distributed_database_v26.models.DistributedDatabasePrivateEndpoint` acted upon + to enter the given state(s). + + :param str distributed_database_private_endpoint_id: (required) + Distributed Database PrivateEndpoint identifier + + :param oci.distributed_database_v26.models.UpdateDistributedDatabasePrivateEndpointDetails update_distributed_database_private_endpoint_details: (required) + The configuration of private endpoint to be updated. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.DistributedDatabasePrivateEndpoint.lifecycle_state` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedDbPrivateEndpointServiceClient.update_distributed_database_private_endpoint` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.update_distributed_database_private_endpoint(distributed_database_private_endpoint_id, update_distributed_database_private_endpoint_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + distributed_database_private_endpoint_id = operation_result.data.id + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_distributed_database_private_endpoint(distributed_database_private_endpoint_id), # noqa: F821 + evaluate_response=lambda r: getattr(r.data, 'lifecycle_state') and getattr(r.data, 'lifecycle_state').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except (NameError, TypeError) as e: + if not e.args: + e.args = ('',) + e.args = e.args + ('This composite operation is currently not supported in the SDK. Please use the operation from the service client and use waiters as an alternative. For more information on waiters, visit: "https://docs.oracle.com/en-us/iaas/tools/python/latest/api/waiters.html"', ) + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) diff --git a/src/oci/distributed_database_v26/distributed_db_service_client.py b/src/oci/distributed_database_v26/distributed_db_service_client.py new file mode 100644 index 0000000000..557cd477f9 --- /dev/null +++ b/src/oci/distributed_database_v26/distributed_db_service_client.py @@ -0,0 +1,2924 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +from __future__ import absolute_import + +from oci._vendor import requests # noqa: F401 +from oci._vendor import six + +from oci import retry, circuit_breaker # noqa: F401 +from oci.base_client import BaseClient +from oci.config import get_config_value_or_default, validate_config +from oci.signer import Signer +from oci.util import Sentinel, get_signer_from_authentication_type, AUTHENTICATION_TYPE_FIELD_NAME +from oci.exceptions import InvalidDeveloperToolConfiguration +from oci.developer_tool_configuration import OCI_SDK_ENABLED_SERVICES_SET +from .models import distributed_database_v26_type_mapping +missing = Sentinel("Missing") + + +class DistributedDbServiceClient(object): + """ + Use the Globally Distributed Database service APIs to create and manage the Globally distributed databases. + """ + + def __init__(self, config, **kwargs): + """ + Creates a new service client + + :param dict config: + Configuration keys and values as per `SDK and Tool Configuration `__. + The :py:meth:`~oci.config.from_file` method can be used to load configuration from a file. Alternatively, a ``dict`` can be passed. You can validate_config + the dict using :py:meth:`~oci.config.validate_config` + + :param str service_endpoint: (optional) + The endpoint of the service to call using this client. For example ``https://iaas.us-ashburn-1.oraclecloud.com``. If this keyword argument is + not provided then it will be derived using the region in the config parameter. You should only provide this keyword argument if you have an explicit + need to specify a service endpoint. + + :param timeout: (optional) + The connection and read timeouts for the client. The default values are connection timeout 10 seconds and read timeout 60 seconds. This keyword argument can be provided + as a single float, in which case the value provided is used for both the read and connection timeouts, or as a tuple of two floats. If + a tuple is provided then the first value is used as the connection timeout and the second value as the read timeout. + :type timeout: float or tuple(float, float) + + :param signer: (optional) + The signer to use when signing requests made by the service client. The default is to use a :py:class:`~oci.signer.Signer` based on the values + provided in the config parameter. + + One use case for this parameter is for `Instance Principals authentication `__ + by passing an instance of :py:class:`~oci.auth.signers.InstancePrincipalsSecurityTokenSigner` as the value for this keyword argument + :type signer: :py:class:`~oci.signer.AbstractBaseSigner` + + :param obj retry_strategy: (optional) + A retry strategy to apply to all calls made by this service client (i.e. at the client level). There is no retry strategy applied by default. + Retry strategies can also be applied at the operation level by passing a ``retry_strategy`` keyword argument as part of calling the operation. + Any value provided at the operation level will override whatever is specified at the client level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` + is also available. The specifics of the default retry strategy are described `here `__. + + :param obj circuit_breaker_strategy: (optional) + A circuit breaker strategy to apply to all calls made by this service client (i.e. at the client level). + This client uses :py:data:`~oci.circuit_breaker.DEFAULT_CIRCUIT_BREAKER_STRATEGY` as default if no circuit breaker strategy is provided. + The specifics of circuit breaker strategy are described `here `__. + + :param function circuit_breaker_callback: (optional) + Callback function to receive any exceptions triggerred by the circuit breaker. + + :param bool client_level_realm_specific_endpoint_template_enabled: (optional) + A boolean flag to indicate whether or not this client should be created with realm specific endpoint template enabled or disable. By default, this will be set as None. + + :param allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this client should allow control characters in the response object. By default, the client will not + allow control characters to be in the response object. + + :param enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this client should enable strict url encoding in path params of a request. + By default, the client will not enable strict url encoding + """ + if not OCI_SDK_ENABLED_SERVICES_SET.is_service_enabled("distributed_database_v26"): + raise InvalidDeveloperToolConfiguration("The Developer Tool Configuration has disabled this service, this behavior is controlled by OCI_SDK_ENABLED_SERVICES_SET variable. Please check if your local developer-tool-configuration file configured the service you're targeting or contact the cloud provider on the availability of this service") + + validate_config(config, signer=kwargs.get('signer')) + if 'signer' in kwargs: + signer = kwargs['signer'] + + elif AUTHENTICATION_TYPE_FIELD_NAME in config: + signer = get_signer_from_authentication_type(config) + + else: + signer = Signer( + tenancy=config["tenancy"], + user=config["user"], + fingerprint=config["fingerprint"], + private_key_file_location=config.get("key_file"), + pass_phrase=get_config_value_or_default(config, "pass_phrase"), + private_key_content=config.get("key_content") + ) + + base_client_init_kwargs = { + 'regional_client': True, + 'service_endpoint': kwargs.get('service_endpoint'), + 'base_path': '/20260101', + 'service_endpoint_template': 'https://globaldb.{region}.oci.{secondLevelDomain}', + 'service_endpoint_template_per_realm': { }, # noqa: E201 E202 + 'service_uses_dualstack_endpoints_by_default': False, + 'skip_deserialization': kwargs.get('skip_deserialization', False), + 'circuit_breaker_strategy': kwargs.get('circuit_breaker_strategy', circuit_breaker.GLOBAL_CIRCUIT_BREAKER_STRATEGY), + 'client_level_realm_specific_endpoint_template_enabled': kwargs.get('client_level_realm_specific_endpoint_template_enabled'), + 'client_level_dualstack_endpoints_enabled': kwargs.get('client_level_dualstack_endpoints_enabled') + } + if 'timeout' in kwargs: + base_client_init_kwargs['timeout'] = kwargs.get('timeout') + if base_client_init_kwargs.get('circuit_breaker_strategy') is None: + base_client_init_kwargs['circuit_breaker_strategy'] = circuit_breaker.DEFAULT_CIRCUIT_BREAKER_STRATEGY + if 'allow_control_chars' in kwargs: + base_client_init_kwargs['allow_control_chars'] = kwargs.get('allow_control_chars') + if 'enable_strict_url_encoding' in kwargs: + base_client_init_kwargs['enable_strict_url_encoding'] = kwargs.get('enable_strict_url_encoding') + self.base_client = BaseClient("distributed_db_service", config, signer, distributed_database_v26_type_mapping, **base_client_init_kwargs) + self.retry_strategy = kwargs.get('retry_strategy') + self.circuit_breaker_callback = kwargs.get('circuit_breaker_callback') + + def add_distributed_database_gds_control_node(self, distributed_database_id, add_distributed_database_gds_control_node_details, **kwargs): + """ + Add new Global database services control(GDS CTL) node for the Globally distributed database. + + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param oci.distributed_database_v26.models.AddDistributedDatabaseGdsControlNodeDetails add_distributed_database_gds_control_node_details: (required) + Details required to provision the new Global database services control(GDS CTL) node for the Distributed database. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use add_distributed_database_gds_control_node API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedDatabaseId'] + resource_path = "/distributedDatabases/{distributedDatabaseId}/actions/addGdsControlNode" + method = "POST" + operation_name = "add_distributed_database_gds_control_node" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedDatabase/AddDistributedDatabaseGdsControlNode" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id", + "if_match", + "opc_retry_token" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"add_distributed_database_gds_control_node got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedDatabaseId": distributed_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=add_distributed_database_gds_control_node_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=add_distributed_database_gds_control_node_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def change_distributed_database_compartment(self, change_distributed_database_compartment_details, distributed_database_id, **kwargs): + """ + Move the Globally distributed database and its dependent resources to the specified compartment. + + + :param oci.distributed_database_v26.models.ChangeDistributedDatabaseCompartmentDetails change_distributed_database_compartment_details: (required) + Request to move the Globally distributed database to a different compartment. + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use change_distributed_database_compartment API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedDatabaseId'] + resource_path = "/distributedDatabases/{distributedDatabaseId}/actions/changeCompartment" + method = "POST" + operation_name = "change_distributed_database_compartment" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedDatabase/ChangeDistributedDatabaseCompartment" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id", + "if_match", + "opc_retry_token" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"change_distributed_database_compartment got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedDatabaseId": distributed_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=change_distributed_database_compartment_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=change_distributed_database_compartment_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def change_distributed_db_backup_config(self, distributed_database_id, change_distributed_db_backup_config_details, **kwargs): + """ + Change the DbBackupConfig for the Globally distributed database. + + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param oci.distributed_database_v26.models.ChangeDistributedDbBackupConfigDetails change_distributed_db_backup_config_details: (required) + Details of the DistributedDbBackupConfig for the Globally distributed database. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use change_distributed_db_backup_config API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedDatabaseId'] + resource_path = "/distributedDatabases/{distributedDatabaseId}/actions/changeDbBackupConfig" + method = "POST" + operation_name = "change_distributed_db_backup_config" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedDatabase/ChangeDistributedDbBackupConfig" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id", + "if_match", + "opc_retry_token" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"change_distributed_db_backup_config got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedDatabaseId": distributed_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=change_distributed_db_backup_config_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=change_distributed_db_backup_config_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def configure_distributed_database_auto_resource_management(self, distributed_database_id, configure_distributed_database_auto_resource_management_details, **kwargs): + """ + Configure autoResourceManagement options for the Globally distributed database. + + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param oci.distributed_database_v26.models.ConfigureDistributedDatabaseAutoResourceManagementDetails configure_distributed_database_auto_resource_management_details: (required) + The payload for configuring autoResourceManagement for distributed database. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.distributed_database_v26.models.DistributedDatabaseAutoResourceManagementDetails` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use configure_distributed_database_auto_resource_management API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedDatabaseId'] + resource_path = "/distributedDatabases/{distributedDatabaseId}/actions/configureAutoResourceManagement" + method = "POST" + operation_name = "configure_distributed_database_auto_resource_management" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedDatabase/ConfigureDistributedDatabaseAutoResourceManagement" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_retry_token", + "opc_request_id", + "if_match" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"configure_distributed_database_auto_resource_management got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedDatabaseId": distributed_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=configure_distributed_database_auto_resource_management_details, + response_type="DistributedDatabaseAutoResourceManagementDetails", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=configure_distributed_database_auto_resource_management_details, + response_type="DistributedDatabaseAutoResourceManagementDetails", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def configure_distributed_database_gsms(self, configure_distributed_database_gsms_details, distributed_database_id, **kwargs): + """ + Configure new Global Service Manager(GSM aka shard manager) instances for the Globally distributed database. + + + :param oci.distributed_database_v26.models.ConfigureDistributedDatabaseGsmsDetails configure_distributed_database_gsms_details: (required) + Details to configure the new GSM instances for the distributed database. + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use configure_distributed_database_gsms API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedDatabaseId'] + resource_path = "/distributedDatabases/{distributedDatabaseId}/actions/configureGsms" + method = "POST" + operation_name = "configure_distributed_database_gsms" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedDatabase/ConfigureDistributedDatabaseGsms" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_retry_token", + "opc_request_id", + "if_match" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"configure_distributed_database_gsms got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedDatabaseId": distributed_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=configure_distributed_database_gsms_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=configure_distributed_database_gsms_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def configure_distributed_database_sharding(self, distributed_database_id, **kwargs): + """ + Once all components of Globally distributed database are provisioned, and signed GSM certificates are successfully uploaded, this + api shall be invoked to configure sharding on the Globally distributed database. Note that this 'ConfigureSharding' API also needs to be + invoked after successfully adding a new shard to the Globally distributed database using PATCH api. If this API is not + invoked after successfully adding a new shard, then that new shard will not be a participant in sharding topology of + the Globally distributed database. + + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param bool is_rebalance_required: (optional) + The flag to indicate whether chunks need to be re-balanced. This flag is not applicable for USER-defined + sharding type. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use configure_distributed_database_sharding API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedDatabaseId'] + resource_path = "/distributedDatabases/{distributedDatabaseId}/actions/configureSharding" + method = "POST" + operation_name = "configure_distributed_database_sharding" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedDatabase/ConfigureDistributedDatabaseSharding" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "is_rebalance_required", + "opc_retry_token", + "opc_request_id", + "if_match" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"configure_distributed_database_sharding got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedDatabaseId": distributed_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + query_params = { + "isRebalanceRequired": kwargs.get("is_rebalance_required", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def create_distributed_database(self, create_distributed_database_details, **kwargs): + """ + Creates a Globally distributed database. + + + :param oci.distributed_database_v26.models.CreateDistributedDatabaseDetails create_distributed_database_details: (required) + Details of the Globally distributed database to be created. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.distributed_database_v26.models.DistributedDatabase` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use create_distributed_database API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = [] + resource_path = "/distributedDatabases" + method = "POST" + operation_name = "create_distributed_database" + api_reference_link = "" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_retry_token", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"create_distributed_database got unknown kwargs: {extra_kwargs!r}") + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + header_params=header_params, + body=create_distributed_database_details, + response_type="DistributedDatabase", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + header_params=header_params, + body=create_distributed_database_details, + response_type="DistributedDatabase", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def delete_distributed_database(self, distributed_database_id, **kwargs): + """ + Terminate the given Globally distributed database. + + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use delete_distributed_database API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedDatabaseId'] + resource_path = "/distributedDatabases/{distributedDatabaseId}" + method = "DELETE" + operation_name = "delete_distributed_database" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedDatabase/DeleteDistributedDatabase" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id", + "opc_retry_token", + "if_match" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"delete_distributed_database got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedDatabaseId": distributed_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "if-match": kwargs.get("if_match", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def generate_distributed_database_wallet(self, distributed_database_id, generate_distributed_database_wallet_details, **kwargs): + """ + Generate the wallet associated with Globally distributed database. + + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param oci.distributed_database_v26.models.GenerateDistributedDatabaseWalletDetails generate_distributed_database_wallet_details: (required) + Details for generating Globally distributed database wallet. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type stream + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use generate_distributed_database_wallet API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedDatabaseId'] + resource_path = "/distributedDatabases/{distributedDatabaseId}/actions/generateWallet" + method = "POST" + operation_name = "generate_distributed_database_wallet" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedDatabase/GenerateDistributedDatabaseWallet" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id", + "if_match", + "opc_retry_token" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"generate_distributed_database_wallet got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedDatabaseId": distributed_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/octet-stream", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=generate_distributed_database_wallet_details, + response_type="stream", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=generate_distributed_database_wallet_details, + response_type="stream", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def get_distributed_database(self, distributed_database_id, **kwargs): + """ + Gets the details of the Globally distributed database identified by given id. + + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param str metadata: (optional) + Comma-separated argument names for which metadata should be retrieved. + + :param str if_none_match: (optional) + For conditional requests. In the GET call for a resource, set the + `If-None-Match` header to the value of the ETag from a previous GET (or + POST or PUT) response for that resource. The server will return with + either a 304 Not Modified response if the resource has not changed, or a + 200 OK response with the updated representation. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.distributed_database_v26.models.DistributedDatabase` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_distributed_database API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedDatabaseId'] + resource_path = "/distributedDatabases/{distributedDatabaseId}" + method = "GET" + operation_name = "get_distributed_database" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedDatabase/GetDistributedDatabase" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "metadata", + "if_none_match", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"get_distributed_database got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedDatabaseId": distributed_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + query_params = { + "metadata": kwargs.get("metadata", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-none-match": kwargs.get("if_none_match", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="DistributedDatabase", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="DistributedDatabase", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def get_distributed_database_raft_metric(self, distributed_database_id, **kwargs): + """ + Operation to retrieve RAFT metrics for the Globally distributed database. If the Globally distributed database is not + RAFT based then empty response is returned from the API. + + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.distributed_database_v26.models.DistributedDatabaseRaftMetric` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_distributed_database_raft_metric API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedDatabaseId'] + resource_path = "/distributedDatabases/{distributedDatabaseId}/raftMetrics" + method = "GET" + operation_name = "get_distributed_database_raft_metric" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedDatabase/GetDistributedDatabaseRaftMetric" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"get_distributed_database_raft_metric got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedDatabaseId": distributed_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="DistributedDatabaseRaftMetric", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="DistributedDatabaseRaftMetric", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def get_distributed_database_ru_change_log(self, distributed_database_id, **kwargs): + """ + Operation to retrieve move RU invocation history and status for the Globally distributed database. + Results are ordered by created timestamp in descending order. + + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param str source_shard_name: (optional) + The source shard name to filter RU change log entries. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.distributed_database_v26.models.DistributedDatabaseRuChangeLog` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_distributed_database_ru_change_log API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedDatabaseId'] + resource_path = "/distributedDatabases/{distributedDatabaseId}/ruChangeLog" + method = "GET" + operation_name = "get_distributed_database_ru_change_log" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedDatabase/GetDistributedDatabaseRuChangeLog" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "source_shard_name", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"get_distributed_database_ru_change_log got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedDatabaseId": distributed_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + query_params = { + "sourceShardName": kwargs.get("source_shard_name", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="DistributedDatabaseRuChangeLog", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="DistributedDatabaseRuChangeLog", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_distributed_databases(self, compartment_id, **kwargs): + """ + List of Globally distributed databases. + + + :param str compartment_id: (required) + The ID of the compartment in which to list resources. + + :param bool compartment_id_in_subtree: (optional) + When set to true, returns resources in the specified compartment and in all of its child compartments recursively. Defaults to false. + + :param str private_endpoint_id: (optional) + A filter to return only resources that are associated with the given privateEndpointId. + + :param str lifecycle_state: (optional) + A filter to return only resources whose lifecycleState matches the specified value. + + Allowed values are: "ACTIVE", "FAILED", "NEEDS_ATTENTION", "INACTIVE", "DELETING", "DELETED", "UPDATING", "CREATING" + + :param int limit: (optional) + The maximum number of items to return. + + :param str page: (optional) + A token representing the position at which to start retrieving results. This must come from the `opc-next-page` header field of a previous response. + + :param str sort_order: (optional) + The sort order to use, either 'ASC' or 'DESC'. + + Allowed values are: "ASC", "DESC" + + :param str sort_by: (optional) + The field to sort by. Only one sort order may be provided. Default order for timeCreated is descending. Default order for displayName is ascending. + + Allowed values are: "timeCreated", "timeUpdated" + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param bool is_auto_resource_management_enabled: (optional) + A filter to return only resources where autoResourceManagement is enabled when set to `true`, or disabled when set to `false`. If omitted, no autoResourceManagement-based filtering is applied. + + :param str display_name: (optional) + A filter to return only Globally distributed databases that match the entire name given. The match is not case sensitive. + + :param str db_deployment_type: (optional) + A filter to return only resources whose dbDeploymentType matches the specified value. + + :param str metadata: (optional) + Comma-separated argument names for which metadata should be retrieved. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.distributed_database_v26.models.DistributedDatabaseCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_distributed_databases API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['compartmentId'] + resource_path = "/distributedDatabases" + method = "GET" + operation_name = "list_distributed_databases" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedDatabaseCollection/ListDistributedDatabases" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "compartment_id_in_subtree", + "private_endpoint_id", + "lifecycle_state", + "limit", + "page", + "sort_order", + "sort_by", + "opc_request_id", + "is_auto_resource_management_enabled", + "display_name", + "db_deployment_type", + "metadata" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_distributed_databases got unknown kwargs: {extra_kwargs!r}") + + if 'lifecycle_state' in kwargs: + lifecycle_state_allowed_values = ["ACTIVE", "FAILED", "NEEDS_ATTENTION", "INACTIVE", "DELETING", "DELETED", "UPDATING", "CREATING"] + if kwargs['lifecycle_state'] not in lifecycle_state_allowed_values: + raise ValueError( + f"Invalid value for `lifecycle_state`, must be one of { lifecycle_state_allowed_values }" + ) + + if 'sort_order' in kwargs: + sort_order_allowed_values = ["ASC", "DESC"] + if kwargs['sort_order'] not in sort_order_allowed_values: + raise ValueError( + f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + ) + + if 'sort_by' in kwargs: + sort_by_allowed_values = ["timeCreated", "timeUpdated"] + if kwargs['sort_by'] not in sort_by_allowed_values: + raise ValueError( + f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" + ) + + query_params = { + "compartmentId": compartment_id, + "compartmentIdInSubtree": kwargs.get("compartment_id_in_subtree", missing), + "privateEndpointId": kwargs.get("private_endpoint_id", missing), + "lifecycleState": kwargs.get("lifecycle_state", missing), + "limit": kwargs.get("limit", missing), + "page": kwargs.get("page", missing), + "sortOrder": kwargs.get("sort_order", missing), + "sortBy": kwargs.get("sort_by", missing), + "isAutoResourceManagementEnabled": kwargs.get("is_auto_resource_management_enabled", missing), + "displayName": kwargs.get("display_name", missing), + "dbDeploymentType": kwargs.get("db_deployment_type", missing), + "metadata": kwargs.get("metadata", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="DistributedDatabaseCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="DistributedDatabaseCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def move_distributed_database_replication_unit(self, distributed_database_id, move_distributed_database_replication_unit_details, **kwargs): + """ + Move the replication units for RAFT based globally distributed database from source shard to destination shard. + + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param oci.distributed_database_v26.models.MoveDistributedDatabaseReplicationUnitDetails move_distributed_database_replication_unit_details: (required) + Details required to move the replication units from source shard to destination shard. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use move_distributed_database_replication_unit API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedDatabaseId'] + resource_path = "/distributedDatabases/{distributedDatabaseId}/actions/moveReplicationUnit" + method = "POST" + operation_name = "move_distributed_database_replication_unit" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedDatabase/MoveDistributedDatabaseReplicationUnit" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_retry_token", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"move_distributed_database_replication_unit got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedDatabaseId": distributed_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=move_distributed_database_replication_unit_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=move_distributed_database_replication_unit_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def patch_distributed_database(self, distributed_database_id, patch_distributed_database_details, **kwargs): + """ + Patch operation to add, remove or update shards to the Globally distributed database topology. In single patch + operation, multiple shards can be either added, or removed or updated. Combination of inserts, update + and remove in single operation is not allowed. + + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param oci.distributed_database_v26.models.PatchDistributedDatabaseDetails patch_distributed_database_details: (required) + The payload containing instructions to patch the Globally distributed database. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use patch_distributed_database API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedDatabaseId'] + resource_path = "/distributedDatabases/{distributedDatabaseId}" + method = "PATCH" + operation_name = "patch_distributed_database" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedDatabase/PatchDistributedDatabase" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_retry_token", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"patch_distributed_database got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedDatabaseId": distributed_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=patch_distributed_database_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=patch_distributed_database_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def recreate_failed_distributed_database_resource(self, distributed_database_id, resource_name, **kwargs): + """ + Recreate the failed resource for the Globally Distributed Database. + + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param str resource_name: (required) + Specify the name of the shard, catalog, or GSM. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use recreate_failed_distributed_database_resource API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedDatabaseId', 'resourceName'] + resource_path = "/distributedDatabases/{distributedDatabaseId}/actions/recreateFailedResource" + method = "POST" + operation_name = "recreate_failed_distributed_database_resource" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedDatabase/RecreateFailedDistributedDatabaseResource" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "if_match", + "opc_retry_token", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"recreate_failed_distributed_database_resource got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedDatabaseId": distributed_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + query_params = { + "resourceName": resource_name + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def rotate_distributed_database_passwords(self, distributed_database_id, rotate_distributed_database_passwords_details, **kwargs): + """ + Rotate the gsmuser and gsmcatuser passwords for shards and catalog of the Globally distributed database. This operation will also remove GdsCtlNodes if present. + + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param oci.distributed_database_v26.models.RotateDistributedDatabasePasswordsDetails rotate_distributed_database_passwords_details: (required) + Details to rotate passwords for shards and catalogs in the Globally distributed database. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use rotate_distributed_database_passwords API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedDatabaseId'] + resource_path = "/distributedDatabases/{distributedDatabaseId}/actions/rotateDbPasswords" + method = "POST" + operation_name = "rotate_distributed_database_passwords" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedDatabase/RotateDistributedDatabasePasswords" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_retry_token", + "opc_request_id", + "if_match" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"rotate_distributed_database_passwords got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedDatabaseId": distributed_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=rotate_distributed_database_passwords_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=rotate_distributed_database_passwords_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def scale_distributed_database_gsms(self, scale_distributed_database_gsms_details, distributed_database_id, **kwargs): + """ + Scale global service manager(GSM aka shard manager) instances for the Globally distributed database. + + + :param oci.distributed_database_v26.models.ScaleDistributedDatabaseGsmsDetails scale_distributed_database_gsms_details: (required) + Empty payload to scale GSM instances for the distributed database. + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use scale_distributed_database_gsms API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedDatabaseId'] + resource_path = "/distributedDatabases/{distributedDatabaseId}/actions/scaleGsms" + method = "POST" + operation_name = "scale_distributed_database_gsms" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedDatabase/ScaleDistributedDatabaseGsms" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_retry_token", + "opc_request_id", + "if_match" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"scale_distributed_database_gsms got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedDatabaseId": distributed_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=scale_distributed_database_gsms_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=scale_distributed_database_gsms_details, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def start_distributed_database(self, distributed_database_id, **kwargs): + """ + Start the shards, catalog, GSMs and GDSCTL instances of Globally distributed database. + + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use start_distributed_database API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedDatabaseId'] + resource_path = "/distributedDatabases/{distributedDatabaseId}/actions/startDatabase" + method = "POST" + operation_name = "start_distributed_database" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedDatabase/StartDistributedDatabase" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_retry_token", + "opc_request_id", + "if_match" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"start_distributed_database got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedDatabaseId": distributed_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def stop_distributed_database(self, distributed_database_id, **kwargs): + """ + Stop the shards, catalog, GSMs and GDSCTL instances for the Globally distributed database. + + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use stop_distributed_database API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedDatabaseId'] + resource_path = "/distributedDatabases/{distributedDatabaseId}/actions/stopDatabase" + method = "POST" + operation_name = "stop_distributed_database" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedDatabase/StopDistributedDatabase" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_retry_token", + "opc_request_id", + "if_match" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"stop_distributed_database got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedDatabaseId": distributed_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def update_distributed_database(self, distributed_database_id, update_distributed_database_details, **kwargs): + """ + Updates the configuration of the Globally distributed database. + + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param oci.distributed_database_v26.models.UpdateDistributedDatabaseDetails update_distributed_database_details: (required) + The configuration of the Globally distributed database to be updated. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.distributed_database_v26.models.DistributedDatabase` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use update_distributed_database API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedDatabaseId'] + resource_path = "/distributedDatabases/{distributedDatabaseId}" + method = "PUT" + operation_name = "update_distributed_database" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedDatabase/UpdateDistributedDatabase" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id", + "if_match" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"update_distributed_database got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedDatabaseId": distributed_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing), + "if-match": kwargs.get("if_match", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=update_distributed_database_details, + response_type="DistributedDatabase", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=update_distributed_database_details, + response_type="DistributedDatabase", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def validate_distributed_database_network(self, distributed_database_id, **kwargs): + """ + Validate the network connectivity between components of the globally distributed database. + + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param bool is_surrogate: (optional) + Determines the surrogates check. Default is true. + + :param str if_match: (optional) + For optimistic concurrency control. In the PUT or DELETE call + for a resource, set the `if-match` parameter to the value of the + etag from a previous GET or POST response for that resource. + The resource will be updated or deleted only if the etag you + provide matches the resource's current etag value. + + :param str opc_retry_token: (optional) + A token that uniquely identifies a request so it can be retried in case of a timeout or + server error without risk of executing that same action again. Retry tokens expire after 24 + hours, but can be invalidated before then due to conflicting operations. For example, if a resource + has been deleted and purged from the system, then a retry of the original creation request + might be rejected. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type None + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use validate_distributed_database_network API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['distributedDatabaseId'] + resource_path = "/distributedDatabases/{distributedDatabaseId}/actions/validateNetwork" + method = "POST" + operation_name = "validate_distributed_database_network" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/DistributedDatabase/ValidateDistributedDatabaseNetwork" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "is_surrogate", + "if_match", + "opc_retry_token", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"validate_distributed_database_network got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "distributedDatabaseId": distributed_database_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + query_params = { + "isSurrogate": kwargs.get("is_surrogate", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing), + "opc-retry-token": kwargs.get("opc_retry_token", missing), + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_retry_token_if_needed(header_params) + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) diff --git a/src/oci/distributed_database_v26/distributed_db_service_client_composite_operations.py b/src/oci/distributed_database_v26/distributed_db_service_client_composite_operations.py new file mode 100644 index 0000000000..76f45c15a7 --- /dev/null +++ b/src/oci/distributed_database_v26/distributed_db_service_client_composite_operations.py @@ -0,0 +1,691 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +import oci # noqa: F401 +from oci.util import WAIT_RESOURCE_NOT_FOUND # noqa: F401 + + +class DistributedDbServiceClientCompositeOperations(object): + """ + This class provides a wrapper around :py:class:`~oci.distributed_database_v26.DistributedDbServiceClient` and offers convenience methods + for operations that would otherwise need to be chained together. For example, instead of performing an action + on a resource (e.g. launching an instance, creating a load balancer) and then using a waiter to wait for the resource + to enter a given state, you can call a single method in this class to accomplish the same functionality + """ + + def __init__(self, client, **kwargs): + """ + Creates a new DistributedDbServiceClientCompositeOperations object + + :param DistributedDbServiceClient client: + The service client which will be wrapped by this object + """ + self.client = client + + def add_distributed_database_gds_control_node_and_wait_for_state(self, distributed_database_id, add_distributed_database_gds_control_node_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedDbServiceClient.add_distributed_database_gds_control_node` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param oci.distributed_database_v26.models.AddDistributedDatabaseGdsControlNodeDetails add_distributed_database_gds_control_node_details: (required) + Details required to provision the new Global database services control(GDS CTL) node for the Distributed database. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedDbServiceClient.add_distributed_database_gds_control_node` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.add_distributed_database_gds_control_node(distributed_database_id, add_distributed_database_gds_control_node_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def change_distributed_database_compartment_and_wait_for_state(self, change_distributed_database_compartment_details, distributed_database_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedDbServiceClient.change_distributed_database_compartment` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param oci.distributed_database_v26.models.ChangeDistributedDatabaseCompartmentDetails change_distributed_database_compartment_details: (required) + Request to move the Globally distributed database to a different compartment. + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedDbServiceClient.change_distributed_database_compartment` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.change_distributed_database_compartment(change_distributed_database_compartment_details, distributed_database_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def change_distributed_db_backup_config_and_wait_for_state(self, distributed_database_id, change_distributed_db_backup_config_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedDbServiceClient.change_distributed_db_backup_config` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param oci.distributed_database_v26.models.ChangeDistributedDbBackupConfigDetails change_distributed_db_backup_config_details: (required) + Details of the DistributedDbBackupConfig for the Globally distributed database. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedDbServiceClient.change_distributed_db_backup_config` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.change_distributed_db_backup_config(distributed_database_id, change_distributed_db_backup_config_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def configure_distributed_database_gsms_and_wait_for_state(self, configure_distributed_database_gsms_details, distributed_database_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedDbServiceClient.configure_distributed_database_gsms` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param oci.distributed_database_v26.models.ConfigureDistributedDatabaseGsmsDetails configure_distributed_database_gsms_details: (required) + Details to configure the new GSM instances for the distributed database. + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedDbServiceClient.configure_distributed_database_gsms` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.configure_distributed_database_gsms(configure_distributed_database_gsms_details, distributed_database_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def configure_distributed_database_sharding_and_wait_for_state(self, distributed_database_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedDbServiceClient.configure_distributed_database_sharding` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedDbServiceClient.configure_distributed_database_sharding` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.configure_distributed_database_sharding(distributed_database_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def create_distributed_database_and_wait_for_state(self, create_distributed_database_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedDbServiceClient.create_distributed_database` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param oci.distributed_database_v26.models.CreateDistributedDatabaseDetails create_distributed_database_details: (required) + Details of the Globally distributed database to be created. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedDbServiceClient.create_distributed_database` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.create_distributed_database(create_distributed_database_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def delete_distributed_database_and_wait_for_state(self, distributed_database_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedDbServiceClient.delete_distributed_database` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedDbServiceClient.delete_distributed_database` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = None + try: + operation_result = self.client.delete_distributed_database(distributed_database_id, **operation_kwargs) + except oci.exceptions.ServiceError as e: + if e.status == 404: + return WAIT_RESOURCE_NOT_FOUND + else: + raise e + + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def move_distributed_database_replication_unit_and_wait_for_state(self, distributed_database_id, move_distributed_database_replication_unit_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedDbServiceClient.move_distributed_database_replication_unit` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param oci.distributed_database_v26.models.MoveDistributedDatabaseReplicationUnitDetails move_distributed_database_replication_unit_details: (required) + Details required to move the replication units from source shard to destination shard. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedDbServiceClient.move_distributed_database_replication_unit` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.move_distributed_database_replication_unit(distributed_database_id, move_distributed_database_replication_unit_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def patch_distributed_database_and_wait_for_state(self, distributed_database_id, patch_distributed_database_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedDbServiceClient.patch_distributed_database` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param oci.distributed_database_v26.models.PatchDistributedDatabaseDetails patch_distributed_database_details: (required) + The payload containing instructions to patch the Globally distributed database. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedDbServiceClient.patch_distributed_database` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.patch_distributed_database(distributed_database_id, patch_distributed_database_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def recreate_failed_distributed_database_resource_and_wait_for_state(self, distributed_database_id, resource_name, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedDbServiceClient.recreate_failed_distributed_database_resource` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param str resource_name: (required) + Specify the name of the shard, catalog, or GSM. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedDbServiceClient.recreate_failed_distributed_database_resource` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.recreate_failed_distributed_database_resource(distributed_database_id, resource_name, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def rotate_distributed_database_passwords_and_wait_for_state(self, distributed_database_id, rotate_distributed_database_passwords_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedDbServiceClient.rotate_distributed_database_passwords` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param oci.distributed_database_v26.models.RotateDistributedDatabasePasswordsDetails rotate_distributed_database_passwords_details: (required) + Details to rotate passwords for shards and catalogs in the Globally distributed database. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedDbServiceClient.rotate_distributed_database_passwords` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.rotate_distributed_database_passwords(distributed_database_id, rotate_distributed_database_passwords_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def scale_distributed_database_gsms_and_wait_for_state(self, scale_distributed_database_gsms_details, distributed_database_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedDbServiceClient.scale_distributed_database_gsms` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param oci.distributed_database_v26.models.ScaleDistributedDatabaseGsmsDetails scale_distributed_database_gsms_details: (required) + Empty payload to scale GSM instances for the distributed database. + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedDbServiceClient.scale_distributed_database_gsms` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.scale_distributed_database_gsms(scale_distributed_database_gsms_details, distributed_database_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def start_distributed_database_and_wait_for_state(self, distributed_database_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedDbServiceClient.start_distributed_database` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedDbServiceClient.start_distributed_database` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.start_distributed_database(distributed_database_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def stop_distributed_database_and_wait_for_state(self, distributed_database_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedDbServiceClient.stop_distributed_database` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedDbServiceClient.stop_distributed_database` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.stop_distributed_database(distributed_database_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def update_distributed_database_and_wait_for_state(self, distributed_database_id, update_distributed_database_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedDbServiceClient.update_distributed_database` and waits for the :py:class:`~oci.distributed_database_v26.models.DistributedDatabase` acted upon + to enter the given state(s). + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param oci.distributed_database_v26.models.UpdateDistributedDatabaseDetails update_distributed_database_details: (required) + The configuration of the Globally distributed database to be updated. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.DistributedDatabase.lifecycle_state` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedDbServiceClient.update_distributed_database` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.update_distributed_database(distributed_database_id, update_distributed_database_details, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + distributed_database_id = operation_result.data.id + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_distributed_database(distributed_database_id), # noqa: F821 + evaluate_response=lambda r: getattr(r.data, 'lifecycle_state') and getattr(r.data, 'lifecycle_state').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except (NameError, TypeError) as e: + if not e.args: + e.args = ('',) + e.args = e.args + ('This composite operation is currently not supported in the SDK. Please use the operation from the service client and use waiters as an alternative. For more information on waiters, visit: "https://docs.oracle.com/en-us/iaas/tools/python/latest/api/waiters.html"', ) + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def validate_distributed_database_network_and_wait_for_state(self, distributed_database_id, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.distributed_database_v26.DistributedDbServiceClient.validate_distributed_database_network` and waits for the :py:class:`~oci.distributed_database_v26.models.WorkRequest` + to enter the given state(s). + + :param str distributed_database_id: (required) + Globally distributed database identifier. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.distributed_database_v26.models.WorkRequest.status` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.distributed_database_v26.DistributedDbServiceClient.validate_distributed_database_network` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.validate_distributed_database_network(distributed_database_id, **operation_kwargs) + if not wait_for_states: + return operation_result + lowered_wait_for_states = [w.lower() for w in wait_for_states] + if 'opc-work-request-id' not in operation_result.headers: + return operation_result + wait_for_resource_id = operation_result.headers['opc-work-request-id'] + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_work_request(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'status') and getattr(r.data, 'status').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) diff --git a/src/oci/distributed_database_v26/distributed_db_work_request_service_client.py b/src/oci/distributed_database_v26/distributed_db_work_request_service_client.py new file mode 100644 index 0000000000..bee1ee61c7 --- /dev/null +++ b/src/oci/distributed_database_v26/distributed_db_work_request_service_client.py @@ -0,0 +1,690 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +from __future__ import absolute_import + +from oci._vendor import requests # noqa: F401 +from oci._vendor import six + +from oci import retry, circuit_breaker # noqa: F401 +from oci.base_client import BaseClient +from oci.config import get_config_value_or_default, validate_config +from oci.signer import Signer +from oci.util import Sentinel, get_signer_from_authentication_type, AUTHENTICATION_TYPE_FIELD_NAME +from oci.exceptions import InvalidDeveloperToolConfiguration +from oci.developer_tool_configuration import OCI_SDK_ENABLED_SERVICES_SET +from .models import distributed_database_v26_type_mapping +missing = Sentinel("Missing") + + +class DistributedDbWorkRequestServiceClient(object): + """ + Use the Globally Distributed Database service APIs to create and manage the Globally distributed databases. + """ + + def __init__(self, config, **kwargs): + """ + Creates a new service client + + :param dict config: + Configuration keys and values as per `SDK and Tool Configuration `__. + The :py:meth:`~oci.config.from_file` method can be used to load configuration from a file. Alternatively, a ``dict`` can be passed. You can validate_config + the dict using :py:meth:`~oci.config.validate_config` + + :param str service_endpoint: (optional) + The endpoint of the service to call using this client. For example ``https://iaas.us-ashburn-1.oraclecloud.com``. If this keyword argument is + not provided then it will be derived using the region in the config parameter. You should only provide this keyword argument if you have an explicit + need to specify a service endpoint. + + :param timeout: (optional) + The connection and read timeouts for the client. The default values are connection timeout 10 seconds and read timeout 60 seconds. This keyword argument can be provided + as a single float, in which case the value provided is used for both the read and connection timeouts, or as a tuple of two floats. If + a tuple is provided then the first value is used as the connection timeout and the second value as the read timeout. + :type timeout: float or tuple(float, float) + + :param signer: (optional) + The signer to use when signing requests made by the service client. The default is to use a :py:class:`~oci.signer.Signer` based on the values + provided in the config parameter. + + One use case for this parameter is for `Instance Principals authentication `__ + by passing an instance of :py:class:`~oci.auth.signers.InstancePrincipalsSecurityTokenSigner` as the value for this keyword argument + :type signer: :py:class:`~oci.signer.AbstractBaseSigner` + + :param obj retry_strategy: (optional) + A retry strategy to apply to all calls made by this service client (i.e. at the client level). There is no retry strategy applied by default. + Retry strategies can also be applied at the operation level by passing a ``retry_strategy`` keyword argument as part of calling the operation. + Any value provided at the operation level will override whatever is specified at the client level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` + is also available. The specifics of the default retry strategy are described `here `__. + + :param obj circuit_breaker_strategy: (optional) + A circuit breaker strategy to apply to all calls made by this service client (i.e. at the client level). + This client uses :py:data:`~oci.circuit_breaker.DEFAULT_CIRCUIT_BREAKER_STRATEGY` as default if no circuit breaker strategy is provided. + The specifics of circuit breaker strategy are described `here `__. + + :param function circuit_breaker_callback: (optional) + Callback function to receive any exceptions triggerred by the circuit breaker. + + :param bool client_level_realm_specific_endpoint_template_enabled: (optional) + A boolean flag to indicate whether or not this client should be created with realm specific endpoint template enabled or disable. By default, this will be set as None. + + :param allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this client should allow control characters in the response object. By default, the client will not + allow control characters to be in the response object. + + :param enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this client should enable strict url encoding in path params of a request. + By default, the client will not enable strict url encoding + """ + if not OCI_SDK_ENABLED_SERVICES_SET.is_service_enabled("distributed_database_v26"): + raise InvalidDeveloperToolConfiguration("The Developer Tool Configuration has disabled this service, this behavior is controlled by OCI_SDK_ENABLED_SERVICES_SET variable. Please check if your local developer-tool-configuration file configured the service you're targeting or contact the cloud provider on the availability of this service") + + validate_config(config, signer=kwargs.get('signer')) + if 'signer' in kwargs: + signer = kwargs['signer'] + + elif AUTHENTICATION_TYPE_FIELD_NAME in config: + signer = get_signer_from_authentication_type(config) + + else: + signer = Signer( + tenancy=config["tenancy"], + user=config["user"], + fingerprint=config["fingerprint"], + private_key_file_location=config.get("key_file"), + pass_phrase=get_config_value_or_default(config, "pass_phrase"), + private_key_content=config.get("key_content") + ) + + base_client_init_kwargs = { + 'regional_client': True, + 'service_endpoint': kwargs.get('service_endpoint'), + 'base_path': '/20260101', + 'service_endpoint_template': 'https://globaldb.{region}.oci.{secondLevelDomain}', + 'service_endpoint_template_per_realm': { }, # noqa: E201 E202 + 'service_uses_dualstack_endpoints_by_default': False, + 'skip_deserialization': kwargs.get('skip_deserialization', False), + 'circuit_breaker_strategy': kwargs.get('circuit_breaker_strategy', circuit_breaker.GLOBAL_CIRCUIT_BREAKER_STRATEGY), + 'client_level_realm_specific_endpoint_template_enabled': kwargs.get('client_level_realm_specific_endpoint_template_enabled'), + 'client_level_dualstack_endpoints_enabled': kwargs.get('client_level_dualstack_endpoints_enabled') + } + if 'timeout' in kwargs: + base_client_init_kwargs['timeout'] = kwargs.get('timeout') + if base_client_init_kwargs.get('circuit_breaker_strategy') is None: + base_client_init_kwargs['circuit_breaker_strategy'] = circuit_breaker.DEFAULT_CIRCUIT_BREAKER_STRATEGY + if 'allow_control_chars' in kwargs: + base_client_init_kwargs['allow_control_chars'] = kwargs.get('allow_control_chars') + if 'enable_strict_url_encoding' in kwargs: + base_client_init_kwargs['enable_strict_url_encoding'] = kwargs.get('enable_strict_url_encoding') + self.base_client = BaseClient("distributed_db_work_request_service", config, signer, distributed_database_v26_type_mapping, **base_client_init_kwargs) + self.retry_strategy = kwargs.get('retry_strategy') + self.circuit_breaker_callback = kwargs.get('circuit_breaker_callback') + + def get_work_request(self, work_request_id, **kwargs): + """ + Gets details of the work request with the given ID. + + + :param str work_request_id: (required) + The ID of the asynchronous request. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.distributed_database_v26.models.WorkRequest` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_work_request API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['workRequestId'] + resource_path = "/workRequests/{workRequestId}" + method = "GET" + operation_name = "get_work_request" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/WorkRequest/GetWorkRequest" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"get_work_request got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "workRequestId": work_request_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="WorkRequest", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="WorkRequest", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_work_request_errors(self, work_request_id, **kwargs): + """ + Returns a (paginated) list of errors for the work request with the given ID. + + + :param str work_request_id: (required) + The ID of the asynchronous request. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str page: (optional) + A token representing the position at which to start retrieving results. This must come from the `opc-next-page` header field of a previous response. + + :param int limit: (optional) + The maximum number of items to return. + + :param str sort_by: (optional) + The field to sort by. Only one sort order may be provided. Default order for timestamp is descending. + + Allowed values are: "timestamp" + + :param str sort_order: (optional) + The sort order to use, either 'ASC' or 'DESC'. + + Allowed values are: "ASC", "DESC" + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.distributed_database_v26.models.WorkRequestErrorCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_work_request_errors API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['workRequestId'] + resource_path = "/workRequests/{workRequestId}/errors" + method = "GET" + operation_name = "list_work_request_errors" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/WorkRequestError/ListWorkRequestErrors" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id", + "page", + "limit", + "sort_by", + "sort_order" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_work_request_errors got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "workRequestId": work_request_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + if 'sort_by' in kwargs: + sort_by_allowed_values = ["timestamp"] + if kwargs['sort_by'] not in sort_by_allowed_values: + raise ValueError( + f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" + ) + + if 'sort_order' in kwargs: + sort_order_allowed_values = ["ASC", "DESC"] + if kwargs['sort_order'] not in sort_order_allowed_values: + raise ValueError( + f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + ) + + query_params = { + "page": kwargs.get("page", missing), + "limit": kwargs.get("limit", missing), + "sortBy": kwargs.get("sort_by", missing), + "sortOrder": kwargs.get("sort_order", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="WorkRequestErrorCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="WorkRequestErrorCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_work_request_logs(self, work_request_id, **kwargs): + """ + Returns a (paginated) list of logs for the work request with the given ID. + + + :param str work_request_id: (required) + The ID of the asynchronous request. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str page: (optional) + A token representing the position at which to start retrieving results. This must come from the `opc-next-page` header field of a previous response. + + :param int limit: (optional) + The maximum number of items to return. + + :param str sort_by: (optional) + The field to sort by. Only one sort order may be provided. Default order for timestamp is descending. + + Allowed values are: "timestamp" + + :param str sort_order: (optional) + The sort order to use, either 'ASC' or 'DESC'. + + Allowed values are: "ASC", "DESC" + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.distributed_database_v26.models.WorkRequestLogEntryCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_work_request_logs API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['workRequestId'] + resource_path = "/workRequests/{workRequestId}/logs" + method = "GET" + operation_name = "list_work_request_logs" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/WorkRequestLogEntry/ListWorkRequestLogs" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id", + "page", + "limit", + "sort_by", + "sort_order" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_work_request_logs got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "workRequestId": work_request_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + if 'sort_by' in kwargs: + sort_by_allowed_values = ["timestamp"] + if kwargs['sort_by'] not in sort_by_allowed_values: + raise ValueError( + f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" + ) + + if 'sort_order' in kwargs: + sort_order_allowed_values = ["ASC", "DESC"] + if kwargs['sort_order'] not in sort_order_allowed_values: + raise ValueError( + f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + ) + + query_params = { + "page": kwargs.get("page", missing), + "limit": kwargs.get("limit", missing), + "sortBy": kwargs.get("sort_by", missing), + "sortOrder": kwargs.get("sort_order", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="WorkRequestLogEntryCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="WorkRequestLogEntryCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def list_work_requests(self, compartment_id, **kwargs): + """ + Lists the work requests in a compartment. + + + :param str compartment_id: (required) + The ID of the compartment in which to list resources. + + :param str work_request_id: (optional) + The ID of the asynchronous work request. + + :param str status: (optional) + A filter to return only resources their lifecycleState matches the given OperationStatus. + + Allowed values are: "ACCEPTED", "IN_PROGRESS", "WAITING", "FAILED", "SUCCEEDED", "CANCELING", "CANCELED", "NEEDS_ATTENTION" + + :param str resource_id: (optional) + The ID of the resource affected by the work request. + + :param str opc_request_id: (optional) + The client request ID for tracing. + + :param str page: (optional) + A token representing the position at which to start retrieving results. This must come from the `opc-next-page` header field of a previous response. + + :param int limit: (optional) + The maximum number of items to return. + + :param str sort_order: (optional) + The sort order to use, either 'ASC' or 'DESC'. + + Allowed values are: "ASC", "DESC" + + :param str sort_by: (optional) + The field to sort by. Only one sort order may be provided. Default order for timeAccepted is descending. + + Allowed values are: "timeAccepted" + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.distributed_database_v26.models.WorkRequestSummaryCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use list_work_requests API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['compartmentId'] + resource_path = "/workRequests" + method = "GET" + operation_name = "list_work_requests" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/globally-distributed-database/20260101/WorkRequest/ListWorkRequests" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "work_request_id", + "status", + "resource_id", + "opc_request_id", + "page", + "limit", + "sort_order", + "sort_by" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"list_work_requests got unknown kwargs: {extra_kwargs!r}") + + if 'status' in kwargs: + status_allowed_values = ["ACCEPTED", "IN_PROGRESS", "WAITING", "FAILED", "SUCCEEDED", "CANCELING", "CANCELED", "NEEDS_ATTENTION"] + if kwargs['status'] not in status_allowed_values: + raise ValueError( + f"Invalid value for `status`, must be one of { status_allowed_values }" + ) + + if 'sort_order' in kwargs: + sort_order_allowed_values = ["ASC", "DESC"] + if kwargs['sort_order'] not in sort_order_allowed_values: + raise ValueError( + f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + ) + + if 'sort_by' in kwargs: + sort_by_allowed_values = ["timeAccepted"] + if kwargs['sort_by'] not in sort_by_allowed_values: + raise ValueError( + f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }" + ) + + query_params = { + "compartmentId": compartment_id, + "workRequestId": kwargs.get("work_request_id", missing), + "status": kwargs.get("status", missing), + "resourceId": kwargs.get("resource_id", missing), + "page": kwargs.get("page", missing), + "limit": kwargs.get("limit", missing), + "sortOrder": kwargs.get("sort_order", missing), + "sortBy": kwargs.get("sort_by", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="WorkRequestSummaryCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + query_params=query_params, + header_params=header_params, + response_type="WorkRequestSummaryCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) diff --git a/src/oci/distributed_database_v26/distributed_db_work_request_service_client_composite_operations.py b/src/oci/distributed_database_v26/distributed_db_work_request_service_client_composite_operations.py new file mode 100644 index 0000000000..432123a3b0 --- /dev/null +++ b/src/oci/distributed_database_v26/distributed_db_work_request_service_client_composite_operations.py @@ -0,0 +1,26 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +import oci # noqa: F401 +from oci.util import WAIT_RESOURCE_NOT_FOUND # noqa: F401 + + +class DistributedDbWorkRequestServiceClientCompositeOperations(object): + """ + This class provides a wrapper around :py:class:`~oci.distributed_database_v26.DistributedDbWorkRequestServiceClient` and offers convenience methods + for operations that would otherwise need to be chained together. For example, instead of performing an action + on a resource (e.g. launching an instance, creating a load balancer) and then using a waiter to wait for the resource + to enter a given state, you can call a single method in this class to accomplish the same functionality + """ + + def __init__(self, client, **kwargs): + """ + Creates a new DistributedDbWorkRequestServiceClientCompositeOperations object + + :param DistributedDbWorkRequestServiceClient client: + The service client which will be wrapped by this object + """ + self.client = client diff --git a/src/oci/distributed_database_v26/models/__init__.py b/src/oci/distributed_database_v26/models/__init__.py new file mode 100644 index 0000000000..827a000d97 --- /dev/null +++ b/src/oci/distributed_database_v26/models/__init__.py @@ -0,0 +1,328 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +from __future__ import absolute_import + +from .add_distributed_autonomous_database_gds_control_node_details import AddDistributedAutonomousDatabaseGdsControlNodeDetails +from .add_distributed_database_gds_control_node_details import AddDistributedDatabaseGdsControlNodeDetails +from .auto_resource_management_configuration_details import AutoResourceManagementConfigurationDetails +from .autonomous_composite_data_guard_shard_space import AutonomousCompositeDataGuardShardSpace +from .autonomous_composite_data_guard_shard_space_replica import AutonomousCompositeDataGuardShardSpaceReplica +from .autonomous_composite_raft_shard_space import AutonomousCompositeRaftShardSpace +from .autonomous_composite_shard_space_raft_cluster import AutonomousCompositeShardSpaceRaftCluster +from .autonomous_system_data_guard_database import AutonomousSystemDataGuardDatabase +from .autonomous_system_data_guard_replica import AutonomousSystemDataGuardReplica +from .autonomous_system_raft_cluster import AutonomousSystemRaftCluster +from .autonomous_user_shard_space import AutonomousUserShardSpace +from .autonomous_user_shard_space_replica import AutonomousUserShardSpaceReplica +from .change_distributed_autonomous_database_compartment_details import ChangeDistributedAutonomousDatabaseCompartmentDetails +from .change_distributed_autonomous_db_backup_config_details import ChangeDistributedAutonomousDbBackupConfigDetails +from .change_distributed_database_compartment_details import ChangeDistributedDatabaseCompartmentDetails +from .change_distributed_database_private_endpoint_compartment_details import ChangeDistributedDatabasePrivateEndpointCompartmentDetails +from .change_distributed_db_backup_config_details import ChangeDistributedDbBackupConfigDetails +from .composite_data_guard_shard_space import CompositeDataGuardShardSpace +from .composite_data_guard_shard_space_replica import CompositeDataGuardShardSpaceReplica +from .composite_raft_shard_space import CompositeRaftShardSpace +from .composite_shard_space_raft_cluster import CompositeShardSpaceRaftCluster +from .configure_distributed_autonomous_database_auto_resource_management_details import ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails +from .configure_distributed_autonomous_database_gsm_wallet_details import ConfigureDistributedAutonomousDatabaseGsmWalletDetails +from .configure_distributed_autonomous_database_gsms_details import ConfigureDistributedAutonomousDatabaseGsmsDetails +from .configure_distributed_database_auto_resource_management_details import ConfigureDistributedDatabaseAutoResourceManagementDetails +from .configure_distributed_database_gsms_details import ConfigureDistributedDatabaseGsmsDetails +from .create_autonomous_catalog_database_details import CreateAutonomousCatalogDatabaseDetails +from .create_autonomous_catalog_details import CreateAutonomousCatalogDetails +from .create_autonomous_catalog_replica_details import CreateAutonomousCatalogReplicaDetails +from .create_autonomous_composite_data_guard_shard_space_details import CreateAutonomousCompositeDataGuardShardSpaceDetails +from .create_autonomous_composite_data_guard_shard_space_replica_details import CreateAutonomousCompositeDataGuardShardSpaceReplicaDetails +from .create_autonomous_composite_raft_shard_space_details import CreateAutonomousCompositeRaftShardSpaceDetails +from .create_autonomous_composite_shard_space_raft_cluster_details import CreateAutonomousCompositeShardSpaceRaftClusterDetails +from .create_autonomous_system_data_guard_database_details import CreateAutonomousSystemDataGuardDatabaseDetails +from .create_autonomous_system_data_guard_replica_details import CreateAutonomousSystemDataGuardReplicaDetails +from .create_autonomous_system_raft_cluster_details import CreateAutonomousSystemRaftClusterDetails +from .create_autonomous_user_shard_space_details import CreateAutonomousUserShardSpaceDetails +from .create_autonomous_user_shard_space_replica_details import CreateAutonomousUserShardSpaceReplicaDetails +from .create_composite_data_guard_shard_space_details import CreateCompositeDataGuardShardSpaceDetails +from .create_composite_data_guard_shard_space_replica_details import CreateCompositeDataGuardShardSpaceReplicaDetails +from .create_composite_raft_shard_space_details import CreateCompositeRaftShardSpaceDetails +from .create_composite_shard_space_raft_cluster_details import CreateCompositeShardSpaceRaftClusterDetails +from .create_distributed_autonomous_database_catalog_with_dedicated_infra_details import CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails +from .create_distributed_autonomous_database_details import CreateDistributedAutonomousDatabaseDetails +from .create_distributed_autonomous_database_shard_database_details import CreateDistributedAutonomousDatabaseShardDatabaseDetails +from .create_distributed_autonomous_database_shard_with_dedicated_infra_details import CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails +from .create_distributed_database_catalog_database_details import CreateDistributedDatabaseCatalogDatabaseDetails +from .create_distributed_database_catalog_database_with_db_home_details import CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails +from .create_distributed_database_catalog_database_with_exadb_xd_details import CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails +from .create_distributed_database_catalog_database_with_exadb_xs_details import CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails +from .create_distributed_database_catalog_details import CreateDistributedDatabaseCatalogDetails +from .create_distributed_database_catalog_replica_details import CreateDistributedDatabaseCatalogReplicaDetails +from .create_distributed_database_catalog_with_exadb_xs_new_cluster_details import CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails +from .create_distributed_database_catalog_with_exadb_xs_new_vault_and_cluster_details import CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails +from .create_distributed_database_details import CreateDistributedDatabaseDetails +from .create_distributed_database_private_endpoint_details import CreateDistributedDatabasePrivateEndpointDetails +from .create_distributed_database_shard_database_details import CreateDistributedDatabaseShardDatabaseDetails +from .create_distributed_database_shard_database_with_db_home_details import CreateDistributedDatabaseShardDatabaseWithDbHomeDetails +from .create_distributed_database_shard_database_with_exadb_xd_details import CreateDistributedDatabaseShardDatabaseWithExadbXdDetails +from .create_distributed_database_shard_database_with_exadb_xs_details import CreateDistributedDatabaseShardDatabaseWithExadbXsDetails +from .create_distributed_database_shard_with_exadb_xs_new_cluster_details import CreateDistributedDatabaseShardWithExadbXsNewClusterDetails +from .create_distributed_database_shard_with_exadb_xs_new_vault_and_cluster_details import CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails +from .create_system_data_guard_database_details import CreateSystemDataGuardDatabaseDetails +from .create_system_data_guard_replica_details import CreateSystemDataGuardReplicaDetails +from .create_system_raft_cluster_details import CreateSystemRaftClusterDetails +from .create_user_shard_space_details import CreateUserShardSpaceDetails +from .create_user_shard_space_replica_details import CreateUserShardSpaceReplicaDetails +from .db_storage_vault_details import DbStorageVaultDetails +from .distributed_autonomous_database import DistributedAutonomousDatabase +from .distributed_autonomous_database_auto_resource_management_details import DistributedAutonomousDatabaseAutoResourceManagementDetails +from .distributed_autonomous_database_catalog import DistributedAutonomousDatabaseCatalog +from .distributed_autonomous_database_catalog_database import DistributedAutonomousDatabaseCatalogDatabase +from .distributed_autonomous_database_catalog_replica import DistributedAutonomousDatabaseCatalogReplica +from .distributed_autonomous_database_catalog_with_dedicated_infra import DistributedAutonomousDatabaseCatalogWithDedicatedInfra +from .distributed_autonomous_database_collection import DistributedAutonomousDatabaseCollection +from .distributed_autonomous_database_connection_string import DistributedAutonomousDatabaseConnectionString +from .distributed_autonomous_database_gds_control_node import DistributedAutonomousDatabaseGdsControlNode +from .distributed_autonomous_database_gds_control_node_image import DistributedAutonomousDatabaseGdsControlNodeImage +from .distributed_autonomous_database_gsm import DistributedAutonomousDatabaseGsm +from .distributed_autonomous_database_gsm_image import DistributedAutonomousDatabaseGsmImage +from .distributed_autonomous_database_raft_metric import DistributedAutonomousDatabaseRaftMetric +from .distributed_autonomous_database_ru_change_log import DistributedAutonomousDatabaseRuChangeLog +from .distributed_autonomous_database_ru_change_log_summary import DistributedAutonomousDatabaseRuChangeLogSummary +from .distributed_autonomous_database_shard_database import DistributedAutonomousDatabaseShardDatabase +from .distributed_autonomous_database_shard_with_dedicated_infra import DistributedAutonomousDatabaseShardWithDedicatedInfra +from .distributed_autonomous_database_summary import DistributedAutonomousDatabaseSummary +from .distributed_autonomous_db_backup_config import DistributedAutonomousDbBackupConfig +from .distributed_autonomous_db_backup_destination import DistributedAutonomousDbBackupDestination +from .distributed_autonomous_db_metadata import DistributedAutonomousDbMetadata +from .distributed_database import DistributedDatabase +from .distributed_database_auto_resource_management_details import DistributedDatabaseAutoResourceManagementDetails +from .distributed_database_catalog import DistributedDatabaseCatalog +from .distributed_database_catalog_database import DistributedDatabaseCatalogDatabase +from .distributed_database_catalog_database_with_db_home import DistributedDatabaseCatalogDatabaseWithDbHome +from .distributed_database_catalog_database_with_exadb_xd import DistributedDatabaseCatalogDatabaseWithExadbXd +from .distributed_database_catalog_database_with_exadb_xs import DistributedDatabaseCatalogDatabaseWithExadbXs +from .distributed_database_catalog_database_with_exadb_xs_new_cluster import DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster +from .distributed_database_catalog_database_with_exadb_xs_new_vault_and_cluster import DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster +from .distributed_database_catalog_replica_details import DistributedDatabaseCatalogReplicaDetails +from .distributed_database_collection import DistributedDatabaseCollection +from .distributed_database_gds_control_node import DistributedDatabaseGdsControlNode +from .distributed_database_gsm import DistributedDatabaseGsm +from .distributed_database_private_endpoint import DistributedDatabasePrivateEndpoint +from .distributed_database_private_endpoint_collection import DistributedDatabasePrivateEndpointCollection +from .distributed_database_private_endpoint_summary import DistributedDatabasePrivateEndpointSummary +from .distributed_database_raft_metric import DistributedDatabaseRaftMetric +from .distributed_database_ru_change_log import DistributedDatabaseRuChangeLog +from .distributed_database_ru_change_log_summary import DistributedDatabaseRuChangeLogSummary +from .distributed_database_shard_database import DistributedDatabaseShardDatabase +from .distributed_database_shard_database_with_db_home import DistributedDatabaseShardDatabaseWithDbHome +from .distributed_database_shard_database_with_exadb_xd import DistributedDatabaseShardDatabaseWithExadbXd +from .distributed_database_shard_database_with_exadb_xs import DistributedDatabaseShardDatabaseWithExadbXs +from .distributed_database_shard_database_with_exadb_xs_new_cluster import DistributedDatabaseShardDatabaseWithExadbXsNewCluster +from .distributed_database_shard_database_with_exadb_xs_new_vault_and_cluster import DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster +from .distributed_database_summary import DistributedDatabaseSummary +from .distributed_db_backup_config import DistributedDbBackupConfig +from .distributed_db_backup_destination import DistributedDbBackupDestination +from .distributed_db_connection_string import DistributedDbConnectionString +from .distributed_db_gds_control_node_image import DistributedDbGdsControlNodeImage +from .distributed_db_gsm_image import DistributedDbGsmImage +from .distributed_db_metadata import DistributedDbMetadata +from .distributed_db_storage_vault import DistributedDbStorageVault +from .distributed_db_vm_cluster import DistributedDbVmCluster +from .generate_distributed_autonomous_database_wallet_details import GenerateDistributedAutonomousDatabaseWalletDetails +from .generate_distributed_database_wallet_details import GenerateDistributedDatabaseWalletDetails +from .move_distributed_autonomous_database_replication_unit_details import MoveDistributedAutonomousDatabaseReplicationUnitDetails +from .move_distributed_database_replication_unit_details import MoveDistributedDatabaseReplicationUnitDetails +from .patch_distributed_autonomous_database_details import PatchDistributedAutonomousDatabaseDetails +from .patch_distributed_database_details import PatchDistributedDatabaseDetails +from .patch_distributed_database_private_endpoint_details import PatchDistributedDatabasePrivateEndpointDetails +from .patch_insert_instruction import PatchInsertInstruction +from .patch_instruction import PatchInstruction +from .patch_merge_instruction import PatchMergeInstruction +from .patch_remove_instruction import PatchRemoveInstruction +from .rotate_distributed_autonomous_database_details import RotateDistributedAutonomousDatabaseDetails +from .rotate_distributed_autonomous_database_passwords_details import RotateDistributedAutonomousDatabasePasswordsDetails +from .rotate_distributed_database_details import RotateDistributedDatabaseDetails +from .rotate_distributed_database_passwords_details import RotateDistributedDatabasePasswordsDetails +from .scale_distributed_autonomous_database_gsms_details import ScaleDistributedAutonomousDatabaseGsmsDetails +from .scale_distributed_database_gsms_details import ScaleDistributedDatabaseGsmsDetails +from .system_data_guard_database import SystemDataGuardDatabase +from .system_data_guard_replica import SystemDataGuardReplica +from .system_raft_cluster import SystemRaftCluster +from .update_distributed_autonomous_database_details import UpdateDistributedAutonomousDatabaseDetails +from .update_distributed_database_details import UpdateDistributedDatabaseDetails +from .update_distributed_database_private_endpoint_details import UpdateDistributedDatabasePrivateEndpointDetails +from .user_shard_space import UserShardSpace +from .user_shard_space_replica import UserShardSpaceReplica +from .vcn_nsg_ids_details import VcnNsgIdsDetails +from .vm_cluster_details import VmClusterDetails +from .work_request import WorkRequest +from .work_request_error import WorkRequestError +from .work_request_error_collection import WorkRequestErrorCollection +from .work_request_log_entry import WorkRequestLogEntry +from .work_request_log_entry_collection import WorkRequestLogEntryCollection +from .work_request_resource import WorkRequestResource +from .work_request_summary import WorkRequestSummary +from .work_request_summary_collection import WorkRequestSummaryCollection + +# Maps type names to classes for distributed_database_v26 services. +distributed_database_v26_type_mapping = { + "AddDistributedAutonomousDatabaseGdsControlNodeDetails": AddDistributedAutonomousDatabaseGdsControlNodeDetails, + "AddDistributedDatabaseGdsControlNodeDetails": AddDistributedDatabaseGdsControlNodeDetails, + "AutoResourceManagementConfigurationDetails": AutoResourceManagementConfigurationDetails, + "AutonomousCompositeDataGuardShardSpace": AutonomousCompositeDataGuardShardSpace, + "AutonomousCompositeDataGuardShardSpaceReplica": AutonomousCompositeDataGuardShardSpaceReplica, + "AutonomousCompositeRaftShardSpace": AutonomousCompositeRaftShardSpace, + "AutonomousCompositeShardSpaceRaftCluster": AutonomousCompositeShardSpaceRaftCluster, + "AutonomousSystemDataGuardDatabase": AutonomousSystemDataGuardDatabase, + "AutonomousSystemDataGuardReplica": AutonomousSystemDataGuardReplica, + "AutonomousSystemRaftCluster": AutonomousSystemRaftCluster, + "AutonomousUserShardSpace": AutonomousUserShardSpace, + "AutonomousUserShardSpaceReplica": AutonomousUserShardSpaceReplica, + "ChangeDistributedAutonomousDatabaseCompartmentDetails": ChangeDistributedAutonomousDatabaseCompartmentDetails, + "ChangeDistributedAutonomousDbBackupConfigDetails": ChangeDistributedAutonomousDbBackupConfigDetails, + "ChangeDistributedDatabaseCompartmentDetails": ChangeDistributedDatabaseCompartmentDetails, + "ChangeDistributedDatabasePrivateEndpointCompartmentDetails": ChangeDistributedDatabasePrivateEndpointCompartmentDetails, + "ChangeDistributedDbBackupConfigDetails": ChangeDistributedDbBackupConfigDetails, + "CompositeDataGuardShardSpace": CompositeDataGuardShardSpace, + "CompositeDataGuardShardSpaceReplica": CompositeDataGuardShardSpaceReplica, + "CompositeRaftShardSpace": CompositeRaftShardSpace, + "CompositeShardSpaceRaftCluster": CompositeShardSpaceRaftCluster, + "ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails": ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails, + "ConfigureDistributedAutonomousDatabaseGsmWalletDetails": ConfigureDistributedAutonomousDatabaseGsmWalletDetails, + "ConfigureDistributedAutonomousDatabaseGsmsDetails": ConfigureDistributedAutonomousDatabaseGsmsDetails, + "ConfigureDistributedDatabaseAutoResourceManagementDetails": ConfigureDistributedDatabaseAutoResourceManagementDetails, + "ConfigureDistributedDatabaseGsmsDetails": ConfigureDistributedDatabaseGsmsDetails, + "CreateAutonomousCatalogDatabaseDetails": CreateAutonomousCatalogDatabaseDetails, + "CreateAutonomousCatalogDetails": CreateAutonomousCatalogDetails, + "CreateAutonomousCatalogReplicaDetails": CreateAutonomousCatalogReplicaDetails, + "CreateAutonomousCompositeDataGuardShardSpaceDetails": CreateAutonomousCompositeDataGuardShardSpaceDetails, + "CreateAutonomousCompositeDataGuardShardSpaceReplicaDetails": CreateAutonomousCompositeDataGuardShardSpaceReplicaDetails, + "CreateAutonomousCompositeRaftShardSpaceDetails": CreateAutonomousCompositeRaftShardSpaceDetails, + "CreateAutonomousCompositeShardSpaceRaftClusterDetails": CreateAutonomousCompositeShardSpaceRaftClusterDetails, + "CreateAutonomousSystemDataGuardDatabaseDetails": CreateAutonomousSystemDataGuardDatabaseDetails, + "CreateAutonomousSystemDataGuardReplicaDetails": CreateAutonomousSystemDataGuardReplicaDetails, + "CreateAutonomousSystemRaftClusterDetails": CreateAutonomousSystemRaftClusterDetails, + "CreateAutonomousUserShardSpaceDetails": CreateAutonomousUserShardSpaceDetails, + "CreateAutonomousUserShardSpaceReplicaDetails": CreateAutonomousUserShardSpaceReplicaDetails, + "CreateCompositeDataGuardShardSpaceDetails": CreateCompositeDataGuardShardSpaceDetails, + "CreateCompositeDataGuardShardSpaceReplicaDetails": CreateCompositeDataGuardShardSpaceReplicaDetails, + "CreateCompositeRaftShardSpaceDetails": CreateCompositeRaftShardSpaceDetails, + "CreateCompositeShardSpaceRaftClusterDetails": CreateCompositeShardSpaceRaftClusterDetails, + "CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails": CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails, + "CreateDistributedAutonomousDatabaseDetails": CreateDistributedAutonomousDatabaseDetails, + "CreateDistributedAutonomousDatabaseShardDatabaseDetails": CreateDistributedAutonomousDatabaseShardDatabaseDetails, + "CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails": CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails, + "CreateDistributedDatabaseCatalogDatabaseDetails": CreateDistributedDatabaseCatalogDatabaseDetails, + "CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails": CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails, + "CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails": CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails, + "CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails": CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails, + "CreateDistributedDatabaseCatalogDetails": CreateDistributedDatabaseCatalogDetails, + "CreateDistributedDatabaseCatalogReplicaDetails": CreateDistributedDatabaseCatalogReplicaDetails, + "CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails": CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails, + "CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails": CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails, + "CreateDistributedDatabaseDetails": CreateDistributedDatabaseDetails, + "CreateDistributedDatabasePrivateEndpointDetails": CreateDistributedDatabasePrivateEndpointDetails, + "CreateDistributedDatabaseShardDatabaseDetails": CreateDistributedDatabaseShardDatabaseDetails, + "CreateDistributedDatabaseShardDatabaseWithDbHomeDetails": CreateDistributedDatabaseShardDatabaseWithDbHomeDetails, + "CreateDistributedDatabaseShardDatabaseWithExadbXdDetails": CreateDistributedDatabaseShardDatabaseWithExadbXdDetails, + "CreateDistributedDatabaseShardDatabaseWithExadbXsDetails": CreateDistributedDatabaseShardDatabaseWithExadbXsDetails, + "CreateDistributedDatabaseShardWithExadbXsNewClusterDetails": CreateDistributedDatabaseShardWithExadbXsNewClusterDetails, + "CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails": CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails, + "CreateSystemDataGuardDatabaseDetails": CreateSystemDataGuardDatabaseDetails, + "CreateSystemDataGuardReplicaDetails": CreateSystemDataGuardReplicaDetails, + "CreateSystemRaftClusterDetails": CreateSystemRaftClusterDetails, + "CreateUserShardSpaceDetails": CreateUserShardSpaceDetails, + "CreateUserShardSpaceReplicaDetails": CreateUserShardSpaceReplicaDetails, + "DbStorageVaultDetails": DbStorageVaultDetails, + "DistributedAutonomousDatabase": DistributedAutonomousDatabase, + "DistributedAutonomousDatabaseAutoResourceManagementDetails": DistributedAutonomousDatabaseAutoResourceManagementDetails, + "DistributedAutonomousDatabaseCatalog": DistributedAutonomousDatabaseCatalog, + "DistributedAutonomousDatabaseCatalogDatabase": DistributedAutonomousDatabaseCatalogDatabase, + "DistributedAutonomousDatabaseCatalogReplica": DistributedAutonomousDatabaseCatalogReplica, + "DistributedAutonomousDatabaseCatalogWithDedicatedInfra": DistributedAutonomousDatabaseCatalogWithDedicatedInfra, + "DistributedAutonomousDatabaseCollection": DistributedAutonomousDatabaseCollection, + "DistributedAutonomousDatabaseConnectionString": DistributedAutonomousDatabaseConnectionString, + "DistributedAutonomousDatabaseGdsControlNode": DistributedAutonomousDatabaseGdsControlNode, + "DistributedAutonomousDatabaseGdsControlNodeImage": DistributedAutonomousDatabaseGdsControlNodeImage, + "DistributedAutonomousDatabaseGsm": DistributedAutonomousDatabaseGsm, + "DistributedAutonomousDatabaseGsmImage": DistributedAutonomousDatabaseGsmImage, + "DistributedAutonomousDatabaseRaftMetric": DistributedAutonomousDatabaseRaftMetric, + "DistributedAutonomousDatabaseRuChangeLog": DistributedAutonomousDatabaseRuChangeLog, + "DistributedAutonomousDatabaseRuChangeLogSummary": DistributedAutonomousDatabaseRuChangeLogSummary, + "DistributedAutonomousDatabaseShardDatabase": DistributedAutonomousDatabaseShardDatabase, + "DistributedAutonomousDatabaseShardWithDedicatedInfra": DistributedAutonomousDatabaseShardWithDedicatedInfra, + "DistributedAutonomousDatabaseSummary": DistributedAutonomousDatabaseSummary, + "DistributedAutonomousDbBackupConfig": DistributedAutonomousDbBackupConfig, + "DistributedAutonomousDbBackupDestination": DistributedAutonomousDbBackupDestination, + "DistributedAutonomousDbMetadata": DistributedAutonomousDbMetadata, + "DistributedDatabase": DistributedDatabase, + "DistributedDatabaseAutoResourceManagementDetails": DistributedDatabaseAutoResourceManagementDetails, + "DistributedDatabaseCatalog": DistributedDatabaseCatalog, + "DistributedDatabaseCatalogDatabase": DistributedDatabaseCatalogDatabase, + "DistributedDatabaseCatalogDatabaseWithDbHome": DistributedDatabaseCatalogDatabaseWithDbHome, + "DistributedDatabaseCatalogDatabaseWithExadbXd": DistributedDatabaseCatalogDatabaseWithExadbXd, + "DistributedDatabaseCatalogDatabaseWithExadbXs": DistributedDatabaseCatalogDatabaseWithExadbXs, + "DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster": DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster, + "DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster": DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster, + "DistributedDatabaseCatalogReplicaDetails": DistributedDatabaseCatalogReplicaDetails, + "DistributedDatabaseCollection": DistributedDatabaseCollection, + "DistributedDatabaseGdsControlNode": DistributedDatabaseGdsControlNode, + "DistributedDatabaseGsm": DistributedDatabaseGsm, + "DistributedDatabasePrivateEndpoint": DistributedDatabasePrivateEndpoint, + "DistributedDatabasePrivateEndpointCollection": DistributedDatabasePrivateEndpointCollection, + "DistributedDatabasePrivateEndpointSummary": DistributedDatabasePrivateEndpointSummary, + "DistributedDatabaseRaftMetric": DistributedDatabaseRaftMetric, + "DistributedDatabaseRuChangeLog": DistributedDatabaseRuChangeLog, + "DistributedDatabaseRuChangeLogSummary": DistributedDatabaseRuChangeLogSummary, + "DistributedDatabaseShardDatabase": DistributedDatabaseShardDatabase, + "DistributedDatabaseShardDatabaseWithDbHome": DistributedDatabaseShardDatabaseWithDbHome, + "DistributedDatabaseShardDatabaseWithExadbXd": DistributedDatabaseShardDatabaseWithExadbXd, + "DistributedDatabaseShardDatabaseWithExadbXs": DistributedDatabaseShardDatabaseWithExadbXs, + "DistributedDatabaseShardDatabaseWithExadbXsNewCluster": DistributedDatabaseShardDatabaseWithExadbXsNewCluster, + "DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster": DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster, + "DistributedDatabaseSummary": DistributedDatabaseSummary, + "DistributedDbBackupConfig": DistributedDbBackupConfig, + "DistributedDbBackupDestination": DistributedDbBackupDestination, + "DistributedDbConnectionString": DistributedDbConnectionString, + "DistributedDbGdsControlNodeImage": DistributedDbGdsControlNodeImage, + "DistributedDbGsmImage": DistributedDbGsmImage, + "DistributedDbMetadata": DistributedDbMetadata, + "DistributedDbStorageVault": DistributedDbStorageVault, + "DistributedDbVmCluster": DistributedDbVmCluster, + "GenerateDistributedAutonomousDatabaseWalletDetails": GenerateDistributedAutonomousDatabaseWalletDetails, + "GenerateDistributedDatabaseWalletDetails": GenerateDistributedDatabaseWalletDetails, + "MoveDistributedAutonomousDatabaseReplicationUnitDetails": MoveDistributedAutonomousDatabaseReplicationUnitDetails, + "MoveDistributedDatabaseReplicationUnitDetails": MoveDistributedDatabaseReplicationUnitDetails, + "PatchDistributedAutonomousDatabaseDetails": PatchDistributedAutonomousDatabaseDetails, + "PatchDistributedDatabaseDetails": PatchDistributedDatabaseDetails, + "PatchDistributedDatabasePrivateEndpointDetails": PatchDistributedDatabasePrivateEndpointDetails, + "PatchInsertInstruction": PatchInsertInstruction, + "PatchInstruction": PatchInstruction, + "PatchMergeInstruction": PatchMergeInstruction, + "PatchRemoveInstruction": PatchRemoveInstruction, + "RotateDistributedAutonomousDatabaseDetails": RotateDistributedAutonomousDatabaseDetails, + "RotateDistributedAutonomousDatabasePasswordsDetails": RotateDistributedAutonomousDatabasePasswordsDetails, + "RotateDistributedDatabaseDetails": RotateDistributedDatabaseDetails, + "RotateDistributedDatabasePasswordsDetails": RotateDistributedDatabasePasswordsDetails, + "ScaleDistributedAutonomousDatabaseGsmsDetails": ScaleDistributedAutonomousDatabaseGsmsDetails, + "ScaleDistributedDatabaseGsmsDetails": ScaleDistributedDatabaseGsmsDetails, + "SystemDataGuardDatabase": SystemDataGuardDatabase, + "SystemDataGuardReplica": SystemDataGuardReplica, + "SystemRaftCluster": SystemRaftCluster, + "UpdateDistributedAutonomousDatabaseDetails": UpdateDistributedAutonomousDatabaseDetails, + "UpdateDistributedDatabaseDetails": UpdateDistributedDatabaseDetails, + "UpdateDistributedDatabasePrivateEndpointDetails": UpdateDistributedDatabasePrivateEndpointDetails, + "UserShardSpace": UserShardSpace, + "UserShardSpaceReplica": UserShardSpaceReplica, + "VcnNsgIdsDetails": VcnNsgIdsDetails, + "VmClusterDetails": VmClusterDetails, + "WorkRequest": WorkRequest, + "WorkRequestError": WorkRequestError, + "WorkRequestErrorCollection": WorkRequestErrorCollection, + "WorkRequestLogEntry": WorkRequestLogEntry, + "WorkRequestLogEntryCollection": WorkRequestLogEntryCollection, + "WorkRequestResource": WorkRequestResource, + "WorkRequestSummary": WorkRequestSummary, + "WorkRequestSummaryCollection": WorkRequestSummaryCollection +} diff --git a/src/oci/distributed_database_v26/models/add_distributed_autonomous_database_gds_control_node_details.py b/src/oci/distributed_database_v26/models/add_distributed_autonomous_database_gds_control_node_details.py new file mode 100644 index 0000000000..9142745fd0 --- /dev/null +++ b/src/oci/distributed_database_v26/models/add_distributed_autonomous_database_gds_control_node_details.py @@ -0,0 +1,105 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class AddDistributedAutonomousDatabaseGdsControlNodeDetails(object): + """ + Details required to create a new Global database services control(GDS CTL) compute node. + """ + + def __init__(self, **kwargs): + """ + Initializes a new AddDistributedAutonomousDatabaseGdsControlNodeDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param public_ssh_key: + The value to assign to the public_ssh_key property of this AddDistributedAutonomousDatabaseGdsControlNodeDetails. + :type public_ssh_key: str + + :param subnet_id: + The value to assign to the subnet_id property of this AddDistributedAutonomousDatabaseGdsControlNodeDetails. + :type subnet_id: str + + """ + self.swagger_types = { + 'public_ssh_key': 'str', + 'subnet_id': 'str' + } + self.attribute_map = { + 'public_ssh_key': 'publicSshKey', + 'subnet_id': 'subnetId' + } + self._public_ssh_key = None + self._subnet_id = None + + @property + def public_ssh_key(self): + """ + **[Required]** Gets the public_ssh_key of this AddDistributedAutonomousDatabaseGdsControlNodeDetails. + The public sshKey for Global database services control(GDS CTL) node. + + + :return: The public_ssh_key of this AddDistributedAutonomousDatabaseGdsControlNodeDetails. + :rtype: str + """ + return self._public_ssh_key + + @public_ssh_key.setter + def public_ssh_key(self, public_ssh_key): + """ + Sets the public_ssh_key of this AddDistributedAutonomousDatabaseGdsControlNodeDetails. + The public sshKey for Global database services control(GDS CTL) node. + + + :param public_ssh_key: The public_ssh_key of this AddDistributedAutonomousDatabaseGdsControlNodeDetails. + :type: str + """ + self._public_ssh_key = public_ssh_key + + @property + def subnet_id(self): + """ + Gets the subnet_id of this AddDistributedAutonomousDatabaseGdsControlNodeDetails. + The `OCID`__ of the subnet on which the Global database services control(GDS CTL) node should be created. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The subnet_id of this AddDistributedAutonomousDatabaseGdsControlNodeDetails. + :rtype: str + """ + return self._subnet_id + + @subnet_id.setter + def subnet_id(self, subnet_id): + """ + Sets the subnet_id of this AddDistributedAutonomousDatabaseGdsControlNodeDetails. + The `OCID`__ of the subnet on which the Global database services control(GDS CTL) node should be created. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param subnet_id: The subnet_id of this AddDistributedAutonomousDatabaseGdsControlNodeDetails. + :type: str + """ + self._subnet_id = subnet_id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/add_distributed_database_gds_control_node_details.py b/src/oci/distributed_database_v26/models/add_distributed_database_gds_control_node_details.py new file mode 100644 index 0000000000..968d0fbb2c --- /dev/null +++ b/src/oci/distributed_database_v26/models/add_distributed_database_gds_control_node_details.py @@ -0,0 +1,105 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class AddDistributedDatabaseGdsControlNodeDetails(object): + """ + Details required to create a new Global database services control(GDS CTL) compute node. + """ + + def __init__(self, **kwargs): + """ + Initializes a new AddDistributedDatabaseGdsControlNodeDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param public_ssh_key: + The value to assign to the public_ssh_key property of this AddDistributedDatabaseGdsControlNodeDetails. + :type public_ssh_key: str + + :param subnet_id: + The value to assign to the subnet_id property of this AddDistributedDatabaseGdsControlNodeDetails. + :type subnet_id: str + + """ + self.swagger_types = { + 'public_ssh_key': 'str', + 'subnet_id': 'str' + } + self.attribute_map = { + 'public_ssh_key': 'publicSshKey', + 'subnet_id': 'subnetId' + } + self._public_ssh_key = None + self._subnet_id = None + + @property + def public_ssh_key(self): + """ + **[Required]** Gets the public_ssh_key of this AddDistributedDatabaseGdsControlNodeDetails. + The public sshKey for Global database services control(GDS CTL) node. + + + :return: The public_ssh_key of this AddDistributedDatabaseGdsControlNodeDetails. + :rtype: str + """ + return self._public_ssh_key + + @public_ssh_key.setter + def public_ssh_key(self, public_ssh_key): + """ + Sets the public_ssh_key of this AddDistributedDatabaseGdsControlNodeDetails. + The public sshKey for Global database services control(GDS CTL) node. + + + :param public_ssh_key: The public_ssh_key of this AddDistributedDatabaseGdsControlNodeDetails. + :type: str + """ + self._public_ssh_key = public_ssh_key + + @property + def subnet_id(self): + """ + Gets the subnet_id of this AddDistributedDatabaseGdsControlNodeDetails. + The `OCID`__ of the subnet on which the Global database services control(GDS CTL) node should be created. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The subnet_id of this AddDistributedDatabaseGdsControlNodeDetails. + :rtype: str + """ + return self._subnet_id + + @subnet_id.setter + def subnet_id(self, subnet_id): + """ + Sets the subnet_id of this AddDistributedDatabaseGdsControlNodeDetails. + The `OCID`__ of the subnet on which the Global database services control(GDS CTL) node should be created. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param subnet_id: The subnet_id of this AddDistributedDatabaseGdsControlNodeDetails. + :type: str + """ + self._subnet_id = subnet_id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/auto_resource_management_configuration_details.py b/src/oci/distributed_database_v26/models/auto_resource_management_configuration_details.py new file mode 100644 index 0000000000..26cc5112f0 --- /dev/null +++ b/src/oci/distributed_database_v26/models/auto_resource_management_configuration_details.py @@ -0,0 +1,339 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class AutoResourceManagementConfigurationDetails(object): + """ + Automatic resource management configuration details for the Globally distributed database. + """ + + #: A constant which can be used with the max_move_ru_unit property of a AutoResourceManagementConfigurationDetails. + #: This constant has a value of "HOUR" + MAX_MOVE_RU_UNIT_HOUR = "HOUR" + + #: A constant which can be used with the max_move_ru_unit property of a AutoResourceManagementConfigurationDetails. + #: This constant has a value of "DAY" + MAX_MOVE_RU_UNIT_DAY = "DAY" + + #: A constant which can be used with the mode property of a AutoResourceManagementConfigurationDetails. + #: This constant has a value of "AUTOMATIC" + MODE_AUTOMATIC = "AUTOMATIC" + + #: A constant which can be used with the mode property of a AutoResourceManagementConfigurationDetails. + #: This constant has a value of "RECOMMENDATION" + MODE_RECOMMENDATION = "RECOMMENDATION" + + #: A constant which can be used with the action_type property of a AutoResourceManagementConfigurationDetails. + #: This constant has a value of "MOVE" + ACTION_TYPE_MOVE = "MOVE" + + def __init__(self, **kwargs): + """ + Initializes a new AutoResourceManagementConfigurationDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param is_enabled: + The value to assign to the is_enabled property of this AutoResourceManagementConfigurationDetails. + :type is_enabled: bool + + :param cool_off_period_in_minutes: + The value to assign to the cool_off_period_in_minutes property of this AutoResourceManagementConfigurationDetails. + :type cool_off_period_in_minutes: int + + :param max_move_ru_attempts: + The value to assign to the max_move_ru_attempts property of this AutoResourceManagementConfigurationDetails. + :type max_move_ru_attempts: int + + :param max_move_ru_unit: + The value to assign to the max_move_ru_unit property of this AutoResourceManagementConfigurationDetails. + Allowed values for this property are: "HOUR", "DAY", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type max_move_ru_unit: str + + :param mode: + The value to assign to the mode property of this AutoResourceManagementConfigurationDetails. + Allowed values for this property are: "AUTOMATIC", "RECOMMENDATION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type mode: str + + :param action_type: + The value to assign to the action_type property of this AutoResourceManagementConfigurationDetails. + Allowed values for this property are: "MOVE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type action_type: str + + :param notification_topic_ids: + The value to assign to the notification_topic_ids property of this AutoResourceManagementConfigurationDetails. + :type notification_topic_ids: list[str] + + :param stream_ids: + The value to assign to the stream_ids property of this AutoResourceManagementConfigurationDetails. + :type stream_ids: list[str] + + """ + self.swagger_types = { + 'is_enabled': 'bool', + 'cool_off_period_in_minutes': 'int', + 'max_move_ru_attempts': 'int', + 'max_move_ru_unit': 'str', + 'mode': 'str', + 'action_type': 'str', + 'notification_topic_ids': 'list[str]', + 'stream_ids': 'list[str]' + } + self.attribute_map = { + 'is_enabled': 'isEnabled', + 'cool_off_period_in_minutes': 'coolOffPeriodInMinutes', + 'max_move_ru_attempts': 'maxMoveRuAttempts', + 'max_move_ru_unit': 'maxMoveRuUnit', + 'mode': 'mode', + 'action_type': 'actionType', + 'notification_topic_ids': 'notificationTopicIds', + 'stream_ids': 'streamIds' + } + self._is_enabled = None + self._cool_off_period_in_minutes = None + self._max_move_ru_attempts = None + self._max_move_ru_unit = None + self._mode = None + self._action_type = None + self._notification_topic_ids = None + self._stream_ids = None + + @property + def is_enabled(self): + """ + **[Required]** Gets the is_enabled of this AutoResourceManagementConfigurationDetails. + Flag indicating if autoResourceManagement is enabled or disabled. + + + :return: The is_enabled of this AutoResourceManagementConfigurationDetails. + :rtype: bool + """ + return self._is_enabled + + @is_enabled.setter + def is_enabled(self, is_enabled): + """ + Sets the is_enabled of this AutoResourceManagementConfigurationDetails. + Flag indicating if autoResourceManagement is enabled or disabled. + + + :param is_enabled: The is_enabled of this AutoResourceManagementConfigurationDetails. + :type: bool + """ + self._is_enabled = is_enabled + + @property + def cool_off_period_in_minutes(self): + """ + Gets the cool_off_period_in_minutes of this AutoResourceManagementConfigurationDetails. + Time period to wait for the database to get stable after autoResourceManagement event. + + + :return: The cool_off_period_in_minutes of this AutoResourceManagementConfigurationDetails. + :rtype: int + """ + return self._cool_off_period_in_minutes + + @cool_off_period_in_minutes.setter + def cool_off_period_in_minutes(self, cool_off_period_in_minutes): + """ + Sets the cool_off_period_in_minutes of this AutoResourceManagementConfigurationDetails. + Time period to wait for the database to get stable after autoResourceManagement event. + + + :param cool_off_period_in_minutes: The cool_off_period_in_minutes of this AutoResourceManagementConfigurationDetails. + :type: int + """ + self._cool_off_period_in_minutes = cool_off_period_in_minutes + + @property + def max_move_ru_attempts(self): + """ + Gets the max_move_ru_attempts of this AutoResourceManagementConfigurationDetails. + Maximum number of move replication unit attempts allowed within the configured period per database. + + + :return: The max_move_ru_attempts of this AutoResourceManagementConfigurationDetails. + :rtype: int + """ + return self._max_move_ru_attempts + + @max_move_ru_attempts.setter + def max_move_ru_attempts(self, max_move_ru_attempts): + """ + Sets the max_move_ru_attempts of this AutoResourceManagementConfigurationDetails. + Maximum number of move replication unit attempts allowed within the configured period per database. + + + :param max_move_ru_attempts: The max_move_ru_attempts of this AutoResourceManagementConfigurationDetails. + :type: int + """ + self._max_move_ru_attempts = max_move_ru_attempts + + @property + def max_move_ru_unit(self): + """ + Gets the max_move_ru_unit of this AutoResourceManagementConfigurationDetails. + Time unit applicable to maxMoveRuAttempts. + + Allowed values for this property are: "HOUR", "DAY", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The max_move_ru_unit of this AutoResourceManagementConfigurationDetails. + :rtype: str + """ + return self._max_move_ru_unit + + @max_move_ru_unit.setter + def max_move_ru_unit(self, max_move_ru_unit): + """ + Sets the max_move_ru_unit of this AutoResourceManagementConfigurationDetails. + Time unit applicable to maxMoveRuAttempts. + + + :param max_move_ru_unit: The max_move_ru_unit of this AutoResourceManagementConfigurationDetails. + :type: str + """ + allowed_values = ["HOUR", "DAY"] + if not value_allowed_none_or_none_sentinel(max_move_ru_unit, allowed_values): + max_move_ru_unit = 'UNKNOWN_ENUM_VALUE' + self._max_move_ru_unit = max_move_ru_unit + + @property + def mode(self): + """ + Gets the mode of this AutoResourceManagementConfigurationDetails. + Mode of autoResourceManagement execution. + + Allowed values for this property are: "AUTOMATIC", "RECOMMENDATION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The mode of this AutoResourceManagementConfigurationDetails. + :rtype: str + """ + return self._mode + + @mode.setter + def mode(self, mode): + """ + Sets the mode of this AutoResourceManagementConfigurationDetails. + Mode of autoResourceManagement execution. + + + :param mode: The mode of this AutoResourceManagementConfigurationDetails. + :type: str + """ + allowed_values = ["AUTOMATIC", "RECOMMENDATION"] + if not value_allowed_none_or_none_sentinel(mode, allowed_values): + mode = 'UNKNOWN_ENUM_VALUE' + self._mode = mode + + @property + def action_type(self): + """ + Gets the action_type of this AutoResourceManagementConfigurationDetails. + The action that will be taken when autoResourceManagement is triggered. + + Allowed values for this property are: "MOVE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The action_type of this AutoResourceManagementConfigurationDetails. + :rtype: str + """ + return self._action_type + + @action_type.setter + def action_type(self, action_type): + """ + Sets the action_type of this AutoResourceManagementConfigurationDetails. + The action that will be taken when autoResourceManagement is triggered. + + + :param action_type: The action_type of this AutoResourceManagementConfigurationDetails. + :type: str + """ + allowed_values = ["MOVE"] + if not value_allowed_none_or_none_sentinel(action_type, allowed_values): + action_type = 'UNKNOWN_ENUM_VALUE' + self._action_type = action_type + + @property + def notification_topic_ids(self): + """ + Gets the notification_topic_ids of this AutoResourceManagementConfigurationDetails. + The list of notification topic ids `OCIDs`__ to receive autoResourceManagement events. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The notification_topic_ids of this AutoResourceManagementConfigurationDetails. + :rtype: list[str] + """ + return self._notification_topic_ids + + @notification_topic_ids.setter + def notification_topic_ids(self, notification_topic_ids): + """ + Sets the notification_topic_ids of this AutoResourceManagementConfigurationDetails. + The list of notification topic ids `OCIDs`__ to receive autoResourceManagement events. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param notification_topic_ids: The notification_topic_ids of this AutoResourceManagementConfigurationDetails. + :type: list[str] + """ + self._notification_topic_ids = notification_topic_ids + + @property + def stream_ids(self): + """ + Gets the stream_ids of this AutoResourceManagementConfigurationDetails. + The list of stream ids `OCIDs`__ that receive shard-related telemetry. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The stream_ids of this AutoResourceManagementConfigurationDetails. + :rtype: list[str] + """ + return self._stream_ids + + @stream_ids.setter + def stream_ids(self, stream_ids): + """ + Sets the stream_ids of this AutoResourceManagementConfigurationDetails. + The list of stream ids `OCIDs`__ that receive shard-related telemetry. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param stream_ids: The stream_ids of this AutoResourceManagementConfigurationDetails. + :type: list[str] + """ + self._stream_ids = stream_ids + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/autonomous_composite_data_guard_shard_space.py b/src/oci/distributed_database_v26/models/autonomous_composite_data_guard_shard_space.py new file mode 100644 index 0000000000..c6bf3235a0 --- /dev/null +++ b/src/oci/distributed_database_v26/models/autonomous_composite_data_guard_shard_space.py @@ -0,0 +1,163 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class AutonomousCompositeDataGuardShardSpace(object): + """ + Composite data guard shard space details for a Globally distributed autonomous database. + """ + + def __init__(self, **kwargs): + """ + Initializes a new AutonomousCompositeDataGuardShardSpace object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this AutonomousCompositeDataGuardShardSpace. + :type name: str + + :param chunk_count: + The value to assign to the chunk_count property of this AutonomousCompositeDataGuardShardSpace. + :type chunk_count: int + + :param original_replica: + The value to assign to the original_replica property of this AutonomousCompositeDataGuardShardSpace. + :type original_replica: oci.distributed_database_v26.models.AutonomousCompositeDataGuardShardSpaceReplica + + :param data_guard_replicas: + The value to assign to the data_guard_replicas property of this AutonomousCompositeDataGuardShardSpace. + :type data_guard_replicas: list[oci.distributed_database_v26.models.AutonomousCompositeDataGuardShardSpaceReplica] + + """ + self.swagger_types = { + 'name': 'str', + 'chunk_count': 'int', + 'original_replica': 'AutonomousCompositeDataGuardShardSpaceReplica', + 'data_guard_replicas': 'list[AutonomousCompositeDataGuardShardSpaceReplica]' + } + self.attribute_map = { + 'name': 'name', + 'chunk_count': 'chunkCount', + 'original_replica': 'originalReplica', + 'data_guard_replicas': 'dataGuardReplicas' + } + self._name = None + self._chunk_count = None + self._original_replica = None + self._data_guard_replicas = None + + @property + def name(self): + """ + **[Required]** Gets the name of this AutonomousCompositeDataGuardShardSpace. + The name of shard space. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this AutonomousCompositeDataGuardShardSpace. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this AutonomousCompositeDataGuardShardSpace. + The name of shard space. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this AutonomousCompositeDataGuardShardSpace. + :type: str + """ + self._name = name + + @property + def chunk_count(self): + """ + **[Required]** Gets the chunk_count of this AutonomousCompositeDataGuardShardSpace. + Count of chunks associated with the shard space. + + + :return: The chunk_count of this AutonomousCompositeDataGuardShardSpace. + :rtype: int + """ + return self._chunk_count + + @chunk_count.setter + def chunk_count(self, chunk_count): + """ + Sets the chunk_count of this AutonomousCompositeDataGuardShardSpace. + Count of chunks associated with the shard space. + + + :param chunk_count: The chunk_count of this AutonomousCompositeDataGuardShardSpace. + :type: int + """ + self._chunk_count = chunk_count + + @property + def original_replica(self): + """ + **[Required]** Gets the original_replica of this AutonomousCompositeDataGuardShardSpace. + + :return: The original_replica of this AutonomousCompositeDataGuardShardSpace. + :rtype: oci.distributed_database_v26.models.AutonomousCompositeDataGuardShardSpaceReplica + """ + return self._original_replica + + @original_replica.setter + def original_replica(self, original_replica): + """ + Sets the original_replica of this AutonomousCompositeDataGuardShardSpace. + + :param original_replica: The original_replica of this AutonomousCompositeDataGuardShardSpace. + :type: oci.distributed_database_v26.models.AutonomousCompositeDataGuardShardSpaceReplica + """ + self._original_replica = original_replica + + @property + def data_guard_replicas(self): + """ + Gets the data_guard_replicas of this AutonomousCompositeDataGuardShardSpace. + The details of data guard replica associated with the shard. + + + :return: The data_guard_replicas of this AutonomousCompositeDataGuardShardSpace. + :rtype: list[oci.distributed_database_v26.models.AutonomousCompositeDataGuardShardSpaceReplica] + """ + return self._data_guard_replicas + + @data_guard_replicas.setter + def data_guard_replicas(self, data_guard_replicas): + """ + Sets the data_guard_replicas of this AutonomousCompositeDataGuardShardSpace. + The details of data guard replica associated with the shard. + + + :param data_guard_replicas: The data_guard_replicas of this AutonomousCompositeDataGuardShardSpace. + :type: list[oci.distributed_database_v26.models.AutonomousCompositeDataGuardShardSpaceReplica] + """ + self._data_guard_replicas = data_guard_replicas + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/autonomous_composite_data_guard_shard_space_replica.py b/src/oci/distributed_database_v26/models/autonomous_composite_data_guard_shard_space_replica.py new file mode 100644 index 0000000000..2eed982791 --- /dev/null +++ b/src/oci/distributed_database_v26/models/autonomous_composite_data_guard_shard_space_replica.py @@ -0,0 +1,105 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class AutonomousCompositeDataGuardShardSpaceReplica(object): + """ + Globally distributed database composite data guard replica details. + """ + + def __init__(self, **kwargs): + """ + Initializes a new AutonomousCompositeDataGuardShardSpaceReplica object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this AutonomousCompositeDataGuardShardSpaceReplica. + :type name: str + + :param databases: + The value to assign to the databases property of this AutonomousCompositeDataGuardShardSpaceReplica. + :type databases: list[oci.distributed_database_v26.models.DistributedAutonomousDatabaseShardDatabase] + + """ + self.swagger_types = { + 'name': 'str', + 'databases': 'list[DistributedAutonomousDatabaseShardDatabase]' + } + self.attribute_map = { + 'name': 'name', + 'databases': 'databases' + } + self._name = None + self._databases = None + + @property + def name(self): + """ + **[Required]** Gets the name of this AutonomousCompositeDataGuardShardSpaceReplica. + The name of shard space replica. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this AutonomousCompositeDataGuardShardSpaceReplica. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this AutonomousCompositeDataGuardShardSpaceReplica. + The name of shard space replica. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this AutonomousCompositeDataGuardShardSpaceReplica. + :type: str + """ + self._name = name + + @property + def databases(self): + """ + **[Required]** Gets the databases of this AutonomousCompositeDataGuardShardSpaceReplica. + The details of composite data guard shard space replica databases. + + + :return: The databases of this AutonomousCompositeDataGuardShardSpaceReplica. + :rtype: list[oci.distributed_database_v26.models.DistributedAutonomousDatabaseShardDatabase] + """ + return self._databases + + @databases.setter + def databases(self, databases): + """ + Sets the databases of this AutonomousCompositeDataGuardShardSpaceReplica. + The details of composite data guard shard space replica databases. + + + :param databases: The databases of this AutonomousCompositeDataGuardShardSpaceReplica. + :type: list[oci.distributed_database_v26.models.DistributedAutonomousDatabaseShardDatabase] + """ + self._databases = databases + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/autonomous_composite_raft_shard_space.py b/src/oci/distributed_database_v26/models/autonomous_composite_raft_shard_space.py new file mode 100644 index 0000000000..972a397069 --- /dev/null +++ b/src/oci/distributed_database_v26/models/autonomous_composite_raft_shard_space.py @@ -0,0 +1,167 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class AutonomousCompositeRaftShardSpace(object): + """ + Composite raft shard space details for a Globally distributed autonomous database. + """ + + def __init__(self, **kwargs): + """ + Initializes a new AutonomousCompositeRaftShardSpace object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this AutonomousCompositeRaftShardSpace. + :type name: str + + :param chunk_count: + The value to assign to the chunk_count property of this AutonomousCompositeRaftShardSpace. + :type chunk_count: int + + :param replication_unit_count: + The value to assign to the replication_unit_count property of this AutonomousCompositeRaftShardSpace. + :type replication_unit_count: int + + :param raft_clusters: + The value to assign to the raft_clusters property of this AutonomousCompositeRaftShardSpace. + :type raft_clusters: list[oci.distributed_database_v26.models.AutonomousCompositeShardSpaceRaftCluster] + + """ + self.swagger_types = { + 'name': 'str', + 'chunk_count': 'int', + 'replication_unit_count': 'int', + 'raft_clusters': 'list[AutonomousCompositeShardSpaceRaftCluster]' + } + self.attribute_map = { + 'name': 'name', + 'chunk_count': 'chunkCount', + 'replication_unit_count': 'replicationUnitCount', + 'raft_clusters': 'raftClusters' + } + self._name = None + self._chunk_count = None + self._replication_unit_count = None + self._raft_clusters = None + + @property + def name(self): + """ + **[Required]** Gets the name of this AutonomousCompositeRaftShardSpace. + The name of shard space. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this AutonomousCompositeRaftShardSpace. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this AutonomousCompositeRaftShardSpace. + The name of shard space. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this AutonomousCompositeRaftShardSpace. + :type: str + """ + self._name = name + + @property + def chunk_count(self): + """ + **[Required]** Gets the chunk_count of this AutonomousCompositeRaftShardSpace. + Count of chunks associated with the shard space. + + + :return: The chunk_count of this AutonomousCompositeRaftShardSpace. + :rtype: int + """ + return self._chunk_count + + @chunk_count.setter + def chunk_count(self, chunk_count): + """ + Sets the chunk_count of this AutonomousCompositeRaftShardSpace. + Count of chunks associated with the shard space. + + + :param chunk_count: The chunk_count of this AutonomousCompositeRaftShardSpace. + :type: int + """ + self._chunk_count = chunk_count + + @property + def replication_unit_count(self): + """ + **[Required]** Gets the replication_unit_count of this AutonomousCompositeRaftShardSpace. + Number of replication units in the shard space. + + + :return: The replication_unit_count of this AutonomousCompositeRaftShardSpace. + :rtype: int + """ + return self._replication_unit_count + + @replication_unit_count.setter + def replication_unit_count(self, replication_unit_count): + """ + Sets the replication_unit_count of this AutonomousCompositeRaftShardSpace. + Number of replication units in the shard space. + + + :param replication_unit_count: The replication_unit_count of this AutonomousCompositeRaftShardSpace. + :type: int + """ + self._replication_unit_count = replication_unit_count + + @property + def raft_clusters(self): + """ + **[Required]** Gets the raft_clusters of this AutonomousCompositeRaftShardSpace. + The details of raft clusters associated with the shard space. + + + :return: The raft_clusters of this AutonomousCompositeRaftShardSpace. + :rtype: list[oci.distributed_database_v26.models.AutonomousCompositeShardSpaceRaftCluster] + """ + return self._raft_clusters + + @raft_clusters.setter + def raft_clusters(self, raft_clusters): + """ + Sets the raft_clusters of this AutonomousCompositeRaftShardSpace. + The details of raft clusters associated with the shard space. + + + :param raft_clusters: The raft_clusters of this AutonomousCompositeRaftShardSpace. + :type: list[oci.distributed_database_v26.models.AutonomousCompositeShardSpaceRaftCluster] + """ + self._raft_clusters = raft_clusters + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/autonomous_composite_shard_space_raft_cluster.py b/src/oci/distributed_database_v26/models/autonomous_composite_shard_space_raft_cluster.py new file mode 100644 index 0000000000..66d021f910 --- /dev/null +++ b/src/oci/distributed_database_v26/models/autonomous_composite_shard_space_raft_cluster.py @@ -0,0 +1,214 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class AutonomousCompositeShardSpaceRaftCluster(object): + """ + Raft cluster details for composite shard spaces. + """ + + #: A constant which can be used with the ru_mode property of a AutonomousCompositeShardSpaceRaftCluster. + #: This constant has a value of "READ_ONLY" + RU_MODE_READ_ONLY = "READ_ONLY" + + #: A constant which can be used with the ru_mode property of a AutonomousCompositeShardSpaceRaftCluster. + #: This constant has a value of "READ_WRITE" + RU_MODE_READ_WRITE = "READ_WRITE" + + def __init__(self, **kwargs): + """ + Initializes a new AutonomousCompositeShardSpaceRaftCluster object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this AutonomousCompositeShardSpaceRaftCluster. + :type name: str + + :param replication_factor: + The value to assign to the replication_factor property of this AutonomousCompositeShardSpaceRaftCluster. + :type replication_factor: int + + :param witness_count: + The value to assign to the witness_count property of this AutonomousCompositeShardSpaceRaftCluster. + :type witness_count: int + + :param ru_mode: + The value to assign to the ru_mode property of this AutonomousCompositeShardSpaceRaftCluster. + Allowed values for this property are: "READ_ONLY", "READ_WRITE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type ru_mode: str + + :param databases: + The value to assign to the databases property of this AutonomousCompositeShardSpaceRaftCluster. + :type databases: list[oci.distributed_database_v26.models.DistributedAutonomousDatabaseShardDatabase] + + """ + self.swagger_types = { + 'name': 'str', + 'replication_factor': 'int', + 'witness_count': 'int', + 'ru_mode': 'str', + 'databases': 'list[DistributedAutonomousDatabaseShardDatabase]' + } + self.attribute_map = { + 'name': 'name', + 'replication_factor': 'replicationFactor', + 'witness_count': 'witnessCount', + 'ru_mode': 'ruMode', + 'databases': 'databases' + } + self._name = None + self._replication_factor = None + self._witness_count = None + self._ru_mode = None + self._databases = None + + @property + def name(self): + """ + **[Required]** Gets the name of this AutonomousCompositeShardSpaceRaftCluster. + The name of raft cluster. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this AutonomousCompositeShardSpaceRaftCluster. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this AutonomousCompositeShardSpaceRaftCluster. + The name of raft cluster. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this AutonomousCompositeShardSpaceRaftCluster. + :type: str + """ + self._name = name + + @property + def replication_factor(self): + """ + **[Required]** Gets the replication_factor of this AutonomousCompositeShardSpaceRaftCluster. + Replication factor associated with the raft cluster. + + + :return: The replication_factor of this AutonomousCompositeShardSpaceRaftCluster. + :rtype: int + """ + return self._replication_factor + + @replication_factor.setter + def replication_factor(self, replication_factor): + """ + Sets the replication_factor of this AutonomousCompositeShardSpaceRaftCluster. + Replication factor associated with the raft cluster. + + + :param replication_factor: The replication_factor of this AutonomousCompositeShardSpaceRaftCluster. + :type: int + """ + self._replication_factor = replication_factor + + @property + def witness_count(self): + """ + **[Required]** Gets the witness_count of this AutonomousCompositeShardSpaceRaftCluster. + Witnesses RU count associated with the raft cluster. + + + :return: The witness_count of this AutonomousCompositeShardSpaceRaftCluster. + :rtype: int + """ + return self._witness_count + + @witness_count.setter + def witness_count(self, witness_count): + """ + Sets the witness_count of this AutonomousCompositeShardSpaceRaftCluster. + Witnesses RU count associated with the raft cluster. + + + :param witness_count: The witness_count of this AutonomousCompositeShardSpaceRaftCluster. + :type: int + """ + self._witness_count = witness_count + + @property + def ru_mode(self): + """ + **[Required]** Gets the ru_mode of this AutonomousCompositeShardSpaceRaftCluster. + Replication factor associated with the raft cluster. + + Allowed values for this property are: "READ_ONLY", "READ_WRITE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The ru_mode of this AutonomousCompositeShardSpaceRaftCluster. + :rtype: str + """ + return self._ru_mode + + @ru_mode.setter + def ru_mode(self, ru_mode): + """ + Sets the ru_mode of this AutonomousCompositeShardSpaceRaftCluster. + Replication factor associated with the raft cluster. + + + :param ru_mode: The ru_mode of this AutonomousCompositeShardSpaceRaftCluster. + :type: str + """ + allowed_values = ["READ_ONLY", "READ_WRITE"] + if not value_allowed_none_or_none_sentinel(ru_mode, allowed_values): + ru_mode = 'UNKNOWN_ENUM_VALUE' + self._ru_mode = ru_mode + + @property + def databases(self): + """ + **[Required]** Gets the databases of this AutonomousCompositeShardSpaceRaftCluster. + The details of databases associated with the composite shard space raft cluster. + + + :return: The databases of this AutonomousCompositeShardSpaceRaftCluster. + :rtype: list[oci.distributed_database_v26.models.DistributedAutonomousDatabaseShardDatabase] + """ + return self._databases + + @databases.setter + def databases(self, databases): + """ + Sets the databases of this AutonomousCompositeShardSpaceRaftCluster. + The details of databases associated with the composite shard space raft cluster. + + + :param databases: The databases of this AutonomousCompositeShardSpaceRaftCluster. + :type: list[oci.distributed_database_v26.models.DistributedAutonomousDatabaseShardDatabase] + """ + self._databases = databases + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/autonomous_system_data_guard_database.py b/src/oci/distributed_database_v26/models/autonomous_system_data_guard_database.py new file mode 100644 index 0000000000..5b2d738089 --- /dev/null +++ b/src/oci/distributed_database_v26/models/autonomous_system_data_guard_database.py @@ -0,0 +1,97 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class AutonomousSystemDataGuardDatabase(object): + """ + System data guard shard database details. + """ + + def __init__(self, **kwargs): + """ + Initializes a new AutonomousSystemDataGuardDatabase object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param original_replica: + The value to assign to the original_replica property of this AutonomousSystemDataGuardDatabase. + :type original_replica: oci.distributed_database_v26.models.AutonomousSystemDataGuardReplica + + :param data_guard_replicas: + The value to assign to the data_guard_replicas property of this AutonomousSystemDataGuardDatabase. + :type data_guard_replicas: list[oci.distributed_database_v26.models.AutonomousSystemDataGuardReplica] + + """ + self.swagger_types = { + 'original_replica': 'AutonomousSystemDataGuardReplica', + 'data_guard_replicas': 'list[AutonomousSystemDataGuardReplica]' + } + self.attribute_map = { + 'original_replica': 'originalReplica', + 'data_guard_replicas': 'dataGuardReplicas' + } + self._original_replica = None + self._data_guard_replicas = None + + @property + def original_replica(self): + """ + **[Required]** Gets the original_replica of this AutonomousSystemDataGuardDatabase. + + :return: The original_replica of this AutonomousSystemDataGuardDatabase. + :rtype: oci.distributed_database_v26.models.AutonomousSystemDataGuardReplica + """ + return self._original_replica + + @original_replica.setter + def original_replica(self, original_replica): + """ + Sets the original_replica of this AutonomousSystemDataGuardDatabase. + + :param original_replica: The original_replica of this AutonomousSystemDataGuardDatabase. + :type: oci.distributed_database_v26.models.AutonomousSystemDataGuardReplica + """ + self._original_replica = original_replica + + @property + def data_guard_replicas(self): + """ + Gets the data_guard_replicas of this AutonomousSystemDataGuardDatabase. + The system data guard replica details. + + + :return: The data_guard_replicas of this AutonomousSystemDataGuardDatabase. + :rtype: list[oci.distributed_database_v26.models.AutonomousSystemDataGuardReplica] + """ + return self._data_guard_replicas + + @data_guard_replicas.setter + def data_guard_replicas(self, data_guard_replicas): + """ + Sets the data_guard_replicas of this AutonomousSystemDataGuardDatabase. + The system data guard replica details. + + + :param data_guard_replicas: The data_guard_replicas of this AutonomousSystemDataGuardDatabase. + :type: list[oci.distributed_database_v26.models.AutonomousSystemDataGuardReplica] + """ + self._data_guard_replicas = data_guard_replicas + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/autonomous_system_data_guard_replica.py b/src/oci/distributed_database_v26/models/autonomous_system_data_guard_replica.py new file mode 100644 index 0000000000..6e7c62b59e --- /dev/null +++ b/src/oci/distributed_database_v26/models/autonomous_system_data_guard_replica.py @@ -0,0 +1,105 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class AutonomousSystemDataGuardReplica(object): + """ + System data guard replica details. + """ + + def __init__(self, **kwargs): + """ + Initializes a new AutonomousSystemDataGuardReplica object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this AutonomousSystemDataGuardReplica. + :type name: str + + :param databases: + The value to assign to the databases property of this AutonomousSystemDataGuardReplica. + :type databases: list[oci.distributed_database_v26.models.DistributedAutonomousDatabaseShardDatabase] + + """ + self.swagger_types = { + 'name': 'str', + 'databases': 'list[DistributedAutonomousDatabaseShardDatabase]' + } + self.attribute_map = { + 'name': 'name', + 'databases': 'databases' + } + self._name = None + self._databases = None + + @property + def name(self): + """ + **[Required]** Gets the name of this AutonomousSystemDataGuardReplica. + The name of data guard replica. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this AutonomousSystemDataGuardReplica. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this AutonomousSystemDataGuardReplica. + The name of data guard replica. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this AutonomousSystemDataGuardReplica. + :type: str + """ + self._name = name + + @property + def databases(self): + """ + **[Required]** Gets the databases of this AutonomousSystemDataGuardReplica. + Details of the databases associated with the system data guard replica. + + + :return: The databases of this AutonomousSystemDataGuardReplica. + :rtype: list[oci.distributed_database_v26.models.DistributedAutonomousDatabaseShardDatabase] + """ + return self._databases + + @databases.setter + def databases(self, databases): + """ + Sets the databases of this AutonomousSystemDataGuardReplica. + Details of the databases associated with the system data guard replica. + + + :param databases: The databases of this AutonomousSystemDataGuardReplica. + :type: list[oci.distributed_database_v26.models.DistributedAutonomousDatabaseShardDatabase] + """ + self._databases = databases + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/autonomous_system_raft_cluster.py b/src/oci/distributed_database_v26/models/autonomous_system_raft_cluster.py new file mode 100644 index 0000000000..cd35430308 --- /dev/null +++ b/src/oci/distributed_database_v26/models/autonomous_system_raft_cluster.py @@ -0,0 +1,214 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class AutonomousSystemRaftCluster(object): + """ + Details required to create system raft cluster. + """ + + #: A constant which can be used with the ru_mode property of a AutonomousSystemRaftCluster. + #: This constant has a value of "READ_ONLY" + RU_MODE_READ_ONLY = "READ_ONLY" + + #: A constant which can be used with the ru_mode property of a AutonomousSystemRaftCluster. + #: This constant has a value of "READ_WRITE" + RU_MODE_READ_WRITE = "READ_WRITE" + + def __init__(self, **kwargs): + """ + Initializes a new AutonomousSystemRaftCluster object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this AutonomousSystemRaftCluster. + :type name: str + + :param replication_factor: + The value to assign to the replication_factor property of this AutonomousSystemRaftCluster. + :type replication_factor: int + + :param witness_count: + The value to assign to the witness_count property of this AutonomousSystemRaftCluster. + :type witness_count: int + + :param ru_mode: + The value to assign to the ru_mode property of this AutonomousSystemRaftCluster. + Allowed values for this property are: "READ_ONLY", "READ_WRITE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type ru_mode: str + + :param databases: + The value to assign to the databases property of this AutonomousSystemRaftCluster. + :type databases: list[oci.distributed_database_v26.models.DistributedAutonomousDatabaseShardDatabase] + + """ + self.swagger_types = { + 'name': 'str', + 'replication_factor': 'int', + 'witness_count': 'int', + 'ru_mode': 'str', + 'databases': 'list[DistributedAutonomousDatabaseShardDatabase]' + } + self.attribute_map = { + 'name': 'name', + 'replication_factor': 'replicationFactor', + 'witness_count': 'witnessCount', + 'ru_mode': 'ruMode', + 'databases': 'databases' + } + self._name = None + self._replication_factor = None + self._witness_count = None + self._ru_mode = None + self._databases = None + + @property + def name(self): + """ + **[Required]** Gets the name of this AutonomousSystemRaftCluster. + The name of raft cluster. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this AutonomousSystemRaftCluster. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this AutonomousSystemRaftCluster. + The name of raft cluster. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this AutonomousSystemRaftCluster. + :type: str + """ + self._name = name + + @property + def replication_factor(self): + """ + **[Required]** Gets the replication_factor of this AutonomousSystemRaftCluster. + Replication factor associated with the raft cluster. + + + :return: The replication_factor of this AutonomousSystemRaftCluster. + :rtype: int + """ + return self._replication_factor + + @replication_factor.setter + def replication_factor(self, replication_factor): + """ + Sets the replication_factor of this AutonomousSystemRaftCluster. + Replication factor associated with the raft cluster. + + + :param replication_factor: The replication_factor of this AutonomousSystemRaftCluster. + :type: int + """ + self._replication_factor = replication_factor + + @property + def witness_count(self): + """ + **[Required]** Gets the witness_count of this AutonomousSystemRaftCluster. + Witnesses RU count associated with the raft cluster. + + + :return: The witness_count of this AutonomousSystemRaftCluster. + :rtype: int + """ + return self._witness_count + + @witness_count.setter + def witness_count(self, witness_count): + """ + Sets the witness_count of this AutonomousSystemRaftCluster. + Witnesses RU count associated with the raft cluster. + + + :param witness_count: The witness_count of this AutonomousSystemRaftCluster. + :type: int + """ + self._witness_count = witness_count + + @property + def ru_mode(self): + """ + **[Required]** Gets the ru_mode of this AutonomousSystemRaftCluster. + Replication factor associated with the raft cluster. + + Allowed values for this property are: "READ_ONLY", "READ_WRITE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The ru_mode of this AutonomousSystemRaftCluster. + :rtype: str + """ + return self._ru_mode + + @ru_mode.setter + def ru_mode(self, ru_mode): + """ + Sets the ru_mode of this AutonomousSystemRaftCluster. + Replication factor associated with the raft cluster. + + + :param ru_mode: The ru_mode of this AutonomousSystemRaftCluster. + :type: str + """ + allowed_values = ["READ_ONLY", "READ_WRITE"] + if not value_allowed_none_or_none_sentinel(ru_mode, allowed_values): + ru_mode = 'UNKNOWN_ENUM_VALUE' + self._ru_mode = ru_mode + + @property + def databases(self): + """ + **[Required]** Gets the databases of this AutonomousSystemRaftCluster. + Details of the databases associated with the system raft cluster. + + + :return: The databases of this AutonomousSystemRaftCluster. + :rtype: list[oci.distributed_database_v26.models.DistributedAutonomousDatabaseShardDatabase] + """ + return self._databases + + @databases.setter + def databases(self, databases): + """ + Sets the databases of this AutonomousSystemRaftCluster. + Details of the databases associated with the system raft cluster. + + + :param databases: The databases of this AutonomousSystemRaftCluster. + :type: list[oci.distributed_database_v26.models.DistributedAutonomousDatabaseShardDatabase] + """ + self._databases = databases + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/autonomous_user_shard_space.py b/src/oci/distributed_database_v26/models/autonomous_user_shard_space.py new file mode 100644 index 0000000000..2588f3062a --- /dev/null +++ b/src/oci/distributed_database_v26/models/autonomous_user_shard_space.py @@ -0,0 +1,132 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class AutonomousUserShardSpace(object): + """ + Distributed autonomous database user shard space details. + """ + + def __init__(self, **kwargs): + """ + Initializes a new AutonomousUserShardSpace object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this AutonomousUserShardSpace. + :type name: str + + :param original_replica: + The value to assign to the original_replica property of this AutonomousUserShardSpace. + :type original_replica: oci.distributed_database_v26.models.AutonomousUserShardSpaceReplica + + :param data_guard_replicas: + The value to assign to the data_guard_replicas property of this AutonomousUserShardSpace. + :type data_guard_replicas: list[oci.distributed_database_v26.models.AutonomousUserShardSpaceReplica] + + """ + self.swagger_types = { + 'name': 'str', + 'original_replica': 'AutonomousUserShardSpaceReplica', + 'data_guard_replicas': 'list[AutonomousUserShardSpaceReplica]' + } + self.attribute_map = { + 'name': 'name', + 'original_replica': 'originalReplica', + 'data_guard_replicas': 'dataGuardReplicas' + } + self._name = None + self._original_replica = None + self._data_guard_replicas = None + + @property + def name(self): + """ + **[Required]** Gets the name of this AutonomousUserShardSpace. + The name of the user shard space. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this AutonomousUserShardSpace. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this AutonomousUserShardSpace. + The name of the user shard space. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this AutonomousUserShardSpace. + :type: str + """ + self._name = name + + @property + def original_replica(self): + """ + **[Required]** Gets the original_replica of this AutonomousUserShardSpace. + + :return: The original_replica of this AutonomousUserShardSpace. + :rtype: oci.distributed_database_v26.models.AutonomousUserShardSpaceReplica + """ + return self._original_replica + + @original_replica.setter + def original_replica(self, original_replica): + """ + Sets the original_replica of this AutonomousUserShardSpace. + + :param original_replica: The original_replica of this AutonomousUserShardSpace. + :type: oci.distributed_database_v26.models.AutonomousUserShardSpaceReplica + """ + self._original_replica = original_replica + + @property + def data_guard_replicas(self): + """ + Gets the data_guard_replicas of this AutonomousUserShardSpace. + Details of data guard replicas for the user shard space. + + + :return: The data_guard_replicas of this AutonomousUserShardSpace. + :rtype: list[oci.distributed_database_v26.models.AutonomousUserShardSpaceReplica] + """ + return self._data_guard_replicas + + @data_guard_replicas.setter + def data_guard_replicas(self, data_guard_replicas): + """ + Sets the data_guard_replicas of this AutonomousUserShardSpace. + Details of data guard replicas for the user shard space. + + + :param data_guard_replicas: The data_guard_replicas of this AutonomousUserShardSpace. + :type: list[oci.distributed_database_v26.models.AutonomousUserShardSpaceReplica] + """ + self._data_guard_replicas = data_guard_replicas + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/autonomous_user_shard_space_replica.py b/src/oci/distributed_database_v26/models/autonomous_user_shard_space_replica.py new file mode 100644 index 0000000000..002267c236 --- /dev/null +++ b/src/oci/distributed_database_v26/models/autonomous_user_shard_space_replica.py @@ -0,0 +1,101 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class AutonomousUserShardSpaceReplica(object): + """ + User shard space replica details. + """ + + def __init__(self, **kwargs): + """ + Initializes a new AutonomousUserShardSpaceReplica object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this AutonomousUserShardSpaceReplica. + :type name: str + + :param database: + The value to assign to the database property of this AutonomousUserShardSpaceReplica. + :type database: oci.distributed_database_v26.models.DistributedAutonomousDatabaseShardDatabase + + """ + self.swagger_types = { + 'name': 'str', + 'database': 'DistributedAutonomousDatabaseShardDatabase' + } + self.attribute_map = { + 'name': 'name', + 'database': 'database' + } + self._name = None + self._database = None + + @property + def name(self): + """ + **[Required]** Gets the name of this AutonomousUserShardSpaceReplica. + The name of the user shard space replica. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this AutonomousUserShardSpaceReplica. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this AutonomousUserShardSpaceReplica. + The name of the user shard space replica. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this AutonomousUserShardSpaceReplica. + :type: str + """ + self._name = name + + @property + def database(self): + """ + **[Required]** Gets the database of this AutonomousUserShardSpaceReplica. + + :return: The database of this AutonomousUserShardSpaceReplica. + :rtype: oci.distributed_database_v26.models.DistributedAutonomousDatabaseShardDatabase + """ + return self._database + + @database.setter + def database(self, database): + """ + Sets the database of this AutonomousUserShardSpaceReplica. + + :param database: The database of this AutonomousUserShardSpaceReplica. + :type: oci.distributed_database_v26.models.DistributedAutonomousDatabaseShardDatabase + """ + self._database = database + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/change_distributed_autonomous_database_compartment_details.py b/src/oci/distributed_database_v26/models/change_distributed_autonomous_database_compartment_details.py new file mode 100644 index 0000000000..e5a8638c88 --- /dev/null +++ b/src/oci/distributed_database_v26/models/change_distributed_autonomous_database_compartment_details.py @@ -0,0 +1,74 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ChangeDistributedAutonomousDatabaseCompartmentDetails(object): + """ + The configuration details for moving the resource for Globally distributed autonomous database to other compartment. + """ + + def __init__(self, **kwargs): + """ + Initializes a new ChangeDistributedAutonomousDatabaseCompartmentDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param compartment_id: + The value to assign to the compartment_id property of this ChangeDistributedAutonomousDatabaseCompartmentDetails. + :type compartment_id: str + + """ + self.swagger_types = { + 'compartment_id': 'str' + } + self.attribute_map = { + 'compartment_id': 'compartmentId' + } + self._compartment_id = None + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this ChangeDistributedAutonomousDatabaseCompartmentDetails. + The `OCID`__ of the compartment to move the resource to. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this ChangeDistributedAutonomousDatabaseCompartmentDetails. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this ChangeDistributedAutonomousDatabaseCompartmentDetails. + The `OCID`__ of the compartment to move the resource to. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this ChangeDistributedAutonomousDatabaseCompartmentDetails. + :type: str + """ + self._compartment_id = compartment_id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/change_distributed_autonomous_db_backup_config_details.py b/src/oci/distributed_database_v26/models/change_distributed_autonomous_db_backup_config_details.py new file mode 100644 index 0000000000..b3468538f3 --- /dev/null +++ b/src/oci/distributed_database_v26/models/change_distributed_autonomous_db_backup_config_details.py @@ -0,0 +1,66 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ChangeDistributedAutonomousDbBackupConfigDetails(object): + """ + Details of the DbBackupConfig to be updated for the Globally distributed autonomous database. + """ + + def __init__(self, **kwargs): + """ + Initializes a new ChangeDistributedAutonomousDbBackupConfigDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param db_backup_config: + The value to assign to the db_backup_config property of this ChangeDistributedAutonomousDbBackupConfigDetails. + :type db_backup_config: oci.distributed_database_v26.models.DistributedAutonomousDbBackupConfig + + """ + self.swagger_types = { + 'db_backup_config': 'DistributedAutonomousDbBackupConfig' + } + self.attribute_map = { + 'db_backup_config': 'dbBackupConfig' + } + self._db_backup_config = None + + @property + def db_backup_config(self): + """ + **[Required]** Gets the db_backup_config of this ChangeDistributedAutonomousDbBackupConfigDetails. + + :return: The db_backup_config of this ChangeDistributedAutonomousDbBackupConfigDetails. + :rtype: oci.distributed_database_v26.models.DistributedAutonomousDbBackupConfig + """ + return self._db_backup_config + + @db_backup_config.setter + def db_backup_config(self, db_backup_config): + """ + Sets the db_backup_config of this ChangeDistributedAutonomousDbBackupConfigDetails. + + :param db_backup_config: The db_backup_config of this ChangeDistributedAutonomousDbBackupConfigDetails. + :type: oci.distributed_database_v26.models.DistributedAutonomousDbBackupConfig + """ + self._db_backup_config = db_backup_config + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/change_distributed_database_compartment_details.py b/src/oci/distributed_database_v26/models/change_distributed_database_compartment_details.py new file mode 100644 index 0000000000..893b037a88 --- /dev/null +++ b/src/oci/distributed_database_v26/models/change_distributed_database_compartment_details.py @@ -0,0 +1,74 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ChangeDistributedDatabaseCompartmentDetails(object): + """ + The configuration details for moving the resource for Globally distributed database to other compartment. + """ + + def __init__(self, **kwargs): + """ + Initializes a new ChangeDistributedDatabaseCompartmentDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param compartment_id: + The value to assign to the compartment_id property of this ChangeDistributedDatabaseCompartmentDetails. + :type compartment_id: str + + """ + self.swagger_types = { + 'compartment_id': 'str' + } + self.attribute_map = { + 'compartment_id': 'compartmentId' + } + self._compartment_id = None + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this ChangeDistributedDatabaseCompartmentDetails. + The `OCID`__ of the compartment to move the resource to. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this ChangeDistributedDatabaseCompartmentDetails. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this ChangeDistributedDatabaseCompartmentDetails. + The `OCID`__ of the compartment to move the resource to. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this ChangeDistributedDatabaseCompartmentDetails. + :type: str + """ + self._compartment_id = compartment_id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/change_distributed_database_private_endpoint_compartment_details.py b/src/oci/distributed_database_v26/models/change_distributed_database_private_endpoint_compartment_details.py new file mode 100644 index 0000000000..434cc9f24e --- /dev/null +++ b/src/oci/distributed_database_v26/models/change_distributed_database_private_endpoint_compartment_details.py @@ -0,0 +1,74 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ChangeDistributedDatabasePrivateEndpointCompartmentDetails(object): + """ + The configuration details for moving the resource for private endpoint to other compartment. + """ + + def __init__(self, **kwargs): + """ + Initializes a new ChangeDistributedDatabasePrivateEndpointCompartmentDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param compartment_id: + The value to assign to the compartment_id property of this ChangeDistributedDatabasePrivateEndpointCompartmentDetails. + :type compartment_id: str + + """ + self.swagger_types = { + 'compartment_id': 'str' + } + self.attribute_map = { + 'compartment_id': 'compartmentId' + } + self._compartment_id = None + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this ChangeDistributedDatabasePrivateEndpointCompartmentDetails. + The `OCID`__ of the compartment to move the resource to. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this ChangeDistributedDatabasePrivateEndpointCompartmentDetails. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this ChangeDistributedDatabasePrivateEndpointCompartmentDetails. + The `OCID`__ of the compartment to move the resource to. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this ChangeDistributedDatabasePrivateEndpointCompartmentDetails. + :type: str + """ + self._compartment_id = compartment_id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/change_distributed_db_backup_config_details.py b/src/oci/distributed_database_v26/models/change_distributed_db_backup_config_details.py new file mode 100644 index 0000000000..3de77a75bc --- /dev/null +++ b/src/oci/distributed_database_v26/models/change_distributed_db_backup_config_details.py @@ -0,0 +1,66 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ChangeDistributedDbBackupConfigDetails(object): + """ + Details of the DbBackupConfig to be updated for the Globally distreibuted database. + """ + + def __init__(self, **kwargs): + """ + Initializes a new ChangeDistributedDbBackupConfigDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param db_backup_config: + The value to assign to the db_backup_config property of this ChangeDistributedDbBackupConfigDetails. + :type db_backup_config: oci.distributed_database_v26.models.DistributedDbBackupConfig + + """ + self.swagger_types = { + 'db_backup_config': 'DistributedDbBackupConfig' + } + self.attribute_map = { + 'db_backup_config': 'dbBackupConfig' + } + self._db_backup_config = None + + @property + def db_backup_config(self): + """ + **[Required]** Gets the db_backup_config of this ChangeDistributedDbBackupConfigDetails. + + :return: The db_backup_config of this ChangeDistributedDbBackupConfigDetails. + :rtype: oci.distributed_database_v26.models.DistributedDbBackupConfig + """ + return self._db_backup_config + + @db_backup_config.setter + def db_backup_config(self, db_backup_config): + """ + Sets the db_backup_config of this ChangeDistributedDbBackupConfigDetails. + + :param db_backup_config: The db_backup_config of this ChangeDistributedDbBackupConfigDetails. + :type: oci.distributed_database_v26.models.DistributedDbBackupConfig + """ + self._db_backup_config = db_backup_config + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/composite_data_guard_shard_space.py b/src/oci/distributed_database_v26/models/composite_data_guard_shard_space.py new file mode 100644 index 0000000000..f5f505dbbe --- /dev/null +++ b/src/oci/distributed_database_v26/models/composite_data_guard_shard_space.py @@ -0,0 +1,163 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CompositeDataGuardShardSpace(object): + """ + Globally distributed database composite data guard shard space details. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CompositeDataGuardShardSpace object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this CompositeDataGuardShardSpace. + :type name: str + + :param chunk_count: + The value to assign to the chunk_count property of this CompositeDataGuardShardSpace. + :type chunk_count: int + + :param original_replica: + The value to assign to the original_replica property of this CompositeDataGuardShardSpace. + :type original_replica: oci.distributed_database_v26.models.CompositeDataGuardShardSpaceReplica + + :param data_guard_replicas: + The value to assign to the data_guard_replicas property of this CompositeDataGuardShardSpace. + :type data_guard_replicas: list[oci.distributed_database_v26.models.CompositeDataGuardShardSpaceReplica] + + """ + self.swagger_types = { + 'name': 'str', + 'chunk_count': 'int', + 'original_replica': 'CompositeDataGuardShardSpaceReplica', + 'data_guard_replicas': 'list[CompositeDataGuardShardSpaceReplica]' + } + self.attribute_map = { + 'name': 'name', + 'chunk_count': 'chunkCount', + 'original_replica': 'originalReplica', + 'data_guard_replicas': 'dataGuardReplicas' + } + self._name = None + self._chunk_count = None + self._original_replica = None + self._data_guard_replicas = None + + @property + def name(self): + """ + **[Required]** Gets the name of this CompositeDataGuardShardSpace. + The name of shard space. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this CompositeDataGuardShardSpace. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this CompositeDataGuardShardSpace. + The name of shard space. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this CompositeDataGuardShardSpace. + :type: str + """ + self._name = name + + @property + def chunk_count(self): + """ + **[Required]** Gets the chunk_count of this CompositeDataGuardShardSpace. + Count of chunks associated with the shard space. + + + :return: The chunk_count of this CompositeDataGuardShardSpace. + :rtype: int + """ + return self._chunk_count + + @chunk_count.setter + def chunk_count(self, chunk_count): + """ + Sets the chunk_count of this CompositeDataGuardShardSpace. + Count of chunks associated with the shard space. + + + :param chunk_count: The chunk_count of this CompositeDataGuardShardSpace. + :type: int + """ + self._chunk_count = chunk_count + + @property + def original_replica(self): + """ + **[Required]** Gets the original_replica of this CompositeDataGuardShardSpace. + + :return: The original_replica of this CompositeDataGuardShardSpace. + :rtype: oci.distributed_database_v26.models.CompositeDataGuardShardSpaceReplica + """ + return self._original_replica + + @original_replica.setter + def original_replica(self, original_replica): + """ + Sets the original_replica of this CompositeDataGuardShardSpace. + + :param original_replica: The original_replica of this CompositeDataGuardShardSpace. + :type: oci.distributed_database_v26.models.CompositeDataGuardShardSpaceReplica + """ + self._original_replica = original_replica + + @property + def data_guard_replicas(self): + """ + Gets the data_guard_replicas of this CompositeDataGuardShardSpace. + The details of data guard replica associated with the shard. + + + :return: The data_guard_replicas of this CompositeDataGuardShardSpace. + :rtype: list[oci.distributed_database_v26.models.CompositeDataGuardShardSpaceReplica] + """ + return self._data_guard_replicas + + @data_guard_replicas.setter + def data_guard_replicas(self, data_guard_replicas): + """ + Sets the data_guard_replicas of this CompositeDataGuardShardSpace. + The details of data guard replica associated with the shard. + + + :param data_guard_replicas: The data_guard_replicas of this CompositeDataGuardShardSpace. + :type: list[oci.distributed_database_v26.models.CompositeDataGuardShardSpaceReplica] + """ + self._data_guard_replicas = data_guard_replicas + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/composite_data_guard_shard_space_replica.py b/src/oci/distributed_database_v26/models/composite_data_guard_shard_space_replica.py new file mode 100644 index 0000000000..fccbeb324f --- /dev/null +++ b/src/oci/distributed_database_v26/models/composite_data_guard_shard_space_replica.py @@ -0,0 +1,105 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CompositeDataGuardShardSpaceReplica(object): + """ + Globally distributed database composite data guard replica details. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CompositeDataGuardShardSpaceReplica object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this CompositeDataGuardShardSpaceReplica. + :type name: str + + :param databases: + The value to assign to the databases property of this CompositeDataGuardShardSpaceReplica. + :type databases: list[oci.distributed_database_v26.models.DistributedDatabaseShardDatabase] + + """ + self.swagger_types = { + 'name': 'str', + 'databases': 'list[DistributedDatabaseShardDatabase]' + } + self.attribute_map = { + 'name': 'name', + 'databases': 'databases' + } + self._name = None + self._databases = None + + @property + def name(self): + """ + **[Required]** Gets the name of this CompositeDataGuardShardSpaceReplica. + The name of shard space replica. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this CompositeDataGuardShardSpaceReplica. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this CompositeDataGuardShardSpaceReplica. + The name of shard space replica. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this CompositeDataGuardShardSpaceReplica. + :type: str + """ + self._name = name + + @property + def databases(self): + """ + **[Required]** Gets the databases of this CompositeDataGuardShardSpaceReplica. + The details of composite data guard shard space replica databases. + + + :return: The databases of this CompositeDataGuardShardSpaceReplica. + :rtype: list[oci.distributed_database_v26.models.DistributedDatabaseShardDatabase] + """ + return self._databases + + @databases.setter + def databases(self, databases): + """ + Sets the databases of this CompositeDataGuardShardSpaceReplica. + The details of composite data guard shard space replica databases. + + + :param databases: The databases of this CompositeDataGuardShardSpaceReplica. + :type: list[oci.distributed_database_v26.models.DistributedDatabaseShardDatabase] + """ + self._databases = databases + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/composite_raft_shard_space.py b/src/oci/distributed_database_v26/models/composite_raft_shard_space.py new file mode 100644 index 0000000000..d0f0c21a6c --- /dev/null +++ b/src/oci/distributed_database_v26/models/composite_raft_shard_space.py @@ -0,0 +1,167 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CompositeRaftShardSpace(object): + """ + Globally distributed database composite raft shard space. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CompositeRaftShardSpace object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this CompositeRaftShardSpace. + :type name: str + + :param chunk_count: + The value to assign to the chunk_count property of this CompositeRaftShardSpace. + :type chunk_count: int + + :param replication_unit_count: + The value to assign to the replication_unit_count property of this CompositeRaftShardSpace. + :type replication_unit_count: int + + :param raft_clusters: + The value to assign to the raft_clusters property of this CompositeRaftShardSpace. + :type raft_clusters: list[oci.distributed_database_v26.models.CompositeShardSpaceRaftCluster] + + """ + self.swagger_types = { + 'name': 'str', + 'chunk_count': 'int', + 'replication_unit_count': 'int', + 'raft_clusters': 'list[CompositeShardSpaceRaftCluster]' + } + self.attribute_map = { + 'name': 'name', + 'chunk_count': 'chunkCount', + 'replication_unit_count': 'replicationUnitCount', + 'raft_clusters': 'raftClusters' + } + self._name = None + self._chunk_count = None + self._replication_unit_count = None + self._raft_clusters = None + + @property + def name(self): + """ + **[Required]** Gets the name of this CompositeRaftShardSpace. + The name of shard space. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this CompositeRaftShardSpace. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this CompositeRaftShardSpace. + The name of shard space. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this CompositeRaftShardSpace. + :type: str + """ + self._name = name + + @property + def chunk_count(self): + """ + **[Required]** Gets the chunk_count of this CompositeRaftShardSpace. + Count of chunks associated with the shard space. + + + :return: The chunk_count of this CompositeRaftShardSpace. + :rtype: int + """ + return self._chunk_count + + @chunk_count.setter + def chunk_count(self, chunk_count): + """ + Sets the chunk_count of this CompositeRaftShardSpace. + Count of chunks associated with the shard space. + + + :param chunk_count: The chunk_count of this CompositeRaftShardSpace. + :type: int + """ + self._chunk_count = chunk_count + + @property + def replication_unit_count(self): + """ + **[Required]** Gets the replication_unit_count of this CompositeRaftShardSpace. + Number of replication units in the shard space. + + + :return: The replication_unit_count of this CompositeRaftShardSpace. + :rtype: int + """ + return self._replication_unit_count + + @replication_unit_count.setter + def replication_unit_count(self, replication_unit_count): + """ + Sets the replication_unit_count of this CompositeRaftShardSpace. + Number of replication units in the shard space. + + + :param replication_unit_count: The replication_unit_count of this CompositeRaftShardSpace. + :type: int + """ + self._replication_unit_count = replication_unit_count + + @property + def raft_clusters(self): + """ + **[Required]** Gets the raft_clusters of this CompositeRaftShardSpace. + The details of raft clusters associated with the shard space. + + + :return: The raft_clusters of this CompositeRaftShardSpace. + :rtype: list[oci.distributed_database_v26.models.CompositeShardSpaceRaftCluster] + """ + return self._raft_clusters + + @raft_clusters.setter + def raft_clusters(self, raft_clusters): + """ + Sets the raft_clusters of this CompositeRaftShardSpace. + The details of raft clusters associated with the shard space. + + + :param raft_clusters: The raft_clusters of this CompositeRaftShardSpace. + :type: list[oci.distributed_database_v26.models.CompositeShardSpaceRaftCluster] + """ + self._raft_clusters = raft_clusters + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/composite_shard_space_raft_cluster.py b/src/oci/distributed_database_v26/models/composite_shard_space_raft_cluster.py new file mode 100644 index 0000000000..fddf94f653 --- /dev/null +++ b/src/oci/distributed_database_v26/models/composite_shard_space_raft_cluster.py @@ -0,0 +1,214 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CompositeShardSpaceRaftCluster(object): + """ + Raft clusters details for composite shard spaces. + """ + + #: A constant which can be used with the ru_mode property of a CompositeShardSpaceRaftCluster. + #: This constant has a value of "READ_ONLY" + RU_MODE_READ_ONLY = "READ_ONLY" + + #: A constant which can be used with the ru_mode property of a CompositeShardSpaceRaftCluster. + #: This constant has a value of "READ_WRITE" + RU_MODE_READ_WRITE = "READ_WRITE" + + def __init__(self, **kwargs): + """ + Initializes a new CompositeShardSpaceRaftCluster object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this CompositeShardSpaceRaftCluster. + :type name: str + + :param replication_factor: + The value to assign to the replication_factor property of this CompositeShardSpaceRaftCluster. + :type replication_factor: int + + :param witness_count: + The value to assign to the witness_count property of this CompositeShardSpaceRaftCluster. + :type witness_count: int + + :param ru_mode: + The value to assign to the ru_mode property of this CompositeShardSpaceRaftCluster. + Allowed values for this property are: "READ_ONLY", "READ_WRITE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type ru_mode: str + + :param databases: + The value to assign to the databases property of this CompositeShardSpaceRaftCluster. + :type databases: list[oci.distributed_database_v26.models.DistributedDatabaseShardDatabase] + + """ + self.swagger_types = { + 'name': 'str', + 'replication_factor': 'int', + 'witness_count': 'int', + 'ru_mode': 'str', + 'databases': 'list[DistributedDatabaseShardDatabase]' + } + self.attribute_map = { + 'name': 'name', + 'replication_factor': 'replicationFactor', + 'witness_count': 'witnessCount', + 'ru_mode': 'ruMode', + 'databases': 'databases' + } + self._name = None + self._replication_factor = None + self._witness_count = None + self._ru_mode = None + self._databases = None + + @property + def name(self): + """ + **[Required]** Gets the name of this CompositeShardSpaceRaftCluster. + The name of raft cluster. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this CompositeShardSpaceRaftCluster. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this CompositeShardSpaceRaftCluster. + The name of raft cluster. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this CompositeShardSpaceRaftCluster. + :type: str + """ + self._name = name + + @property + def replication_factor(self): + """ + **[Required]** Gets the replication_factor of this CompositeShardSpaceRaftCluster. + Replication factor associated with the raft cluster. + + + :return: The replication_factor of this CompositeShardSpaceRaftCluster. + :rtype: int + """ + return self._replication_factor + + @replication_factor.setter + def replication_factor(self, replication_factor): + """ + Sets the replication_factor of this CompositeShardSpaceRaftCluster. + Replication factor associated with the raft cluster. + + + :param replication_factor: The replication_factor of this CompositeShardSpaceRaftCluster. + :type: int + """ + self._replication_factor = replication_factor + + @property + def witness_count(self): + """ + **[Required]** Gets the witness_count of this CompositeShardSpaceRaftCluster. + Witnesses RU count associated with the raft cluster. + + + :return: The witness_count of this CompositeShardSpaceRaftCluster. + :rtype: int + """ + return self._witness_count + + @witness_count.setter + def witness_count(self, witness_count): + """ + Sets the witness_count of this CompositeShardSpaceRaftCluster. + Witnesses RU count associated with the raft cluster. + + + :param witness_count: The witness_count of this CompositeShardSpaceRaftCluster. + :type: int + """ + self._witness_count = witness_count + + @property + def ru_mode(self): + """ + **[Required]** Gets the ru_mode of this CompositeShardSpaceRaftCluster. + Replication factor associated with the raft cluster. + + Allowed values for this property are: "READ_ONLY", "READ_WRITE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The ru_mode of this CompositeShardSpaceRaftCluster. + :rtype: str + """ + return self._ru_mode + + @ru_mode.setter + def ru_mode(self, ru_mode): + """ + Sets the ru_mode of this CompositeShardSpaceRaftCluster. + Replication factor associated with the raft cluster. + + + :param ru_mode: The ru_mode of this CompositeShardSpaceRaftCluster. + :type: str + """ + allowed_values = ["READ_ONLY", "READ_WRITE"] + if not value_allowed_none_or_none_sentinel(ru_mode, allowed_values): + ru_mode = 'UNKNOWN_ENUM_VALUE' + self._ru_mode = ru_mode + + @property + def databases(self): + """ + **[Required]** Gets the databases of this CompositeShardSpaceRaftCluster. + The details of databases associated with the composite shard space raft cluster. + + + :return: The databases of this CompositeShardSpaceRaftCluster. + :rtype: list[oci.distributed_database_v26.models.DistributedDatabaseShardDatabase] + """ + return self._databases + + @databases.setter + def databases(self, databases): + """ + Sets the databases of this CompositeShardSpaceRaftCluster. + The details of databases associated with the composite shard space raft cluster. + + + :param databases: The databases of this CompositeShardSpaceRaftCluster. + :type: list[oci.distributed_database_v26.models.DistributedDatabaseShardDatabase] + """ + self._databases = databases + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/configure_distributed_autonomous_database_auto_resource_management_details.py b/src/oci/distributed_database_v26/models/configure_distributed_autonomous_database_auto_resource_management_details.py new file mode 100644 index 0000000000..f42bf003f5 --- /dev/null +++ b/src/oci/distributed_database_v26/models/configure_distributed_autonomous_database_auto_resource_management_details.py @@ -0,0 +1,339 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails(object): + """ + Automatic resource management configuration details for the Globally distributed autonomous database. + """ + + #: A constant which can be used with the max_move_ru_unit property of a ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + #: This constant has a value of "HOUR" + MAX_MOVE_RU_UNIT_HOUR = "HOUR" + + #: A constant which can be used with the max_move_ru_unit property of a ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + #: This constant has a value of "DAY" + MAX_MOVE_RU_UNIT_DAY = "DAY" + + #: A constant which can be used with the mode property of a ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + #: This constant has a value of "AUTOMATIC" + MODE_AUTOMATIC = "AUTOMATIC" + + #: A constant which can be used with the mode property of a ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + #: This constant has a value of "RECOMMENDATION" + MODE_RECOMMENDATION = "RECOMMENDATION" + + #: A constant which can be used with the action_type property of a ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + #: This constant has a value of "MOVE" + ACTION_TYPE_MOVE = "MOVE" + + def __init__(self, **kwargs): + """ + Initializes a new ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param is_enabled: + The value to assign to the is_enabled property of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + :type is_enabled: bool + + :param cool_off_period_in_minutes: + The value to assign to the cool_off_period_in_minutes property of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + :type cool_off_period_in_minutes: int + + :param max_move_ru_attempts: + The value to assign to the max_move_ru_attempts property of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + :type max_move_ru_attempts: int + + :param max_move_ru_unit: + The value to assign to the max_move_ru_unit property of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + Allowed values for this property are: "HOUR", "DAY" + :type max_move_ru_unit: str + + :param mode: + The value to assign to the mode property of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + Allowed values for this property are: "AUTOMATIC", "RECOMMENDATION" + :type mode: str + + :param action_type: + The value to assign to the action_type property of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + Allowed values for this property are: "MOVE" + :type action_type: str + + :param notification_topic_ids: + The value to assign to the notification_topic_ids property of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + :type notification_topic_ids: list[str] + + :param stream_ids: + The value to assign to the stream_ids property of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + :type stream_ids: list[str] + + """ + self.swagger_types = { + 'is_enabled': 'bool', + 'cool_off_period_in_minutes': 'int', + 'max_move_ru_attempts': 'int', + 'max_move_ru_unit': 'str', + 'mode': 'str', + 'action_type': 'str', + 'notification_topic_ids': 'list[str]', + 'stream_ids': 'list[str]' + } + self.attribute_map = { + 'is_enabled': 'isEnabled', + 'cool_off_period_in_minutes': 'coolOffPeriodInMinutes', + 'max_move_ru_attempts': 'maxMoveRuAttempts', + 'max_move_ru_unit': 'maxMoveRuUnit', + 'mode': 'mode', + 'action_type': 'actionType', + 'notification_topic_ids': 'notificationTopicIds', + 'stream_ids': 'streamIds' + } + self._is_enabled = None + self._cool_off_period_in_minutes = None + self._max_move_ru_attempts = None + self._max_move_ru_unit = None + self._mode = None + self._action_type = None + self._notification_topic_ids = None + self._stream_ids = None + + @property + def is_enabled(self): + """ + **[Required]** Gets the is_enabled of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + Flag indicating if autoResourceManagement is enabled or disabled. + + + :return: The is_enabled of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + :rtype: bool + """ + return self._is_enabled + + @is_enabled.setter + def is_enabled(self, is_enabled): + """ + Sets the is_enabled of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + Flag indicating if autoResourceManagement is enabled or disabled. + + + :param is_enabled: The is_enabled of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + :type: bool + """ + self._is_enabled = is_enabled + + @property + def cool_off_period_in_minutes(self): + """ + Gets the cool_off_period_in_minutes of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + Time period to wait for the database to get stable after autoResourceManagement event. + + + :return: The cool_off_period_in_minutes of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + :rtype: int + """ + return self._cool_off_period_in_minutes + + @cool_off_period_in_minutes.setter + def cool_off_period_in_minutes(self, cool_off_period_in_minutes): + """ + Sets the cool_off_period_in_minutes of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + Time period to wait for the database to get stable after autoResourceManagement event. + + + :param cool_off_period_in_minutes: The cool_off_period_in_minutes of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + :type: int + """ + self._cool_off_period_in_minutes = cool_off_period_in_minutes + + @property + def max_move_ru_attempts(self): + """ + Gets the max_move_ru_attempts of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + Maximum number of move replication unit attempts allowed within the configured period per database. + + + :return: The max_move_ru_attempts of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + :rtype: int + """ + return self._max_move_ru_attempts + + @max_move_ru_attempts.setter + def max_move_ru_attempts(self, max_move_ru_attempts): + """ + Sets the max_move_ru_attempts of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + Maximum number of move replication unit attempts allowed within the configured period per database. + + + :param max_move_ru_attempts: The max_move_ru_attempts of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + :type: int + """ + self._max_move_ru_attempts = max_move_ru_attempts + + @property + def max_move_ru_unit(self): + """ + Gets the max_move_ru_unit of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + Time unit applicable to maxMoveRuAttempts. + + Allowed values for this property are: "HOUR", "DAY" + + + :return: The max_move_ru_unit of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + :rtype: str + """ + return self._max_move_ru_unit + + @max_move_ru_unit.setter + def max_move_ru_unit(self, max_move_ru_unit): + """ + Sets the max_move_ru_unit of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + Time unit applicable to maxMoveRuAttempts. + + + :param max_move_ru_unit: The max_move_ru_unit of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + :type: str + """ + allowed_values = ["HOUR", "DAY"] + if not value_allowed_none_or_none_sentinel(max_move_ru_unit, allowed_values): + raise ValueError( + f"Invalid value for `max_move_ru_unit`, must be None or one of {allowed_values}" + ) + self._max_move_ru_unit = max_move_ru_unit + + @property + def mode(self): + """ + Gets the mode of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + Mode of autoResourceManagement execution. + + Allowed values for this property are: "AUTOMATIC", "RECOMMENDATION" + + + :return: The mode of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + :rtype: str + """ + return self._mode + + @mode.setter + def mode(self, mode): + """ + Sets the mode of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + Mode of autoResourceManagement execution. + + + :param mode: The mode of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + :type: str + """ + allowed_values = ["AUTOMATIC", "RECOMMENDATION"] + if not value_allowed_none_or_none_sentinel(mode, allowed_values): + raise ValueError( + f"Invalid value for `mode`, must be None or one of {allowed_values}" + ) + self._mode = mode + + @property + def action_type(self): + """ + Gets the action_type of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + The action that will be taken when autoResourceManagement is triggered. + + Allowed values for this property are: "MOVE" + + + :return: The action_type of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + :rtype: str + """ + return self._action_type + + @action_type.setter + def action_type(self, action_type): + """ + Sets the action_type of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + The action that will be taken when autoResourceManagement is triggered. + + + :param action_type: The action_type of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + :type: str + """ + allowed_values = ["MOVE"] + if not value_allowed_none_or_none_sentinel(action_type, allowed_values): + raise ValueError( + f"Invalid value for `action_type`, must be None or one of {allowed_values}" + ) + self._action_type = action_type + + @property + def notification_topic_ids(self): + """ + Gets the notification_topic_ids of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + The list of notification topic ids `OCIDs`__ to receive autoResourceManagement events. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The notification_topic_ids of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + :rtype: list[str] + """ + return self._notification_topic_ids + + @notification_topic_ids.setter + def notification_topic_ids(self, notification_topic_ids): + """ + Sets the notification_topic_ids of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + The list of notification topic ids `OCIDs`__ to receive autoResourceManagement events. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param notification_topic_ids: The notification_topic_ids of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + :type: list[str] + """ + self._notification_topic_ids = notification_topic_ids + + @property + def stream_ids(self): + """ + Gets the stream_ids of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + The list of stream ids `OCIDs`__ that receive shard-related telemetry. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The stream_ids of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + :rtype: list[str] + """ + return self._stream_ids + + @stream_ids.setter + def stream_ids(self, stream_ids): + """ + Sets the stream_ids of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + The list of stream ids `OCIDs`__ that receive shard-related telemetry. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param stream_ids: The stream_ids of this ConfigureDistributedAutonomousDatabaseAutoResourceManagementDetails. + :type: list[str] + """ + self._stream_ids = stream_ids + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/configure_distributed_autonomous_database_gsm_wallet_details.py b/src/oci/distributed_database_v26/models/configure_distributed_autonomous_database_gsm_wallet_details.py new file mode 100644 index 0000000000..83199ff0c9 --- /dev/null +++ b/src/oci/distributed_database_v26/models/configure_distributed_autonomous_database_gsm_wallet_details.py @@ -0,0 +1,109 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ConfigureDistributedAutonomousDatabaseGsmWalletDetails(object): + """ + Details of the request to configure wallet on global service manager(GSM) instances for a distributed autonomous database. + """ + + def __init__(self, **kwargs): + """ + Initializes a new ConfigureDistributedAutonomousDatabaseGsmWalletDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param certificate_id: + The value to assign to the certificate_id property of this ConfigureDistributedAutonomousDatabaseGsmWalletDetails. + :type certificate_id: str + + :param ca_bundle_id: + The value to assign to the ca_bundle_id property of this ConfigureDistributedAutonomousDatabaseGsmWalletDetails. + :type ca_bundle_id: str + + """ + self.swagger_types = { + 'certificate_id': 'str', + 'ca_bundle_id': 'str' + } + self.attribute_map = { + 'certificate_id': 'certificateId', + 'ca_bundle_id': 'caBundleId' + } + self._certificate_id = None + self._ca_bundle_id = None + + @property + def certificate_id(self): + """ + **[Required]** Gets the certificate_id of this ConfigureDistributedAutonomousDatabaseGsmWalletDetails. + The `OCID`__ of the cluster certificate. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The certificate_id of this ConfigureDistributedAutonomousDatabaseGsmWalletDetails. + :rtype: str + """ + return self._certificate_id + + @certificate_id.setter + def certificate_id(self, certificate_id): + """ + Sets the certificate_id of this ConfigureDistributedAutonomousDatabaseGsmWalletDetails. + The `OCID`__ of the cluster certificate. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param certificate_id: The certificate_id of this ConfigureDistributedAutonomousDatabaseGsmWalletDetails. + :type: str + """ + self._certificate_id = certificate_id + + @property + def ca_bundle_id(self): + """ + **[Required]** Gets the ca_bundle_id of this ConfigureDistributedAutonomousDatabaseGsmWalletDetails. + The `OCID`__ of the ca bundle id. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The ca_bundle_id of this ConfigureDistributedAutonomousDatabaseGsmWalletDetails. + :rtype: str + """ + return self._ca_bundle_id + + @ca_bundle_id.setter + def ca_bundle_id(self, ca_bundle_id): + """ + Sets the ca_bundle_id of this ConfigureDistributedAutonomousDatabaseGsmWalletDetails. + The `OCID`__ of the ca bundle id. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param ca_bundle_id: The ca_bundle_id of this ConfigureDistributedAutonomousDatabaseGsmWalletDetails. + :type: str + """ + self._ca_bundle_id = ca_bundle_id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/configure_distributed_autonomous_database_gsms_details.py b/src/oci/distributed_database_v26/models/configure_distributed_autonomous_database_gsms_details.py new file mode 100644 index 0000000000..15705fdea8 --- /dev/null +++ b/src/oci/distributed_database_v26/models/configure_distributed_autonomous_database_gsms_details.py @@ -0,0 +1,103 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ConfigureDistributedAutonomousDatabaseGsmsDetails(object): + """ + Details of the request to configure new global service manager(GSM) instances for the distributed autonomous database. + """ + + def __init__(self, **kwargs): + """ + Initializes a new ConfigureDistributedAutonomousDatabaseGsmsDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param old_gsm_names: + The value to assign to the old_gsm_names property of this ConfigureDistributedAutonomousDatabaseGsmsDetails. + :type old_gsm_names: list[str] + + :param is_latest_gsm_image: + The value to assign to the is_latest_gsm_image property of this ConfigureDistributedAutonomousDatabaseGsmsDetails. + :type is_latest_gsm_image: bool + + """ + self.swagger_types = { + 'old_gsm_names': 'list[str]', + 'is_latest_gsm_image': 'bool' + } + self.attribute_map = { + 'old_gsm_names': 'oldGsmNames', + 'is_latest_gsm_image': 'isLatestGsmImage' + } + self._old_gsm_names = None + self._is_latest_gsm_image = None + + @property + def old_gsm_names(self): + """ + **[Required]** Gets the old_gsm_names of this ConfigureDistributedAutonomousDatabaseGsmsDetails. + Names of old global service manager(GSM) instances corresponding to which new GSM instances need to be configured. + + + :return: The old_gsm_names of this ConfigureDistributedAutonomousDatabaseGsmsDetails. + :rtype: list[str] + """ + return self._old_gsm_names + + @old_gsm_names.setter + def old_gsm_names(self, old_gsm_names): + """ + Sets the old_gsm_names of this ConfigureDistributedAutonomousDatabaseGsmsDetails. + Names of old global service manager(GSM) instances corresponding to which new GSM instances need to be configured. + + + :param old_gsm_names: The old_gsm_names of this ConfigureDistributedAutonomousDatabaseGsmsDetails. + :type: list[str] + """ + self._old_gsm_names = old_gsm_names + + @property + def is_latest_gsm_image(self): + """ + **[Required]** Gets the is_latest_gsm_image of this ConfigureDistributedAutonomousDatabaseGsmsDetails. + Flag to indicate if new global service manager(GSM) instances shall use latest image or re-use image used by existing + GSM instances. + + + :return: The is_latest_gsm_image of this ConfigureDistributedAutonomousDatabaseGsmsDetails. + :rtype: bool + """ + return self._is_latest_gsm_image + + @is_latest_gsm_image.setter + def is_latest_gsm_image(self, is_latest_gsm_image): + """ + Sets the is_latest_gsm_image of this ConfigureDistributedAutonomousDatabaseGsmsDetails. + Flag to indicate if new global service manager(GSM) instances shall use latest image or re-use image used by existing + GSM instances. + + + :param is_latest_gsm_image: The is_latest_gsm_image of this ConfigureDistributedAutonomousDatabaseGsmsDetails. + :type: bool + """ + self._is_latest_gsm_image = is_latest_gsm_image + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/configure_distributed_database_auto_resource_management_details.py b/src/oci/distributed_database_v26/models/configure_distributed_database_auto_resource_management_details.py new file mode 100644 index 0000000000..24508804c6 --- /dev/null +++ b/src/oci/distributed_database_v26/models/configure_distributed_database_auto_resource_management_details.py @@ -0,0 +1,339 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ConfigureDistributedDatabaseAutoResourceManagementDetails(object): + """ + AutoResourceManagement configuration details for the Globally distributed database. + """ + + #: A constant which can be used with the max_move_ru_unit property of a ConfigureDistributedDatabaseAutoResourceManagementDetails. + #: This constant has a value of "HOUR" + MAX_MOVE_RU_UNIT_HOUR = "HOUR" + + #: A constant which can be used with the max_move_ru_unit property of a ConfigureDistributedDatabaseAutoResourceManagementDetails. + #: This constant has a value of "DAY" + MAX_MOVE_RU_UNIT_DAY = "DAY" + + #: A constant which can be used with the mode property of a ConfigureDistributedDatabaseAutoResourceManagementDetails. + #: This constant has a value of "AUTOMATIC" + MODE_AUTOMATIC = "AUTOMATIC" + + #: A constant which can be used with the mode property of a ConfigureDistributedDatabaseAutoResourceManagementDetails. + #: This constant has a value of "RECOMMENDATION" + MODE_RECOMMENDATION = "RECOMMENDATION" + + #: A constant which can be used with the action_type property of a ConfigureDistributedDatabaseAutoResourceManagementDetails. + #: This constant has a value of "MOVE" + ACTION_TYPE_MOVE = "MOVE" + + def __init__(self, **kwargs): + """ + Initializes a new ConfigureDistributedDatabaseAutoResourceManagementDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param is_enabled: + The value to assign to the is_enabled property of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + :type is_enabled: bool + + :param cool_off_period_in_minutes: + The value to assign to the cool_off_period_in_minutes property of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + :type cool_off_period_in_minutes: int + + :param max_move_ru_attempts: + The value to assign to the max_move_ru_attempts property of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + :type max_move_ru_attempts: int + + :param max_move_ru_unit: + The value to assign to the max_move_ru_unit property of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + Allowed values for this property are: "HOUR", "DAY" + :type max_move_ru_unit: str + + :param mode: + The value to assign to the mode property of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + Allowed values for this property are: "AUTOMATIC", "RECOMMENDATION" + :type mode: str + + :param action_type: + The value to assign to the action_type property of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + Allowed values for this property are: "MOVE" + :type action_type: str + + :param notification_topic_ids: + The value to assign to the notification_topic_ids property of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + :type notification_topic_ids: list[str] + + :param stream_ids: + The value to assign to the stream_ids property of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + :type stream_ids: list[str] + + """ + self.swagger_types = { + 'is_enabled': 'bool', + 'cool_off_period_in_minutes': 'int', + 'max_move_ru_attempts': 'int', + 'max_move_ru_unit': 'str', + 'mode': 'str', + 'action_type': 'str', + 'notification_topic_ids': 'list[str]', + 'stream_ids': 'list[str]' + } + self.attribute_map = { + 'is_enabled': 'isEnabled', + 'cool_off_period_in_minutes': 'coolOffPeriodInMinutes', + 'max_move_ru_attempts': 'maxMoveRuAttempts', + 'max_move_ru_unit': 'maxMoveRuUnit', + 'mode': 'mode', + 'action_type': 'actionType', + 'notification_topic_ids': 'notificationTopicIds', + 'stream_ids': 'streamIds' + } + self._is_enabled = None + self._cool_off_period_in_minutes = None + self._max_move_ru_attempts = None + self._max_move_ru_unit = None + self._mode = None + self._action_type = None + self._notification_topic_ids = None + self._stream_ids = None + + @property + def is_enabled(self): + """ + **[Required]** Gets the is_enabled of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + Flag indicating if autoResourceManagement is enabled or disabled. + + + :return: The is_enabled of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + :rtype: bool + """ + return self._is_enabled + + @is_enabled.setter + def is_enabled(self, is_enabled): + """ + Sets the is_enabled of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + Flag indicating if autoResourceManagement is enabled or disabled. + + + :param is_enabled: The is_enabled of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + :type: bool + """ + self._is_enabled = is_enabled + + @property + def cool_off_period_in_minutes(self): + """ + Gets the cool_off_period_in_minutes of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + Time period to wait for the database to get stable after autoResourceManagement event. + + + :return: The cool_off_period_in_minutes of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + :rtype: int + """ + return self._cool_off_period_in_minutes + + @cool_off_period_in_minutes.setter + def cool_off_period_in_minutes(self, cool_off_period_in_minutes): + """ + Sets the cool_off_period_in_minutes of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + Time period to wait for the database to get stable after autoResourceManagement event. + + + :param cool_off_period_in_minutes: The cool_off_period_in_minutes of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + :type: int + """ + self._cool_off_period_in_minutes = cool_off_period_in_minutes + + @property + def max_move_ru_attempts(self): + """ + Gets the max_move_ru_attempts of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + Maximum number of move replication unit attempts allowed within the configured period per database. + + + :return: The max_move_ru_attempts of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + :rtype: int + """ + return self._max_move_ru_attempts + + @max_move_ru_attempts.setter + def max_move_ru_attempts(self, max_move_ru_attempts): + """ + Sets the max_move_ru_attempts of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + Maximum number of move replication unit attempts allowed within the configured period per database. + + + :param max_move_ru_attempts: The max_move_ru_attempts of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + :type: int + """ + self._max_move_ru_attempts = max_move_ru_attempts + + @property + def max_move_ru_unit(self): + """ + Gets the max_move_ru_unit of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + Time unit applicable to maxMoveRuAttempts. + + Allowed values for this property are: "HOUR", "DAY" + + + :return: The max_move_ru_unit of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + :rtype: str + """ + return self._max_move_ru_unit + + @max_move_ru_unit.setter + def max_move_ru_unit(self, max_move_ru_unit): + """ + Sets the max_move_ru_unit of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + Time unit applicable to maxMoveRuAttempts. + + + :param max_move_ru_unit: The max_move_ru_unit of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + :type: str + """ + allowed_values = ["HOUR", "DAY"] + if not value_allowed_none_or_none_sentinel(max_move_ru_unit, allowed_values): + raise ValueError( + f"Invalid value for `max_move_ru_unit`, must be None or one of {allowed_values}" + ) + self._max_move_ru_unit = max_move_ru_unit + + @property + def mode(self): + """ + Gets the mode of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + Mode of autoResourceManagement execution. + + Allowed values for this property are: "AUTOMATIC", "RECOMMENDATION" + + + :return: The mode of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + :rtype: str + """ + return self._mode + + @mode.setter + def mode(self, mode): + """ + Sets the mode of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + Mode of autoResourceManagement execution. + + + :param mode: The mode of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + :type: str + """ + allowed_values = ["AUTOMATIC", "RECOMMENDATION"] + if not value_allowed_none_or_none_sentinel(mode, allowed_values): + raise ValueError( + f"Invalid value for `mode`, must be None or one of {allowed_values}" + ) + self._mode = mode + + @property + def action_type(self): + """ + Gets the action_type of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + The action that will be taken when autoResourceManagement is triggered. + + Allowed values for this property are: "MOVE" + + + :return: The action_type of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + :rtype: str + """ + return self._action_type + + @action_type.setter + def action_type(self, action_type): + """ + Sets the action_type of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + The action that will be taken when autoResourceManagement is triggered. + + + :param action_type: The action_type of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + :type: str + """ + allowed_values = ["MOVE"] + if not value_allowed_none_or_none_sentinel(action_type, allowed_values): + raise ValueError( + f"Invalid value for `action_type`, must be None or one of {allowed_values}" + ) + self._action_type = action_type + + @property + def notification_topic_ids(self): + """ + Gets the notification_topic_ids of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + The list of notification topic ids `OCIDs`__ to receive autoResourceManagement events. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The notification_topic_ids of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + :rtype: list[str] + """ + return self._notification_topic_ids + + @notification_topic_ids.setter + def notification_topic_ids(self, notification_topic_ids): + """ + Sets the notification_topic_ids of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + The list of notification topic ids `OCIDs`__ to receive autoResourceManagement events. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param notification_topic_ids: The notification_topic_ids of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + :type: list[str] + """ + self._notification_topic_ids = notification_topic_ids + + @property + def stream_ids(self): + """ + Gets the stream_ids of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + The list of stream ids `OCIDs`__ that receive shard-related telemetry. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The stream_ids of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + :rtype: list[str] + """ + return self._stream_ids + + @stream_ids.setter + def stream_ids(self, stream_ids): + """ + Sets the stream_ids of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + The list of stream ids `OCIDs`__ that receive shard-related telemetry. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param stream_ids: The stream_ids of this ConfigureDistributedDatabaseAutoResourceManagementDetails. + :type: list[str] + """ + self._stream_ids = stream_ids + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/configure_distributed_database_gsms_details.py b/src/oci/distributed_database_v26/models/configure_distributed_database_gsms_details.py new file mode 100644 index 0000000000..73f72d85c3 --- /dev/null +++ b/src/oci/distributed_database_v26/models/configure_distributed_database_gsms_details.py @@ -0,0 +1,103 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ConfigureDistributedDatabaseGsmsDetails(object): + """ + Details of the request to configure new global service manager(GSM) instances for the distributed database. + """ + + def __init__(self, **kwargs): + """ + Initializes a new ConfigureDistributedDatabaseGsmsDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param old_gsm_names: + The value to assign to the old_gsm_names property of this ConfigureDistributedDatabaseGsmsDetails. + :type old_gsm_names: list[str] + + :param is_latest_gsm_image: + The value to assign to the is_latest_gsm_image property of this ConfigureDistributedDatabaseGsmsDetails. + :type is_latest_gsm_image: bool + + """ + self.swagger_types = { + 'old_gsm_names': 'list[str]', + 'is_latest_gsm_image': 'bool' + } + self.attribute_map = { + 'old_gsm_names': 'oldGsmNames', + 'is_latest_gsm_image': 'isLatestGsmImage' + } + self._old_gsm_names = None + self._is_latest_gsm_image = None + + @property + def old_gsm_names(self): + """ + **[Required]** Gets the old_gsm_names of this ConfigureDistributedDatabaseGsmsDetails. + Names of old global service manager(GSM) instances corresponding to which new GSM instances need to be configured. + + + :return: The old_gsm_names of this ConfigureDistributedDatabaseGsmsDetails. + :rtype: list[str] + """ + return self._old_gsm_names + + @old_gsm_names.setter + def old_gsm_names(self, old_gsm_names): + """ + Sets the old_gsm_names of this ConfigureDistributedDatabaseGsmsDetails. + Names of old global service manager(GSM) instances corresponding to which new GSM instances need to be configured. + + + :param old_gsm_names: The old_gsm_names of this ConfigureDistributedDatabaseGsmsDetails. + :type: list[str] + """ + self._old_gsm_names = old_gsm_names + + @property + def is_latest_gsm_image(self): + """ + **[Required]** Gets the is_latest_gsm_image of this ConfigureDistributedDatabaseGsmsDetails. + Flag to indicate if new global service manager(GSM) instances shall use latest image or re-use image used by existing + GSM instances. + + + :return: The is_latest_gsm_image of this ConfigureDistributedDatabaseGsmsDetails. + :rtype: bool + """ + return self._is_latest_gsm_image + + @is_latest_gsm_image.setter + def is_latest_gsm_image(self, is_latest_gsm_image): + """ + Sets the is_latest_gsm_image of this ConfigureDistributedDatabaseGsmsDetails. + Flag to indicate if new global service manager(GSM) instances shall use latest image or re-use image used by existing + GSM instances. + + + :param is_latest_gsm_image: The is_latest_gsm_image of this ConfigureDistributedDatabaseGsmsDetails. + :type: bool + """ + self._is_latest_gsm_image = is_latest_gsm_image + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_autonomous_catalog_database_details.py b/src/oci/distributed_database_v26/models/create_autonomous_catalog_database_details.py new file mode 100644 index 0000000000..9018a5d8a5 --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_autonomous_catalog_database_details.py @@ -0,0 +1,101 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateAutonomousCatalogDatabaseDetails(object): + """ + Details for creating a distributed autonomous database catalog. + """ + + #: A constant which can be used with the source property of a CreateAutonomousCatalogDatabaseDetails. + #: This constant has a value of "ADBD_EXISTING_CLUSTER" + SOURCE_ADBD_EXISTING_CLUSTER = "ADBD_EXISTING_CLUSTER" + + def __init__(self, **kwargs): + """ + Initializes a new CreateAutonomousCatalogDatabaseDetails object with values from keyword arguments. This class has the following subclasses and if you are using this class as input + to a service operations then you should favor using a subclass over the base class: + + * :class:`~oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails` + + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source: + The value to assign to the source property of this CreateAutonomousCatalogDatabaseDetails. + Allowed values for this property are: "ADBD_EXISTING_CLUSTER" + :type source: str + + """ + self.swagger_types = { + 'source': 'str' + } + self.attribute_map = { + 'source': 'source' + } + self._source = None + + @staticmethod + def get_subtype(object_dictionary): + """ + Given the hash representation of a subtype of this class, + use the info in the hash to return the class of the subtype. + """ + type = object_dictionary['source'] + + if type == 'ADBD_EXISTING_CLUSTER': + return 'CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails' + else: + return 'CreateAutonomousCatalogDatabaseDetails' + + @property + def source(self): + """ + **[Required]** Gets the source of this CreateAutonomousCatalogDatabaseDetails. + The source of the Globally distributed autonomous database type. + Use ADBD_EXISTING_CLUSTER for an autonomous database on Dedicated Infrastructure that uses a pre-existing cluster. + + Allowed values for this property are: "ADBD_EXISTING_CLUSTER" + + + :return: The source of this CreateAutonomousCatalogDatabaseDetails. + :rtype: str + """ + return self._source + + @source.setter + def source(self, source): + """ + Sets the source of this CreateAutonomousCatalogDatabaseDetails. + The source of the Globally distributed autonomous database type. + Use ADBD_EXISTING_CLUSTER for an autonomous database on Dedicated Infrastructure that uses a pre-existing cluster. + + + :param source: The source of this CreateAutonomousCatalogDatabaseDetails. + :type: str + """ + allowed_values = ["ADBD_EXISTING_CLUSTER"] + if not value_allowed_none_or_none_sentinel(source, allowed_values): + raise ValueError( + f"Invalid value for `source`, must be None or one of {allowed_values}" + ) + self._source = source + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_autonomous_catalog_details.py b/src/oci/distributed_database_v26/models/create_autonomous_catalog_details.py new file mode 100644 index 0000000000..2bcc299e8b --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_autonomous_catalog_details.py @@ -0,0 +1,97 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateAutonomousCatalogDetails(object): + """ + Details required to create a distributed autonomous database catalog. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateAutonomousCatalogDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param original_replica: + The value to assign to the original_replica property of this CreateAutonomousCatalogDetails. + :type original_replica: oci.distributed_database_v26.models.CreateAutonomousCatalogReplicaDetails + + :param data_guard_replicas: + The value to assign to the data_guard_replicas property of this CreateAutonomousCatalogDetails. + :type data_guard_replicas: list[oci.distributed_database_v26.models.CreateAutonomousCatalogReplicaDetails] + + """ + self.swagger_types = { + 'original_replica': 'CreateAutonomousCatalogReplicaDetails', + 'data_guard_replicas': 'list[CreateAutonomousCatalogReplicaDetails]' + } + self.attribute_map = { + 'original_replica': 'originalReplica', + 'data_guard_replicas': 'dataGuardReplicas' + } + self._original_replica = None + self._data_guard_replicas = None + + @property + def original_replica(self): + """ + **[Required]** Gets the original_replica of this CreateAutonomousCatalogDetails. + + :return: The original_replica of this CreateAutonomousCatalogDetails. + :rtype: oci.distributed_database_v26.models.CreateAutonomousCatalogReplicaDetails + """ + return self._original_replica + + @original_replica.setter + def original_replica(self, original_replica): + """ + Sets the original_replica of this CreateAutonomousCatalogDetails. + + :param original_replica: The original_replica of this CreateAutonomousCatalogDetails. + :type: oci.distributed_database_v26.models.CreateAutonomousCatalogReplicaDetails + """ + self._original_replica = original_replica + + @property + def data_guard_replicas(self): + """ + Gets the data_guard_replicas of this CreateAutonomousCatalogDetails. + Details required to create data guard replicas for the catalog. + + + :return: The data_guard_replicas of this CreateAutonomousCatalogDetails. + :rtype: list[oci.distributed_database_v26.models.CreateAutonomousCatalogReplicaDetails] + """ + return self._data_guard_replicas + + @data_guard_replicas.setter + def data_guard_replicas(self, data_guard_replicas): + """ + Sets the data_guard_replicas of this CreateAutonomousCatalogDetails. + Details required to create data guard replicas for the catalog. + + + :param data_guard_replicas: The data_guard_replicas of this CreateAutonomousCatalogDetails. + :type: list[oci.distributed_database_v26.models.CreateAutonomousCatalogReplicaDetails] + """ + self._data_guard_replicas = data_guard_replicas + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_autonomous_catalog_replica_details.py b/src/oci/distributed_database_v26/models/create_autonomous_catalog_replica_details.py new file mode 100644 index 0000000000..f0919b7552 --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_autonomous_catalog_replica_details.py @@ -0,0 +1,101 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateAutonomousCatalogReplicaDetails(object): + """ + Details required to create a catalog replica. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateAutonomousCatalogReplicaDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this CreateAutonomousCatalogReplicaDetails. + :type name: str + + :param database: + The value to assign to the database property of this CreateAutonomousCatalogReplicaDetails. + :type database: oci.distributed_database_v26.models.CreateAutonomousCatalogDatabaseDetails + + """ + self.swagger_types = { + 'name': 'str', + 'database': 'CreateAutonomousCatalogDatabaseDetails' + } + self.attribute_map = { + 'name': 'name', + 'database': 'database' + } + self._name = None + self._database = None + + @property + def name(self): + """ + **[Required]** Gets the name of this CreateAutonomousCatalogReplicaDetails. + The name of the catalog replica. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this CreateAutonomousCatalogReplicaDetails. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this CreateAutonomousCatalogReplicaDetails. + The name of the catalog replica. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this CreateAutonomousCatalogReplicaDetails. + :type: str + """ + self._name = name + + @property + def database(self): + """ + **[Required]** Gets the database of this CreateAutonomousCatalogReplicaDetails. + + :return: The database of this CreateAutonomousCatalogReplicaDetails. + :rtype: oci.distributed_database_v26.models.CreateAutonomousCatalogDatabaseDetails + """ + return self._database + + @database.setter + def database(self, database): + """ + Sets the database of this CreateAutonomousCatalogReplicaDetails. + + :param database: The database of this CreateAutonomousCatalogReplicaDetails. + :type: oci.distributed_database_v26.models.CreateAutonomousCatalogDatabaseDetails + """ + self._database = database + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_autonomous_composite_data_guard_shard_space_details.py b/src/oci/distributed_database_v26/models/create_autonomous_composite_data_guard_shard_space_details.py new file mode 100644 index 0000000000..c4c7ff7cdc --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_autonomous_composite_data_guard_shard_space_details.py @@ -0,0 +1,163 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateAutonomousCompositeDataGuardShardSpaceDetails(object): + """ + Details required to create a composite data guard shard space for a Globally distributed autonomous database. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateAutonomousCompositeDataGuardShardSpaceDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this CreateAutonomousCompositeDataGuardShardSpaceDetails. + :type name: str + + :param chunk_count: + The value to assign to the chunk_count property of this CreateAutonomousCompositeDataGuardShardSpaceDetails. + :type chunk_count: int + + :param original_replica: + The value to assign to the original_replica property of this CreateAutonomousCompositeDataGuardShardSpaceDetails. + :type original_replica: oci.distributed_database_v26.models.CreateAutonomousCompositeDataGuardShardSpaceReplicaDetails + + :param data_guard_replicas: + The value to assign to the data_guard_replicas property of this CreateAutonomousCompositeDataGuardShardSpaceDetails. + :type data_guard_replicas: list[oci.distributed_database_v26.models.CreateAutonomousCompositeDataGuardShardSpaceReplicaDetails] + + """ + self.swagger_types = { + 'name': 'str', + 'chunk_count': 'int', + 'original_replica': 'CreateAutonomousCompositeDataGuardShardSpaceReplicaDetails', + 'data_guard_replicas': 'list[CreateAutonomousCompositeDataGuardShardSpaceReplicaDetails]' + } + self.attribute_map = { + 'name': 'name', + 'chunk_count': 'chunkCount', + 'original_replica': 'originalReplica', + 'data_guard_replicas': 'dataGuardReplicas' + } + self._name = None + self._chunk_count = None + self._original_replica = None + self._data_guard_replicas = None + + @property + def name(self): + """ + **[Required]** Gets the name of this CreateAutonomousCompositeDataGuardShardSpaceDetails. + The name of shard space. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this CreateAutonomousCompositeDataGuardShardSpaceDetails. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this CreateAutonomousCompositeDataGuardShardSpaceDetails. + The name of shard space. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this CreateAutonomousCompositeDataGuardShardSpaceDetails. + :type: str + """ + self._name = name + + @property + def chunk_count(self): + """ + **[Required]** Gets the chunk_count of this CreateAutonomousCompositeDataGuardShardSpaceDetails. + Count of chunks associated with the shard space. + + + :return: The chunk_count of this CreateAutonomousCompositeDataGuardShardSpaceDetails. + :rtype: int + """ + return self._chunk_count + + @chunk_count.setter + def chunk_count(self, chunk_count): + """ + Sets the chunk_count of this CreateAutonomousCompositeDataGuardShardSpaceDetails. + Count of chunks associated with the shard space. + + + :param chunk_count: The chunk_count of this CreateAutonomousCompositeDataGuardShardSpaceDetails. + :type: int + """ + self._chunk_count = chunk_count + + @property + def original_replica(self): + """ + **[Required]** Gets the original_replica of this CreateAutonomousCompositeDataGuardShardSpaceDetails. + + :return: The original_replica of this CreateAutonomousCompositeDataGuardShardSpaceDetails. + :rtype: oci.distributed_database_v26.models.CreateAutonomousCompositeDataGuardShardSpaceReplicaDetails + """ + return self._original_replica + + @original_replica.setter + def original_replica(self, original_replica): + """ + Sets the original_replica of this CreateAutonomousCompositeDataGuardShardSpaceDetails. + + :param original_replica: The original_replica of this CreateAutonomousCompositeDataGuardShardSpaceDetails. + :type: oci.distributed_database_v26.models.CreateAutonomousCompositeDataGuardShardSpaceReplicaDetails + """ + self._original_replica = original_replica + + @property + def data_guard_replicas(self): + """ + Gets the data_guard_replicas of this CreateAutonomousCompositeDataGuardShardSpaceDetails. + The details of data guard replica for the shard being created. + + + :return: The data_guard_replicas of this CreateAutonomousCompositeDataGuardShardSpaceDetails. + :rtype: list[oci.distributed_database_v26.models.CreateAutonomousCompositeDataGuardShardSpaceReplicaDetails] + """ + return self._data_guard_replicas + + @data_guard_replicas.setter + def data_guard_replicas(self, data_guard_replicas): + """ + Sets the data_guard_replicas of this CreateAutonomousCompositeDataGuardShardSpaceDetails. + The details of data guard replica for the shard being created. + + + :param data_guard_replicas: The data_guard_replicas of this CreateAutonomousCompositeDataGuardShardSpaceDetails. + :type: list[oci.distributed_database_v26.models.CreateAutonomousCompositeDataGuardShardSpaceReplicaDetails] + """ + self._data_guard_replicas = data_guard_replicas + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_autonomous_composite_data_guard_shard_space_replica_details.py b/src/oci/distributed_database_v26/models/create_autonomous_composite_data_guard_shard_space_replica_details.py new file mode 100644 index 0000000000..3169a79d0b --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_autonomous_composite_data_guard_shard_space_replica_details.py @@ -0,0 +1,105 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateAutonomousCompositeDataGuardShardSpaceReplicaDetails(object): + """ + Details required to create a composite data guard shard space replica for a Globally distributed autonomous database. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateAutonomousCompositeDataGuardShardSpaceReplicaDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this CreateAutonomousCompositeDataGuardShardSpaceReplicaDetails. + :type name: str + + :param databases: + The value to assign to the databases property of this CreateAutonomousCompositeDataGuardShardSpaceReplicaDetails. + :type databases: list[oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseShardDatabaseDetails] + + """ + self.swagger_types = { + 'name': 'str', + 'databases': 'list[CreateDistributedAutonomousDatabaseShardDatabaseDetails]' + } + self.attribute_map = { + 'name': 'name', + 'databases': 'databases' + } + self._name = None + self._databases = None + + @property + def name(self): + """ + **[Required]** Gets the name of this CreateAutonomousCompositeDataGuardShardSpaceReplicaDetails. + The name of shard space replica. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this CreateAutonomousCompositeDataGuardShardSpaceReplicaDetails. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this CreateAutonomousCompositeDataGuardShardSpaceReplicaDetails. + The name of shard space replica. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this CreateAutonomousCompositeDataGuardShardSpaceReplicaDetails. + :type: str + """ + self._name = name + + @property + def databases(self): + """ + **[Required]** Gets the databases of this CreateAutonomousCompositeDataGuardShardSpaceReplicaDetails. + The details of composite data guard shard space replica databases. + + + :return: The databases of this CreateAutonomousCompositeDataGuardShardSpaceReplicaDetails. + :rtype: list[oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseShardDatabaseDetails] + """ + return self._databases + + @databases.setter + def databases(self, databases): + """ + Sets the databases of this CreateAutonomousCompositeDataGuardShardSpaceReplicaDetails. + The details of composite data guard shard space replica databases. + + + :param databases: The databases of this CreateAutonomousCompositeDataGuardShardSpaceReplicaDetails. + :type: list[oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseShardDatabaseDetails] + """ + self._databases = databases + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_autonomous_composite_raft_shard_space_details.py b/src/oci/distributed_database_v26/models/create_autonomous_composite_raft_shard_space_details.py new file mode 100644 index 0000000000..d95e9d9237 --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_autonomous_composite_raft_shard_space_details.py @@ -0,0 +1,167 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateAutonomousCompositeRaftShardSpaceDetails(object): + """ + Details required to create a composite raft shard space for a Globally distributed autonomous database. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateAutonomousCompositeRaftShardSpaceDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this CreateAutonomousCompositeRaftShardSpaceDetails. + :type name: str + + :param chunk_count: + The value to assign to the chunk_count property of this CreateAutonomousCompositeRaftShardSpaceDetails. + :type chunk_count: int + + :param replication_unit_count: + The value to assign to the replication_unit_count property of this CreateAutonomousCompositeRaftShardSpaceDetails. + :type replication_unit_count: int + + :param raft_clusters: + The value to assign to the raft_clusters property of this CreateAutonomousCompositeRaftShardSpaceDetails. + :type raft_clusters: list[oci.distributed_database_v26.models.CreateAutonomousCompositeShardSpaceRaftClusterDetails] + + """ + self.swagger_types = { + 'name': 'str', + 'chunk_count': 'int', + 'replication_unit_count': 'int', + 'raft_clusters': 'list[CreateAutonomousCompositeShardSpaceRaftClusterDetails]' + } + self.attribute_map = { + 'name': 'name', + 'chunk_count': 'chunkCount', + 'replication_unit_count': 'replicationUnitCount', + 'raft_clusters': 'raftClusters' + } + self._name = None + self._chunk_count = None + self._replication_unit_count = None + self._raft_clusters = None + + @property + def name(self): + """ + **[Required]** Gets the name of this CreateAutonomousCompositeRaftShardSpaceDetails. + The name of shard space. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this CreateAutonomousCompositeRaftShardSpaceDetails. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this CreateAutonomousCompositeRaftShardSpaceDetails. + The name of shard space. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this CreateAutonomousCompositeRaftShardSpaceDetails. + :type: str + """ + self._name = name + + @property + def chunk_count(self): + """ + **[Required]** Gets the chunk_count of this CreateAutonomousCompositeRaftShardSpaceDetails. + Count of chunks associated with the shard space. + + + :return: The chunk_count of this CreateAutonomousCompositeRaftShardSpaceDetails. + :rtype: int + """ + return self._chunk_count + + @chunk_count.setter + def chunk_count(self, chunk_count): + """ + Sets the chunk_count of this CreateAutonomousCompositeRaftShardSpaceDetails. + Count of chunks associated with the shard space. + + + :param chunk_count: The chunk_count of this CreateAutonomousCompositeRaftShardSpaceDetails. + :type: int + """ + self._chunk_count = chunk_count + + @property + def replication_unit_count(self): + """ + **[Required]** Gets the replication_unit_count of this CreateAutonomousCompositeRaftShardSpaceDetails. + Number of replication units in the shard space. + + + :return: The replication_unit_count of this CreateAutonomousCompositeRaftShardSpaceDetails. + :rtype: int + """ + return self._replication_unit_count + + @replication_unit_count.setter + def replication_unit_count(self, replication_unit_count): + """ + Sets the replication_unit_count of this CreateAutonomousCompositeRaftShardSpaceDetails. + Number of replication units in the shard space. + + + :param replication_unit_count: The replication_unit_count of this CreateAutonomousCompositeRaftShardSpaceDetails. + :type: int + """ + self._replication_unit_count = replication_unit_count + + @property + def raft_clusters(self): + """ + **[Required]** Gets the raft_clusters of this CreateAutonomousCompositeRaftShardSpaceDetails. + The details of raft clusters associated with the shard space. + + + :return: The raft_clusters of this CreateAutonomousCompositeRaftShardSpaceDetails. + :rtype: list[oci.distributed_database_v26.models.CreateAutonomousCompositeShardSpaceRaftClusterDetails] + """ + return self._raft_clusters + + @raft_clusters.setter + def raft_clusters(self, raft_clusters): + """ + Sets the raft_clusters of this CreateAutonomousCompositeRaftShardSpaceDetails. + The details of raft clusters associated with the shard space. + + + :param raft_clusters: The raft_clusters of this CreateAutonomousCompositeRaftShardSpaceDetails. + :type: list[oci.distributed_database_v26.models.CreateAutonomousCompositeShardSpaceRaftClusterDetails] + """ + self._raft_clusters = raft_clusters + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_autonomous_composite_shard_space_raft_cluster_details.py b/src/oci/distributed_database_v26/models/create_autonomous_composite_shard_space_raft_cluster_details.py new file mode 100644 index 0000000000..b177a6456e --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_autonomous_composite_shard_space_raft_cluster_details.py @@ -0,0 +1,214 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateAutonomousCompositeShardSpaceRaftClusterDetails(object): + """ + Details required to create raft clusters for a composite shard space. + """ + + #: A constant which can be used with the ru_mode property of a CreateAutonomousCompositeShardSpaceRaftClusterDetails. + #: This constant has a value of "READ_ONLY" + RU_MODE_READ_ONLY = "READ_ONLY" + + #: A constant which can be used with the ru_mode property of a CreateAutonomousCompositeShardSpaceRaftClusterDetails. + #: This constant has a value of "READ_WRITE" + RU_MODE_READ_WRITE = "READ_WRITE" + + def __init__(self, **kwargs): + """ + Initializes a new CreateAutonomousCompositeShardSpaceRaftClusterDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this CreateAutonomousCompositeShardSpaceRaftClusterDetails. + :type name: str + + :param replication_factor: + The value to assign to the replication_factor property of this CreateAutonomousCompositeShardSpaceRaftClusterDetails. + :type replication_factor: int + + :param witness_count: + The value to assign to the witness_count property of this CreateAutonomousCompositeShardSpaceRaftClusterDetails. + :type witness_count: int + + :param ru_mode: + The value to assign to the ru_mode property of this CreateAutonomousCompositeShardSpaceRaftClusterDetails. + Allowed values for this property are: "READ_ONLY", "READ_WRITE" + :type ru_mode: str + + :param databases: + The value to assign to the databases property of this CreateAutonomousCompositeShardSpaceRaftClusterDetails. + :type databases: list[oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseShardDatabaseDetails] + + """ + self.swagger_types = { + 'name': 'str', + 'replication_factor': 'int', + 'witness_count': 'int', + 'ru_mode': 'str', + 'databases': 'list[CreateDistributedAutonomousDatabaseShardDatabaseDetails]' + } + self.attribute_map = { + 'name': 'name', + 'replication_factor': 'replicationFactor', + 'witness_count': 'witnessCount', + 'ru_mode': 'ruMode', + 'databases': 'databases' + } + self._name = None + self._replication_factor = None + self._witness_count = None + self._ru_mode = None + self._databases = None + + @property + def name(self): + """ + **[Required]** Gets the name of this CreateAutonomousCompositeShardSpaceRaftClusterDetails. + The name of raft cluster. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this CreateAutonomousCompositeShardSpaceRaftClusterDetails. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this CreateAutonomousCompositeShardSpaceRaftClusterDetails. + The name of raft cluster. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this CreateAutonomousCompositeShardSpaceRaftClusterDetails. + :type: str + """ + self._name = name + + @property + def replication_factor(self): + """ + **[Required]** Gets the replication_factor of this CreateAutonomousCompositeShardSpaceRaftClusterDetails. + Replication factor associated with the raft cluster. + + + :return: The replication_factor of this CreateAutonomousCompositeShardSpaceRaftClusterDetails. + :rtype: int + """ + return self._replication_factor + + @replication_factor.setter + def replication_factor(self, replication_factor): + """ + Sets the replication_factor of this CreateAutonomousCompositeShardSpaceRaftClusterDetails. + Replication factor associated with the raft cluster. + + + :param replication_factor: The replication_factor of this CreateAutonomousCompositeShardSpaceRaftClusterDetails. + :type: int + """ + self._replication_factor = replication_factor + + @property + def witness_count(self): + """ + **[Required]** Gets the witness_count of this CreateAutonomousCompositeShardSpaceRaftClusterDetails. + Witnesses RU count associated with the raft cluster. + + + :return: The witness_count of this CreateAutonomousCompositeShardSpaceRaftClusterDetails. + :rtype: int + """ + return self._witness_count + + @witness_count.setter + def witness_count(self, witness_count): + """ + Sets the witness_count of this CreateAutonomousCompositeShardSpaceRaftClusterDetails. + Witnesses RU count associated with the raft cluster. + + + :param witness_count: The witness_count of this CreateAutonomousCompositeShardSpaceRaftClusterDetails. + :type: int + """ + self._witness_count = witness_count + + @property + def ru_mode(self): + """ + **[Required]** Gets the ru_mode of this CreateAutonomousCompositeShardSpaceRaftClusterDetails. + Replication factor associated with the raft cluster. + + Allowed values for this property are: "READ_ONLY", "READ_WRITE" + + + :return: The ru_mode of this CreateAutonomousCompositeShardSpaceRaftClusterDetails. + :rtype: str + """ + return self._ru_mode + + @ru_mode.setter + def ru_mode(self, ru_mode): + """ + Sets the ru_mode of this CreateAutonomousCompositeShardSpaceRaftClusterDetails. + Replication factor associated with the raft cluster. + + + :param ru_mode: The ru_mode of this CreateAutonomousCompositeShardSpaceRaftClusterDetails. + :type: str + """ + allowed_values = ["READ_ONLY", "READ_WRITE"] + if not value_allowed_none_or_none_sentinel(ru_mode, allowed_values): + raise ValueError( + f"Invalid value for `ru_mode`, must be None or one of {allowed_values}" + ) + self._ru_mode = ru_mode + + @property + def databases(self): + """ + **[Required]** Gets the databases of this CreateAutonomousCompositeShardSpaceRaftClusterDetails. + The details of databases associated with the composite shard space raft cluster. + + + :return: The databases of this CreateAutonomousCompositeShardSpaceRaftClusterDetails. + :rtype: list[oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseShardDatabaseDetails] + """ + return self._databases + + @databases.setter + def databases(self, databases): + """ + Sets the databases of this CreateAutonomousCompositeShardSpaceRaftClusterDetails. + The details of databases associated with the composite shard space raft cluster. + + + :param databases: The databases of this CreateAutonomousCompositeShardSpaceRaftClusterDetails. + :type: list[oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseShardDatabaseDetails] + """ + self._databases = databases + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_autonomous_system_data_guard_database_details.py b/src/oci/distributed_database_v26/models/create_autonomous_system_data_guard_database_details.py new file mode 100644 index 0000000000..45e9db6675 --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_autonomous_system_data_guard_database_details.py @@ -0,0 +1,97 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateAutonomousSystemDataGuardDatabaseDetails(object): + """ + Details required to create a system data guard shard. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateAutonomousSystemDataGuardDatabaseDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param original_replica: + The value to assign to the original_replica property of this CreateAutonomousSystemDataGuardDatabaseDetails. + :type original_replica: oci.distributed_database_v26.models.CreateAutonomousSystemDataGuardReplicaDetails + + :param data_guard_replicas: + The value to assign to the data_guard_replicas property of this CreateAutonomousSystemDataGuardDatabaseDetails. + :type data_guard_replicas: list[oci.distributed_database_v26.models.CreateAutonomousSystemDataGuardReplicaDetails] + + """ + self.swagger_types = { + 'original_replica': 'CreateAutonomousSystemDataGuardReplicaDetails', + 'data_guard_replicas': 'list[CreateAutonomousSystemDataGuardReplicaDetails]' + } + self.attribute_map = { + 'original_replica': 'originalReplica', + 'data_guard_replicas': 'dataGuardReplicas' + } + self._original_replica = None + self._data_guard_replicas = None + + @property + def original_replica(self): + """ + **[Required]** Gets the original_replica of this CreateAutonomousSystemDataGuardDatabaseDetails. + + :return: The original_replica of this CreateAutonomousSystemDataGuardDatabaseDetails. + :rtype: oci.distributed_database_v26.models.CreateAutonomousSystemDataGuardReplicaDetails + """ + return self._original_replica + + @original_replica.setter + def original_replica(self, original_replica): + """ + Sets the original_replica of this CreateAutonomousSystemDataGuardDatabaseDetails. + + :param original_replica: The original_replica of this CreateAutonomousSystemDataGuardDatabaseDetails. + :type: oci.distributed_database_v26.models.CreateAutonomousSystemDataGuardReplicaDetails + """ + self._original_replica = original_replica + + @property + def data_guard_replicas(self): + """ + Gets the data_guard_replicas of this CreateAutonomousSystemDataGuardDatabaseDetails. + The details required to create system data guard replicas. + + + :return: The data_guard_replicas of this CreateAutonomousSystemDataGuardDatabaseDetails. + :rtype: list[oci.distributed_database_v26.models.CreateAutonomousSystemDataGuardReplicaDetails] + """ + return self._data_guard_replicas + + @data_guard_replicas.setter + def data_guard_replicas(self, data_guard_replicas): + """ + Sets the data_guard_replicas of this CreateAutonomousSystemDataGuardDatabaseDetails. + The details required to create system data guard replicas. + + + :param data_guard_replicas: The data_guard_replicas of this CreateAutonomousSystemDataGuardDatabaseDetails. + :type: list[oci.distributed_database_v26.models.CreateAutonomousSystemDataGuardReplicaDetails] + """ + self._data_guard_replicas = data_guard_replicas + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_autonomous_system_data_guard_replica_details.py b/src/oci/distributed_database_v26/models/create_autonomous_system_data_guard_replica_details.py new file mode 100644 index 0000000000..5e1597c587 --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_autonomous_system_data_guard_replica_details.py @@ -0,0 +1,105 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateAutonomousSystemDataGuardReplicaDetails(object): + """ + Details required to create a system data guard replica. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateAutonomousSystemDataGuardReplicaDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this CreateAutonomousSystemDataGuardReplicaDetails. + :type name: str + + :param databases: + The value to assign to the databases property of this CreateAutonomousSystemDataGuardReplicaDetails. + :type databases: list[oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseShardDatabaseDetails] + + """ + self.swagger_types = { + 'name': 'str', + 'databases': 'list[CreateDistributedAutonomousDatabaseShardDatabaseDetails]' + } + self.attribute_map = { + 'name': 'name', + 'databases': 'databases' + } + self._name = None + self._databases = None + + @property + def name(self): + """ + **[Required]** Gets the name of this CreateAutonomousSystemDataGuardReplicaDetails. + The name of the data guard replica. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this CreateAutonomousSystemDataGuardReplicaDetails. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this CreateAutonomousSystemDataGuardReplicaDetails. + The name of the data guard replica. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this CreateAutonomousSystemDataGuardReplicaDetails. + :type: str + """ + self._name = name + + @property + def databases(self): + """ + **[Required]** Gets the databases of this CreateAutonomousSystemDataGuardReplicaDetails. + Details of the databases associated with the system data guard replica. + + + :return: The databases of this CreateAutonomousSystemDataGuardReplicaDetails. + :rtype: list[oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseShardDatabaseDetails] + """ + return self._databases + + @databases.setter + def databases(self, databases): + """ + Sets the databases of this CreateAutonomousSystemDataGuardReplicaDetails. + Details of the databases associated with the system data guard replica. + + + :param databases: The databases of this CreateAutonomousSystemDataGuardReplicaDetails. + :type: list[oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseShardDatabaseDetails] + """ + self._databases = databases + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_autonomous_system_raft_cluster_details.py b/src/oci/distributed_database_v26/models/create_autonomous_system_raft_cluster_details.py new file mode 100644 index 0000000000..d1f39acbcf --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_autonomous_system_raft_cluster_details.py @@ -0,0 +1,214 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateAutonomousSystemRaftClusterDetails(object): + """ + Details required to create system raft cluster. + """ + + #: A constant which can be used with the ru_mode property of a CreateAutonomousSystemRaftClusterDetails. + #: This constant has a value of "READ_ONLY" + RU_MODE_READ_ONLY = "READ_ONLY" + + #: A constant which can be used with the ru_mode property of a CreateAutonomousSystemRaftClusterDetails. + #: This constant has a value of "READ_WRITE" + RU_MODE_READ_WRITE = "READ_WRITE" + + def __init__(self, **kwargs): + """ + Initializes a new CreateAutonomousSystemRaftClusterDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this CreateAutonomousSystemRaftClusterDetails. + :type name: str + + :param replication_factor: + The value to assign to the replication_factor property of this CreateAutonomousSystemRaftClusterDetails. + :type replication_factor: int + + :param witness_count: + The value to assign to the witness_count property of this CreateAutonomousSystemRaftClusterDetails. + :type witness_count: int + + :param ru_mode: + The value to assign to the ru_mode property of this CreateAutonomousSystemRaftClusterDetails. + Allowed values for this property are: "READ_ONLY", "READ_WRITE" + :type ru_mode: str + + :param databases: + The value to assign to the databases property of this CreateAutonomousSystemRaftClusterDetails. + :type databases: list[oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseShardDatabaseDetails] + + """ + self.swagger_types = { + 'name': 'str', + 'replication_factor': 'int', + 'witness_count': 'int', + 'ru_mode': 'str', + 'databases': 'list[CreateDistributedAutonomousDatabaseShardDatabaseDetails]' + } + self.attribute_map = { + 'name': 'name', + 'replication_factor': 'replicationFactor', + 'witness_count': 'witnessCount', + 'ru_mode': 'ruMode', + 'databases': 'databases' + } + self._name = None + self._replication_factor = None + self._witness_count = None + self._ru_mode = None + self._databases = None + + @property + def name(self): + """ + **[Required]** Gets the name of this CreateAutonomousSystemRaftClusterDetails. + The name of raft cluster. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this CreateAutonomousSystemRaftClusterDetails. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this CreateAutonomousSystemRaftClusterDetails. + The name of raft cluster. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this CreateAutonomousSystemRaftClusterDetails. + :type: str + """ + self._name = name + + @property + def replication_factor(self): + """ + **[Required]** Gets the replication_factor of this CreateAutonomousSystemRaftClusterDetails. + Replication factor associated with the raft cluster. + + + :return: The replication_factor of this CreateAutonomousSystemRaftClusterDetails. + :rtype: int + """ + return self._replication_factor + + @replication_factor.setter + def replication_factor(self, replication_factor): + """ + Sets the replication_factor of this CreateAutonomousSystemRaftClusterDetails. + Replication factor associated with the raft cluster. + + + :param replication_factor: The replication_factor of this CreateAutonomousSystemRaftClusterDetails. + :type: int + """ + self._replication_factor = replication_factor + + @property + def witness_count(self): + """ + **[Required]** Gets the witness_count of this CreateAutonomousSystemRaftClusterDetails. + Witnesses RU count associated with the raft cluster. + + + :return: The witness_count of this CreateAutonomousSystemRaftClusterDetails. + :rtype: int + """ + return self._witness_count + + @witness_count.setter + def witness_count(self, witness_count): + """ + Sets the witness_count of this CreateAutonomousSystemRaftClusterDetails. + Witnesses RU count associated with the raft cluster. + + + :param witness_count: The witness_count of this CreateAutonomousSystemRaftClusterDetails. + :type: int + """ + self._witness_count = witness_count + + @property + def ru_mode(self): + """ + **[Required]** Gets the ru_mode of this CreateAutonomousSystemRaftClusterDetails. + Replication factor associated with the raft cluster. + + Allowed values for this property are: "READ_ONLY", "READ_WRITE" + + + :return: The ru_mode of this CreateAutonomousSystemRaftClusterDetails. + :rtype: str + """ + return self._ru_mode + + @ru_mode.setter + def ru_mode(self, ru_mode): + """ + Sets the ru_mode of this CreateAutonomousSystemRaftClusterDetails. + Replication factor associated with the raft cluster. + + + :param ru_mode: The ru_mode of this CreateAutonomousSystemRaftClusterDetails. + :type: str + """ + allowed_values = ["READ_ONLY", "READ_WRITE"] + if not value_allowed_none_or_none_sentinel(ru_mode, allowed_values): + raise ValueError( + f"Invalid value for `ru_mode`, must be None or one of {allowed_values}" + ) + self._ru_mode = ru_mode + + @property + def databases(self): + """ + **[Required]** Gets the databases of this CreateAutonomousSystemRaftClusterDetails. + Details of the databases associated with the system raft cluster. + + + :return: The databases of this CreateAutonomousSystemRaftClusterDetails. + :rtype: list[oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseShardDatabaseDetails] + """ + return self._databases + + @databases.setter + def databases(self, databases): + """ + Sets the databases of this CreateAutonomousSystemRaftClusterDetails. + Details of the databases associated with the system raft cluster. + + + :param databases: The databases of this CreateAutonomousSystemRaftClusterDetails. + :type: list[oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseShardDatabaseDetails] + """ + self._databases = databases + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_autonomous_user_shard_space_details.py b/src/oci/distributed_database_v26/models/create_autonomous_user_shard_space_details.py new file mode 100644 index 0000000000..0e69181c5b --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_autonomous_user_shard_space_details.py @@ -0,0 +1,132 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateAutonomousUserShardSpaceDetails(object): + """ + Details required to create a user shard space. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateAutonomousUserShardSpaceDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this CreateAutonomousUserShardSpaceDetails. + :type name: str + + :param original_replica: + The value to assign to the original_replica property of this CreateAutonomousUserShardSpaceDetails. + :type original_replica: oci.distributed_database_v26.models.CreateAutonomousUserShardSpaceReplicaDetails + + :param data_guard_replicas: + The value to assign to the data_guard_replicas property of this CreateAutonomousUserShardSpaceDetails. + :type data_guard_replicas: list[oci.distributed_database_v26.models.CreateAutonomousUserShardSpaceReplicaDetails] + + """ + self.swagger_types = { + 'name': 'str', + 'original_replica': 'CreateAutonomousUserShardSpaceReplicaDetails', + 'data_guard_replicas': 'list[CreateAutonomousUserShardSpaceReplicaDetails]' + } + self.attribute_map = { + 'name': 'name', + 'original_replica': 'originalReplica', + 'data_guard_replicas': 'dataGuardReplicas' + } + self._name = None + self._original_replica = None + self._data_guard_replicas = None + + @property + def name(self): + """ + **[Required]** Gets the name of this CreateAutonomousUserShardSpaceDetails. + The name of the user shard space. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this CreateAutonomousUserShardSpaceDetails. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this CreateAutonomousUserShardSpaceDetails. + The name of the user shard space. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this CreateAutonomousUserShardSpaceDetails. + :type: str + """ + self._name = name + + @property + def original_replica(self): + """ + **[Required]** Gets the original_replica of this CreateAutonomousUserShardSpaceDetails. + + :return: The original_replica of this CreateAutonomousUserShardSpaceDetails. + :rtype: oci.distributed_database_v26.models.CreateAutonomousUserShardSpaceReplicaDetails + """ + return self._original_replica + + @original_replica.setter + def original_replica(self, original_replica): + """ + Sets the original_replica of this CreateAutonomousUserShardSpaceDetails. + + :param original_replica: The original_replica of this CreateAutonomousUserShardSpaceDetails. + :type: oci.distributed_database_v26.models.CreateAutonomousUserShardSpaceReplicaDetails + """ + self._original_replica = original_replica + + @property + def data_guard_replicas(self): + """ + Gets the data_guard_replicas of this CreateAutonomousUserShardSpaceDetails. + Details required to create data guard replicas for the user shard space. + + + :return: The data_guard_replicas of this CreateAutonomousUserShardSpaceDetails. + :rtype: list[oci.distributed_database_v26.models.CreateAutonomousUserShardSpaceReplicaDetails] + """ + return self._data_guard_replicas + + @data_guard_replicas.setter + def data_guard_replicas(self, data_guard_replicas): + """ + Sets the data_guard_replicas of this CreateAutonomousUserShardSpaceDetails. + Details required to create data guard replicas for the user shard space. + + + :param data_guard_replicas: The data_guard_replicas of this CreateAutonomousUserShardSpaceDetails. + :type: list[oci.distributed_database_v26.models.CreateAutonomousUserShardSpaceReplicaDetails] + """ + self._data_guard_replicas = data_guard_replicas + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_autonomous_user_shard_space_replica_details.py b/src/oci/distributed_database_v26/models/create_autonomous_user_shard_space_replica_details.py new file mode 100644 index 0000000000..36a0d5934b --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_autonomous_user_shard_space_replica_details.py @@ -0,0 +1,101 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateAutonomousUserShardSpaceReplicaDetails(object): + """ + Details required to create a user shard space replica. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateAutonomousUserShardSpaceReplicaDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this CreateAutonomousUserShardSpaceReplicaDetails. + :type name: str + + :param database: + The value to assign to the database property of this CreateAutonomousUserShardSpaceReplicaDetails. + :type database: oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseShardDatabaseDetails + + """ + self.swagger_types = { + 'name': 'str', + 'database': 'CreateDistributedAutonomousDatabaseShardDatabaseDetails' + } + self.attribute_map = { + 'name': 'name', + 'database': 'database' + } + self._name = None + self._database = None + + @property + def name(self): + """ + **[Required]** Gets the name of this CreateAutonomousUserShardSpaceReplicaDetails. + The name of the user shard space replica. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this CreateAutonomousUserShardSpaceReplicaDetails. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this CreateAutonomousUserShardSpaceReplicaDetails. + The name of the user shard space replica. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this CreateAutonomousUserShardSpaceReplicaDetails. + :type: str + """ + self._name = name + + @property + def database(self): + """ + **[Required]** Gets the database of this CreateAutonomousUserShardSpaceReplicaDetails. + + :return: The database of this CreateAutonomousUserShardSpaceReplicaDetails. + :rtype: oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseShardDatabaseDetails + """ + return self._database + + @database.setter + def database(self, database): + """ + Sets the database of this CreateAutonomousUserShardSpaceReplicaDetails. + + :param database: The database of this CreateAutonomousUserShardSpaceReplicaDetails. + :type: oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseShardDatabaseDetails + """ + self._database = database + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_composite_data_guard_shard_space_details.py b/src/oci/distributed_database_v26/models/create_composite_data_guard_shard_space_details.py new file mode 100644 index 0000000000..eaad31ce0e --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_composite_data_guard_shard_space_details.py @@ -0,0 +1,163 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateCompositeDataGuardShardSpaceDetails(object): + """ + Globally distributed database composite data guard shard space creation details. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateCompositeDataGuardShardSpaceDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this CreateCompositeDataGuardShardSpaceDetails. + :type name: str + + :param chunk_count: + The value to assign to the chunk_count property of this CreateCompositeDataGuardShardSpaceDetails. + :type chunk_count: int + + :param original_replica: + The value to assign to the original_replica property of this CreateCompositeDataGuardShardSpaceDetails. + :type original_replica: oci.distributed_database_v26.models.CreateCompositeDataGuardShardSpaceReplicaDetails + + :param data_guard_replicas: + The value to assign to the data_guard_replicas property of this CreateCompositeDataGuardShardSpaceDetails. + :type data_guard_replicas: list[oci.distributed_database_v26.models.CreateCompositeDataGuardShardSpaceReplicaDetails] + + """ + self.swagger_types = { + 'name': 'str', + 'chunk_count': 'int', + 'original_replica': 'CreateCompositeDataGuardShardSpaceReplicaDetails', + 'data_guard_replicas': 'list[CreateCompositeDataGuardShardSpaceReplicaDetails]' + } + self.attribute_map = { + 'name': 'name', + 'chunk_count': 'chunkCount', + 'original_replica': 'originalReplica', + 'data_guard_replicas': 'dataGuardReplicas' + } + self._name = None + self._chunk_count = None + self._original_replica = None + self._data_guard_replicas = None + + @property + def name(self): + """ + **[Required]** Gets the name of this CreateCompositeDataGuardShardSpaceDetails. + The name of shard space. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this CreateCompositeDataGuardShardSpaceDetails. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this CreateCompositeDataGuardShardSpaceDetails. + The name of shard space. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this CreateCompositeDataGuardShardSpaceDetails. + :type: str + """ + self._name = name + + @property + def chunk_count(self): + """ + **[Required]** Gets the chunk_count of this CreateCompositeDataGuardShardSpaceDetails. + Count of chunks associated with the shard space. + + + :return: The chunk_count of this CreateCompositeDataGuardShardSpaceDetails. + :rtype: int + """ + return self._chunk_count + + @chunk_count.setter + def chunk_count(self, chunk_count): + """ + Sets the chunk_count of this CreateCompositeDataGuardShardSpaceDetails. + Count of chunks associated with the shard space. + + + :param chunk_count: The chunk_count of this CreateCompositeDataGuardShardSpaceDetails. + :type: int + """ + self._chunk_count = chunk_count + + @property + def original_replica(self): + """ + **[Required]** Gets the original_replica of this CreateCompositeDataGuardShardSpaceDetails. + + :return: The original_replica of this CreateCompositeDataGuardShardSpaceDetails. + :rtype: oci.distributed_database_v26.models.CreateCompositeDataGuardShardSpaceReplicaDetails + """ + return self._original_replica + + @original_replica.setter + def original_replica(self, original_replica): + """ + Sets the original_replica of this CreateCompositeDataGuardShardSpaceDetails. + + :param original_replica: The original_replica of this CreateCompositeDataGuardShardSpaceDetails. + :type: oci.distributed_database_v26.models.CreateCompositeDataGuardShardSpaceReplicaDetails + """ + self._original_replica = original_replica + + @property + def data_guard_replicas(self): + """ + Gets the data_guard_replicas of this CreateCompositeDataGuardShardSpaceDetails. + The details of data guard replica for the shard being created. + + + :return: The data_guard_replicas of this CreateCompositeDataGuardShardSpaceDetails. + :rtype: list[oci.distributed_database_v26.models.CreateCompositeDataGuardShardSpaceReplicaDetails] + """ + return self._data_guard_replicas + + @data_guard_replicas.setter + def data_guard_replicas(self, data_guard_replicas): + """ + Sets the data_guard_replicas of this CreateCompositeDataGuardShardSpaceDetails. + The details of data guard replica for the shard being created. + + + :param data_guard_replicas: The data_guard_replicas of this CreateCompositeDataGuardShardSpaceDetails. + :type: list[oci.distributed_database_v26.models.CreateCompositeDataGuardShardSpaceReplicaDetails] + """ + self._data_guard_replicas = data_guard_replicas + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_composite_data_guard_shard_space_replica_details.py b/src/oci/distributed_database_v26/models/create_composite_data_guard_shard_space_replica_details.py new file mode 100644 index 0000000000..2b56e91dc9 --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_composite_data_guard_shard_space_replica_details.py @@ -0,0 +1,105 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateCompositeDataGuardShardSpaceReplicaDetails(object): + """ + Globally distributed database composite data guard shard space replica creation details. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateCompositeDataGuardShardSpaceReplicaDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this CreateCompositeDataGuardShardSpaceReplicaDetails. + :type name: str + + :param databases: + The value to assign to the databases property of this CreateCompositeDataGuardShardSpaceReplicaDetails. + :type databases: list[oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseDetails] + + """ + self.swagger_types = { + 'name': 'str', + 'databases': 'list[CreateDistributedDatabaseShardDatabaseDetails]' + } + self.attribute_map = { + 'name': 'name', + 'databases': 'databases' + } + self._name = None + self._databases = None + + @property + def name(self): + """ + **[Required]** Gets the name of this CreateCompositeDataGuardShardSpaceReplicaDetails. + The name of shard space replica. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this CreateCompositeDataGuardShardSpaceReplicaDetails. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this CreateCompositeDataGuardShardSpaceReplicaDetails. + The name of shard space replica. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this CreateCompositeDataGuardShardSpaceReplicaDetails. + :type: str + """ + self._name = name + + @property + def databases(self): + """ + **[Required]** Gets the databases of this CreateCompositeDataGuardShardSpaceReplicaDetails. + The details of composite data guard shard space replica databases. + + + :return: The databases of this CreateCompositeDataGuardShardSpaceReplicaDetails. + :rtype: list[oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseDetails] + """ + return self._databases + + @databases.setter + def databases(self, databases): + """ + Sets the databases of this CreateCompositeDataGuardShardSpaceReplicaDetails. + The details of composite data guard shard space replica databases. + + + :param databases: The databases of this CreateCompositeDataGuardShardSpaceReplicaDetails. + :type: list[oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseDetails] + """ + self._databases = databases + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_composite_raft_shard_space_details.py b/src/oci/distributed_database_v26/models/create_composite_raft_shard_space_details.py new file mode 100644 index 0000000000..0ca2897bc9 --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_composite_raft_shard_space_details.py @@ -0,0 +1,167 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateCompositeRaftShardSpaceDetails(object): + """ + Globally distributed database composite raft shard space creation details. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateCompositeRaftShardSpaceDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this CreateCompositeRaftShardSpaceDetails. + :type name: str + + :param chunk_count: + The value to assign to the chunk_count property of this CreateCompositeRaftShardSpaceDetails. + :type chunk_count: int + + :param replication_unit_count: + The value to assign to the replication_unit_count property of this CreateCompositeRaftShardSpaceDetails. + :type replication_unit_count: int + + :param raft_clusters: + The value to assign to the raft_clusters property of this CreateCompositeRaftShardSpaceDetails. + :type raft_clusters: list[oci.distributed_database_v26.models.CreateCompositeShardSpaceRaftClusterDetails] + + """ + self.swagger_types = { + 'name': 'str', + 'chunk_count': 'int', + 'replication_unit_count': 'int', + 'raft_clusters': 'list[CreateCompositeShardSpaceRaftClusterDetails]' + } + self.attribute_map = { + 'name': 'name', + 'chunk_count': 'chunkCount', + 'replication_unit_count': 'replicationUnitCount', + 'raft_clusters': 'raftClusters' + } + self._name = None + self._chunk_count = None + self._replication_unit_count = None + self._raft_clusters = None + + @property + def name(self): + """ + **[Required]** Gets the name of this CreateCompositeRaftShardSpaceDetails. + The name of shard space. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this CreateCompositeRaftShardSpaceDetails. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this CreateCompositeRaftShardSpaceDetails. + The name of shard space. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this CreateCompositeRaftShardSpaceDetails. + :type: str + """ + self._name = name + + @property + def chunk_count(self): + """ + **[Required]** Gets the chunk_count of this CreateCompositeRaftShardSpaceDetails. + Count of chunks associated with the shard space. + + + :return: The chunk_count of this CreateCompositeRaftShardSpaceDetails. + :rtype: int + """ + return self._chunk_count + + @chunk_count.setter + def chunk_count(self, chunk_count): + """ + Sets the chunk_count of this CreateCompositeRaftShardSpaceDetails. + Count of chunks associated with the shard space. + + + :param chunk_count: The chunk_count of this CreateCompositeRaftShardSpaceDetails. + :type: int + """ + self._chunk_count = chunk_count + + @property + def replication_unit_count(self): + """ + **[Required]** Gets the replication_unit_count of this CreateCompositeRaftShardSpaceDetails. + Number of replication units in the shard space. + + + :return: The replication_unit_count of this CreateCompositeRaftShardSpaceDetails. + :rtype: int + """ + return self._replication_unit_count + + @replication_unit_count.setter + def replication_unit_count(self, replication_unit_count): + """ + Sets the replication_unit_count of this CreateCompositeRaftShardSpaceDetails. + Number of replication units in the shard space. + + + :param replication_unit_count: The replication_unit_count of this CreateCompositeRaftShardSpaceDetails. + :type: int + """ + self._replication_unit_count = replication_unit_count + + @property + def raft_clusters(self): + """ + **[Required]** Gets the raft_clusters of this CreateCompositeRaftShardSpaceDetails. + The details of raft clusters associated with the shard space. + + + :return: The raft_clusters of this CreateCompositeRaftShardSpaceDetails. + :rtype: list[oci.distributed_database_v26.models.CreateCompositeShardSpaceRaftClusterDetails] + """ + return self._raft_clusters + + @raft_clusters.setter + def raft_clusters(self, raft_clusters): + """ + Sets the raft_clusters of this CreateCompositeRaftShardSpaceDetails. + The details of raft clusters associated with the shard space. + + + :param raft_clusters: The raft_clusters of this CreateCompositeRaftShardSpaceDetails. + :type: list[oci.distributed_database_v26.models.CreateCompositeShardSpaceRaftClusterDetails] + """ + self._raft_clusters = raft_clusters + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_composite_shard_space_raft_cluster_details.py b/src/oci/distributed_database_v26/models/create_composite_shard_space_raft_cluster_details.py new file mode 100644 index 0000000000..6fba1646be --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_composite_shard_space_raft_cluster_details.py @@ -0,0 +1,214 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateCompositeShardSpaceRaftClusterDetails(object): + """ + Raft clusters details required for creation of composite shard spaces. + """ + + #: A constant which can be used with the ru_mode property of a CreateCompositeShardSpaceRaftClusterDetails. + #: This constant has a value of "READ_ONLY" + RU_MODE_READ_ONLY = "READ_ONLY" + + #: A constant which can be used with the ru_mode property of a CreateCompositeShardSpaceRaftClusterDetails. + #: This constant has a value of "READ_WRITE" + RU_MODE_READ_WRITE = "READ_WRITE" + + def __init__(self, **kwargs): + """ + Initializes a new CreateCompositeShardSpaceRaftClusterDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this CreateCompositeShardSpaceRaftClusterDetails. + :type name: str + + :param replication_factor: + The value to assign to the replication_factor property of this CreateCompositeShardSpaceRaftClusterDetails. + :type replication_factor: int + + :param witness_count: + The value to assign to the witness_count property of this CreateCompositeShardSpaceRaftClusterDetails. + :type witness_count: int + + :param ru_mode: + The value to assign to the ru_mode property of this CreateCompositeShardSpaceRaftClusterDetails. + Allowed values for this property are: "READ_ONLY", "READ_WRITE" + :type ru_mode: str + + :param databases: + The value to assign to the databases property of this CreateCompositeShardSpaceRaftClusterDetails. + :type databases: list[oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseDetails] + + """ + self.swagger_types = { + 'name': 'str', + 'replication_factor': 'int', + 'witness_count': 'int', + 'ru_mode': 'str', + 'databases': 'list[CreateDistributedDatabaseShardDatabaseDetails]' + } + self.attribute_map = { + 'name': 'name', + 'replication_factor': 'replicationFactor', + 'witness_count': 'witnessCount', + 'ru_mode': 'ruMode', + 'databases': 'databases' + } + self._name = None + self._replication_factor = None + self._witness_count = None + self._ru_mode = None + self._databases = None + + @property + def name(self): + """ + **[Required]** Gets the name of this CreateCompositeShardSpaceRaftClusterDetails. + The name of raft cluster. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this CreateCompositeShardSpaceRaftClusterDetails. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this CreateCompositeShardSpaceRaftClusterDetails. + The name of raft cluster. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this CreateCompositeShardSpaceRaftClusterDetails. + :type: str + """ + self._name = name + + @property + def replication_factor(self): + """ + **[Required]** Gets the replication_factor of this CreateCompositeShardSpaceRaftClusterDetails. + Replication factor associated with the raft cluster. + + + :return: The replication_factor of this CreateCompositeShardSpaceRaftClusterDetails. + :rtype: int + """ + return self._replication_factor + + @replication_factor.setter + def replication_factor(self, replication_factor): + """ + Sets the replication_factor of this CreateCompositeShardSpaceRaftClusterDetails. + Replication factor associated with the raft cluster. + + + :param replication_factor: The replication_factor of this CreateCompositeShardSpaceRaftClusterDetails. + :type: int + """ + self._replication_factor = replication_factor + + @property + def witness_count(self): + """ + **[Required]** Gets the witness_count of this CreateCompositeShardSpaceRaftClusterDetails. + Witnesses RU count associated with the raft cluster. + + + :return: The witness_count of this CreateCompositeShardSpaceRaftClusterDetails. + :rtype: int + """ + return self._witness_count + + @witness_count.setter + def witness_count(self, witness_count): + """ + Sets the witness_count of this CreateCompositeShardSpaceRaftClusterDetails. + Witnesses RU count associated with the raft cluster. + + + :param witness_count: The witness_count of this CreateCompositeShardSpaceRaftClusterDetails. + :type: int + """ + self._witness_count = witness_count + + @property + def ru_mode(self): + """ + **[Required]** Gets the ru_mode of this CreateCompositeShardSpaceRaftClusterDetails. + Replication factor associated with the raft cluster. + + Allowed values for this property are: "READ_ONLY", "READ_WRITE" + + + :return: The ru_mode of this CreateCompositeShardSpaceRaftClusterDetails. + :rtype: str + """ + return self._ru_mode + + @ru_mode.setter + def ru_mode(self, ru_mode): + """ + Sets the ru_mode of this CreateCompositeShardSpaceRaftClusterDetails. + Replication factor associated with the raft cluster. + + + :param ru_mode: The ru_mode of this CreateCompositeShardSpaceRaftClusterDetails. + :type: str + """ + allowed_values = ["READ_ONLY", "READ_WRITE"] + if not value_allowed_none_or_none_sentinel(ru_mode, allowed_values): + raise ValueError( + f"Invalid value for `ru_mode`, must be None or one of {allowed_values}" + ) + self._ru_mode = ru_mode + + @property + def databases(self): + """ + **[Required]** Gets the databases of this CreateCompositeShardSpaceRaftClusterDetails. + The details of databases associated with the composite shard space raft cluster. + + + :return: The databases of this CreateCompositeShardSpaceRaftClusterDetails. + :rtype: list[oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseDetails] + """ + return self._databases + + @databases.setter + def databases(self, databases): + """ + Sets the databases of this CreateCompositeShardSpaceRaftClusterDetails. + The details of databases associated with the composite shard space raft cluster. + + + :param databases: The databases of this CreateCompositeShardSpaceRaftClusterDetails. + :type: list[oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseDetails] + """ + self._databases = databases + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_distributed_autonomous_database_catalog_with_dedicated_infra_details.py b/src/oci/distributed_database_v26/models/create_distributed_autonomous_database_catalog_with_dedicated_infra_details.py new file mode 100644 index 0000000000..4513d8b379 --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_distributed_autonomous_database_catalog_with_dedicated_infra_details.py @@ -0,0 +1,501 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +from .create_autonomous_catalog_database_details import CreateAutonomousCatalogDatabaseDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails(CreateAutonomousCatalogDatabaseDetails): + """ + Configuration for creating a distributed autonomous database catalog using an existing ADB-D VM cluster. + """ + + #: A constant which can be used with the protection_mode property of a CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + #: This constant has a value of "MAXIMUM_AVAILABILITY" + PROTECTION_MODE_MAXIMUM_AVAILABILITY = "MAXIMUM_AVAILABILITY" + + #: A constant which can be used with the protection_mode property of a CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + #: This constant has a value of "MAXIMUM_PERFORMANCE" + PROTECTION_MODE_MAXIMUM_PERFORMANCE = "MAXIMUM_PERFORMANCE" + + def __init__(self, **kwargs): + """ + Initializes a new CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails.source` attribute + of this class is ``ADBD_EXISTING_CLUSTER`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source: + The value to assign to the source property of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + Allowed values for this property are: "ADBD_EXISTING_CLUSTER" + :type source: str + + :param admin_password: + The value to assign to the admin_password property of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :type admin_password: str + + :param compute_count: + The value to assign to the compute_count property of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :type compute_count: float + + :param data_storage_size_in_gbs: + The value to assign to the data_storage_size_in_gbs property of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :type data_storage_size_in_gbs: float + + :param is_auto_scaling_enabled: + The value to assign to the is_auto_scaling_enabled property of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :type is_auto_scaling_enabled: bool + + :param cloud_autonomous_vm_cluster_id: + The value to assign to the cloud_autonomous_vm_cluster_id property of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :type cloud_autonomous_vm_cluster_id: str + + :param vault_id: + The value to assign to the vault_id property of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :type vault_id: str + + :param kms_key_id: + The value to assign to the kms_key_id property of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :type kms_key_id: str + + :param kms_key_version_id: + The value to assign to the kms_key_version_id property of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :type kms_key_version_id: str + + :param okv_key_store_id: + The value to assign to the okv_key_store_id property of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :type okv_key_store_id: str + + :param okv_end_point_group_name: + The value to assign to the okv_end_point_group_name property of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :type okv_end_point_group_name: str + + :param protection_mode: + The value to assign to the protection_mode property of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE" + :type protection_mode: str + + :param fast_start_fail_over_lag_limit_in_seconds: + The value to assign to the fast_start_fail_over_lag_limit_in_seconds property of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :type fast_start_fail_over_lag_limit_in_seconds: int + + :param standby_maintenance_buffer_in_days: + The value to assign to the standby_maintenance_buffer_in_days property of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :type standby_maintenance_buffer_in_days: int + + """ + self.swagger_types = { + 'source': 'str', + 'admin_password': 'str', + 'compute_count': 'float', + 'data_storage_size_in_gbs': 'float', + 'is_auto_scaling_enabled': 'bool', + 'cloud_autonomous_vm_cluster_id': 'str', + 'vault_id': 'str', + 'kms_key_id': 'str', + 'kms_key_version_id': 'str', + 'okv_key_store_id': 'str', + 'okv_end_point_group_name': 'str', + 'protection_mode': 'str', + 'fast_start_fail_over_lag_limit_in_seconds': 'int', + 'standby_maintenance_buffer_in_days': 'int' + } + self.attribute_map = { + 'source': 'source', + 'admin_password': 'adminPassword', + 'compute_count': 'computeCount', + 'data_storage_size_in_gbs': 'dataStorageSizeInGbs', + 'is_auto_scaling_enabled': 'isAutoScalingEnabled', + 'cloud_autonomous_vm_cluster_id': 'cloudAutonomousVmClusterId', + 'vault_id': 'vaultId', + 'kms_key_id': 'kmsKeyId', + 'kms_key_version_id': 'kmsKeyVersionId', + 'okv_key_store_id': 'okvKeyStoreId', + 'okv_end_point_group_name': 'okvEndPointGroupName', + 'protection_mode': 'protectionMode', + 'fast_start_fail_over_lag_limit_in_seconds': 'fastStartFailOverLagLimitInSeconds', + 'standby_maintenance_buffer_in_days': 'standbyMaintenanceBufferInDays' + } + self._redacted_field_paths = [ + ['admin_password'], + ] + self._source = None + self._admin_password = None + self._compute_count = None + self._data_storage_size_in_gbs = None + self._is_auto_scaling_enabled = None + self._cloud_autonomous_vm_cluster_id = None + self._vault_id = None + self._kms_key_id = None + self._kms_key_version_id = None + self._okv_key_store_id = None + self._okv_end_point_group_name = None + self._protection_mode = None + self._fast_start_fail_over_lag_limit_in_seconds = None + self._standby_maintenance_buffer_in_days = None + self._source = 'ADBD_EXISTING_CLUSTER' + + @property + def admin_password(self): + """ + **[Required]** Gets the admin_password of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + The admin password for the catalog associated with the distributed autonomous database. + + + :return: The admin_password of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :rtype: str + """ + return self._admin_password + + @admin_password.setter + def admin_password(self, admin_password): + """ + Sets the admin_password of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + The admin password for the catalog associated with the distributed autonomous database. + + + :param admin_password: The admin_password of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :type: str + """ + self._admin_password = admin_password + + @property + def compute_count(self): + """ + **[Required]** Gets the compute_count of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + The compute count for the catalog database. It has to be in multiples of 2. + + + :return: The compute_count of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :rtype: float + """ + return self._compute_count + + @compute_count.setter + def compute_count(self, compute_count): + """ + Sets the compute_count of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + The compute count for the catalog database. It has to be in multiples of 2. + + + :param compute_count: The compute_count of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :type: float + """ + self._compute_count = compute_count + + @property + def data_storage_size_in_gbs(self): + """ + **[Required]** Gets the data_storage_size_in_gbs of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + The data disk group size to be allocated in GBs for the catalog database. + + + :return: The data_storage_size_in_gbs of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :rtype: float + """ + return self._data_storage_size_in_gbs + + @data_storage_size_in_gbs.setter + def data_storage_size_in_gbs(self, data_storage_size_in_gbs): + """ + Sets the data_storage_size_in_gbs of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + The data disk group size to be allocated in GBs for the catalog database. + + + :param data_storage_size_in_gbs: The data_storage_size_in_gbs of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :type: float + """ + self._data_storage_size_in_gbs = data_storage_size_in_gbs + + @property + def is_auto_scaling_enabled(self): + """ + Gets the is_auto_scaling_enabled of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + Indicates if vertical auto scaling is enabled for the Autonomous AI Database CPU core count. + The default value is `FALSE`. + + + :return: The is_auto_scaling_enabled of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :rtype: bool + """ + return self._is_auto_scaling_enabled + + @is_auto_scaling_enabled.setter + def is_auto_scaling_enabled(self, is_auto_scaling_enabled): + """ + Sets the is_auto_scaling_enabled of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + Indicates if vertical auto scaling is enabled for the Autonomous AI Database CPU core count. + The default value is `FALSE`. + + + :param is_auto_scaling_enabled: The is_auto_scaling_enabled of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :type: bool + """ + self._is_auto_scaling_enabled = is_auto_scaling_enabled + + @property + def cloud_autonomous_vm_cluster_id(self): + """ + **[Required]** Gets the cloud_autonomous_vm_cluster_id of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + The `OCID`__ of the cloud Autonomous VM Cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The cloud_autonomous_vm_cluster_id of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :rtype: str + """ + return self._cloud_autonomous_vm_cluster_id + + @cloud_autonomous_vm_cluster_id.setter + def cloud_autonomous_vm_cluster_id(self, cloud_autonomous_vm_cluster_id): + """ + Sets the cloud_autonomous_vm_cluster_id of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + The `OCID`__ of the cloud Autonomous VM Cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param cloud_autonomous_vm_cluster_id: The cloud_autonomous_vm_cluster_id of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :type: str + """ + self._cloud_autonomous_vm_cluster_id = cloud_autonomous_vm_cluster_id + + @property + def vault_id(self): + """ + Gets the vault_id of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :return: The vault_id of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :rtype: str + """ + return self._vault_id + + @vault_id.setter + def vault_id(self, vault_id): + """ + Sets the vault_id of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :param vault_id: The vault_id of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :type: str + """ + self._vault_id = vault_id + + @property + def kms_key_id(self): + """ + Gets the kms_key_id of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_id of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :rtype: str + """ + return self._kms_key_id + + @kms_key_id.setter + def kms_key_id(self, kms_key_id): + """ + Sets the kms_key_id of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_id: The kms_key_id of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :type: str + """ + self._kms_key_id = kms_key_id + + @property + def kms_key_version_id(self): + """ + Gets the kms_key_version_id of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_version_id of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :rtype: str + """ + return self._kms_key_version_id + + @kms_key_version_id.setter + def kms_key_version_id(self, kms_key_version_id): + """ + Sets the kms_key_version_id of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_version_id: The kms_key_version_id of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :type: str + """ + self._kms_key_version_id = kms_key_version_id + + @property + def okv_key_store_id(self): + """ + Gets the okv_key_store_id of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + The `OCID`__ of the key store used to create the catalog. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The okv_key_store_id of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :rtype: str + """ + return self._okv_key_store_id + + @okv_key_store_id.setter + def okv_key_store_id(self, okv_key_store_id): + """ + Sets the okv_key_store_id of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + The `OCID`__ of the key store used to create the catalog. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param okv_key_store_id: The okv_key_store_id of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :type: str + """ + self._okv_key_store_id = okv_key_store_id + + @property + def okv_end_point_group_name(self): + """ + Gets the okv_end_point_group_name of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + The OKV endpoint name. + + + :return: The okv_end_point_group_name of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :rtype: str + """ + return self._okv_end_point_group_name + + @okv_end_point_group_name.setter + def okv_end_point_group_name(self, okv_end_point_group_name): + """ + Sets the okv_end_point_group_name of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + The OKV endpoint name. + + + :param okv_end_point_group_name: The okv_end_point_group_name of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :type: str + """ + self._okv_end_point_group_name = okv_end_point_group_name + + @property + def protection_mode(self): + """ + Gets the protection_mode of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + The protectionMode for the catalog peer. + + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE" + + + :return: The protection_mode of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :rtype: str + """ + return self._protection_mode + + @protection_mode.setter + def protection_mode(self, protection_mode): + """ + Sets the protection_mode of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + The protectionMode for the catalog peer. + + + :param protection_mode: The protection_mode of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :type: str + """ + allowed_values = ["MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE"] + if not value_allowed_none_or_none_sentinel(protection_mode, allowed_values): + raise ValueError( + f"Invalid value for `protection_mode`, must be None or one of {allowed_values}" + ) + self._protection_mode = protection_mode + + @property + def fast_start_fail_over_lag_limit_in_seconds(self): + """ + Gets the fast_start_fail_over_lag_limit_in_seconds of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + The lag time preference based on data loss tolerance in seconds. + + + :return: The fast_start_fail_over_lag_limit_in_seconds of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :rtype: int + """ + return self._fast_start_fail_over_lag_limit_in_seconds + + @fast_start_fail_over_lag_limit_in_seconds.setter + def fast_start_fail_over_lag_limit_in_seconds(self, fast_start_fail_over_lag_limit_in_seconds): + """ + Sets the fast_start_fail_over_lag_limit_in_seconds of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + The lag time preference based on data loss tolerance in seconds. + + + :param fast_start_fail_over_lag_limit_in_seconds: The fast_start_fail_over_lag_limit_in_seconds of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :type: int + """ + self._fast_start_fail_over_lag_limit_in_seconds = fast_start_fail_over_lag_limit_in_seconds + + @property + def standby_maintenance_buffer_in_days(self): + """ + Gets the standby_maintenance_buffer_in_days of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + The scheduling detail for the quarterly maintenance window of the standby Autonomous Container Database. + This value represents the number of days before scheduled maintenance of the primary database. + + + :return: The standby_maintenance_buffer_in_days of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :rtype: int + """ + return self._standby_maintenance_buffer_in_days + + @standby_maintenance_buffer_in_days.setter + def standby_maintenance_buffer_in_days(self, standby_maintenance_buffer_in_days): + """ + Sets the standby_maintenance_buffer_in_days of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + The scheduling detail for the quarterly maintenance window of the standby Autonomous Container Database. + This value represents the number of days before scheduled maintenance of the primary database. + + + :param standby_maintenance_buffer_in_days: The standby_maintenance_buffer_in_days of this CreateDistributedAutonomousDatabaseCatalogWithDedicatedInfraDetails. + :type: int + """ + self._standby_maintenance_buffer_in_days = standby_maintenance_buffer_in_days + + def __repr__(self): + as_dict = to_dict(self) + redact_password_field(as_dict, ['admin_password']) + return formatted_flat_dict(as_dict) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_distributed_autonomous_database_details.py b/src/oci/distributed_database_v26/models/create_distributed_autonomous_database_details.py new file mode 100644 index 0000000000..ba010eda84 --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_distributed_autonomous_database_details.py @@ -0,0 +1,858 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateDistributedAutonomousDatabaseDetails(object): + """ + Details required for creation of the Globally distributed autonomous database. + """ + + #: A constant which can be used with the db_workload_type property of a CreateDistributedAutonomousDatabaseDetails. + #: This constant has a value of "OLTP" + DB_WORKLOAD_TYPE_OLTP = "OLTP" + + #: A constant which can be used with the db_workload_type property of a CreateDistributedAutonomousDatabaseDetails. + #: This constant has a value of "DW" + DB_WORKLOAD_TYPE_DW = "DW" + + def __init__(self, **kwargs): + """ + Initializes a new CreateDistributedAutonomousDatabaseDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param compartment_id: + The value to assign to the compartment_id property of this CreateDistributedAutonomousDatabaseDetails. + :type compartment_id: str + + :param display_name: + The value to assign to the display_name property of this CreateDistributedAutonomousDatabaseDetails. + :type display_name: str + + :param database_version: + The value to assign to the database_version property of this CreateDistributedAutonomousDatabaseDetails. + :type database_version: str + + :param prefix: + The value to assign to the prefix property of this CreateDistributedAutonomousDatabaseDetails. + :type prefix: str + + :param private_endpoint_ids: + The value to assign to the private_endpoint_ids property of this CreateDistributedAutonomousDatabaseDetails. + :type private_endpoint_ids: list[str] + + :param notification_topic_ids: + The value to assign to the notification_topic_ids property of this CreateDistributedAutonomousDatabaseDetails. + :type notification_topic_ids: list[str] + + :param db_workload_type: + The value to assign to the db_workload_type property of this CreateDistributedAutonomousDatabaseDetails. + Allowed values for this property are: "OLTP", "DW" + :type db_workload_type: str + + :param character_set: + The value to assign to the character_set property of this CreateDistributedAutonomousDatabaseDetails. + :type character_set: str + + :param ncharacter_set: + The value to assign to the ncharacter_set property of this CreateDistributedAutonomousDatabaseDetails. + :type ncharacter_set: str + + :param listener_port: + The value to assign to the listener_port property of this CreateDistributedAutonomousDatabaseDetails. + :type listener_port: int + + :param listener_port_tls: + The value to assign to the listener_port_tls property of this CreateDistributedAutonomousDatabaseDetails. + :type listener_port_tls: int + + :param ons_port_local: + The value to assign to the ons_port_local property of this CreateDistributedAutonomousDatabaseDetails. + :type ons_port_local: int + + :param ons_port_remote: + The value to assign to the ons_port_remote property of this CreateDistributedAutonomousDatabaseDetails. + :type ons_port_remote: int + + :param system_chunk_count: + The value to assign to the system_chunk_count property of this CreateDistributedAutonomousDatabaseDetails. + :type system_chunk_count: int + + :param system_raft_replication_unit_count: + The value to assign to the system_raft_replication_unit_count property of this CreateDistributedAutonomousDatabaseDetails. + :type system_raft_replication_unit_count: int + + :param composite_raft_shard_spaces: + The value to assign to the composite_raft_shard_spaces property of this CreateDistributedAutonomousDatabaseDetails. + :type composite_raft_shard_spaces: list[oci.distributed_database_v26.models.CreateAutonomousCompositeRaftShardSpaceDetails] + + :param composite_data_guard_shard_spaces: + The value to assign to the composite_data_guard_shard_spaces property of this CreateDistributedAutonomousDatabaseDetails. + :type composite_data_guard_shard_spaces: list[oci.distributed_database_v26.models.CreateAutonomousCompositeDataGuardShardSpaceDetails] + + :param system_raft_clusters: + The value to assign to the system_raft_clusters property of this CreateDistributedAutonomousDatabaseDetails. + :type system_raft_clusters: list[oci.distributed_database_v26.models.CreateAutonomousSystemRaftClusterDetails] + + :param system_data_guard_databases: + The value to assign to the system_data_guard_databases property of this CreateDistributedAutonomousDatabaseDetails. + :type system_data_guard_databases: oci.distributed_database_v26.models.CreateAutonomousSystemDataGuardDatabaseDetails + + :param user_shard_spaces: + The value to assign to the user_shard_spaces property of this CreateDistributedAutonomousDatabaseDetails. + :type user_shard_spaces: list[oci.distributed_database_v26.models.CreateAutonomousUserShardSpaceDetails] + + :param catalog_details: + The value to assign to the catalog_details property of this CreateDistributedAutonomousDatabaseDetails. + :type catalog_details: list[oci.distributed_database_v26.models.CreateAutonomousCatalogDetails] + + :param db_backup_config: + The value to assign to the db_backup_config property of this CreateDistributedAutonomousDatabaseDetails. + :type db_backup_config: oci.distributed_database_v26.models.DistributedAutonomousDbBackupConfig + + :param vcn_nsg_ids: + The value to assign to the vcn_nsg_ids property of this CreateDistributedAutonomousDatabaseDetails. + :type vcn_nsg_ids: list[oci.distributed_database_v26.models.VcnNsgIdsDetails] + + :param freeform_tags: + The value to assign to the freeform_tags property of this CreateDistributedAutonomousDatabaseDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this CreateDistributedAutonomousDatabaseDetails. + :type defined_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'compartment_id': 'str', + 'display_name': 'str', + 'database_version': 'str', + 'prefix': 'str', + 'private_endpoint_ids': 'list[str]', + 'notification_topic_ids': 'list[str]', + 'db_workload_type': 'str', + 'character_set': 'str', + 'ncharacter_set': 'str', + 'listener_port': 'int', + 'listener_port_tls': 'int', + 'ons_port_local': 'int', + 'ons_port_remote': 'int', + 'system_chunk_count': 'int', + 'system_raft_replication_unit_count': 'int', + 'composite_raft_shard_spaces': 'list[CreateAutonomousCompositeRaftShardSpaceDetails]', + 'composite_data_guard_shard_spaces': 'list[CreateAutonomousCompositeDataGuardShardSpaceDetails]', + 'system_raft_clusters': 'list[CreateAutonomousSystemRaftClusterDetails]', + 'system_data_guard_databases': 'CreateAutonomousSystemDataGuardDatabaseDetails', + 'user_shard_spaces': 'list[CreateAutonomousUserShardSpaceDetails]', + 'catalog_details': 'list[CreateAutonomousCatalogDetails]', + 'db_backup_config': 'DistributedAutonomousDbBackupConfig', + 'vcn_nsg_ids': 'list[VcnNsgIdsDetails]', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'compartment_id': 'compartmentId', + 'display_name': 'displayName', + 'database_version': 'databaseVersion', + 'prefix': 'prefix', + 'private_endpoint_ids': 'privateEndpointIds', + 'notification_topic_ids': 'notificationTopicIds', + 'db_workload_type': 'dbWorkloadType', + 'character_set': 'characterSet', + 'ncharacter_set': 'ncharacterSet', + 'listener_port': 'listenerPort', + 'listener_port_tls': 'listenerPortTls', + 'ons_port_local': 'onsPortLocal', + 'ons_port_remote': 'onsPortRemote', + 'system_chunk_count': 'systemChunkCount', + 'system_raft_replication_unit_count': 'systemRaftReplicationUnitCount', + 'composite_raft_shard_spaces': 'compositeRaftShardSpaces', + 'composite_data_guard_shard_spaces': 'compositeDataGuardShardSpaces', + 'system_raft_clusters': 'systemRaftClusters', + 'system_data_guard_databases': 'systemDataGuardDatabases', + 'user_shard_spaces': 'userShardSpaces', + 'catalog_details': 'catalogDetails', + 'db_backup_config': 'dbBackupConfig', + 'vcn_nsg_ids': 'vcnNsgIds', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' + } + self._compartment_id = None + self._display_name = None + self._database_version = None + self._prefix = None + self._private_endpoint_ids = None + self._notification_topic_ids = None + self._db_workload_type = None + self._character_set = None + self._ncharacter_set = None + self._listener_port = None + self._listener_port_tls = None + self._ons_port_local = None + self._ons_port_remote = None + self._system_chunk_count = None + self._system_raft_replication_unit_count = None + self._composite_raft_shard_spaces = None + self._composite_data_guard_shard_spaces = None + self._system_raft_clusters = None + self._system_data_guard_databases = None + self._user_shard_spaces = None + self._catalog_details = None + self._db_backup_config = None + self._vcn_nsg_ids = None + self._freeform_tags = None + self._defined_tags = None + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this CreateDistributedAutonomousDatabaseDetails. + The `OCID`__ of the Globally distributed autonomous database compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this CreateDistributedAutonomousDatabaseDetails. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this CreateDistributedAutonomousDatabaseDetails. + The `OCID`__ of the Globally distributed autonomous database compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this CreateDistributedAutonomousDatabaseDetails. + :type: str + """ + self._compartment_id = compartment_id + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this CreateDistributedAutonomousDatabaseDetails. + The display name of the Globally distributed autonomous database. + + + :return: The display_name of this CreateDistributedAutonomousDatabaseDetails. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this CreateDistributedAutonomousDatabaseDetails. + The display name of the Globally distributed autonomous database. + + + :param display_name: The display_name of this CreateDistributedAutonomousDatabaseDetails. + :type: str + """ + self._display_name = display_name + + @property + def database_version(self): + """ + **[Required]** Gets the database_version of this CreateDistributedAutonomousDatabaseDetails. + Oracle Database version for the shards and catalog used in Globally distributed autonomous database. + + + :return: The database_version of this CreateDistributedAutonomousDatabaseDetails. + :rtype: str + """ + return self._database_version + + @database_version.setter + def database_version(self, database_version): + """ + Sets the database_version of this CreateDistributedAutonomousDatabaseDetails. + Oracle Database version for the shards and catalog used in Globally distributed autonomous database. + + + :param database_version: The database_version of this CreateDistributedAutonomousDatabaseDetails. + :type: str + """ + self._database_version = database_version + + @property + def prefix(self): + """ + **[Required]** Gets the prefix of this CreateDistributedAutonomousDatabaseDetails. + Unique name prefix for the Globally distributed autonomous databases. Only alpha-numeric values are allowed. First character + has to be a letter followed by any combination of letter and number. + + + :return: The prefix of this CreateDistributedAutonomousDatabaseDetails. + :rtype: str + """ + return self._prefix + + @prefix.setter + def prefix(self, prefix): + """ + Sets the prefix of this CreateDistributedAutonomousDatabaseDetails. + Unique name prefix for the Globally distributed autonomous databases. Only alpha-numeric values are allowed. First character + has to be a letter followed by any combination of letter and number. + + + :param prefix: The prefix of this CreateDistributedAutonomousDatabaseDetails. + :type: str + """ + self._prefix = prefix + + @property + def private_endpoint_ids(self): + """ + **[Required]** Gets the private_endpoint_ids of this CreateDistributedAutonomousDatabaseDetails. + The collection of `OCID`__ of the private endpoint associated with Globally distributed autonomous database. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The private_endpoint_ids of this CreateDistributedAutonomousDatabaseDetails. + :rtype: list[str] + """ + return self._private_endpoint_ids + + @private_endpoint_ids.setter + def private_endpoint_ids(self, private_endpoint_ids): + """ + Sets the private_endpoint_ids of this CreateDistributedAutonomousDatabaseDetails. + The collection of `OCID`__ of the private endpoint associated with Globally distributed autonomous database. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param private_endpoint_ids: The private_endpoint_ids of this CreateDistributedAutonomousDatabaseDetails. + :type: list[str] + """ + self._private_endpoint_ids = private_endpoint_ids + + @property + def notification_topic_ids(self): + """ + Gets the notification_topic_ids of this CreateDistributedAutonomousDatabaseDetails. + The collection of `OCID`__ for the notification topics associated with the globally distributed autonomous database. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The notification_topic_ids of this CreateDistributedAutonomousDatabaseDetails. + :rtype: list[str] + """ + return self._notification_topic_ids + + @notification_topic_ids.setter + def notification_topic_ids(self, notification_topic_ids): + """ + Sets the notification_topic_ids of this CreateDistributedAutonomousDatabaseDetails. + The collection of `OCID`__ for the notification topics associated with the globally distributed autonomous database. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param notification_topic_ids: The notification_topic_ids of this CreateDistributedAutonomousDatabaseDetails. + :type: list[str] + """ + self._notification_topic_ids = notification_topic_ids + + @property + def db_workload_type(self): + """ + **[Required]** Gets the db_workload_type of this CreateDistributedAutonomousDatabaseDetails. + Possible workload types. Currently only OLTP workload type is supported. + + Allowed values for this property are: "OLTP", "DW" + + + :return: The db_workload_type of this CreateDistributedAutonomousDatabaseDetails. + :rtype: str + """ + return self._db_workload_type + + @db_workload_type.setter + def db_workload_type(self, db_workload_type): + """ + Sets the db_workload_type of this CreateDistributedAutonomousDatabaseDetails. + Possible workload types. Currently only OLTP workload type is supported. + + + :param db_workload_type: The db_workload_type of this CreateDistributedAutonomousDatabaseDetails. + :type: str + """ + allowed_values = ["OLTP", "DW"] + if not value_allowed_none_or_none_sentinel(db_workload_type, allowed_values): + raise ValueError( + f"Invalid value for `db_workload_type`, must be None or one of {allowed_values}" + ) + self._db_workload_type = db_workload_type + + @property + def character_set(self): + """ + **[Required]** Gets the character_set of this CreateDistributedAutonomousDatabaseDetails. + The character set for the database. + + + :return: The character_set of this CreateDistributedAutonomousDatabaseDetails. + :rtype: str + """ + return self._character_set + + @character_set.setter + def character_set(self, character_set): + """ + Sets the character_set of this CreateDistributedAutonomousDatabaseDetails. + The character set for the database. + + + :param character_set: The character_set of this CreateDistributedAutonomousDatabaseDetails. + :type: str + """ + self._character_set = character_set + + @property + def ncharacter_set(self): + """ + **[Required]** Gets the ncharacter_set of this CreateDistributedAutonomousDatabaseDetails. + The national character set for the database. + + + :return: The ncharacter_set of this CreateDistributedAutonomousDatabaseDetails. + :rtype: str + """ + return self._ncharacter_set + + @ncharacter_set.setter + def ncharacter_set(self, ncharacter_set): + """ + Sets the ncharacter_set of this CreateDistributedAutonomousDatabaseDetails. + The national character set for the database. + + + :param ncharacter_set: The ncharacter_set of this CreateDistributedAutonomousDatabaseDetails. + :type: str + """ + self._ncharacter_set = ncharacter_set + + @property + def listener_port(self): + """ + **[Required]** Gets the listener_port of this CreateDistributedAutonomousDatabaseDetails. + The listener port number for the Globally distributed autonomous database. The listener port number + has to be unique for a customer tenancy across all distributed autonomous databases. Same port number + should not be re-used for any other distributed autonomous database. + + + :return: The listener_port of this CreateDistributedAutonomousDatabaseDetails. + :rtype: int + """ + return self._listener_port + + @listener_port.setter + def listener_port(self, listener_port): + """ + Sets the listener_port of this CreateDistributedAutonomousDatabaseDetails. + The listener port number for the Globally distributed autonomous database. The listener port number + has to be unique for a customer tenancy across all distributed autonomous databases. Same port number + should not be re-used for any other distributed autonomous database. + + + :param listener_port: The listener_port of this CreateDistributedAutonomousDatabaseDetails. + :type: int + """ + self._listener_port = listener_port + + @property + def listener_port_tls(self): + """ + Gets the listener_port_tls of this CreateDistributedAutonomousDatabaseDetails. + The TLS listener port number for Globally distributed autonomous database. The TLS listener port number + has to be unique for a customer tenancy across all distributed autonomous databases. Same port number + should not be re-used for any other distributed autonomous database. The listenerPortTls is mandatory + for dedicated infrastructure based distributed autonomous databases. + + + :return: The listener_port_tls of this CreateDistributedAutonomousDatabaseDetails. + :rtype: int + """ + return self._listener_port_tls + + @listener_port_tls.setter + def listener_port_tls(self, listener_port_tls): + """ + Sets the listener_port_tls of this CreateDistributedAutonomousDatabaseDetails. + The TLS listener port number for Globally distributed autonomous database. The TLS listener port number + has to be unique for a customer tenancy across all distributed autonomous databases. Same port number + should not be re-used for any other distributed autonomous database. The listenerPortTls is mandatory + for dedicated infrastructure based distributed autonomous databases. + + + :param listener_port_tls: The listener_port_tls of this CreateDistributedAutonomousDatabaseDetails. + :type: int + """ + self._listener_port_tls = listener_port_tls + + @property + def ons_port_local(self): + """ + **[Required]** Gets the ons_port_local of this CreateDistributedAutonomousDatabaseDetails. + Ons local port number for Globally distributed autonomous database. The onsPortLocal has to be unique for + a customer tenancy across all distributed autonomous databases. Same port number should not be re-used for + any other distributed autonomous database. + + + :return: The ons_port_local of this CreateDistributedAutonomousDatabaseDetails. + :rtype: int + """ + return self._ons_port_local + + @ons_port_local.setter + def ons_port_local(self, ons_port_local): + """ + Sets the ons_port_local of this CreateDistributedAutonomousDatabaseDetails. + Ons local port number for Globally distributed autonomous database. The onsPortLocal has to be unique for + a customer tenancy across all distributed autonomous databases. Same port number should not be re-used for + any other distributed autonomous database. + + + :param ons_port_local: The ons_port_local of this CreateDistributedAutonomousDatabaseDetails. + :type: int + """ + self._ons_port_local = ons_port_local + + @property + def ons_port_remote(self): + """ + **[Required]** Gets the ons_port_remote of this CreateDistributedAutonomousDatabaseDetails. + Ons remote port number for Globally distributed autonomous database. The onsPortRemote has to be unique for + a customer tenancy across all distributed autonomous databases. Same port number should not be re-used for + any other distributed autonomous database. + + + :return: The ons_port_remote of this CreateDistributedAutonomousDatabaseDetails. + :rtype: int + """ + return self._ons_port_remote + + @ons_port_remote.setter + def ons_port_remote(self, ons_port_remote): + """ + Sets the ons_port_remote of this CreateDistributedAutonomousDatabaseDetails. + Ons remote port number for Globally distributed autonomous database. The onsPortRemote has to be unique for + a customer tenancy across all distributed autonomous databases. Same port number should not be re-used for + any other distributed autonomous database. + + + :param ons_port_remote: The ons_port_remote of this CreateDistributedAutonomousDatabaseDetails. + :type: int + """ + self._ons_port_remote = ons_port_remote + + @property + def system_chunk_count(self): + """ + Gets the system_chunk_count of this CreateDistributedAutonomousDatabaseDetails. + Count of chunks associated with system raft clusters or system data guard databases. + + + :return: The system_chunk_count of this CreateDistributedAutonomousDatabaseDetails. + :rtype: int + """ + return self._system_chunk_count + + @system_chunk_count.setter + def system_chunk_count(self, system_chunk_count): + """ + Sets the system_chunk_count of this CreateDistributedAutonomousDatabaseDetails. + Count of chunks associated with system raft clusters or system data guard databases. + + + :param system_chunk_count: The system_chunk_count of this CreateDistributedAutonomousDatabaseDetails. + :type: int + """ + self._system_chunk_count = system_chunk_count + + @property + def system_raft_replication_unit_count(self): + """ + Gets the system_raft_replication_unit_count of this CreateDistributedAutonomousDatabaseDetails. + Number of replication units associated with system raft clusters. + + + :return: The system_raft_replication_unit_count of this CreateDistributedAutonomousDatabaseDetails. + :rtype: int + """ + return self._system_raft_replication_unit_count + + @system_raft_replication_unit_count.setter + def system_raft_replication_unit_count(self, system_raft_replication_unit_count): + """ + Sets the system_raft_replication_unit_count of this CreateDistributedAutonomousDatabaseDetails. + Number of replication units associated with system raft clusters. + + + :param system_raft_replication_unit_count: The system_raft_replication_unit_count of this CreateDistributedAutonomousDatabaseDetails. + :type: int + """ + self._system_raft_replication_unit_count = system_raft_replication_unit_count + + @property + def composite_raft_shard_spaces(self): + """ + Gets the composite_raft_shard_spaces of this CreateDistributedAutonomousDatabaseDetails. + Collection of composite raft shards. + + + :return: The composite_raft_shard_spaces of this CreateDistributedAutonomousDatabaseDetails. + :rtype: list[oci.distributed_database_v26.models.CreateAutonomousCompositeRaftShardSpaceDetails] + """ + return self._composite_raft_shard_spaces + + @composite_raft_shard_spaces.setter + def composite_raft_shard_spaces(self, composite_raft_shard_spaces): + """ + Sets the composite_raft_shard_spaces of this CreateDistributedAutonomousDatabaseDetails. + Collection of composite raft shards. + + + :param composite_raft_shard_spaces: The composite_raft_shard_spaces of this CreateDistributedAutonomousDatabaseDetails. + :type: list[oci.distributed_database_v26.models.CreateAutonomousCompositeRaftShardSpaceDetails] + """ + self._composite_raft_shard_spaces = composite_raft_shard_spaces + + @property + def composite_data_guard_shard_spaces(self): + """ + Gets the composite_data_guard_shard_spaces of this CreateDistributedAutonomousDatabaseDetails. + Collection of composite data guard shard spaces. + + + :return: The composite_data_guard_shard_spaces of this CreateDistributedAutonomousDatabaseDetails. + :rtype: list[oci.distributed_database_v26.models.CreateAutonomousCompositeDataGuardShardSpaceDetails] + """ + return self._composite_data_guard_shard_spaces + + @composite_data_guard_shard_spaces.setter + def composite_data_guard_shard_spaces(self, composite_data_guard_shard_spaces): + """ + Sets the composite_data_guard_shard_spaces of this CreateDistributedAutonomousDatabaseDetails. + Collection of composite data guard shard spaces. + + + :param composite_data_guard_shard_spaces: The composite_data_guard_shard_spaces of this CreateDistributedAutonomousDatabaseDetails. + :type: list[oci.distributed_database_v26.models.CreateAutonomousCompositeDataGuardShardSpaceDetails] + """ + self._composite_data_guard_shard_spaces = composite_data_guard_shard_spaces + + @property + def system_raft_clusters(self): + """ + Gets the system_raft_clusters of this CreateDistributedAutonomousDatabaseDetails. + Collection of system raft clusters. + + + :return: The system_raft_clusters of this CreateDistributedAutonomousDatabaseDetails. + :rtype: list[oci.distributed_database_v26.models.CreateAutonomousSystemRaftClusterDetails] + """ + return self._system_raft_clusters + + @system_raft_clusters.setter + def system_raft_clusters(self, system_raft_clusters): + """ + Sets the system_raft_clusters of this CreateDistributedAutonomousDatabaseDetails. + Collection of system raft clusters. + + + :param system_raft_clusters: The system_raft_clusters of this CreateDistributedAutonomousDatabaseDetails. + :type: list[oci.distributed_database_v26.models.CreateAutonomousSystemRaftClusterDetails] + """ + self._system_raft_clusters = system_raft_clusters + + @property + def system_data_guard_databases(self): + """ + Gets the system_data_guard_databases of this CreateDistributedAutonomousDatabaseDetails. + + :return: The system_data_guard_databases of this CreateDistributedAutonomousDatabaseDetails. + :rtype: oci.distributed_database_v26.models.CreateAutonomousSystemDataGuardDatabaseDetails + """ + return self._system_data_guard_databases + + @system_data_guard_databases.setter + def system_data_guard_databases(self, system_data_guard_databases): + """ + Sets the system_data_guard_databases of this CreateDistributedAutonomousDatabaseDetails. + + :param system_data_guard_databases: The system_data_guard_databases of this CreateDistributedAutonomousDatabaseDetails. + :type: oci.distributed_database_v26.models.CreateAutonomousSystemDataGuardDatabaseDetails + """ + self._system_data_guard_databases = system_data_guard_databases + + @property + def user_shard_spaces(self): + """ + Gets the user_shard_spaces of this CreateDistributedAutonomousDatabaseDetails. + Collection of user defined shard spaces. + + + :return: The user_shard_spaces of this CreateDistributedAutonomousDatabaseDetails. + :rtype: list[oci.distributed_database_v26.models.CreateAutonomousUserShardSpaceDetails] + """ + return self._user_shard_spaces + + @user_shard_spaces.setter + def user_shard_spaces(self, user_shard_spaces): + """ + Sets the user_shard_spaces of this CreateDistributedAutonomousDatabaseDetails. + Collection of user defined shard spaces. + + + :param user_shard_spaces: The user_shard_spaces of this CreateDistributedAutonomousDatabaseDetails. + :type: list[oci.distributed_database_v26.models.CreateAutonomousUserShardSpaceDetails] + """ + self._user_shard_spaces = user_shard_spaces + + @property + def catalog_details(self): + """ + **[Required]** Gets the catalog_details of this CreateDistributedAutonomousDatabaseDetails. + Collection of catalog for the Globally distributed autonomous database. + + + :return: The catalog_details of this CreateDistributedAutonomousDatabaseDetails. + :rtype: list[oci.distributed_database_v26.models.CreateAutonomousCatalogDetails] + """ + return self._catalog_details + + @catalog_details.setter + def catalog_details(self, catalog_details): + """ + Sets the catalog_details of this CreateDistributedAutonomousDatabaseDetails. + Collection of catalog for the Globally distributed autonomous database. + + + :param catalog_details: The catalog_details of this CreateDistributedAutonomousDatabaseDetails. + :type: list[oci.distributed_database_v26.models.CreateAutonomousCatalogDetails] + """ + self._catalog_details = catalog_details + + @property + def db_backup_config(self): + """ + Gets the db_backup_config of this CreateDistributedAutonomousDatabaseDetails. + + :return: The db_backup_config of this CreateDistributedAutonomousDatabaseDetails. + :rtype: oci.distributed_database_v26.models.DistributedAutonomousDbBackupConfig + """ + return self._db_backup_config + + @db_backup_config.setter + def db_backup_config(self, db_backup_config): + """ + Sets the db_backup_config of this CreateDistributedAutonomousDatabaseDetails. + + :param db_backup_config: The db_backup_config of this CreateDistributedAutonomousDatabaseDetails. + :type: oci.distributed_database_v26.models.DistributedAutonomousDbBackupConfig + """ + self._db_backup_config = db_backup_config + + @property + def vcn_nsg_ids(self): + """ + Gets the vcn_nsg_ids of this CreateDistributedAutonomousDatabaseDetails. + The list of network security group (NSG) details to be associated with the distributed autonomous database. + + + :return: The vcn_nsg_ids of this CreateDistributedAutonomousDatabaseDetails. + :rtype: list[oci.distributed_database_v26.models.VcnNsgIdsDetails] + """ + return self._vcn_nsg_ids + + @vcn_nsg_ids.setter + def vcn_nsg_ids(self, vcn_nsg_ids): + """ + Sets the vcn_nsg_ids of this CreateDistributedAutonomousDatabaseDetails. + The list of network security group (NSG) details to be associated with the distributed autonomous database. + + + :param vcn_nsg_ids: The vcn_nsg_ids of this CreateDistributedAutonomousDatabaseDetails. + :type: list[oci.distributed_database_v26.models.VcnNsgIdsDetails] + """ + self._vcn_nsg_ids = vcn_nsg_ids + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this CreateDistributedAutonomousDatabaseDetails. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this CreateDistributedAutonomousDatabaseDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this CreateDistributedAutonomousDatabaseDetails. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this CreateDistributedAutonomousDatabaseDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this CreateDistributedAutonomousDatabaseDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this CreateDistributedAutonomousDatabaseDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this CreateDistributedAutonomousDatabaseDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this CreateDistributedAutonomousDatabaseDetails. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_distributed_autonomous_database_shard_database_details.py b/src/oci/distributed_database_v26/models/create_distributed_autonomous_database_shard_database_details.py new file mode 100644 index 0000000000..f1c78ee82f --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_distributed_autonomous_database_shard_database_details.py @@ -0,0 +1,101 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateDistributedAutonomousDatabaseShardDatabaseDetails(object): + """ + Details for creating a distributed autonomous database shard. + """ + + #: A constant which can be used with the source property of a CreateDistributedAutonomousDatabaseShardDatabaseDetails. + #: This constant has a value of "ADBD_EXISTING_CLUSTER" + SOURCE_ADBD_EXISTING_CLUSTER = "ADBD_EXISTING_CLUSTER" + + def __init__(self, **kwargs): + """ + Initializes a new CreateDistributedAutonomousDatabaseShardDatabaseDetails object with values from keyword arguments. This class has the following subclasses and if you are using this class as input + to a service operations then you should favor using a subclass over the base class: + + * :class:`~oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails` + + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source: + The value to assign to the source property of this CreateDistributedAutonomousDatabaseShardDatabaseDetails. + Allowed values for this property are: "ADBD_EXISTING_CLUSTER" + :type source: str + + """ + self.swagger_types = { + 'source': 'str' + } + self.attribute_map = { + 'source': 'source' + } + self._source = None + + @staticmethod + def get_subtype(object_dictionary): + """ + Given the hash representation of a subtype of this class, + use the info in the hash to return the class of the subtype. + """ + type = object_dictionary['source'] + + if type == 'ADBD_EXISTING_CLUSTER': + return 'CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails' + else: + return 'CreateDistributedAutonomousDatabaseShardDatabaseDetails' + + @property + def source(self): + """ + **[Required]** Gets the source of this CreateDistributedAutonomousDatabaseShardDatabaseDetails. + The source of the Globally distributed autonomous database type. + Use ADBD_EXISTING_CLUSTER for an autonomous database on Dedicated Infrastructure that uses a pre-existing cluster. + + Allowed values for this property are: "ADBD_EXISTING_CLUSTER" + + + :return: The source of this CreateDistributedAutonomousDatabaseShardDatabaseDetails. + :rtype: str + """ + return self._source + + @source.setter + def source(self, source): + """ + Sets the source of this CreateDistributedAutonomousDatabaseShardDatabaseDetails. + The source of the Globally distributed autonomous database type. + Use ADBD_EXISTING_CLUSTER for an autonomous database on Dedicated Infrastructure that uses a pre-existing cluster. + + + :param source: The source of this CreateDistributedAutonomousDatabaseShardDatabaseDetails. + :type: str + """ + allowed_values = ["ADBD_EXISTING_CLUSTER"] + if not value_allowed_none_or_none_sentinel(source, allowed_values): + raise ValueError( + f"Invalid value for `source`, must be None or one of {allowed_values}" + ) + self._source = source + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_distributed_autonomous_database_shard_with_dedicated_infra_details.py b/src/oci/distributed_database_v26/models/create_distributed_autonomous_database_shard_with_dedicated_infra_details.py new file mode 100644 index 0000000000..7bfb24d57f --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_distributed_autonomous_database_shard_with_dedicated_infra_details.py @@ -0,0 +1,532 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +from .create_distributed_autonomous_database_shard_database_details import CreateDistributedAutonomousDatabaseShardDatabaseDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails(CreateDistributedAutonomousDatabaseShardDatabaseDetails): + """ + Configuration for creating a distributed autonomous database shard using an existing ADB-D VM cluster. + """ + + #: A constant which can be used with the protection_mode property of a CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + #: This constant has a value of "MAXIMUM_AVAILABILITY" + PROTECTION_MODE_MAXIMUM_AVAILABILITY = "MAXIMUM_AVAILABILITY" + + #: A constant which can be used with the protection_mode property of a CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + #: This constant has a value of "MAXIMUM_PERFORMANCE" + PROTECTION_MODE_MAXIMUM_PERFORMANCE = "MAXIMUM_PERFORMANCE" + + def __init__(self, **kwargs): + """ + Initializes a new CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.distributed_database_v26.models.CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails.source` attribute + of this class is ``ADBD_EXISTING_CLUSTER`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source: + The value to assign to the source property of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + Allowed values for this property are: "ADBD_EXISTING_CLUSTER" + :type source: str + + :param admin_password: + The value to assign to the admin_password property of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :type admin_password: str + + :param compute_count: + The value to assign to the compute_count property of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :type compute_count: float + + :param data_storage_size_in_gbs: + The value to assign to the data_storage_size_in_gbs property of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :type data_storage_size_in_gbs: float + + :param shard_space_name: + The value to assign to the shard_space_name property of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :type shard_space_name: str + + :param is_auto_scaling_enabled: + The value to assign to the is_auto_scaling_enabled property of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :type is_auto_scaling_enabled: bool + + :param cloud_autonomous_vm_cluster_id: + The value to assign to the cloud_autonomous_vm_cluster_id property of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :type cloud_autonomous_vm_cluster_id: str + + :param vault_id: + The value to assign to the vault_id property of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :type vault_id: str + + :param kms_key_id: + The value to assign to the kms_key_id property of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :type kms_key_id: str + + :param kms_key_version_id: + The value to assign to the kms_key_version_id property of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :type kms_key_version_id: str + + :param okv_key_store_id: + The value to assign to the okv_key_store_id property of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :type okv_key_store_id: str + + :param okv_end_point_group_name: + The value to assign to the okv_end_point_group_name property of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :type okv_end_point_group_name: str + + :param protection_mode: + The value to assign to the protection_mode property of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE" + :type protection_mode: str + + :param fast_start_fail_over_lag_limit_in_seconds: + The value to assign to the fast_start_fail_over_lag_limit_in_seconds property of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :type fast_start_fail_over_lag_limit_in_seconds: int + + :param standby_maintenance_buffer_in_days: + The value to assign to the standby_maintenance_buffer_in_days property of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :type standby_maintenance_buffer_in_days: int + + """ + self.swagger_types = { + 'source': 'str', + 'admin_password': 'str', + 'compute_count': 'float', + 'data_storage_size_in_gbs': 'float', + 'shard_space_name': 'str', + 'is_auto_scaling_enabled': 'bool', + 'cloud_autonomous_vm_cluster_id': 'str', + 'vault_id': 'str', + 'kms_key_id': 'str', + 'kms_key_version_id': 'str', + 'okv_key_store_id': 'str', + 'okv_end_point_group_name': 'str', + 'protection_mode': 'str', + 'fast_start_fail_over_lag_limit_in_seconds': 'int', + 'standby_maintenance_buffer_in_days': 'int' + } + self.attribute_map = { + 'source': 'source', + 'admin_password': 'adminPassword', + 'compute_count': 'computeCount', + 'data_storage_size_in_gbs': 'dataStorageSizeInGbs', + 'shard_space_name': 'shardSpaceName', + 'is_auto_scaling_enabled': 'isAutoScalingEnabled', + 'cloud_autonomous_vm_cluster_id': 'cloudAutonomousVmClusterId', + 'vault_id': 'vaultId', + 'kms_key_id': 'kmsKeyId', + 'kms_key_version_id': 'kmsKeyVersionId', + 'okv_key_store_id': 'okvKeyStoreId', + 'okv_end_point_group_name': 'okvEndPointGroupName', + 'protection_mode': 'protectionMode', + 'fast_start_fail_over_lag_limit_in_seconds': 'fastStartFailOverLagLimitInSeconds', + 'standby_maintenance_buffer_in_days': 'standbyMaintenanceBufferInDays' + } + self._redacted_field_paths = [ + ['admin_password'], + ] + self._source = None + self._admin_password = None + self._compute_count = None + self._data_storage_size_in_gbs = None + self._shard_space_name = None + self._is_auto_scaling_enabled = None + self._cloud_autonomous_vm_cluster_id = None + self._vault_id = None + self._kms_key_id = None + self._kms_key_version_id = None + self._okv_key_store_id = None + self._okv_end_point_group_name = None + self._protection_mode = None + self._fast_start_fail_over_lag_limit_in_seconds = None + self._standby_maintenance_buffer_in_days = None + self._source = 'ADBD_EXISTING_CLUSTER' + + @property + def admin_password(self): + """ + **[Required]** Gets the admin_password of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + Admin password for shard database. + + + :return: The admin_password of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :rtype: str + """ + return self._admin_password + + @admin_password.setter + def admin_password(self, admin_password): + """ + Sets the admin_password of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + Admin password for shard database. + + + :param admin_password: The admin_password of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :type: str + """ + self._admin_password = admin_password + + @property + def compute_count(self): + """ + **[Required]** Gets the compute_count of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + The compute count for the shard database. It has to be in multiples of 2. + + + :return: The compute_count of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :rtype: float + """ + return self._compute_count + + @compute_count.setter + def compute_count(self, compute_count): + """ + Sets the compute_count of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + The compute count for the shard database. It has to be in multiples of 2. + + + :param compute_count: The compute_count of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :type: float + """ + self._compute_count = compute_count + + @property + def data_storage_size_in_gbs(self): + """ + **[Required]** Gets the data_storage_size_in_gbs of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + The data disk group size to be allocated in GBs for the shard database. + + + :return: The data_storage_size_in_gbs of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :rtype: float + """ + return self._data_storage_size_in_gbs + + @data_storage_size_in_gbs.setter + def data_storage_size_in_gbs(self, data_storage_size_in_gbs): + """ + Sets the data_storage_size_in_gbs of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + The data disk group size to be allocated in GBs for the shard database. + + + :param data_storage_size_in_gbs: The data_storage_size_in_gbs of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :type: float + """ + self._data_storage_size_in_gbs = data_storage_size_in_gbs + + @property + def shard_space_name(self): + """ + Gets the shard_space_name of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + The shard space name for the shard database. Shard space for an existing shard cannot be changed once the shard is created. + The shard space name is used when creating new shards. For user-defined sharding, every shard must have a unique + shard space name. For system-defined sharding, a shard space name is not required. + + + :return: The shard_space_name of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :rtype: str + """ + return self._shard_space_name + + @shard_space_name.setter + def shard_space_name(self, shard_space_name): + """ + Sets the shard_space_name of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + The shard space name for the shard database. Shard space for an existing shard cannot be changed once the shard is created. + The shard space name is used when creating new shards. For user-defined sharding, every shard must have a unique + shard space name. For system-defined sharding, a shard space name is not required. + + + :param shard_space_name: The shard_space_name of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :type: str + """ + self._shard_space_name = shard_space_name + + @property + def is_auto_scaling_enabled(self): + """ + Gets the is_auto_scaling_enabled of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + Indicates if vertical auto scaling is enabled for the Autonomous AI Database CPU core count. + The default value is `FALSE`. + + + :return: The is_auto_scaling_enabled of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :rtype: bool + """ + return self._is_auto_scaling_enabled + + @is_auto_scaling_enabled.setter + def is_auto_scaling_enabled(self, is_auto_scaling_enabled): + """ + Sets the is_auto_scaling_enabled of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + Indicates if vertical auto scaling is enabled for the Autonomous AI Database CPU core count. + The default value is `FALSE`. + + + :param is_auto_scaling_enabled: The is_auto_scaling_enabled of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :type: bool + """ + self._is_auto_scaling_enabled = is_auto_scaling_enabled + + @property + def cloud_autonomous_vm_cluster_id(self): + """ + **[Required]** Gets the cloud_autonomous_vm_cluster_id of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + The `OCID`__ of the cloud Autonomous Exadata VM Cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The cloud_autonomous_vm_cluster_id of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :rtype: str + """ + return self._cloud_autonomous_vm_cluster_id + + @cloud_autonomous_vm_cluster_id.setter + def cloud_autonomous_vm_cluster_id(self, cloud_autonomous_vm_cluster_id): + """ + Sets the cloud_autonomous_vm_cluster_id of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + The `OCID`__ of the cloud Autonomous Exadata VM Cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param cloud_autonomous_vm_cluster_id: The cloud_autonomous_vm_cluster_id of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :type: str + """ + self._cloud_autonomous_vm_cluster_id = cloud_autonomous_vm_cluster_id + + @property + def vault_id(self): + """ + Gets the vault_id of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :return: The vault_id of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :rtype: str + """ + return self._vault_id + + @vault_id.setter + def vault_id(self, vault_id): + """ + Sets the vault_id of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :param vault_id: The vault_id of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :type: str + """ + self._vault_id = vault_id + + @property + def kms_key_id(self): + """ + Gets the kms_key_id of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_id of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :rtype: str + """ + return self._kms_key_id + + @kms_key_id.setter + def kms_key_id(self, kms_key_id): + """ + Sets the kms_key_id of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_id: The kms_key_id of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :type: str + """ + self._kms_key_id = kms_key_id + + @property + def kms_key_version_id(self): + """ + Gets the kms_key_version_id of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_version_id of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :rtype: str + """ + return self._kms_key_version_id + + @kms_key_version_id.setter + def kms_key_version_id(self, kms_key_version_id): + """ + Sets the kms_key_version_id of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_version_id: The kms_key_version_id of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :type: str + """ + self._kms_key_version_id = kms_key_version_id + + @property + def okv_key_store_id(self): + """ + Gets the okv_key_store_id of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + The `OCID`__ of the key store used to create the shard. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The okv_key_store_id of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :rtype: str + """ + return self._okv_key_store_id + + @okv_key_store_id.setter + def okv_key_store_id(self, okv_key_store_id): + """ + Sets the okv_key_store_id of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + The `OCID`__ of the key store used to create the shard. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param okv_key_store_id: The okv_key_store_id of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :type: str + """ + self._okv_key_store_id = okv_key_store_id + + @property + def okv_end_point_group_name(self): + """ + Gets the okv_end_point_group_name of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + The OKV endpoint name. + + + :return: The okv_end_point_group_name of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :rtype: str + """ + return self._okv_end_point_group_name + + @okv_end_point_group_name.setter + def okv_end_point_group_name(self, okv_end_point_group_name): + """ + Sets the okv_end_point_group_name of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + The OKV endpoint name. + + + :param okv_end_point_group_name: The okv_end_point_group_name of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :type: str + """ + self._okv_end_point_group_name = okv_end_point_group_name + + @property + def protection_mode(self): + """ + Gets the protection_mode of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + The protection mode for the shard peer. + + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE" + + + :return: The protection_mode of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :rtype: str + """ + return self._protection_mode + + @protection_mode.setter + def protection_mode(self, protection_mode): + """ + Sets the protection_mode of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + The protection mode for the shard peer. + + + :param protection_mode: The protection_mode of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :type: str + """ + allowed_values = ["MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE"] + if not value_allowed_none_or_none_sentinel(protection_mode, allowed_values): + raise ValueError( + f"Invalid value for `protection_mode`, must be None or one of {allowed_values}" + ) + self._protection_mode = protection_mode + + @property + def fast_start_fail_over_lag_limit_in_seconds(self): + """ + Gets the fast_start_fail_over_lag_limit_in_seconds of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + The lag time preference based on data loss tolerance in seconds. + + + :return: The fast_start_fail_over_lag_limit_in_seconds of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :rtype: int + """ + return self._fast_start_fail_over_lag_limit_in_seconds + + @fast_start_fail_over_lag_limit_in_seconds.setter + def fast_start_fail_over_lag_limit_in_seconds(self, fast_start_fail_over_lag_limit_in_seconds): + """ + Sets the fast_start_fail_over_lag_limit_in_seconds of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + The lag time preference based on data loss tolerance in seconds. + + + :param fast_start_fail_over_lag_limit_in_seconds: The fast_start_fail_over_lag_limit_in_seconds of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :type: int + """ + self._fast_start_fail_over_lag_limit_in_seconds = fast_start_fail_over_lag_limit_in_seconds + + @property + def standby_maintenance_buffer_in_days(self): + """ + Gets the standby_maintenance_buffer_in_days of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + The scheduling detail for the quarterly maintenance window of the standby Autonomous Container Database. + + + :return: The standby_maintenance_buffer_in_days of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :rtype: int + """ + return self._standby_maintenance_buffer_in_days + + @standby_maintenance_buffer_in_days.setter + def standby_maintenance_buffer_in_days(self, standby_maintenance_buffer_in_days): + """ + Sets the standby_maintenance_buffer_in_days of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + The scheduling detail for the quarterly maintenance window of the standby Autonomous Container Database. + + + :param standby_maintenance_buffer_in_days: The standby_maintenance_buffer_in_days of this CreateDistributedAutonomousDatabaseShardWithDedicatedInfraDetails. + :type: int + """ + self._standby_maintenance_buffer_in_days = standby_maintenance_buffer_in_days + + def __repr__(self): + as_dict = to_dict(self) + redact_password_field(as_dict, ['admin_password']) + return formatted_flat_dict(as_dict) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_distributed_database_catalog_database_details.py b/src/oci/distributed_database_v26/models/create_distributed_database_catalog_database_details.py new file mode 100644 index 0000000000..7ca0f33da9 --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_distributed_database_catalog_database_details.py @@ -0,0 +1,141 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateDistributedDatabaseCatalogDatabaseDetails(object): + """ + Details for creating a distributed database catalog. + """ + + #: A constant which can be used with the source property of a CreateDistributedDatabaseCatalogDatabaseDetails. + #: This constant has a value of "XS_EXISTING_CLUSTER" + SOURCE_XS_EXISTING_CLUSTER = "XS_EXISTING_CLUSTER" + + #: A constant which can be used with the source property of a CreateDistributedDatabaseCatalogDatabaseDetails. + #: This constant has a value of "XS_NEW_CLUSTER" + SOURCE_XS_NEW_CLUSTER = "XS_NEW_CLUSTER" + + #: A constant which can be used with the source property of a CreateDistributedDatabaseCatalogDatabaseDetails. + #: This constant has a value of "XS_NEW_VAULT_AND_CLUSTER" + SOURCE_XS_NEW_VAULT_AND_CLUSTER = "XS_NEW_VAULT_AND_CLUSTER" + + #: A constant which can be used with the source property of a CreateDistributedDatabaseCatalogDatabaseDetails. + #: This constant has a value of "XD_EXISTING_CLUSTER" + SOURCE_XD_EXISTING_CLUSTER = "XD_EXISTING_CLUSTER" + + #: A constant which can be used with the source property of a CreateDistributedDatabaseCatalogDatabaseDetails. + #: This constant has a value of "EXISTING_DB_HOME" + SOURCE_EXISTING_DB_HOME = "EXISTING_DB_HOME" + + def __init__(self, **kwargs): + """ + Initializes a new CreateDistributedDatabaseCatalogDatabaseDetails object with values from keyword arguments. This class has the following subclasses and if you are using this class as input + to a service operations then you should favor using a subclass over the base class: + + * :class:`~oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails` + * :class:`~oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails` + * :class:`~oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails` + * :class:`~oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails` + * :class:`~oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails` + + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source: + The value to assign to the source property of this CreateDistributedDatabaseCatalogDatabaseDetails. + Allowed values for this property are: "XS_EXISTING_CLUSTER", "XS_NEW_CLUSTER", "XS_NEW_VAULT_AND_CLUSTER", "XD_EXISTING_CLUSTER", "EXISTING_DB_HOME" + :type source: str + + """ + self.swagger_types = { + 'source': 'str' + } + self.attribute_map = { + 'source': 'source' + } + self._source = None + + @staticmethod + def get_subtype(object_dictionary): + """ + Given the hash representation of a subtype of this class, + use the info in the hash to return the class of the subtype. + """ + type = object_dictionary['source'] + + if type == 'XS_NEW_VAULT_AND_CLUSTER': + return 'CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails' + + if type == 'EXISTING_DB_HOME': + return 'CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails' + + if type == 'XS_EXISTING_CLUSTER': + return 'CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails' + + if type == 'XD_EXISTING_CLUSTER': + return 'CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails' + + if type == 'XS_NEW_CLUSTER': + return 'CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails' + else: + return 'CreateDistributedDatabaseCatalogDatabaseDetails' + + @property + def source(self): + """ + **[Required]** Gets the source of this CreateDistributedDatabaseCatalogDatabaseDetails. + The source of the Globally distributed database type. + Use XS_EXISTING_CLUSTER for a database on Exascale Infrastructure that uses a pre-existing cluster. + Use XS_NEW_CLUSTER for a database on Exascale Infrastructure that requires a new cluster created from scratch. + Use XS_NEW_VAULT_AND_CLUSTER for a database on Exascale Infrastructure that requires a new vault and cluster created from scratch. + Use XD_EXISTING_CLUSTER for a database on Dedicated Infrastructure that uses a pre-existing cluster. + Use EXISTING_DB_HOME for a database on a pre-existing database home. + + Allowed values for this property are: "XS_EXISTING_CLUSTER", "XS_NEW_CLUSTER", "XS_NEW_VAULT_AND_CLUSTER", "XD_EXISTING_CLUSTER", "EXISTING_DB_HOME" + + + :return: The source of this CreateDistributedDatabaseCatalogDatabaseDetails. + :rtype: str + """ + return self._source + + @source.setter + def source(self, source): + """ + Sets the source of this CreateDistributedDatabaseCatalogDatabaseDetails. + The source of the Globally distributed database type. + Use XS_EXISTING_CLUSTER for a database on Exascale Infrastructure that uses a pre-existing cluster. + Use XS_NEW_CLUSTER for a database on Exascale Infrastructure that requires a new cluster created from scratch. + Use XS_NEW_VAULT_AND_CLUSTER for a database on Exascale Infrastructure that requires a new vault and cluster created from scratch. + Use XD_EXISTING_CLUSTER for a database on Dedicated Infrastructure that uses a pre-existing cluster. + Use EXISTING_DB_HOME for a database on a pre-existing database home. + + + :param source: The source of this CreateDistributedDatabaseCatalogDatabaseDetails. + :type: str + """ + allowed_values = ["XS_EXISTING_CLUSTER", "XS_NEW_CLUSTER", "XS_NEW_VAULT_AND_CLUSTER", "XD_EXISTING_CLUSTER", "EXISTING_DB_HOME"] + if not value_allowed_none_or_none_sentinel(source, allowed_values): + raise ValueError( + f"Invalid value for `source`, must be None or one of {allowed_values}" + ) + self._source = source + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_distributed_database_catalog_database_with_db_home_details.py b/src/oci/distributed_database_v26/models/create_distributed_database_catalog_database_with_db_home_details.py new file mode 100644 index 0000000000..00645e5d11 --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_distributed_database_catalog_database_with_db_home_details.py @@ -0,0 +1,331 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +from .create_distributed_database_catalog_database_details import CreateDistributedDatabaseCatalogDatabaseDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails(CreateDistributedDatabaseCatalogDatabaseDetails): + """ + Configuration for creating a distributed database catalog using a pre-existing Database Home. + """ + + #: A constant which can be used with the protection_mode property of a CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + #: This constant has a value of "MAXIMUM_AVAILABILITY" + PROTECTION_MODE_MAXIMUM_AVAILABILITY = "MAXIMUM_AVAILABILITY" + + #: A constant which can be used with the protection_mode property of a CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + #: This constant has a value of "MAXIMUM_PERFORMANCE" + PROTECTION_MODE_MAXIMUM_PERFORMANCE = "MAXIMUM_PERFORMANCE" + + #: A constant which can be used with the protection_mode property of a CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + #: This constant has a value of "MAXIMUM_PROTECTION" + PROTECTION_MODE_MAXIMUM_PROTECTION = "MAXIMUM_PROTECTION" + + #: A constant which can be used with the transport_type property of a CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + #: This constant has a value of "SYNC" + TRANSPORT_TYPE_SYNC = "SYNC" + + #: A constant which can be used with the transport_type property of a CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + #: This constant has a value of "ASYNC" + TRANSPORT_TYPE_ASYNC = "ASYNC" + + #: A constant which can be used with the transport_type property of a CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + #: This constant has a value of "FASTSYNC" + TRANSPORT_TYPE_FASTSYNC = "FASTSYNC" + + def __init__(self, **kwargs): + """ + Initializes a new CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails.source` attribute + of this class is ``EXISTING_DB_HOME`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source: + The value to assign to the source property of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + Allowed values for this property are: "XS_EXISTING_CLUSTER", "XS_NEW_CLUSTER", "XS_NEW_VAULT_AND_CLUSTER", "XD_EXISTING_CLUSTER", "EXISTING_DB_HOME" + :type source: str + + :param db_home_id: + The value to assign to the db_home_id property of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + :type db_home_id: str + + :param admin_password: + The value to assign to the admin_password property of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + :type admin_password: str + + :param vault_id: + The value to assign to the vault_id property of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + :type vault_id: str + + :param kms_key_id: + The value to assign to the kms_key_id property of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + :type kms_key_id: str + + :param kms_key_version_id: + The value to assign to the kms_key_version_id property of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + :type kms_key_version_id: str + + :param protection_mode: + The value to assign to the protection_mode property of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION" + :type protection_mode: str + + :param transport_type: + The value to assign to the transport_type property of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC" + :type transport_type: str + + """ + self.swagger_types = { + 'source': 'str', + 'db_home_id': 'str', + 'admin_password': 'str', + 'vault_id': 'str', + 'kms_key_id': 'str', + 'kms_key_version_id': 'str', + 'protection_mode': 'str', + 'transport_type': 'str' + } + self.attribute_map = { + 'source': 'source', + 'db_home_id': 'dbHomeId', + 'admin_password': 'adminPassword', + 'vault_id': 'vaultId', + 'kms_key_id': 'kmsKeyId', + 'kms_key_version_id': 'kmsKeyVersionId', + 'protection_mode': 'protectionMode', + 'transport_type': 'transportType' + } + self._redacted_field_paths = [ + ['admin_password'], + ] + self._source = None + self._db_home_id = None + self._admin_password = None + self._vault_id = None + self._kms_key_id = None + self._kms_key_version_id = None + self._protection_mode = None + self._transport_type = None + self._source = 'EXISTING_DB_HOME' + + @property + def db_home_id(self): + """ + **[Required]** Gets the db_home_id of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + The `OCID`__ of the Database Home. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The db_home_id of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + :rtype: str + """ + return self._db_home_id + + @db_home_id.setter + def db_home_id(self, db_home_id): + """ + Sets the db_home_id of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + The `OCID`__ of the Database Home. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param db_home_id: The db_home_id of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + :type: str + """ + self._db_home_id = db_home_id + + @property + def admin_password(self): + """ + **[Required]** Gets the admin_password of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + The admin password for the catalog associated with Globally distributed database. + + + :return: The admin_password of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + :rtype: str + """ + return self._admin_password + + @admin_password.setter + def admin_password(self, admin_password): + """ + Sets the admin_password of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + The admin password for the catalog associated with Globally distributed database. + + + :param admin_password: The admin_password of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + :type: str + """ + self._admin_password = admin_password + + @property + def vault_id(self): + """ + Gets the vault_id of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :return: The vault_id of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + :rtype: str + """ + return self._vault_id + + @vault_id.setter + def vault_id(self, vault_id): + """ + Sets the vault_id of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :param vault_id: The vault_id of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + :type: str + """ + self._vault_id = vault_id + + @property + def kms_key_id(self): + """ + Gets the kms_key_id of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_id of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + :rtype: str + """ + return self._kms_key_id + + @kms_key_id.setter + def kms_key_id(self, kms_key_id): + """ + Sets the kms_key_id of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_id: The kms_key_id of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + :type: str + """ + self._kms_key_id = kms_key_id + + @property + def kms_key_version_id(self): + """ + Gets the kms_key_version_id of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_version_id of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + :rtype: str + """ + return self._kms_key_version_id + + @kms_key_version_id.setter + def kms_key_version_id(self, kms_key_version_id): + """ + Sets the kms_key_version_id of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_version_id: The kms_key_version_id of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + :type: str + """ + self._kms_key_version_id = kms_key_version_id + + @property + def protection_mode(self): + """ + Gets the protection_mode of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + The protection mode used for the Data Guard association. + + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION" + + + :return: The protection_mode of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + :rtype: str + """ + return self._protection_mode + + @protection_mode.setter + def protection_mode(self, protection_mode): + """ + Sets the protection_mode of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + The protection mode used for the Data Guard association. + + + :param protection_mode: The protection_mode of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + :type: str + """ + allowed_values = ["MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION"] + if not value_allowed_none_or_none_sentinel(protection_mode, allowed_values): + raise ValueError( + f"Invalid value for `protection_mode`, must be None or one of {allowed_values}" + ) + self._protection_mode = protection_mode + + @property + def transport_type(self): + """ + Gets the transport_type of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + The transport type used for the Data Guard association. + + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC" + + + :return: The transport_type of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + :rtype: str + """ + return self._transport_type + + @transport_type.setter + def transport_type(self, transport_type): + """ + Sets the transport_type of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + The transport type used for the Data Guard association. + + + :param transport_type: The transport_type of this CreateDistributedDatabaseCatalogDatabaseWithDbHomeDetails. + :type: str + """ + allowed_values = ["SYNC", "ASYNC", "FASTSYNC"] + if not value_allowed_none_or_none_sentinel(transport_type, allowed_values): + raise ValueError( + f"Invalid value for `transport_type`, must be None or one of {allowed_values}" + ) + self._transport_type = transport_type + + def __repr__(self): + as_dict = to_dict(self) + redact_password_field(as_dict, ['admin_password']) + return formatted_flat_dict(as_dict) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_distributed_database_catalog_database_with_exadb_xd_details.py b/src/oci/distributed_database_v26/models/create_distributed_database_catalog_database_with_exadb_xd_details.py new file mode 100644 index 0000000000..8246a6f61e --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_distributed_database_catalog_database_with_exadb_xd_details.py @@ -0,0 +1,331 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +from .create_distributed_database_catalog_database_details import CreateDistributedDatabaseCatalogDatabaseDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails(CreateDistributedDatabaseCatalogDatabaseDetails): + """ + Configuration for creating a distributed database catalog using an existing ExaDB-D VM cluster. + """ + + #: A constant which can be used with the protection_mode property of a CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + #: This constant has a value of "MAXIMUM_AVAILABILITY" + PROTECTION_MODE_MAXIMUM_AVAILABILITY = "MAXIMUM_AVAILABILITY" + + #: A constant which can be used with the protection_mode property of a CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + #: This constant has a value of "MAXIMUM_PERFORMANCE" + PROTECTION_MODE_MAXIMUM_PERFORMANCE = "MAXIMUM_PERFORMANCE" + + #: A constant which can be used with the protection_mode property of a CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + #: This constant has a value of "MAXIMUM_PROTECTION" + PROTECTION_MODE_MAXIMUM_PROTECTION = "MAXIMUM_PROTECTION" + + #: A constant which can be used with the transport_type property of a CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + #: This constant has a value of "SYNC" + TRANSPORT_TYPE_SYNC = "SYNC" + + #: A constant which can be used with the transport_type property of a CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + #: This constant has a value of "ASYNC" + TRANSPORT_TYPE_ASYNC = "ASYNC" + + #: A constant which can be used with the transport_type property of a CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + #: This constant has a value of "FASTSYNC" + TRANSPORT_TYPE_FASTSYNC = "FASTSYNC" + + def __init__(self, **kwargs): + """ + Initializes a new CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails.source` attribute + of this class is ``XD_EXISTING_CLUSTER`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source: + The value to assign to the source property of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + Allowed values for this property are: "XS_EXISTING_CLUSTER", "XS_NEW_CLUSTER", "XS_NEW_VAULT_AND_CLUSTER", "XD_EXISTING_CLUSTER", "EXISTING_DB_HOME" + :type source: str + + :param vm_cluster_id: + The value to assign to the vm_cluster_id property of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + :type vm_cluster_id: str + + :param admin_password: + The value to assign to the admin_password property of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + :type admin_password: str + + :param vault_id: + The value to assign to the vault_id property of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + :type vault_id: str + + :param kms_key_id: + The value to assign to the kms_key_id property of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + :type kms_key_id: str + + :param kms_key_version_id: + The value to assign to the kms_key_version_id property of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + :type kms_key_version_id: str + + :param protection_mode: + The value to assign to the protection_mode property of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION" + :type protection_mode: str + + :param transport_type: + The value to assign to the transport_type property of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC" + :type transport_type: str + + """ + self.swagger_types = { + 'source': 'str', + 'vm_cluster_id': 'str', + 'admin_password': 'str', + 'vault_id': 'str', + 'kms_key_id': 'str', + 'kms_key_version_id': 'str', + 'protection_mode': 'str', + 'transport_type': 'str' + } + self.attribute_map = { + 'source': 'source', + 'vm_cluster_id': 'vmClusterId', + 'admin_password': 'adminPassword', + 'vault_id': 'vaultId', + 'kms_key_id': 'kmsKeyId', + 'kms_key_version_id': 'kmsKeyVersionId', + 'protection_mode': 'protectionMode', + 'transport_type': 'transportType' + } + self._redacted_field_paths = [ + ['admin_password'], + ] + self._source = None + self._vm_cluster_id = None + self._admin_password = None + self._vault_id = None + self._kms_key_id = None + self._kms_key_version_id = None + self._protection_mode = None + self._transport_type = None + self._source = 'XD_EXISTING_CLUSTER' + + @property + def vm_cluster_id(self): + """ + **[Required]** Gets the vm_cluster_id of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + The `OCID`__ of the Cloud VM Cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The vm_cluster_id of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + :rtype: str + """ + return self._vm_cluster_id + + @vm_cluster_id.setter + def vm_cluster_id(self, vm_cluster_id): + """ + Sets the vm_cluster_id of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + The `OCID`__ of the Cloud VM Cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param vm_cluster_id: The vm_cluster_id of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + :type: str + """ + self._vm_cluster_id = vm_cluster_id + + @property + def admin_password(self): + """ + **[Required]** Gets the admin_password of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + The admin password for the catalog associated with Globally distributed database. + + + :return: The admin_password of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + :rtype: str + """ + return self._admin_password + + @admin_password.setter + def admin_password(self, admin_password): + """ + Sets the admin_password of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + The admin password for the catalog associated with Globally distributed database. + + + :param admin_password: The admin_password of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + :type: str + """ + self._admin_password = admin_password + + @property + def vault_id(self): + """ + Gets the vault_id of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :return: The vault_id of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + :rtype: str + """ + return self._vault_id + + @vault_id.setter + def vault_id(self, vault_id): + """ + Sets the vault_id of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :param vault_id: The vault_id of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + :type: str + """ + self._vault_id = vault_id + + @property + def kms_key_id(self): + """ + Gets the kms_key_id of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_id of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + :rtype: str + """ + return self._kms_key_id + + @kms_key_id.setter + def kms_key_id(self, kms_key_id): + """ + Sets the kms_key_id of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_id: The kms_key_id of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + :type: str + """ + self._kms_key_id = kms_key_id + + @property + def kms_key_version_id(self): + """ + Gets the kms_key_version_id of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_version_id of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + :rtype: str + """ + return self._kms_key_version_id + + @kms_key_version_id.setter + def kms_key_version_id(self, kms_key_version_id): + """ + Sets the kms_key_version_id of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_version_id: The kms_key_version_id of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + :type: str + """ + self._kms_key_version_id = kms_key_version_id + + @property + def protection_mode(self): + """ + Gets the protection_mode of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + The protection mode used for the Data Guard association. + + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION" + + + :return: The protection_mode of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + :rtype: str + """ + return self._protection_mode + + @protection_mode.setter + def protection_mode(self, protection_mode): + """ + Sets the protection_mode of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + The protection mode used for the Data Guard association. + + + :param protection_mode: The protection_mode of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + :type: str + """ + allowed_values = ["MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION"] + if not value_allowed_none_or_none_sentinel(protection_mode, allowed_values): + raise ValueError( + f"Invalid value for `protection_mode`, must be None or one of {allowed_values}" + ) + self._protection_mode = protection_mode + + @property + def transport_type(self): + """ + Gets the transport_type of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + The transport type used for the Data Guard association. + + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC" + + + :return: The transport_type of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + :rtype: str + """ + return self._transport_type + + @transport_type.setter + def transport_type(self, transport_type): + """ + Sets the transport_type of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + The transport type used for the Data Guard association. + + + :param transport_type: The transport_type of this CreateDistributedDatabaseCatalogDatabaseWithExadbXdDetails. + :type: str + """ + allowed_values = ["SYNC", "ASYNC", "FASTSYNC"] + if not value_allowed_none_or_none_sentinel(transport_type, allowed_values): + raise ValueError( + f"Invalid value for `transport_type`, must be None or one of {allowed_values}" + ) + self._transport_type = transport_type + + def __repr__(self): + as_dict = to_dict(self) + redact_password_field(as_dict, ['admin_password']) + return formatted_flat_dict(as_dict) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_distributed_database_catalog_database_with_exadb_xs_details.py b/src/oci/distributed_database_v26/models/create_distributed_database_catalog_database_with_exadb_xs_details.py new file mode 100644 index 0000000000..9e9ca44530 --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_distributed_database_catalog_database_with_exadb_xs_details.py @@ -0,0 +1,331 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +from .create_distributed_database_catalog_database_details import CreateDistributedDatabaseCatalogDatabaseDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails(CreateDistributedDatabaseCatalogDatabaseDetails): + """ + Configuration for creating a distributed database catalog using an existing ExaDB-XS VM cluster. + """ + + #: A constant which can be used with the protection_mode property of a CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + #: This constant has a value of "MAXIMUM_AVAILABILITY" + PROTECTION_MODE_MAXIMUM_AVAILABILITY = "MAXIMUM_AVAILABILITY" + + #: A constant which can be used with the protection_mode property of a CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + #: This constant has a value of "MAXIMUM_PERFORMANCE" + PROTECTION_MODE_MAXIMUM_PERFORMANCE = "MAXIMUM_PERFORMANCE" + + #: A constant which can be used with the protection_mode property of a CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + #: This constant has a value of "MAXIMUM_PROTECTION" + PROTECTION_MODE_MAXIMUM_PROTECTION = "MAXIMUM_PROTECTION" + + #: A constant which can be used with the transport_type property of a CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + #: This constant has a value of "SYNC" + TRANSPORT_TYPE_SYNC = "SYNC" + + #: A constant which can be used with the transport_type property of a CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + #: This constant has a value of "ASYNC" + TRANSPORT_TYPE_ASYNC = "ASYNC" + + #: A constant which can be used with the transport_type property of a CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + #: This constant has a value of "FASTSYNC" + TRANSPORT_TYPE_FASTSYNC = "FASTSYNC" + + def __init__(self, **kwargs): + """ + Initializes a new CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails.source` attribute + of this class is ``XS_EXISTING_CLUSTER`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source: + The value to assign to the source property of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + Allowed values for this property are: "XS_EXISTING_CLUSTER", "XS_NEW_CLUSTER", "XS_NEW_VAULT_AND_CLUSTER", "XD_EXISTING_CLUSTER", "EXISTING_DB_HOME" + :type source: str + + :param vm_cluster_id: + The value to assign to the vm_cluster_id property of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + :type vm_cluster_id: str + + :param admin_password: + The value to assign to the admin_password property of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + :type admin_password: str + + :param vault_id: + The value to assign to the vault_id property of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + :type vault_id: str + + :param kms_key_id: + The value to assign to the kms_key_id property of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + :type kms_key_id: str + + :param kms_key_version_id: + The value to assign to the kms_key_version_id property of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + :type kms_key_version_id: str + + :param protection_mode: + The value to assign to the protection_mode property of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION" + :type protection_mode: str + + :param transport_type: + The value to assign to the transport_type property of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC" + :type transport_type: str + + """ + self.swagger_types = { + 'source': 'str', + 'vm_cluster_id': 'str', + 'admin_password': 'str', + 'vault_id': 'str', + 'kms_key_id': 'str', + 'kms_key_version_id': 'str', + 'protection_mode': 'str', + 'transport_type': 'str' + } + self.attribute_map = { + 'source': 'source', + 'vm_cluster_id': 'vmClusterId', + 'admin_password': 'adminPassword', + 'vault_id': 'vaultId', + 'kms_key_id': 'kmsKeyId', + 'kms_key_version_id': 'kmsKeyVersionId', + 'protection_mode': 'protectionMode', + 'transport_type': 'transportType' + } + self._redacted_field_paths = [ + ['admin_password'], + ] + self._source = None + self._vm_cluster_id = None + self._admin_password = None + self._vault_id = None + self._kms_key_id = None + self._kms_key_version_id = None + self._protection_mode = None + self._transport_type = None + self._source = 'XS_EXISTING_CLUSTER' + + @property + def vm_cluster_id(self): + """ + **[Required]** Gets the vm_cluster_id of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + The `OCID`__ of the VmCluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The vm_cluster_id of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + :rtype: str + """ + return self._vm_cluster_id + + @vm_cluster_id.setter + def vm_cluster_id(self, vm_cluster_id): + """ + Sets the vm_cluster_id of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + The `OCID`__ of the VmCluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param vm_cluster_id: The vm_cluster_id of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + :type: str + """ + self._vm_cluster_id = vm_cluster_id + + @property + def admin_password(self): + """ + **[Required]** Gets the admin_password of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + The admin password for the catalog associated with the distributed database. + + + :return: The admin_password of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + :rtype: str + """ + return self._admin_password + + @admin_password.setter + def admin_password(self, admin_password): + """ + Sets the admin_password of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + The admin password for the catalog associated with the distributed database. + + + :param admin_password: The admin_password of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + :type: str + """ + self._admin_password = admin_password + + @property + def vault_id(self): + """ + Gets the vault_id of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :return: The vault_id of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + :rtype: str + """ + return self._vault_id + + @vault_id.setter + def vault_id(self, vault_id): + """ + Sets the vault_id of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :param vault_id: The vault_id of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + :type: str + """ + self._vault_id = vault_id + + @property + def kms_key_id(self): + """ + Gets the kms_key_id of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_id of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + :rtype: str + """ + return self._kms_key_id + + @kms_key_id.setter + def kms_key_id(self, kms_key_id): + """ + Sets the kms_key_id of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_id: The kms_key_id of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + :type: str + """ + self._kms_key_id = kms_key_id + + @property + def kms_key_version_id(self): + """ + Gets the kms_key_version_id of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_version_id of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + :rtype: str + """ + return self._kms_key_version_id + + @kms_key_version_id.setter + def kms_key_version_id(self, kms_key_version_id): + """ + Sets the kms_key_version_id of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_version_id: The kms_key_version_id of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + :type: str + """ + self._kms_key_version_id = kms_key_version_id + + @property + def protection_mode(self): + """ + Gets the protection_mode of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + The protection mode used for the Data Guard association. + + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION" + + + :return: The protection_mode of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + :rtype: str + """ + return self._protection_mode + + @protection_mode.setter + def protection_mode(self, protection_mode): + """ + Sets the protection_mode of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + The protection mode used for the Data Guard association. + + + :param protection_mode: The protection_mode of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + :type: str + """ + allowed_values = ["MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION"] + if not value_allowed_none_or_none_sentinel(protection_mode, allowed_values): + raise ValueError( + f"Invalid value for `protection_mode`, must be None or one of {allowed_values}" + ) + self._protection_mode = protection_mode + + @property + def transport_type(self): + """ + Gets the transport_type of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + The transport type used for the Data Guard association. + + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC" + + + :return: The transport_type of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + :rtype: str + """ + return self._transport_type + + @transport_type.setter + def transport_type(self, transport_type): + """ + Sets the transport_type of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + The transport type used for the Data Guard association. + + + :param transport_type: The transport_type of this CreateDistributedDatabaseCatalogDatabaseWithExadbXsDetails. + :type: str + """ + allowed_values = ["SYNC", "ASYNC", "FASTSYNC"] + if not value_allowed_none_or_none_sentinel(transport_type, allowed_values): + raise ValueError( + f"Invalid value for `transport_type`, must be None or one of {allowed_values}" + ) + self._transport_type = transport_type + + def __repr__(self): + as_dict = to_dict(self) + redact_password_field(as_dict, ['admin_password']) + return formatted_flat_dict(as_dict) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_distributed_database_catalog_details.py b/src/oci/distributed_database_v26/models/create_distributed_database_catalog_details.py new file mode 100644 index 0000000000..25f6777263 --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_distributed_database_catalog_details.py @@ -0,0 +1,97 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateDistributedDatabaseCatalogDetails(object): + """ + Details required to create a Globally distributed database catalog. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateDistributedDatabaseCatalogDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param original_replica: + The value to assign to the original_replica property of this CreateDistributedDatabaseCatalogDetails. + :type original_replica: oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogReplicaDetails + + :param data_guard_replicas: + The value to assign to the data_guard_replicas property of this CreateDistributedDatabaseCatalogDetails. + :type data_guard_replicas: list[oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogReplicaDetails] + + """ + self.swagger_types = { + 'original_replica': 'CreateDistributedDatabaseCatalogReplicaDetails', + 'data_guard_replicas': 'list[CreateDistributedDatabaseCatalogReplicaDetails]' + } + self.attribute_map = { + 'original_replica': 'originalReplica', + 'data_guard_replicas': 'dataGuardReplicas' + } + self._original_replica = None + self._data_guard_replicas = None + + @property + def original_replica(self): + """ + **[Required]** Gets the original_replica of this CreateDistributedDatabaseCatalogDetails. + + :return: The original_replica of this CreateDistributedDatabaseCatalogDetails. + :rtype: oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogReplicaDetails + """ + return self._original_replica + + @original_replica.setter + def original_replica(self, original_replica): + """ + Sets the original_replica of this CreateDistributedDatabaseCatalogDetails. + + :param original_replica: The original_replica of this CreateDistributedDatabaseCatalogDetails. + :type: oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogReplicaDetails + """ + self._original_replica = original_replica + + @property + def data_guard_replicas(self): + """ + Gets the data_guard_replicas of this CreateDistributedDatabaseCatalogDetails. + Details required to create data guard replicas for the catalog. + + + :return: The data_guard_replicas of this CreateDistributedDatabaseCatalogDetails. + :rtype: list[oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogReplicaDetails] + """ + return self._data_guard_replicas + + @data_guard_replicas.setter + def data_guard_replicas(self, data_guard_replicas): + """ + Sets the data_guard_replicas of this CreateDistributedDatabaseCatalogDetails. + Details required to create data guard replicas for the catalog. + + + :param data_guard_replicas: The data_guard_replicas of this CreateDistributedDatabaseCatalogDetails. + :type: list[oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogReplicaDetails] + """ + self._data_guard_replicas = data_guard_replicas + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_distributed_database_catalog_replica_details.py b/src/oci/distributed_database_v26/models/create_distributed_database_catalog_replica_details.py new file mode 100644 index 0000000000..758ba7f98c --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_distributed_database_catalog_replica_details.py @@ -0,0 +1,101 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateDistributedDatabaseCatalogReplicaDetails(object): + """ + Details required to create a catalog replica. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateDistributedDatabaseCatalogReplicaDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this CreateDistributedDatabaseCatalogReplicaDetails. + :type name: str + + :param database: + The value to assign to the database property of this CreateDistributedDatabaseCatalogReplicaDetails. + :type database: oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDatabaseDetails + + """ + self.swagger_types = { + 'name': 'str', + 'database': 'CreateDistributedDatabaseCatalogDatabaseDetails' + } + self.attribute_map = { + 'name': 'name', + 'database': 'database' + } + self._name = None + self._database = None + + @property + def name(self): + """ + **[Required]** Gets the name of this CreateDistributedDatabaseCatalogReplicaDetails. + The name of the catalog replica. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this CreateDistributedDatabaseCatalogReplicaDetails. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this CreateDistributedDatabaseCatalogReplicaDetails. + The name of the catalog replica. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this CreateDistributedDatabaseCatalogReplicaDetails. + :type: str + """ + self._name = name + + @property + def database(self): + """ + **[Required]** Gets the database of this CreateDistributedDatabaseCatalogReplicaDetails. + + :return: The database of this CreateDistributedDatabaseCatalogReplicaDetails. + :rtype: oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDatabaseDetails + """ + return self._database + + @database.setter + def database(self, database): + """ + Sets the database of this CreateDistributedDatabaseCatalogReplicaDetails. + + :param database: The database of this CreateDistributedDatabaseCatalogReplicaDetails. + :type: oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDatabaseDetails + """ + self._database = database + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_distributed_database_catalog_with_exadb_xs_new_cluster_details.py b/src/oci/distributed_database_v26/models/create_distributed_database_catalog_with_exadb_xs_new_cluster_details.py new file mode 100644 index 0000000000..985c1cb07e --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_distributed_database_catalog_with_exadb_xs_new_cluster_details.py @@ -0,0 +1,389 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +from .create_distributed_database_catalog_database_details import CreateDistributedDatabaseCatalogDatabaseDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails(CreateDistributedDatabaseCatalogDatabaseDetails): + """ + Configuration for creating a distributed database catalog on a new ExaDB-XS VM cluster. + """ + + #: A constant which can be used with the protection_mode property of a CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + #: This constant has a value of "MAXIMUM_AVAILABILITY" + PROTECTION_MODE_MAXIMUM_AVAILABILITY = "MAXIMUM_AVAILABILITY" + + #: A constant which can be used with the protection_mode property of a CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + #: This constant has a value of "MAXIMUM_PERFORMANCE" + PROTECTION_MODE_MAXIMUM_PERFORMANCE = "MAXIMUM_PERFORMANCE" + + #: A constant which can be used with the protection_mode property of a CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + #: This constant has a value of "MAXIMUM_PROTECTION" + PROTECTION_MODE_MAXIMUM_PROTECTION = "MAXIMUM_PROTECTION" + + #: A constant which can be used with the transport_type property of a CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + #: This constant has a value of "SYNC" + TRANSPORT_TYPE_SYNC = "SYNC" + + #: A constant which can be used with the transport_type property of a CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + #: This constant has a value of "ASYNC" + TRANSPORT_TYPE_ASYNC = "ASYNC" + + #: A constant which can be used with the transport_type property of a CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + #: This constant has a value of "FASTSYNC" + TRANSPORT_TYPE_FASTSYNC = "FASTSYNC" + + def __init__(self, **kwargs): + """ + Initializes a new CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails.source` attribute + of this class is ``XS_NEW_CLUSTER`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source: + The value to assign to the source property of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + Allowed values for this property are: "XS_EXISTING_CLUSTER", "XS_NEW_CLUSTER", "XS_NEW_VAULT_AND_CLUSTER", "XD_EXISTING_CLUSTER", "EXISTING_DB_HOME" + :type source: str + + :param admin_password: + The value to assign to the admin_password property of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + :type admin_password: str + + :param vault_id: + The value to assign to the vault_id property of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + :type vault_id: str + + :param kms_key_id: + The value to assign to the kms_key_id property of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + :type kms_key_id: str + + :param kms_key_version_id: + The value to assign to the kms_key_version_id property of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + :type kms_key_version_id: str + + :param availability_domain: + The value to assign to the availability_domain property of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + :type availability_domain: str + + :param exascale_db_storage_vault_id: + The value to assign to the exascale_db_storage_vault_id property of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + :type exascale_db_storage_vault_id: str + + :param vm_cluster_details: + The value to assign to the vm_cluster_details property of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + :type vm_cluster_details: oci.distributed_database_v26.models.VmClusterDetails + + :param protection_mode: + The value to assign to the protection_mode property of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION" + :type protection_mode: str + + :param transport_type: + The value to assign to the transport_type property of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC" + :type transport_type: str + + """ + self.swagger_types = { + 'source': 'str', + 'admin_password': 'str', + 'vault_id': 'str', + 'kms_key_id': 'str', + 'kms_key_version_id': 'str', + 'availability_domain': 'str', + 'exascale_db_storage_vault_id': 'str', + 'vm_cluster_details': 'VmClusterDetails', + 'protection_mode': 'str', + 'transport_type': 'str' + } + self.attribute_map = { + 'source': 'source', + 'admin_password': 'adminPassword', + 'vault_id': 'vaultId', + 'kms_key_id': 'kmsKeyId', + 'kms_key_version_id': 'kmsKeyVersionId', + 'availability_domain': 'availabilityDomain', + 'exascale_db_storage_vault_id': 'exascaleDbStorageVaultId', + 'vm_cluster_details': 'vmClusterDetails', + 'protection_mode': 'protectionMode', + 'transport_type': 'transportType' + } + self._redacted_field_paths = [ + ['admin_password'], + ] + self._source = None + self._admin_password = None + self._vault_id = None + self._kms_key_id = None + self._kms_key_version_id = None + self._availability_domain = None + self._exascale_db_storage_vault_id = None + self._vm_cluster_details = None + self._protection_mode = None + self._transport_type = None + self._source = 'XS_NEW_CLUSTER' + + @property + def admin_password(self): + """ + **[Required]** Gets the admin_password of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + The admin password for the catalog associated with Globally distributed database. + + + :return: The admin_password of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + :rtype: str + """ + return self._admin_password + + @admin_password.setter + def admin_password(self, admin_password): + """ + Sets the admin_password of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + The admin password for the catalog associated with Globally distributed database. + + + :param admin_password: The admin_password of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + :type: str + """ + self._admin_password = admin_password + + @property + def vault_id(self): + """ + Gets the vault_id of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :return: The vault_id of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + :rtype: str + """ + return self._vault_id + + @vault_id.setter + def vault_id(self, vault_id): + """ + Sets the vault_id of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :param vault_id: The vault_id of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + :type: str + """ + self._vault_id = vault_id + + @property + def kms_key_id(self): + """ + Gets the kms_key_id of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_id of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + :rtype: str + """ + return self._kms_key_id + + @kms_key_id.setter + def kms_key_id(self, kms_key_id): + """ + Sets the kms_key_id of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_id: The kms_key_id of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + :type: str + """ + self._kms_key_id = kms_key_id + + @property + def kms_key_version_id(self): + """ + Gets the kms_key_version_id of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_version_id of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + :rtype: str + """ + return self._kms_key_version_id + + @kms_key_version_id.setter + def kms_key_version_id(self, kms_key_version_id): + """ + Sets the kms_key_version_id of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_version_id: The kms_key_version_id of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + :type: str + """ + self._kms_key_version_id = kms_key_version_id + + @property + def availability_domain(self): + """ + **[Required]** Gets the availability_domain of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + The name of the availability domain that the distributed database catalog will be located in. + + + :return: The availability_domain of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + :rtype: str + """ + return self._availability_domain + + @availability_domain.setter + def availability_domain(self, availability_domain): + """ + Sets the availability_domain of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + The name of the availability domain that the distributed database catalog will be located in. + + + :param availability_domain: The availability_domain of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + :type: str + """ + self._availability_domain = availability_domain + + @property + def exascale_db_storage_vault_id(self): + """ + **[Required]** Gets the exascale_db_storage_vault_id of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + The `OCID`__ of the exascale db storage vault. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The exascale_db_storage_vault_id of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + :rtype: str + """ + return self._exascale_db_storage_vault_id + + @exascale_db_storage_vault_id.setter + def exascale_db_storage_vault_id(self, exascale_db_storage_vault_id): + """ + Sets the exascale_db_storage_vault_id of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + The `OCID`__ of the exascale db storage vault. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param exascale_db_storage_vault_id: The exascale_db_storage_vault_id of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + :type: str + """ + self._exascale_db_storage_vault_id = exascale_db_storage_vault_id + + @property + def vm_cluster_details(self): + """ + **[Required]** Gets the vm_cluster_details of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + + :return: The vm_cluster_details of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + :rtype: oci.distributed_database_v26.models.VmClusterDetails + """ + return self._vm_cluster_details + + @vm_cluster_details.setter + def vm_cluster_details(self, vm_cluster_details): + """ + Sets the vm_cluster_details of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + + :param vm_cluster_details: The vm_cluster_details of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + :type: oci.distributed_database_v26.models.VmClusterDetails + """ + self._vm_cluster_details = vm_cluster_details + + @property + def protection_mode(self): + """ + Gets the protection_mode of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + The protection mode used for the Data Guard association. + + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION" + + + :return: The protection_mode of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + :rtype: str + """ + return self._protection_mode + + @protection_mode.setter + def protection_mode(self, protection_mode): + """ + Sets the protection_mode of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + The protection mode used for the Data Guard association. + + + :param protection_mode: The protection_mode of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + :type: str + """ + allowed_values = ["MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION"] + if not value_allowed_none_or_none_sentinel(protection_mode, allowed_values): + raise ValueError( + f"Invalid value for `protection_mode`, must be None or one of {allowed_values}" + ) + self._protection_mode = protection_mode + + @property + def transport_type(self): + """ + Gets the transport_type of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + The transport type used for the Data Guard association. + + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC" + + + :return: The transport_type of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + :rtype: str + """ + return self._transport_type + + @transport_type.setter + def transport_type(self, transport_type): + """ + Sets the transport_type of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + The transport type used for the Data Guard association. + + + :param transport_type: The transport_type of this CreateDistributedDatabaseCatalogWithExadbXsNewClusterDetails. + :type: str + """ + allowed_values = ["SYNC", "ASYNC", "FASTSYNC"] + if not value_allowed_none_or_none_sentinel(transport_type, allowed_values): + raise ValueError( + f"Invalid value for `transport_type`, must be None or one of {allowed_values}" + ) + self._transport_type = transport_type + + def __repr__(self): + as_dict = to_dict(self) + redact_password_field(as_dict, ['admin_password']) + return formatted_flat_dict(as_dict) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_distributed_database_catalog_with_exadb_xs_new_vault_and_cluster_details.py b/src/oci/distributed_database_v26/models/create_distributed_database_catalog_with_exadb_xs_new_vault_and_cluster_details.py new file mode 100644 index 0000000000..8343fc56dd --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_distributed_database_catalog_with_exadb_xs_new_vault_and_cluster_details.py @@ -0,0 +1,381 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +from .create_distributed_database_catalog_database_details import CreateDistributedDatabaseCatalogDatabaseDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails(CreateDistributedDatabaseCatalogDatabaseDetails): + """ + Configuration for creating a distributed database catalog on a new ExaDB-XS VM cluster and storage vault. + """ + + #: A constant which can be used with the protection_mode property of a CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + #: This constant has a value of "MAXIMUM_AVAILABILITY" + PROTECTION_MODE_MAXIMUM_AVAILABILITY = "MAXIMUM_AVAILABILITY" + + #: A constant which can be used with the protection_mode property of a CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + #: This constant has a value of "MAXIMUM_PERFORMANCE" + PROTECTION_MODE_MAXIMUM_PERFORMANCE = "MAXIMUM_PERFORMANCE" + + #: A constant which can be used with the protection_mode property of a CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + #: This constant has a value of "MAXIMUM_PROTECTION" + PROTECTION_MODE_MAXIMUM_PROTECTION = "MAXIMUM_PROTECTION" + + #: A constant which can be used with the transport_type property of a CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + #: This constant has a value of "SYNC" + TRANSPORT_TYPE_SYNC = "SYNC" + + #: A constant which can be used with the transport_type property of a CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + #: This constant has a value of "ASYNC" + TRANSPORT_TYPE_ASYNC = "ASYNC" + + #: A constant which can be used with the transport_type property of a CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + #: This constant has a value of "FASTSYNC" + TRANSPORT_TYPE_FASTSYNC = "FASTSYNC" + + def __init__(self, **kwargs): + """ + Initializes a new CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails.source` attribute + of this class is ``XS_NEW_VAULT_AND_CLUSTER`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source: + The value to assign to the source property of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + Allowed values for this property are: "XS_EXISTING_CLUSTER", "XS_NEW_CLUSTER", "XS_NEW_VAULT_AND_CLUSTER", "XD_EXISTING_CLUSTER", "EXISTING_DB_HOME" + :type source: str + + :param admin_password: + The value to assign to the admin_password property of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + :type admin_password: str + + :param vault_id: + The value to assign to the vault_id property of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + :type vault_id: str + + :param kms_key_id: + The value to assign to the kms_key_id property of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + :type kms_key_id: str + + :param kms_key_version_id: + The value to assign to the kms_key_version_id property of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + :type kms_key_version_id: str + + :param availability_domain: + The value to assign to the availability_domain property of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + :type availability_domain: str + + :param db_storage_vault_details: + The value to assign to the db_storage_vault_details property of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + :type db_storage_vault_details: oci.distributed_database_v26.models.DbStorageVaultDetails + + :param vm_cluster_details: + The value to assign to the vm_cluster_details property of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + :type vm_cluster_details: oci.distributed_database_v26.models.VmClusterDetails + + :param protection_mode: + The value to assign to the protection_mode property of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION" + :type protection_mode: str + + :param transport_type: + The value to assign to the transport_type property of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC" + :type transport_type: str + + """ + self.swagger_types = { + 'source': 'str', + 'admin_password': 'str', + 'vault_id': 'str', + 'kms_key_id': 'str', + 'kms_key_version_id': 'str', + 'availability_domain': 'str', + 'db_storage_vault_details': 'DbStorageVaultDetails', + 'vm_cluster_details': 'VmClusterDetails', + 'protection_mode': 'str', + 'transport_type': 'str' + } + self.attribute_map = { + 'source': 'source', + 'admin_password': 'adminPassword', + 'vault_id': 'vaultId', + 'kms_key_id': 'kmsKeyId', + 'kms_key_version_id': 'kmsKeyVersionId', + 'availability_domain': 'availabilityDomain', + 'db_storage_vault_details': 'dbStorageVaultDetails', + 'vm_cluster_details': 'vmClusterDetails', + 'protection_mode': 'protectionMode', + 'transport_type': 'transportType' + } + self._redacted_field_paths = [ + ['admin_password'], + ] + self._source = None + self._admin_password = None + self._vault_id = None + self._kms_key_id = None + self._kms_key_version_id = None + self._availability_domain = None + self._db_storage_vault_details = None + self._vm_cluster_details = None + self._protection_mode = None + self._transport_type = None + self._source = 'XS_NEW_VAULT_AND_CLUSTER' + + @property + def admin_password(self): + """ + **[Required]** Gets the admin_password of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + The admin password for the catalog associated with Globally distributed database. + + + :return: The admin_password of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + :rtype: str + """ + return self._admin_password + + @admin_password.setter + def admin_password(self, admin_password): + """ + Sets the admin_password of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + The admin password for the catalog associated with Globally distributed database. + + + :param admin_password: The admin_password of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + :type: str + """ + self._admin_password = admin_password + + @property + def vault_id(self): + """ + Gets the vault_id of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :return: The vault_id of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + :rtype: str + """ + return self._vault_id + + @vault_id.setter + def vault_id(self, vault_id): + """ + Sets the vault_id of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :param vault_id: The vault_id of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + :type: str + """ + self._vault_id = vault_id + + @property + def kms_key_id(self): + """ + Gets the kms_key_id of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_id of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + :rtype: str + """ + return self._kms_key_id + + @kms_key_id.setter + def kms_key_id(self, kms_key_id): + """ + Sets the kms_key_id of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_id: The kms_key_id of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + :type: str + """ + self._kms_key_id = kms_key_id + + @property + def kms_key_version_id(self): + """ + Gets the kms_key_version_id of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_version_id of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + :rtype: str + """ + return self._kms_key_version_id + + @kms_key_version_id.setter + def kms_key_version_id(self, kms_key_version_id): + """ + Sets the kms_key_version_id of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_version_id: The kms_key_version_id of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + :type: str + """ + self._kms_key_version_id = kms_key_version_id + + @property + def availability_domain(self): + """ + **[Required]** Gets the availability_domain of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + The name of the availability domain that the distributed database catalog will be located in. + + + :return: The availability_domain of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + :rtype: str + """ + return self._availability_domain + + @availability_domain.setter + def availability_domain(self, availability_domain): + """ + Sets the availability_domain of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + The name of the availability domain that the distributed database catalog will be located in. + + + :param availability_domain: The availability_domain of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + :type: str + """ + self._availability_domain = availability_domain + + @property + def db_storage_vault_details(self): + """ + **[Required]** Gets the db_storage_vault_details of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + + :return: The db_storage_vault_details of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + :rtype: oci.distributed_database_v26.models.DbStorageVaultDetails + """ + return self._db_storage_vault_details + + @db_storage_vault_details.setter + def db_storage_vault_details(self, db_storage_vault_details): + """ + Sets the db_storage_vault_details of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + + :param db_storage_vault_details: The db_storage_vault_details of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + :type: oci.distributed_database_v26.models.DbStorageVaultDetails + """ + self._db_storage_vault_details = db_storage_vault_details + + @property + def vm_cluster_details(self): + """ + **[Required]** Gets the vm_cluster_details of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + + :return: The vm_cluster_details of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + :rtype: oci.distributed_database_v26.models.VmClusterDetails + """ + return self._vm_cluster_details + + @vm_cluster_details.setter + def vm_cluster_details(self, vm_cluster_details): + """ + Sets the vm_cluster_details of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + + :param vm_cluster_details: The vm_cluster_details of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + :type: oci.distributed_database_v26.models.VmClusterDetails + """ + self._vm_cluster_details = vm_cluster_details + + @property + def protection_mode(self): + """ + Gets the protection_mode of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + The protection mode used for the Data Guard association. + + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION" + + + :return: The protection_mode of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + :rtype: str + """ + return self._protection_mode + + @protection_mode.setter + def protection_mode(self, protection_mode): + """ + Sets the protection_mode of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + The protection mode used for the Data Guard association. + + + :param protection_mode: The protection_mode of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + :type: str + """ + allowed_values = ["MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION"] + if not value_allowed_none_or_none_sentinel(protection_mode, allowed_values): + raise ValueError( + f"Invalid value for `protection_mode`, must be None or one of {allowed_values}" + ) + self._protection_mode = protection_mode + + @property + def transport_type(self): + """ + Gets the transport_type of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + The transport type used for the Data Guard association. + + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC" + + + :return: The transport_type of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + :rtype: str + """ + return self._transport_type + + @transport_type.setter + def transport_type(self, transport_type): + """ + Sets the transport_type of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + The transport type used for the Data Guard association. + + + :param transport_type: The transport_type of this CreateDistributedDatabaseCatalogWithExadbXsNewVaultAndClusterDetails. + :type: str + """ + allowed_values = ["SYNC", "ASYNC", "FASTSYNC"] + if not value_allowed_none_or_none_sentinel(transport_type, allowed_values): + raise ValueError( + f"Invalid value for `transport_type`, must be None or one of {allowed_values}" + ) + self._transport_type = transport_type + + def __repr__(self): + as_dict = to_dict(self) + redact_password_field(as_dict, ['admin_password']) + return formatted_flat_dict(as_dict) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_distributed_database_details.py b/src/oci/distributed_database_v26/models/create_distributed_database_details.py new file mode 100644 index 0000000000..26bde35758 --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_distributed_database_details.py @@ -0,0 +1,877 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateDistributedDatabaseDetails(object): + """ + Details required for creation of the Globally distributed database. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateDistributedDatabaseDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param compartment_id: + The value to assign to the compartment_id property of this CreateDistributedDatabaseDetails. + :type compartment_id: str + + :param display_name: + The value to assign to the display_name property of this CreateDistributedDatabaseDetails. + :type display_name: str + + :param database_version: + The value to assign to the database_version property of this CreateDistributedDatabaseDetails. + :type database_version: str + + :param prefix: + The value to assign to the prefix property of this CreateDistributedDatabaseDetails. + :type prefix: str + + :param private_endpoint_ids: + The value to assign to the private_endpoint_ids property of this CreateDistributedDatabaseDetails. + :type private_endpoint_ids: list[str] + + :param notification_topic_ids: + The value to assign to the notification_topic_ids property of this CreateDistributedDatabaseDetails. + :type notification_topic_ids: list[str] + + :param character_set: + The value to assign to the character_set property of this CreateDistributedDatabaseDetails. + :type character_set: str + + :param ncharacter_set: + The value to assign to the ncharacter_set property of this CreateDistributedDatabaseDetails. + :type ncharacter_set: str + + :param listener_port: + The value to assign to the listener_port property of this CreateDistributedDatabaseDetails. + :type listener_port: int + + :param listener_port_tls: + The value to assign to the listener_port_tls property of this CreateDistributedDatabaseDetails. + :type listener_port_tls: int + + :param ons_port_local: + The value to assign to the ons_port_local property of this CreateDistributedDatabaseDetails. + :type ons_port_local: int + + :param ons_port_remote: + The value to assign to the ons_port_remote property of this CreateDistributedDatabaseDetails. + :type ons_port_remote: int + + :param scan_listener_port: + The value to assign to the scan_listener_port property of this CreateDistributedDatabaseDetails. + :type scan_listener_port: int + + :param system_chunk_count: + The value to assign to the system_chunk_count property of this CreateDistributedDatabaseDetails. + :type system_chunk_count: int + + :param system_raft_replication_unit_count: + The value to assign to the system_raft_replication_unit_count property of this CreateDistributedDatabaseDetails. + :type system_raft_replication_unit_count: int + + :param composite_raft_shard_spaces: + The value to assign to the composite_raft_shard_spaces property of this CreateDistributedDatabaseDetails. + :type composite_raft_shard_spaces: list[oci.distributed_database_v26.models.CreateCompositeRaftShardSpaceDetails] + + :param composite_data_guard_shard_spaces: + The value to assign to the composite_data_guard_shard_spaces property of this CreateDistributedDatabaseDetails. + :type composite_data_guard_shard_spaces: list[oci.distributed_database_v26.models.CreateCompositeDataGuardShardSpaceDetails] + + :param system_raft_clusters: + The value to assign to the system_raft_clusters property of this CreateDistributedDatabaseDetails. + :type system_raft_clusters: list[oci.distributed_database_v26.models.CreateSystemRaftClusterDetails] + + :param system_data_guard_databases: + The value to assign to the system_data_guard_databases property of this CreateDistributedDatabaseDetails. + :type system_data_guard_databases: oci.distributed_database_v26.models.CreateSystemDataGuardDatabaseDetails + + :param user_shard_spaces: + The value to assign to the user_shard_spaces property of this CreateDistributedDatabaseDetails. + :type user_shard_spaces: list[oci.distributed_database_v26.models.CreateUserShardSpaceDetails] + + :param catalog_details: + The value to assign to the catalog_details property of this CreateDistributedDatabaseDetails. + :type catalog_details: list[oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDetails] + + :param gsm_ssh_public_key: + The value to assign to the gsm_ssh_public_key property of this CreateDistributedDatabaseDetails. + :type gsm_ssh_public_key: str + + :param db_backup_config: + The value to assign to the db_backup_config property of this CreateDistributedDatabaseDetails. + :type db_backup_config: oci.distributed_database_v26.models.DistributedDbBackupConfig + + :param vcn_nsg_ids: + The value to assign to the vcn_nsg_ids property of this CreateDistributedDatabaseDetails. + :type vcn_nsg_ids: list[oci.distributed_database_v26.models.VcnNsgIdsDetails] + + :param freeform_tags: + The value to assign to the freeform_tags property of this CreateDistributedDatabaseDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this CreateDistributedDatabaseDetails. + :type defined_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'compartment_id': 'str', + 'display_name': 'str', + 'database_version': 'str', + 'prefix': 'str', + 'private_endpoint_ids': 'list[str]', + 'notification_topic_ids': 'list[str]', + 'character_set': 'str', + 'ncharacter_set': 'str', + 'listener_port': 'int', + 'listener_port_tls': 'int', + 'ons_port_local': 'int', + 'ons_port_remote': 'int', + 'scan_listener_port': 'int', + 'system_chunk_count': 'int', + 'system_raft_replication_unit_count': 'int', + 'composite_raft_shard_spaces': 'list[CreateCompositeRaftShardSpaceDetails]', + 'composite_data_guard_shard_spaces': 'list[CreateCompositeDataGuardShardSpaceDetails]', + 'system_raft_clusters': 'list[CreateSystemRaftClusterDetails]', + 'system_data_guard_databases': 'CreateSystemDataGuardDatabaseDetails', + 'user_shard_spaces': 'list[CreateUserShardSpaceDetails]', + 'catalog_details': 'list[CreateDistributedDatabaseCatalogDetails]', + 'gsm_ssh_public_key': 'str', + 'db_backup_config': 'DistributedDbBackupConfig', + 'vcn_nsg_ids': 'list[VcnNsgIdsDetails]', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'compartment_id': 'compartmentId', + 'display_name': 'displayName', + 'database_version': 'databaseVersion', + 'prefix': 'prefix', + 'private_endpoint_ids': 'privateEndpointIds', + 'notification_topic_ids': 'notificationTopicIds', + 'character_set': 'characterSet', + 'ncharacter_set': 'ncharacterSet', + 'listener_port': 'listenerPort', + 'listener_port_tls': 'listenerPortTls', + 'ons_port_local': 'onsPortLocal', + 'ons_port_remote': 'onsPortRemote', + 'scan_listener_port': 'scanListenerPort', + 'system_chunk_count': 'systemChunkCount', + 'system_raft_replication_unit_count': 'systemRaftReplicationUnitCount', + 'composite_raft_shard_spaces': 'compositeRaftShardSpaces', + 'composite_data_guard_shard_spaces': 'compositeDataGuardShardSpaces', + 'system_raft_clusters': 'systemRaftClusters', + 'system_data_guard_databases': 'systemDataGuardDatabases', + 'user_shard_spaces': 'userShardSpaces', + 'catalog_details': 'catalogDetails', + 'gsm_ssh_public_key': 'gsmSshPublicKey', + 'db_backup_config': 'dbBackupConfig', + 'vcn_nsg_ids': 'vcnNsgIds', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' + } + self._compartment_id = None + self._display_name = None + self._database_version = None + self._prefix = None + self._private_endpoint_ids = None + self._notification_topic_ids = None + self._character_set = None + self._ncharacter_set = None + self._listener_port = None + self._listener_port_tls = None + self._ons_port_local = None + self._ons_port_remote = None + self._scan_listener_port = None + self._system_chunk_count = None + self._system_raft_replication_unit_count = None + self._composite_raft_shard_spaces = None + self._composite_data_guard_shard_spaces = None + self._system_raft_clusters = None + self._system_data_guard_databases = None + self._user_shard_spaces = None + self._catalog_details = None + self._gsm_ssh_public_key = None + self._db_backup_config = None + self._vcn_nsg_ids = None + self._freeform_tags = None + self._defined_tags = None + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this CreateDistributedDatabaseDetails. + The `OCID`__ of the Globally distributed database compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this CreateDistributedDatabaseDetails. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this CreateDistributedDatabaseDetails. + The `OCID`__ of the Globally distributed database compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this CreateDistributedDatabaseDetails. + :type: str + """ + self._compartment_id = compartment_id + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this CreateDistributedDatabaseDetails. + The display name of the Globally distributed database. + + + :return: The display_name of this CreateDistributedDatabaseDetails. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this CreateDistributedDatabaseDetails. + The display name of the Globally distributed database. + + + :param display_name: The display_name of this CreateDistributedDatabaseDetails. + :type: str + """ + self._display_name = display_name + + @property + def database_version(self): + """ + **[Required]** Gets the database_version of this CreateDistributedDatabaseDetails. + Oracle Database version for the shards and catalog used in Globally distributed database. + + + :return: The database_version of this CreateDistributedDatabaseDetails. + :rtype: str + """ + return self._database_version + + @database_version.setter + def database_version(self, database_version): + """ + Sets the database_version of this CreateDistributedDatabaseDetails. + Oracle Database version for the shards and catalog used in Globally distributed database. + + + :param database_version: The database_version of this CreateDistributedDatabaseDetails. + :type: str + """ + self._database_version = database_version + + @property + def prefix(self): + """ + **[Required]** Gets the prefix of this CreateDistributedDatabaseDetails. + Unique name prefix for the Globally distributed databases. Only alpha-numeric values are allowed. First character + has to be a letter followed by any combination of letter and number. + + + :return: The prefix of this CreateDistributedDatabaseDetails. + :rtype: str + """ + return self._prefix + + @prefix.setter + def prefix(self, prefix): + """ + Sets the prefix of this CreateDistributedDatabaseDetails. + Unique name prefix for the Globally distributed databases. Only alpha-numeric values are allowed. First character + has to be a letter followed by any combination of letter and number. + + + :param prefix: The prefix of this CreateDistributedDatabaseDetails. + :type: str + """ + self._prefix = prefix + + @property + def private_endpoint_ids(self): + """ + **[Required]** Gets the private_endpoint_ids of this CreateDistributedDatabaseDetails. + The collection of `OCID`__ of the private endpoints associated with the Globally distributed database. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The private_endpoint_ids of this CreateDistributedDatabaseDetails. + :rtype: list[str] + """ + return self._private_endpoint_ids + + @private_endpoint_ids.setter + def private_endpoint_ids(self, private_endpoint_ids): + """ + Sets the private_endpoint_ids of this CreateDistributedDatabaseDetails. + The collection of `OCID`__ of the private endpoints associated with the Globally distributed database. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param private_endpoint_ids: The private_endpoint_ids of this CreateDistributedDatabaseDetails. + :type: list[str] + """ + self._private_endpoint_ids = private_endpoint_ids + + @property + def notification_topic_ids(self): + """ + Gets the notification_topic_ids of this CreateDistributedDatabaseDetails. + The collection of `OCID`__ for the notification topics associated with the globally distributed database. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The notification_topic_ids of this CreateDistributedDatabaseDetails. + :rtype: list[str] + """ + return self._notification_topic_ids + + @notification_topic_ids.setter + def notification_topic_ids(self, notification_topic_ids): + """ + Sets the notification_topic_ids of this CreateDistributedDatabaseDetails. + The collection of `OCID`__ for the notification topics associated with the globally distributed database. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param notification_topic_ids: The notification_topic_ids of this CreateDistributedDatabaseDetails. + :type: list[str] + """ + self._notification_topic_ids = notification_topic_ids + + @property + def character_set(self): + """ + **[Required]** Gets the character_set of this CreateDistributedDatabaseDetails. + The character set for the database. + + + :return: The character_set of this CreateDistributedDatabaseDetails. + :rtype: str + """ + return self._character_set + + @character_set.setter + def character_set(self, character_set): + """ + Sets the character_set of this CreateDistributedDatabaseDetails. + The character set for the database. + + + :param character_set: The character_set of this CreateDistributedDatabaseDetails. + :type: str + """ + self._character_set = character_set + + @property + def ncharacter_set(self): + """ + **[Required]** Gets the ncharacter_set of this CreateDistributedDatabaseDetails. + The national character set for the database. + + + :return: The ncharacter_set of this CreateDistributedDatabaseDetails. + :rtype: str + """ + return self._ncharacter_set + + @ncharacter_set.setter + def ncharacter_set(self, ncharacter_set): + """ + Sets the ncharacter_set of this CreateDistributedDatabaseDetails. + The national character set for the database. + + + :param ncharacter_set: The ncharacter_set of this CreateDistributedDatabaseDetails. + :type: str + """ + self._ncharacter_set = ncharacter_set + + @property + def listener_port(self): + """ + **[Required]** Gets the listener_port of this CreateDistributedDatabaseDetails. + The listener port number for the Globally distributed database. The listener port number + has to be unique for a customer tenancy across all distributed databases. Same port number should + not be re-used for any other distributed database. + + + :return: The listener_port of this CreateDistributedDatabaseDetails. + :rtype: int + """ + return self._listener_port + + @listener_port.setter + def listener_port(self, listener_port): + """ + Sets the listener_port of this CreateDistributedDatabaseDetails. + The listener port number for the Globally distributed database. The listener port number + has to be unique for a customer tenancy across all distributed databases. Same port number should + not be re-used for any other distributed database. + + + :param listener_port: The listener_port of this CreateDistributedDatabaseDetails. + :type: int + """ + self._listener_port = listener_port + + @property + def listener_port_tls(self): + """ + Gets the listener_port_tls of this CreateDistributedDatabaseDetails. + The TLS listener port number for the Globally distributed database. The TLS listener port number + has to be unique for a customer tenancy across all distributed databases. Same port number should + not be re-used for any other distributed database. For EXADB based distributed databases, + tls is not supported hence the listenerPortTls is not needed to be provided in create payload. + + + :return: The listener_port_tls of this CreateDistributedDatabaseDetails. + :rtype: int + """ + return self._listener_port_tls + + @listener_port_tls.setter + def listener_port_tls(self, listener_port_tls): + """ + Sets the listener_port_tls of this CreateDistributedDatabaseDetails. + The TLS listener port number for the Globally distributed database. The TLS listener port number + has to be unique for a customer tenancy across all distributed databases. Same port number should + not be re-used for any other distributed database. For EXADB based distributed databases, + tls is not supported hence the listenerPortTls is not needed to be provided in create payload. + + + :param listener_port_tls: The listener_port_tls of this CreateDistributedDatabaseDetails. + :type: int + """ + self._listener_port_tls = listener_port_tls + + @property + def ons_port_local(self): + """ + **[Required]** Gets the ons_port_local of this CreateDistributedDatabaseDetails. + The ons local port number for the Globally distributed database. The onsPortLocal has to be + unique for a customer tenancy across all distributed databases. Same port number should not be + re-used for any other distributed database. + + + :return: The ons_port_local of this CreateDistributedDatabaseDetails. + :rtype: int + """ + return self._ons_port_local + + @ons_port_local.setter + def ons_port_local(self, ons_port_local): + """ + Sets the ons_port_local of this CreateDistributedDatabaseDetails. + The ons local port number for the Globally distributed database. The onsPortLocal has to be + unique for a customer tenancy across all distributed databases. Same port number should not be + re-used for any other distributed database. + + + :param ons_port_local: The ons_port_local of this CreateDistributedDatabaseDetails. + :type: int + """ + self._ons_port_local = ons_port_local + + @property + def ons_port_remote(self): + """ + **[Required]** Gets the ons_port_remote of this CreateDistributedDatabaseDetails. + The ons remote port number for the Globally distributed database. The onsPortRemote has to be + unique for a customer tenancy across all distributed databases. Same port number should not be + re-used for any other distributed database. + + + :return: The ons_port_remote of this CreateDistributedDatabaseDetails. + :rtype: int + """ + return self._ons_port_remote + + @ons_port_remote.setter + def ons_port_remote(self, ons_port_remote): + """ + Sets the ons_port_remote of this CreateDistributedDatabaseDetails. + The ons remote port number for the Globally distributed database. The onsPortRemote has to be + unique for a customer tenancy across all distributed databases. Same port number should not be + re-used for any other distributed database. + + + :param ons_port_remote: The ons_port_remote of this CreateDistributedDatabaseDetails. + :type: int + """ + self._ons_port_remote = ons_port_remote + + @property + def scan_listener_port(self): + """ + Gets the scan_listener_port of this CreateDistributedDatabaseDetails. + TCP SCAN listener port for new clusters to be created. + Applicable only when shard and catalog source types are XS_NEW_VAULT_AND_CLUSTER or XS_NEW_CLUSTER. + Defaults to 1521 when not provided. + + + :return: The scan_listener_port of this CreateDistributedDatabaseDetails. + :rtype: int + """ + return self._scan_listener_port + + @scan_listener_port.setter + def scan_listener_port(self, scan_listener_port): + """ + Sets the scan_listener_port of this CreateDistributedDatabaseDetails. + TCP SCAN listener port for new clusters to be created. + Applicable only when shard and catalog source types are XS_NEW_VAULT_AND_CLUSTER or XS_NEW_CLUSTER. + Defaults to 1521 when not provided. + + + :param scan_listener_port: The scan_listener_port of this CreateDistributedDatabaseDetails. + :type: int + """ + self._scan_listener_port = scan_listener_port + + @property + def system_chunk_count(self): + """ + Gets the system_chunk_count of this CreateDistributedDatabaseDetails. + Count of chunks associated with system raft clusters or system data guard databases. + + + :return: The system_chunk_count of this CreateDistributedDatabaseDetails. + :rtype: int + """ + return self._system_chunk_count + + @system_chunk_count.setter + def system_chunk_count(self, system_chunk_count): + """ + Sets the system_chunk_count of this CreateDistributedDatabaseDetails. + Count of chunks associated with system raft clusters or system data guard databases. + + + :param system_chunk_count: The system_chunk_count of this CreateDistributedDatabaseDetails. + :type: int + """ + self._system_chunk_count = system_chunk_count + + @property + def system_raft_replication_unit_count(self): + """ + Gets the system_raft_replication_unit_count of this CreateDistributedDatabaseDetails. + Number of replication units associated with system raft clusters. + + + :return: The system_raft_replication_unit_count of this CreateDistributedDatabaseDetails. + :rtype: int + """ + return self._system_raft_replication_unit_count + + @system_raft_replication_unit_count.setter + def system_raft_replication_unit_count(self, system_raft_replication_unit_count): + """ + Sets the system_raft_replication_unit_count of this CreateDistributedDatabaseDetails. + Number of replication units associated with system raft clusters. + + + :param system_raft_replication_unit_count: The system_raft_replication_unit_count of this CreateDistributedDatabaseDetails. + :type: int + """ + self._system_raft_replication_unit_count = system_raft_replication_unit_count + + @property + def composite_raft_shard_spaces(self): + """ + Gets the composite_raft_shard_spaces of this CreateDistributedDatabaseDetails. + Collection of composite raft shards. + + + :return: The composite_raft_shard_spaces of this CreateDistributedDatabaseDetails. + :rtype: list[oci.distributed_database_v26.models.CreateCompositeRaftShardSpaceDetails] + """ + return self._composite_raft_shard_spaces + + @composite_raft_shard_spaces.setter + def composite_raft_shard_spaces(self, composite_raft_shard_spaces): + """ + Sets the composite_raft_shard_spaces of this CreateDistributedDatabaseDetails. + Collection of composite raft shards. + + + :param composite_raft_shard_spaces: The composite_raft_shard_spaces of this CreateDistributedDatabaseDetails. + :type: list[oci.distributed_database_v26.models.CreateCompositeRaftShardSpaceDetails] + """ + self._composite_raft_shard_spaces = composite_raft_shard_spaces + + @property + def composite_data_guard_shard_spaces(self): + """ + Gets the composite_data_guard_shard_spaces of this CreateDistributedDatabaseDetails. + Collection of composite data guard shard spaces. + + + :return: The composite_data_guard_shard_spaces of this CreateDistributedDatabaseDetails. + :rtype: list[oci.distributed_database_v26.models.CreateCompositeDataGuardShardSpaceDetails] + """ + return self._composite_data_guard_shard_spaces + + @composite_data_guard_shard_spaces.setter + def composite_data_guard_shard_spaces(self, composite_data_guard_shard_spaces): + """ + Sets the composite_data_guard_shard_spaces of this CreateDistributedDatabaseDetails. + Collection of composite data guard shard spaces. + + + :param composite_data_guard_shard_spaces: The composite_data_guard_shard_spaces of this CreateDistributedDatabaseDetails. + :type: list[oci.distributed_database_v26.models.CreateCompositeDataGuardShardSpaceDetails] + """ + self._composite_data_guard_shard_spaces = composite_data_guard_shard_spaces + + @property + def system_raft_clusters(self): + """ + Gets the system_raft_clusters of this CreateDistributedDatabaseDetails. + Collection of system raft clusters. + + + :return: The system_raft_clusters of this CreateDistributedDatabaseDetails. + :rtype: list[oci.distributed_database_v26.models.CreateSystemRaftClusterDetails] + """ + return self._system_raft_clusters + + @system_raft_clusters.setter + def system_raft_clusters(self, system_raft_clusters): + """ + Sets the system_raft_clusters of this CreateDistributedDatabaseDetails. + Collection of system raft clusters. + + + :param system_raft_clusters: The system_raft_clusters of this CreateDistributedDatabaseDetails. + :type: list[oci.distributed_database_v26.models.CreateSystemRaftClusterDetails] + """ + self._system_raft_clusters = system_raft_clusters + + @property + def system_data_guard_databases(self): + """ + Gets the system_data_guard_databases of this CreateDistributedDatabaseDetails. + + :return: The system_data_guard_databases of this CreateDistributedDatabaseDetails. + :rtype: oci.distributed_database_v26.models.CreateSystemDataGuardDatabaseDetails + """ + return self._system_data_guard_databases + + @system_data_guard_databases.setter + def system_data_guard_databases(self, system_data_guard_databases): + """ + Sets the system_data_guard_databases of this CreateDistributedDatabaseDetails. + + :param system_data_guard_databases: The system_data_guard_databases of this CreateDistributedDatabaseDetails. + :type: oci.distributed_database_v26.models.CreateSystemDataGuardDatabaseDetails + """ + self._system_data_guard_databases = system_data_guard_databases + + @property + def user_shard_spaces(self): + """ + Gets the user_shard_spaces of this CreateDistributedDatabaseDetails. + Collection of user defined shard spaces. + + + :return: The user_shard_spaces of this CreateDistributedDatabaseDetails. + :rtype: list[oci.distributed_database_v26.models.CreateUserShardSpaceDetails] + """ + return self._user_shard_spaces + + @user_shard_spaces.setter + def user_shard_spaces(self, user_shard_spaces): + """ + Sets the user_shard_spaces of this CreateDistributedDatabaseDetails. + Collection of user defined shard spaces. + + + :param user_shard_spaces: The user_shard_spaces of this CreateDistributedDatabaseDetails. + :type: list[oci.distributed_database_v26.models.CreateUserShardSpaceDetails] + """ + self._user_shard_spaces = user_shard_spaces + + @property + def catalog_details(self): + """ + **[Required]** Gets the catalog_details of this CreateDistributedDatabaseDetails. + Collection of catalog details for the Globally distributed database. + + + :return: The catalog_details of this CreateDistributedDatabaseDetails. + :rtype: list[oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDetails] + """ + return self._catalog_details + + @catalog_details.setter + def catalog_details(self, catalog_details): + """ + Sets the catalog_details of this CreateDistributedDatabaseDetails. + Collection of catalog details for the Globally distributed database. + + + :param catalog_details: The catalog_details of this CreateDistributedDatabaseDetails. + :type: list[oci.distributed_database_v26.models.CreateDistributedDatabaseCatalogDetails] + """ + self._catalog_details = catalog_details + + @property + def gsm_ssh_public_key(self): + """ + Gets the gsm_ssh_public_key of this CreateDistributedDatabaseDetails. + The SSH public key for Global service manager instances. + + + :return: The gsm_ssh_public_key of this CreateDistributedDatabaseDetails. + :rtype: str + """ + return self._gsm_ssh_public_key + + @gsm_ssh_public_key.setter + def gsm_ssh_public_key(self, gsm_ssh_public_key): + """ + Sets the gsm_ssh_public_key of this CreateDistributedDatabaseDetails. + The SSH public key for Global service manager instances. + + + :param gsm_ssh_public_key: The gsm_ssh_public_key of this CreateDistributedDatabaseDetails. + :type: str + """ + self._gsm_ssh_public_key = gsm_ssh_public_key + + @property + def db_backup_config(self): + """ + Gets the db_backup_config of this CreateDistributedDatabaseDetails. + + :return: The db_backup_config of this CreateDistributedDatabaseDetails. + :rtype: oci.distributed_database_v26.models.DistributedDbBackupConfig + """ + return self._db_backup_config + + @db_backup_config.setter + def db_backup_config(self, db_backup_config): + """ + Sets the db_backup_config of this CreateDistributedDatabaseDetails. + + :param db_backup_config: The db_backup_config of this CreateDistributedDatabaseDetails. + :type: oci.distributed_database_v26.models.DistributedDbBackupConfig + """ + self._db_backup_config = db_backup_config + + @property + def vcn_nsg_ids(self): + """ + Gets the vcn_nsg_ids of this CreateDistributedDatabaseDetails. + The list of network security group (NSG) details to be associated with the distributed database. + + + :return: The vcn_nsg_ids of this CreateDistributedDatabaseDetails. + :rtype: list[oci.distributed_database_v26.models.VcnNsgIdsDetails] + """ + return self._vcn_nsg_ids + + @vcn_nsg_ids.setter + def vcn_nsg_ids(self, vcn_nsg_ids): + """ + Sets the vcn_nsg_ids of this CreateDistributedDatabaseDetails. + The list of network security group (NSG) details to be associated with the distributed database. + + + :param vcn_nsg_ids: The vcn_nsg_ids of this CreateDistributedDatabaseDetails. + :type: list[oci.distributed_database_v26.models.VcnNsgIdsDetails] + """ + self._vcn_nsg_ids = vcn_nsg_ids + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this CreateDistributedDatabaseDetails. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this CreateDistributedDatabaseDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this CreateDistributedDatabaseDetails. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this CreateDistributedDatabaseDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this CreateDistributedDatabaseDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this CreateDistributedDatabaseDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this CreateDistributedDatabaseDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this CreateDistributedDatabaseDetails. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_distributed_database_private_endpoint_details.py b/src/oci/distributed_database_v26/models/create_distributed_database_private_endpoint_details.py new file mode 100644 index 0000000000..2261496870 --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_distributed_database_private_endpoint_details.py @@ -0,0 +1,260 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateDistributedDatabasePrivateEndpointDetails(object): + """ + Details required for private endpoint creation. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateDistributedDatabasePrivateEndpointDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param compartment_id: + The value to assign to the compartment_id property of this CreateDistributedDatabasePrivateEndpointDetails. + :type compartment_id: str + + :param subnet_id: + The value to assign to the subnet_id property of this CreateDistributedDatabasePrivateEndpointDetails. + :type subnet_id: str + + :param display_name: + The value to assign to the display_name property of this CreateDistributedDatabasePrivateEndpointDetails. + :type display_name: str + + :param description: + The value to assign to the description property of this CreateDistributedDatabasePrivateEndpointDetails. + :type description: str + + :param vcn_nsg_ids: + The value to assign to the vcn_nsg_ids property of this CreateDistributedDatabasePrivateEndpointDetails. + :type vcn_nsg_ids: list[oci.distributed_database_v26.models.VcnNsgIdsDetails] + + :param freeform_tags: + The value to assign to the freeform_tags property of this CreateDistributedDatabasePrivateEndpointDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this CreateDistributedDatabasePrivateEndpointDetails. + :type defined_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'compartment_id': 'str', + 'subnet_id': 'str', + 'display_name': 'str', + 'description': 'str', + 'vcn_nsg_ids': 'list[VcnNsgIdsDetails]', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'compartment_id': 'compartmentId', + 'subnet_id': 'subnetId', + 'display_name': 'displayName', + 'description': 'description', + 'vcn_nsg_ids': 'vcnNsgIds', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' + } + self._compartment_id = None + self._subnet_id = None + self._display_name = None + self._description = None + self._vcn_nsg_ids = None + self._freeform_tags = None + self._defined_tags = None + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this CreateDistributedDatabasePrivateEndpointDetails. + Identifier of the compartment where private endpoint is to be created. + + + :return: The compartment_id of this CreateDistributedDatabasePrivateEndpointDetails. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this CreateDistributedDatabasePrivateEndpointDetails. + Identifier of the compartment where private endpoint is to be created. + + + :param compartment_id: The compartment_id of this CreateDistributedDatabasePrivateEndpointDetails. + :type: str + """ + self._compartment_id = compartment_id + + @property + def subnet_id(self): + """ + **[Required]** Gets the subnet_id of this CreateDistributedDatabasePrivateEndpointDetails. + Identifier of the customer subnet against which private endpoint is to be created. + + + :return: The subnet_id of this CreateDistributedDatabasePrivateEndpointDetails. + :rtype: str + """ + return self._subnet_id + + @subnet_id.setter + def subnet_id(self, subnet_id): + """ + Sets the subnet_id of this CreateDistributedDatabasePrivateEndpointDetails. + Identifier of the customer subnet against which private endpoint is to be created. + + + :param subnet_id: The subnet_id of this CreateDistributedDatabasePrivateEndpointDetails. + :type: str + """ + self._subnet_id = subnet_id + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this CreateDistributedDatabasePrivateEndpointDetails. + Private endpoint display name. + + + :return: The display_name of this CreateDistributedDatabasePrivateEndpointDetails. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this CreateDistributedDatabasePrivateEndpointDetails. + Private endpoint display name. + + + :param display_name: The display_name of this CreateDistributedDatabasePrivateEndpointDetails. + :type: str + """ + self._display_name = display_name + + @property + def description(self): + """ + Gets the description of this CreateDistributedDatabasePrivateEndpointDetails. + DistributedDatabasePrivateEndpoint description. + + + :return: The description of this CreateDistributedDatabasePrivateEndpointDetails. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this CreateDistributedDatabasePrivateEndpointDetails. + DistributedDatabasePrivateEndpoint description. + + + :param description: The description of this CreateDistributedDatabasePrivateEndpointDetails. + :type: str + """ + self._description = description + + @property + def vcn_nsg_ids(self): + """ + Gets the vcn_nsg_ids of this CreateDistributedDatabasePrivateEndpointDetails. + The list of network security group (NSG) details to be associated with the private endpoint. + + + :return: The vcn_nsg_ids of this CreateDistributedDatabasePrivateEndpointDetails. + :rtype: list[oci.distributed_database_v26.models.VcnNsgIdsDetails] + """ + return self._vcn_nsg_ids + + @vcn_nsg_ids.setter + def vcn_nsg_ids(self, vcn_nsg_ids): + """ + Sets the vcn_nsg_ids of this CreateDistributedDatabasePrivateEndpointDetails. + The list of network security group (NSG) details to be associated with the private endpoint. + + + :param vcn_nsg_ids: The vcn_nsg_ids of this CreateDistributedDatabasePrivateEndpointDetails. + :type: list[oci.distributed_database_v26.models.VcnNsgIdsDetails] + """ + self._vcn_nsg_ids = vcn_nsg_ids + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this CreateDistributedDatabasePrivateEndpointDetails. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this CreateDistributedDatabasePrivateEndpointDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this CreateDistributedDatabasePrivateEndpointDetails. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this CreateDistributedDatabasePrivateEndpointDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this CreateDistributedDatabasePrivateEndpointDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this CreateDistributedDatabasePrivateEndpointDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this CreateDistributedDatabasePrivateEndpointDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this CreateDistributedDatabasePrivateEndpointDetails. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_distributed_database_shard_database_details.py b/src/oci/distributed_database_v26/models/create_distributed_database_shard_database_details.py new file mode 100644 index 0000000000..02be298da0 --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_distributed_database_shard_database_details.py @@ -0,0 +1,141 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateDistributedDatabaseShardDatabaseDetails(object): + """ + Details for creating a distributed database shard. + """ + + #: A constant which can be used with the source property of a CreateDistributedDatabaseShardDatabaseDetails. + #: This constant has a value of "XS_EXISTING_CLUSTER" + SOURCE_XS_EXISTING_CLUSTER = "XS_EXISTING_CLUSTER" + + #: A constant which can be used with the source property of a CreateDistributedDatabaseShardDatabaseDetails. + #: This constant has a value of "XS_NEW_CLUSTER" + SOURCE_XS_NEW_CLUSTER = "XS_NEW_CLUSTER" + + #: A constant which can be used with the source property of a CreateDistributedDatabaseShardDatabaseDetails. + #: This constant has a value of "XS_NEW_VAULT_AND_CLUSTER" + SOURCE_XS_NEW_VAULT_AND_CLUSTER = "XS_NEW_VAULT_AND_CLUSTER" + + #: A constant which can be used with the source property of a CreateDistributedDatabaseShardDatabaseDetails. + #: This constant has a value of "XD_EXISTING_CLUSTER" + SOURCE_XD_EXISTING_CLUSTER = "XD_EXISTING_CLUSTER" + + #: A constant which can be used with the source property of a CreateDistributedDatabaseShardDatabaseDetails. + #: This constant has a value of "EXISTING_DB_HOME" + SOURCE_EXISTING_DB_HOME = "EXISTING_DB_HOME" + + def __init__(self, **kwargs): + """ + Initializes a new CreateDistributedDatabaseShardDatabaseDetails object with values from keyword arguments. This class has the following subclasses and if you are using this class as input + to a service operations then you should favor using a subclass over the base class: + + * :class:`~oci.distributed_database_v26.models.CreateDistributedDatabaseShardWithExadbXsNewClusterDetails` + * :class:`~oci.distributed_database_v26.models.CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails` + * :class:`~oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseWithExadbXsDetails` + * :class:`~oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseWithDbHomeDetails` + * :class:`~oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseWithExadbXdDetails` + + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source: + The value to assign to the source property of this CreateDistributedDatabaseShardDatabaseDetails. + Allowed values for this property are: "XS_EXISTING_CLUSTER", "XS_NEW_CLUSTER", "XS_NEW_VAULT_AND_CLUSTER", "XD_EXISTING_CLUSTER", "EXISTING_DB_HOME" + :type source: str + + """ + self.swagger_types = { + 'source': 'str' + } + self.attribute_map = { + 'source': 'source' + } + self._source = None + + @staticmethod + def get_subtype(object_dictionary): + """ + Given the hash representation of a subtype of this class, + use the info in the hash to return the class of the subtype. + """ + type = object_dictionary['source'] + + if type == 'XS_NEW_CLUSTER': + return 'CreateDistributedDatabaseShardWithExadbXsNewClusterDetails' + + if type == 'XS_NEW_VAULT_AND_CLUSTER': + return 'CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails' + + if type == 'XS_EXISTING_CLUSTER': + return 'CreateDistributedDatabaseShardDatabaseWithExadbXsDetails' + + if type == 'EXISTING_DB_HOME': + return 'CreateDistributedDatabaseShardDatabaseWithDbHomeDetails' + + if type == 'XD_EXISTING_CLUSTER': + return 'CreateDistributedDatabaseShardDatabaseWithExadbXdDetails' + else: + return 'CreateDistributedDatabaseShardDatabaseDetails' + + @property + def source(self): + """ + **[Required]** Gets the source of this CreateDistributedDatabaseShardDatabaseDetails. + The source of the Globally distributed database type. + Use XS_EXISTING_CLUSTER for a database on Exascale Infrastructure that uses a pre-existing cluster. + Use XS_NEW_CLUSTER for a database on Exascale Infrastructure that requires a new cluster created from scratch. + Use XS_NEW_VAULT_AND_CLUSTER for a database on Exascale Infrastructure that requires a new vault and cluster created from scratch. + Use XD_EXISTING_CLUSTER for a database on Dedicated Infrastructure that uses a pre-existing cluster. + Use EXISTING_DB_HOME for a database on a pre-existing database home. + + Allowed values for this property are: "XS_EXISTING_CLUSTER", "XS_NEW_CLUSTER", "XS_NEW_VAULT_AND_CLUSTER", "XD_EXISTING_CLUSTER", "EXISTING_DB_HOME" + + + :return: The source of this CreateDistributedDatabaseShardDatabaseDetails. + :rtype: str + """ + return self._source + + @source.setter + def source(self, source): + """ + Sets the source of this CreateDistributedDatabaseShardDatabaseDetails. + The source of the Globally distributed database type. + Use XS_EXISTING_CLUSTER for a database on Exascale Infrastructure that uses a pre-existing cluster. + Use XS_NEW_CLUSTER for a database on Exascale Infrastructure that requires a new cluster created from scratch. + Use XS_NEW_VAULT_AND_CLUSTER for a database on Exascale Infrastructure that requires a new vault and cluster created from scratch. + Use XD_EXISTING_CLUSTER for a database on Dedicated Infrastructure that uses a pre-existing cluster. + Use EXISTING_DB_HOME for a database on a pre-existing database home. + + + :param source: The source of this CreateDistributedDatabaseShardDatabaseDetails. + :type: str + """ + allowed_values = ["XS_EXISTING_CLUSTER", "XS_NEW_CLUSTER", "XS_NEW_VAULT_AND_CLUSTER", "XD_EXISTING_CLUSTER", "EXISTING_DB_HOME"] + if not value_allowed_none_or_none_sentinel(source, allowed_values): + raise ValueError( + f"Invalid value for `source`, must be None or one of {allowed_values}" + ) + self._source = source + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_distributed_database_shard_database_with_db_home_details.py b/src/oci/distributed_database_v26/models/create_distributed_database_shard_database_with_db_home_details.py new file mode 100644 index 0000000000..e7d15c60b2 --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_distributed_database_shard_database_with_db_home_details.py @@ -0,0 +1,331 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +from .create_distributed_database_shard_database_details import CreateDistributedDatabaseShardDatabaseDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateDistributedDatabaseShardDatabaseWithDbHomeDetails(CreateDistributedDatabaseShardDatabaseDetails): + """ + Configuration for creating a distributed database shard using a pre-existing Database Home. + """ + + #: A constant which can be used with the protection_mode property of a CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + #: This constant has a value of "MAXIMUM_AVAILABILITY" + PROTECTION_MODE_MAXIMUM_AVAILABILITY = "MAXIMUM_AVAILABILITY" + + #: A constant which can be used with the protection_mode property of a CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + #: This constant has a value of "MAXIMUM_PERFORMANCE" + PROTECTION_MODE_MAXIMUM_PERFORMANCE = "MAXIMUM_PERFORMANCE" + + #: A constant which can be used with the protection_mode property of a CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + #: This constant has a value of "MAXIMUM_PROTECTION" + PROTECTION_MODE_MAXIMUM_PROTECTION = "MAXIMUM_PROTECTION" + + #: A constant which can be used with the transport_type property of a CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + #: This constant has a value of "SYNC" + TRANSPORT_TYPE_SYNC = "SYNC" + + #: A constant which can be used with the transport_type property of a CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + #: This constant has a value of "ASYNC" + TRANSPORT_TYPE_ASYNC = "ASYNC" + + #: A constant which can be used with the transport_type property of a CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + #: This constant has a value of "FASTSYNC" + TRANSPORT_TYPE_FASTSYNC = "FASTSYNC" + + def __init__(self, **kwargs): + """ + Initializes a new CreateDistributedDatabaseShardDatabaseWithDbHomeDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseWithDbHomeDetails.source` attribute + of this class is ``EXISTING_DB_HOME`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source: + The value to assign to the source property of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + Allowed values for this property are: "XS_EXISTING_CLUSTER", "XS_NEW_CLUSTER", "XS_NEW_VAULT_AND_CLUSTER", "XD_EXISTING_CLUSTER", "EXISTING_DB_HOME" + :type source: str + + :param db_home_id: + The value to assign to the db_home_id property of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + :type db_home_id: str + + :param admin_password: + The value to assign to the admin_password property of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + :type admin_password: str + + :param vault_id: + The value to assign to the vault_id property of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + :type vault_id: str + + :param kms_key_id: + The value to assign to the kms_key_id property of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + :type kms_key_id: str + + :param kms_key_version_id: + The value to assign to the kms_key_version_id property of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + :type kms_key_version_id: str + + :param protection_mode: + The value to assign to the protection_mode property of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION" + :type protection_mode: str + + :param transport_type: + The value to assign to the transport_type property of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC" + :type transport_type: str + + """ + self.swagger_types = { + 'source': 'str', + 'db_home_id': 'str', + 'admin_password': 'str', + 'vault_id': 'str', + 'kms_key_id': 'str', + 'kms_key_version_id': 'str', + 'protection_mode': 'str', + 'transport_type': 'str' + } + self.attribute_map = { + 'source': 'source', + 'db_home_id': 'dbHomeId', + 'admin_password': 'adminPassword', + 'vault_id': 'vaultId', + 'kms_key_id': 'kmsKeyId', + 'kms_key_version_id': 'kmsKeyVersionId', + 'protection_mode': 'protectionMode', + 'transport_type': 'transportType' + } + self._redacted_field_paths = [ + ['admin_password'], + ] + self._source = None + self._db_home_id = None + self._admin_password = None + self._vault_id = None + self._kms_key_id = None + self._kms_key_version_id = None + self._protection_mode = None + self._transport_type = None + self._source = 'EXISTING_DB_HOME' + + @property + def db_home_id(self): + """ + **[Required]** Gets the db_home_id of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + The `OCID`__ of the Database Home. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The db_home_id of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + :rtype: str + """ + return self._db_home_id + + @db_home_id.setter + def db_home_id(self, db_home_id): + """ + Sets the db_home_id of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + The `OCID`__ of the Database Home. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param db_home_id: The db_home_id of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + :type: str + """ + self._db_home_id = db_home_id + + @property + def admin_password(self): + """ + **[Required]** Gets the admin_password of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + The admin password for the shard associated with Globally distributed database. + + + :return: The admin_password of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + :rtype: str + """ + return self._admin_password + + @admin_password.setter + def admin_password(self, admin_password): + """ + Sets the admin_password of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + The admin password for the shard associated with Globally distributed database. + + + :param admin_password: The admin_password of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + :type: str + """ + self._admin_password = admin_password + + @property + def vault_id(self): + """ + Gets the vault_id of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :return: The vault_id of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + :rtype: str + """ + return self._vault_id + + @vault_id.setter + def vault_id(self, vault_id): + """ + Sets the vault_id of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :param vault_id: The vault_id of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + :type: str + """ + self._vault_id = vault_id + + @property + def kms_key_id(self): + """ + Gets the kms_key_id of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_id of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + :rtype: str + """ + return self._kms_key_id + + @kms_key_id.setter + def kms_key_id(self, kms_key_id): + """ + Sets the kms_key_id of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_id: The kms_key_id of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + :type: str + """ + self._kms_key_id = kms_key_id + + @property + def kms_key_version_id(self): + """ + Gets the kms_key_version_id of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_version_id of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + :rtype: str + """ + return self._kms_key_version_id + + @kms_key_version_id.setter + def kms_key_version_id(self, kms_key_version_id): + """ + Sets the kms_key_version_id of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_version_id: The kms_key_version_id of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + :type: str + """ + self._kms_key_version_id = kms_key_version_id + + @property + def protection_mode(self): + """ + Gets the protection_mode of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + The protection mode used for the Data Guard association. + + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION" + + + :return: The protection_mode of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + :rtype: str + """ + return self._protection_mode + + @protection_mode.setter + def protection_mode(self, protection_mode): + """ + Sets the protection_mode of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + The protection mode used for the Data Guard association. + + + :param protection_mode: The protection_mode of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + :type: str + """ + allowed_values = ["MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION"] + if not value_allowed_none_or_none_sentinel(protection_mode, allowed_values): + raise ValueError( + f"Invalid value for `protection_mode`, must be None or one of {allowed_values}" + ) + self._protection_mode = protection_mode + + @property + def transport_type(self): + """ + Gets the transport_type of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + The transport type used for the Data Guard association. + + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC" + + + :return: The transport_type of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + :rtype: str + """ + return self._transport_type + + @transport_type.setter + def transport_type(self, transport_type): + """ + Sets the transport_type of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + The transport type used for the Data Guard association. + + + :param transport_type: The transport_type of this CreateDistributedDatabaseShardDatabaseWithDbHomeDetails. + :type: str + """ + allowed_values = ["SYNC", "ASYNC", "FASTSYNC"] + if not value_allowed_none_or_none_sentinel(transport_type, allowed_values): + raise ValueError( + f"Invalid value for `transport_type`, must be None or one of {allowed_values}" + ) + self._transport_type = transport_type + + def __repr__(self): + as_dict = to_dict(self) + redact_password_field(as_dict, ['admin_password']) + return formatted_flat_dict(as_dict) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_distributed_database_shard_database_with_exadb_xd_details.py b/src/oci/distributed_database_v26/models/create_distributed_database_shard_database_with_exadb_xd_details.py new file mode 100644 index 0000000000..84cad2a8e3 --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_distributed_database_shard_database_with_exadb_xd_details.py @@ -0,0 +1,331 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +from .create_distributed_database_shard_database_details import CreateDistributedDatabaseShardDatabaseDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateDistributedDatabaseShardDatabaseWithExadbXdDetails(CreateDistributedDatabaseShardDatabaseDetails): + """ + Configuration for creating a distributed database shard using an existing ExaDB-D VM cluster. + """ + + #: A constant which can be used with the protection_mode property of a CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + #: This constant has a value of "MAXIMUM_AVAILABILITY" + PROTECTION_MODE_MAXIMUM_AVAILABILITY = "MAXIMUM_AVAILABILITY" + + #: A constant which can be used with the protection_mode property of a CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + #: This constant has a value of "MAXIMUM_PERFORMANCE" + PROTECTION_MODE_MAXIMUM_PERFORMANCE = "MAXIMUM_PERFORMANCE" + + #: A constant which can be used with the protection_mode property of a CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + #: This constant has a value of "MAXIMUM_PROTECTION" + PROTECTION_MODE_MAXIMUM_PROTECTION = "MAXIMUM_PROTECTION" + + #: A constant which can be used with the transport_type property of a CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + #: This constant has a value of "SYNC" + TRANSPORT_TYPE_SYNC = "SYNC" + + #: A constant which can be used with the transport_type property of a CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + #: This constant has a value of "ASYNC" + TRANSPORT_TYPE_ASYNC = "ASYNC" + + #: A constant which can be used with the transport_type property of a CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + #: This constant has a value of "FASTSYNC" + TRANSPORT_TYPE_FASTSYNC = "FASTSYNC" + + def __init__(self, **kwargs): + """ + Initializes a new CreateDistributedDatabaseShardDatabaseWithExadbXdDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseWithExadbXdDetails.source` attribute + of this class is ``XD_EXISTING_CLUSTER`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source: + The value to assign to the source property of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + Allowed values for this property are: "XS_EXISTING_CLUSTER", "XS_NEW_CLUSTER", "XS_NEW_VAULT_AND_CLUSTER", "XD_EXISTING_CLUSTER", "EXISTING_DB_HOME" + :type source: str + + :param vm_cluster_id: + The value to assign to the vm_cluster_id property of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + :type vm_cluster_id: str + + :param admin_password: + The value to assign to the admin_password property of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + :type admin_password: str + + :param vault_id: + The value to assign to the vault_id property of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + :type vault_id: str + + :param kms_key_id: + The value to assign to the kms_key_id property of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + :type kms_key_id: str + + :param kms_key_version_id: + The value to assign to the kms_key_version_id property of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + :type kms_key_version_id: str + + :param protection_mode: + The value to assign to the protection_mode property of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION" + :type protection_mode: str + + :param transport_type: + The value to assign to the transport_type property of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC" + :type transport_type: str + + """ + self.swagger_types = { + 'source': 'str', + 'vm_cluster_id': 'str', + 'admin_password': 'str', + 'vault_id': 'str', + 'kms_key_id': 'str', + 'kms_key_version_id': 'str', + 'protection_mode': 'str', + 'transport_type': 'str' + } + self.attribute_map = { + 'source': 'source', + 'vm_cluster_id': 'vmClusterId', + 'admin_password': 'adminPassword', + 'vault_id': 'vaultId', + 'kms_key_id': 'kmsKeyId', + 'kms_key_version_id': 'kmsKeyVersionId', + 'protection_mode': 'protectionMode', + 'transport_type': 'transportType' + } + self._redacted_field_paths = [ + ['admin_password'], + ] + self._source = None + self._vm_cluster_id = None + self._admin_password = None + self._vault_id = None + self._kms_key_id = None + self._kms_key_version_id = None + self._protection_mode = None + self._transport_type = None + self._source = 'XD_EXISTING_CLUSTER' + + @property + def vm_cluster_id(self): + """ + **[Required]** Gets the vm_cluster_id of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + The `OCID`__ of the Cloud VM Cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The vm_cluster_id of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + :rtype: str + """ + return self._vm_cluster_id + + @vm_cluster_id.setter + def vm_cluster_id(self, vm_cluster_id): + """ + Sets the vm_cluster_id of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + The `OCID`__ of the Cloud VM Cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param vm_cluster_id: The vm_cluster_id of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + :type: str + """ + self._vm_cluster_id = vm_cluster_id + + @property + def admin_password(self): + """ + **[Required]** Gets the admin_password of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + The admin password for the shard associated with Globally distributed database. + + + :return: The admin_password of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + :rtype: str + """ + return self._admin_password + + @admin_password.setter + def admin_password(self, admin_password): + """ + Sets the admin_password of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + The admin password for the shard associated with Globally distributed database. + + + :param admin_password: The admin_password of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + :type: str + """ + self._admin_password = admin_password + + @property + def vault_id(self): + """ + Gets the vault_id of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :return: The vault_id of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + :rtype: str + """ + return self._vault_id + + @vault_id.setter + def vault_id(self, vault_id): + """ + Sets the vault_id of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :param vault_id: The vault_id of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + :type: str + """ + self._vault_id = vault_id + + @property + def kms_key_id(self): + """ + Gets the kms_key_id of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_id of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + :rtype: str + """ + return self._kms_key_id + + @kms_key_id.setter + def kms_key_id(self, kms_key_id): + """ + Sets the kms_key_id of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_id: The kms_key_id of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + :type: str + """ + self._kms_key_id = kms_key_id + + @property + def kms_key_version_id(self): + """ + Gets the kms_key_version_id of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_version_id of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + :rtype: str + """ + return self._kms_key_version_id + + @kms_key_version_id.setter + def kms_key_version_id(self, kms_key_version_id): + """ + Sets the kms_key_version_id of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_version_id: The kms_key_version_id of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + :type: str + """ + self._kms_key_version_id = kms_key_version_id + + @property + def protection_mode(self): + """ + Gets the protection_mode of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + The protection mode used for the Data Guard association. + + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION" + + + :return: The protection_mode of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + :rtype: str + """ + return self._protection_mode + + @protection_mode.setter + def protection_mode(self, protection_mode): + """ + Sets the protection_mode of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + The protection mode used for the Data Guard association. + + + :param protection_mode: The protection_mode of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + :type: str + """ + allowed_values = ["MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION"] + if not value_allowed_none_or_none_sentinel(protection_mode, allowed_values): + raise ValueError( + f"Invalid value for `protection_mode`, must be None or one of {allowed_values}" + ) + self._protection_mode = protection_mode + + @property + def transport_type(self): + """ + Gets the transport_type of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + The transport type used for the Data Guard association. + + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC" + + + :return: The transport_type of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + :rtype: str + """ + return self._transport_type + + @transport_type.setter + def transport_type(self, transport_type): + """ + Sets the transport_type of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + The transport type used for the Data Guard association. + + + :param transport_type: The transport_type of this CreateDistributedDatabaseShardDatabaseWithExadbXdDetails. + :type: str + """ + allowed_values = ["SYNC", "ASYNC", "FASTSYNC"] + if not value_allowed_none_or_none_sentinel(transport_type, allowed_values): + raise ValueError( + f"Invalid value for `transport_type`, must be None or one of {allowed_values}" + ) + self._transport_type = transport_type + + def __repr__(self): + as_dict = to_dict(self) + redact_password_field(as_dict, ['admin_password']) + return formatted_flat_dict(as_dict) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_distributed_database_shard_database_with_exadb_xs_details.py b/src/oci/distributed_database_v26/models/create_distributed_database_shard_database_with_exadb_xs_details.py new file mode 100644 index 0000000000..a0412f97bf --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_distributed_database_shard_database_with_exadb_xs_details.py @@ -0,0 +1,331 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +from .create_distributed_database_shard_database_details import CreateDistributedDatabaseShardDatabaseDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateDistributedDatabaseShardDatabaseWithExadbXsDetails(CreateDistributedDatabaseShardDatabaseDetails): + """ + Configuration for creating a distributed database shard using an existing ExaDB-XS VM cluster. + """ + + #: A constant which can be used with the protection_mode property of a CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + #: This constant has a value of "MAXIMUM_AVAILABILITY" + PROTECTION_MODE_MAXIMUM_AVAILABILITY = "MAXIMUM_AVAILABILITY" + + #: A constant which can be used with the protection_mode property of a CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + #: This constant has a value of "MAXIMUM_PERFORMANCE" + PROTECTION_MODE_MAXIMUM_PERFORMANCE = "MAXIMUM_PERFORMANCE" + + #: A constant which can be used with the protection_mode property of a CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + #: This constant has a value of "MAXIMUM_PROTECTION" + PROTECTION_MODE_MAXIMUM_PROTECTION = "MAXIMUM_PROTECTION" + + #: A constant which can be used with the transport_type property of a CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + #: This constant has a value of "SYNC" + TRANSPORT_TYPE_SYNC = "SYNC" + + #: A constant which can be used with the transport_type property of a CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + #: This constant has a value of "ASYNC" + TRANSPORT_TYPE_ASYNC = "ASYNC" + + #: A constant which can be used with the transport_type property of a CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + #: This constant has a value of "FASTSYNC" + TRANSPORT_TYPE_FASTSYNC = "FASTSYNC" + + def __init__(self, **kwargs): + """ + Initializes a new CreateDistributedDatabaseShardDatabaseWithExadbXsDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseWithExadbXsDetails.source` attribute + of this class is ``XS_EXISTING_CLUSTER`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source: + The value to assign to the source property of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + Allowed values for this property are: "XS_EXISTING_CLUSTER", "XS_NEW_CLUSTER", "XS_NEW_VAULT_AND_CLUSTER", "XD_EXISTING_CLUSTER", "EXISTING_DB_HOME" + :type source: str + + :param vm_cluster_id: + The value to assign to the vm_cluster_id property of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + :type vm_cluster_id: str + + :param admin_password: + The value to assign to the admin_password property of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + :type admin_password: str + + :param vault_id: + The value to assign to the vault_id property of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + :type vault_id: str + + :param kms_key_id: + The value to assign to the kms_key_id property of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + :type kms_key_id: str + + :param kms_key_version_id: + The value to assign to the kms_key_version_id property of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + :type kms_key_version_id: str + + :param protection_mode: + The value to assign to the protection_mode property of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION" + :type protection_mode: str + + :param transport_type: + The value to assign to the transport_type property of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC" + :type transport_type: str + + """ + self.swagger_types = { + 'source': 'str', + 'vm_cluster_id': 'str', + 'admin_password': 'str', + 'vault_id': 'str', + 'kms_key_id': 'str', + 'kms_key_version_id': 'str', + 'protection_mode': 'str', + 'transport_type': 'str' + } + self.attribute_map = { + 'source': 'source', + 'vm_cluster_id': 'vmClusterId', + 'admin_password': 'adminPassword', + 'vault_id': 'vaultId', + 'kms_key_id': 'kmsKeyId', + 'kms_key_version_id': 'kmsKeyVersionId', + 'protection_mode': 'protectionMode', + 'transport_type': 'transportType' + } + self._redacted_field_paths = [ + ['admin_password'], + ] + self._source = None + self._vm_cluster_id = None + self._admin_password = None + self._vault_id = None + self._kms_key_id = None + self._kms_key_version_id = None + self._protection_mode = None + self._transport_type = None + self._source = 'XS_EXISTING_CLUSTER' + + @property + def vm_cluster_id(self): + """ + **[Required]** Gets the vm_cluster_id of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + The `OCID`__ of the VmCluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The vm_cluster_id of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + :rtype: str + """ + return self._vm_cluster_id + + @vm_cluster_id.setter + def vm_cluster_id(self, vm_cluster_id): + """ + Sets the vm_cluster_id of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + The `OCID`__ of the VmCluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param vm_cluster_id: The vm_cluster_id of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + :type: str + """ + self._vm_cluster_id = vm_cluster_id + + @property + def admin_password(self): + """ + **[Required]** Gets the admin_password of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + The admin password for the shard associated with Globally distributed database. + + + :return: The admin_password of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + :rtype: str + """ + return self._admin_password + + @admin_password.setter + def admin_password(self, admin_password): + """ + Sets the admin_password of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + The admin password for the shard associated with Globally distributed database. + + + :param admin_password: The admin_password of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + :type: str + """ + self._admin_password = admin_password + + @property + def vault_id(self): + """ + Gets the vault_id of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :return: The vault_id of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + :rtype: str + """ + return self._vault_id + + @vault_id.setter + def vault_id(self, vault_id): + """ + Sets the vault_id of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :param vault_id: The vault_id of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + :type: str + """ + self._vault_id = vault_id + + @property + def kms_key_id(self): + """ + Gets the kms_key_id of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_id of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + :rtype: str + """ + return self._kms_key_id + + @kms_key_id.setter + def kms_key_id(self, kms_key_id): + """ + Sets the kms_key_id of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_id: The kms_key_id of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + :type: str + """ + self._kms_key_id = kms_key_id + + @property + def kms_key_version_id(self): + """ + Gets the kms_key_version_id of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_version_id of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + :rtype: str + """ + return self._kms_key_version_id + + @kms_key_version_id.setter + def kms_key_version_id(self, kms_key_version_id): + """ + Sets the kms_key_version_id of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_version_id: The kms_key_version_id of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + :type: str + """ + self._kms_key_version_id = kms_key_version_id + + @property + def protection_mode(self): + """ + Gets the protection_mode of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + The protection mode used for the Data Guard association. + + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION" + + + :return: The protection_mode of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + :rtype: str + """ + return self._protection_mode + + @protection_mode.setter + def protection_mode(self, protection_mode): + """ + Sets the protection_mode of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + The protection mode used for the Data Guard association. + + + :param protection_mode: The protection_mode of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + :type: str + """ + allowed_values = ["MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION"] + if not value_allowed_none_or_none_sentinel(protection_mode, allowed_values): + raise ValueError( + f"Invalid value for `protection_mode`, must be None or one of {allowed_values}" + ) + self._protection_mode = protection_mode + + @property + def transport_type(self): + """ + Gets the transport_type of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + The transport type used for the Data Guard association. + + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC" + + + :return: The transport_type of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + :rtype: str + """ + return self._transport_type + + @transport_type.setter + def transport_type(self, transport_type): + """ + Sets the transport_type of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + The transport type used for the Data Guard association. + + + :param transport_type: The transport_type of this CreateDistributedDatabaseShardDatabaseWithExadbXsDetails. + :type: str + """ + allowed_values = ["SYNC", "ASYNC", "FASTSYNC"] + if not value_allowed_none_or_none_sentinel(transport_type, allowed_values): + raise ValueError( + f"Invalid value for `transport_type`, must be None or one of {allowed_values}" + ) + self._transport_type = transport_type + + def __repr__(self): + as_dict = to_dict(self) + redact_password_field(as_dict, ['admin_password']) + return formatted_flat_dict(as_dict) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_distributed_database_shard_with_exadb_xs_new_cluster_details.py b/src/oci/distributed_database_v26/models/create_distributed_database_shard_with_exadb_xs_new_cluster_details.py new file mode 100644 index 0000000000..6ff938d915 --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_distributed_database_shard_with_exadb_xs_new_cluster_details.py @@ -0,0 +1,389 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +from .create_distributed_database_shard_database_details import CreateDistributedDatabaseShardDatabaseDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateDistributedDatabaseShardWithExadbXsNewClusterDetails(CreateDistributedDatabaseShardDatabaseDetails): + """ + Configuration for creating a distributed database shard on a new ExaDB-XS VM cluster. + """ + + #: A constant which can be used with the protection_mode property of a CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + #: This constant has a value of "MAXIMUM_AVAILABILITY" + PROTECTION_MODE_MAXIMUM_AVAILABILITY = "MAXIMUM_AVAILABILITY" + + #: A constant which can be used with the protection_mode property of a CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + #: This constant has a value of "MAXIMUM_PERFORMANCE" + PROTECTION_MODE_MAXIMUM_PERFORMANCE = "MAXIMUM_PERFORMANCE" + + #: A constant which can be used with the protection_mode property of a CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + #: This constant has a value of "MAXIMUM_PROTECTION" + PROTECTION_MODE_MAXIMUM_PROTECTION = "MAXIMUM_PROTECTION" + + #: A constant which can be used with the transport_type property of a CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + #: This constant has a value of "SYNC" + TRANSPORT_TYPE_SYNC = "SYNC" + + #: A constant which can be used with the transport_type property of a CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + #: This constant has a value of "ASYNC" + TRANSPORT_TYPE_ASYNC = "ASYNC" + + #: A constant which can be used with the transport_type property of a CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + #: This constant has a value of "FASTSYNC" + TRANSPORT_TYPE_FASTSYNC = "FASTSYNC" + + def __init__(self, **kwargs): + """ + Initializes a new CreateDistributedDatabaseShardWithExadbXsNewClusterDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.distributed_database_v26.models.CreateDistributedDatabaseShardWithExadbXsNewClusterDetails.source` attribute + of this class is ``XS_NEW_CLUSTER`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source: + The value to assign to the source property of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + Allowed values for this property are: "XS_EXISTING_CLUSTER", "XS_NEW_CLUSTER", "XS_NEW_VAULT_AND_CLUSTER", "XD_EXISTING_CLUSTER", "EXISTING_DB_HOME" + :type source: str + + :param admin_password: + The value to assign to the admin_password property of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + :type admin_password: str + + :param vault_id: + The value to assign to the vault_id property of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + :type vault_id: str + + :param kms_key_id: + The value to assign to the kms_key_id property of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + :type kms_key_id: str + + :param kms_key_version_id: + The value to assign to the kms_key_version_id property of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + :type kms_key_version_id: str + + :param availability_domain: + The value to assign to the availability_domain property of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + :type availability_domain: str + + :param exascale_db_storage_vault_id: + The value to assign to the exascale_db_storage_vault_id property of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + :type exascale_db_storage_vault_id: str + + :param vm_cluster_details: + The value to assign to the vm_cluster_details property of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + :type vm_cluster_details: oci.distributed_database_v26.models.VmClusterDetails + + :param protection_mode: + The value to assign to the protection_mode property of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION" + :type protection_mode: str + + :param transport_type: + The value to assign to the transport_type property of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC" + :type transport_type: str + + """ + self.swagger_types = { + 'source': 'str', + 'admin_password': 'str', + 'vault_id': 'str', + 'kms_key_id': 'str', + 'kms_key_version_id': 'str', + 'availability_domain': 'str', + 'exascale_db_storage_vault_id': 'str', + 'vm_cluster_details': 'VmClusterDetails', + 'protection_mode': 'str', + 'transport_type': 'str' + } + self.attribute_map = { + 'source': 'source', + 'admin_password': 'adminPassword', + 'vault_id': 'vaultId', + 'kms_key_id': 'kmsKeyId', + 'kms_key_version_id': 'kmsKeyVersionId', + 'availability_domain': 'availabilityDomain', + 'exascale_db_storage_vault_id': 'exascaleDbStorageVaultId', + 'vm_cluster_details': 'vmClusterDetails', + 'protection_mode': 'protectionMode', + 'transport_type': 'transportType' + } + self._redacted_field_paths = [ + ['admin_password'], + ] + self._source = None + self._admin_password = None + self._vault_id = None + self._kms_key_id = None + self._kms_key_version_id = None + self._availability_domain = None + self._exascale_db_storage_vault_id = None + self._vm_cluster_details = None + self._protection_mode = None + self._transport_type = None + self._source = 'XS_NEW_CLUSTER' + + @property + def admin_password(self): + """ + **[Required]** Gets the admin_password of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + The admin password for the shard associated with Globally distributed database. + + + :return: The admin_password of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + :rtype: str + """ + return self._admin_password + + @admin_password.setter + def admin_password(self, admin_password): + """ + Sets the admin_password of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + The admin password for the shard associated with Globally distributed database. + + + :param admin_password: The admin_password of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + :type: str + """ + self._admin_password = admin_password + + @property + def vault_id(self): + """ + Gets the vault_id of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :return: The vault_id of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + :rtype: str + """ + return self._vault_id + + @vault_id.setter + def vault_id(self, vault_id): + """ + Sets the vault_id of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :param vault_id: The vault_id of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + :type: str + """ + self._vault_id = vault_id + + @property + def kms_key_id(self): + """ + Gets the kms_key_id of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_id of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + :rtype: str + """ + return self._kms_key_id + + @kms_key_id.setter + def kms_key_id(self, kms_key_id): + """ + Sets the kms_key_id of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_id: The kms_key_id of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + :type: str + """ + self._kms_key_id = kms_key_id + + @property + def kms_key_version_id(self): + """ + Gets the kms_key_version_id of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_version_id of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + :rtype: str + """ + return self._kms_key_version_id + + @kms_key_version_id.setter + def kms_key_version_id(self, kms_key_version_id): + """ + Sets the kms_key_version_id of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_version_id: The kms_key_version_id of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + :type: str + """ + self._kms_key_version_id = kms_key_version_id + + @property + def availability_domain(self): + """ + **[Required]** Gets the availability_domain of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + The name of the availability domain that the distributed database shard will be located in like yKoY:US-ASHBURN-AD-3. + + + :return: The availability_domain of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + :rtype: str + """ + return self._availability_domain + + @availability_domain.setter + def availability_domain(self, availability_domain): + """ + Sets the availability_domain of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + The name of the availability domain that the distributed database shard will be located in like yKoY:US-ASHBURN-AD-3. + + + :param availability_domain: The availability_domain of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + :type: str + """ + self._availability_domain = availability_domain + + @property + def exascale_db_storage_vault_id(self): + """ + **[Required]** Gets the exascale_db_storage_vault_id of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + The `OCID`__ of the exascale db storage vault. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The exascale_db_storage_vault_id of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + :rtype: str + """ + return self._exascale_db_storage_vault_id + + @exascale_db_storage_vault_id.setter + def exascale_db_storage_vault_id(self, exascale_db_storage_vault_id): + """ + Sets the exascale_db_storage_vault_id of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + The `OCID`__ of the exascale db storage vault. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param exascale_db_storage_vault_id: The exascale_db_storage_vault_id of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + :type: str + """ + self._exascale_db_storage_vault_id = exascale_db_storage_vault_id + + @property + def vm_cluster_details(self): + """ + **[Required]** Gets the vm_cluster_details of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + + :return: The vm_cluster_details of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + :rtype: oci.distributed_database_v26.models.VmClusterDetails + """ + return self._vm_cluster_details + + @vm_cluster_details.setter + def vm_cluster_details(self, vm_cluster_details): + """ + Sets the vm_cluster_details of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + + :param vm_cluster_details: The vm_cluster_details of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + :type: oci.distributed_database_v26.models.VmClusterDetails + """ + self._vm_cluster_details = vm_cluster_details + + @property + def protection_mode(self): + """ + Gets the protection_mode of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + The protection mode used for the Data Guard association. + + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION" + + + :return: The protection_mode of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + :rtype: str + """ + return self._protection_mode + + @protection_mode.setter + def protection_mode(self, protection_mode): + """ + Sets the protection_mode of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + The protection mode used for the Data Guard association. + + + :param protection_mode: The protection_mode of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + :type: str + """ + allowed_values = ["MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION"] + if not value_allowed_none_or_none_sentinel(protection_mode, allowed_values): + raise ValueError( + f"Invalid value for `protection_mode`, must be None or one of {allowed_values}" + ) + self._protection_mode = protection_mode + + @property + def transport_type(self): + """ + Gets the transport_type of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + The transport type used for the Data Guard association. + + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC" + + + :return: The transport_type of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + :rtype: str + """ + return self._transport_type + + @transport_type.setter + def transport_type(self, transport_type): + """ + Sets the transport_type of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + The transport type used for the Data Guard association. + + + :param transport_type: The transport_type of this CreateDistributedDatabaseShardWithExadbXsNewClusterDetails. + :type: str + """ + allowed_values = ["SYNC", "ASYNC", "FASTSYNC"] + if not value_allowed_none_or_none_sentinel(transport_type, allowed_values): + raise ValueError( + f"Invalid value for `transport_type`, must be None or one of {allowed_values}" + ) + self._transport_type = transport_type + + def __repr__(self): + as_dict = to_dict(self) + redact_password_field(as_dict, ['admin_password']) + return formatted_flat_dict(as_dict) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_distributed_database_shard_with_exadb_xs_new_vault_and_cluster_details.py b/src/oci/distributed_database_v26/models/create_distributed_database_shard_with_exadb_xs_new_vault_and_cluster_details.py new file mode 100644 index 0000000000..cf33c2e26f --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_distributed_database_shard_with_exadb_xs_new_vault_and_cluster_details.py @@ -0,0 +1,381 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +from .create_distributed_database_shard_database_details import CreateDistributedDatabaseShardDatabaseDetails +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails(CreateDistributedDatabaseShardDatabaseDetails): + """ + Configuration for creating a distributed database shard on a new ExaDB-XS VM cluster and storage vault. + """ + + #: A constant which can be used with the protection_mode property of a CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + #: This constant has a value of "MAXIMUM_AVAILABILITY" + PROTECTION_MODE_MAXIMUM_AVAILABILITY = "MAXIMUM_AVAILABILITY" + + #: A constant which can be used with the protection_mode property of a CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + #: This constant has a value of "MAXIMUM_PERFORMANCE" + PROTECTION_MODE_MAXIMUM_PERFORMANCE = "MAXIMUM_PERFORMANCE" + + #: A constant which can be used with the protection_mode property of a CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + #: This constant has a value of "MAXIMUM_PROTECTION" + PROTECTION_MODE_MAXIMUM_PROTECTION = "MAXIMUM_PROTECTION" + + #: A constant which can be used with the transport_type property of a CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + #: This constant has a value of "SYNC" + TRANSPORT_TYPE_SYNC = "SYNC" + + #: A constant which can be used with the transport_type property of a CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + #: This constant has a value of "ASYNC" + TRANSPORT_TYPE_ASYNC = "ASYNC" + + #: A constant which can be used with the transport_type property of a CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + #: This constant has a value of "FASTSYNC" + TRANSPORT_TYPE_FASTSYNC = "FASTSYNC" + + def __init__(self, **kwargs): + """ + Initializes a new CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails object with values from keyword arguments. The default value of the :py:attr:`~oci.distributed_database_v26.models.CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails.source` attribute + of this class is ``XS_NEW_VAULT_AND_CLUSTER`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source: + The value to assign to the source property of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + Allowed values for this property are: "XS_EXISTING_CLUSTER", "XS_NEW_CLUSTER", "XS_NEW_VAULT_AND_CLUSTER", "XD_EXISTING_CLUSTER", "EXISTING_DB_HOME" + :type source: str + + :param admin_password: + The value to assign to the admin_password property of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + :type admin_password: str + + :param vault_id: + The value to assign to the vault_id property of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + :type vault_id: str + + :param kms_key_id: + The value to assign to the kms_key_id property of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + :type kms_key_id: str + + :param kms_key_version_id: + The value to assign to the kms_key_version_id property of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + :type kms_key_version_id: str + + :param availability_domain: + The value to assign to the availability_domain property of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + :type availability_domain: str + + :param db_storage_vault_details: + The value to assign to the db_storage_vault_details property of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + :type db_storage_vault_details: oci.distributed_database_v26.models.DbStorageVaultDetails + + :param vm_cluster_details: + The value to assign to the vm_cluster_details property of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + :type vm_cluster_details: oci.distributed_database_v26.models.VmClusterDetails + + :param protection_mode: + The value to assign to the protection_mode property of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION" + :type protection_mode: str + + :param transport_type: + The value to assign to the transport_type property of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC" + :type transport_type: str + + """ + self.swagger_types = { + 'source': 'str', + 'admin_password': 'str', + 'vault_id': 'str', + 'kms_key_id': 'str', + 'kms_key_version_id': 'str', + 'availability_domain': 'str', + 'db_storage_vault_details': 'DbStorageVaultDetails', + 'vm_cluster_details': 'VmClusterDetails', + 'protection_mode': 'str', + 'transport_type': 'str' + } + self.attribute_map = { + 'source': 'source', + 'admin_password': 'adminPassword', + 'vault_id': 'vaultId', + 'kms_key_id': 'kmsKeyId', + 'kms_key_version_id': 'kmsKeyVersionId', + 'availability_domain': 'availabilityDomain', + 'db_storage_vault_details': 'dbStorageVaultDetails', + 'vm_cluster_details': 'vmClusterDetails', + 'protection_mode': 'protectionMode', + 'transport_type': 'transportType' + } + self._redacted_field_paths = [ + ['admin_password'], + ] + self._source = None + self._admin_password = None + self._vault_id = None + self._kms_key_id = None + self._kms_key_version_id = None + self._availability_domain = None + self._db_storage_vault_details = None + self._vm_cluster_details = None + self._protection_mode = None + self._transport_type = None + self._source = 'XS_NEW_VAULT_AND_CLUSTER' + + @property + def admin_password(self): + """ + **[Required]** Gets the admin_password of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + The admin password for the shard associated with Globally distributed database. + + + :return: The admin_password of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + :rtype: str + """ + return self._admin_password + + @admin_password.setter + def admin_password(self, admin_password): + """ + Sets the admin_password of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + The admin password for the shard associated with Globally distributed database. + + + :param admin_password: The admin_password of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + :type: str + """ + self._admin_password = admin_password + + @property + def vault_id(self): + """ + Gets the vault_id of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :return: The vault_id of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + :rtype: str + """ + return self._vault_id + + @vault_id.setter + def vault_id(self, vault_id): + """ + Sets the vault_id of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :param vault_id: The vault_id of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + :type: str + """ + self._vault_id = vault_id + + @property + def kms_key_id(self): + """ + Gets the kms_key_id of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_id of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + :rtype: str + """ + return self._kms_key_id + + @kms_key_id.setter + def kms_key_id(self, kms_key_id): + """ + Sets the kms_key_id of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_id: The kms_key_id of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + :type: str + """ + self._kms_key_id = kms_key_id + + @property + def kms_key_version_id(self): + """ + Gets the kms_key_version_id of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_version_id of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + :rtype: str + """ + return self._kms_key_version_id + + @kms_key_version_id.setter + def kms_key_version_id(self, kms_key_version_id): + """ + Sets the kms_key_version_id of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_version_id: The kms_key_version_id of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + :type: str + """ + self._kms_key_version_id = kms_key_version_id + + @property + def availability_domain(self): + """ + **[Required]** Gets the availability_domain of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + The name of the availability domain that the distributed database shard will be located in. + + + :return: The availability_domain of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + :rtype: str + """ + return self._availability_domain + + @availability_domain.setter + def availability_domain(self, availability_domain): + """ + Sets the availability_domain of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + The name of the availability domain that the distributed database shard will be located in. + + + :param availability_domain: The availability_domain of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + :type: str + """ + self._availability_domain = availability_domain + + @property + def db_storage_vault_details(self): + """ + **[Required]** Gets the db_storage_vault_details of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + + :return: The db_storage_vault_details of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + :rtype: oci.distributed_database_v26.models.DbStorageVaultDetails + """ + return self._db_storage_vault_details + + @db_storage_vault_details.setter + def db_storage_vault_details(self, db_storage_vault_details): + """ + Sets the db_storage_vault_details of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + + :param db_storage_vault_details: The db_storage_vault_details of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + :type: oci.distributed_database_v26.models.DbStorageVaultDetails + """ + self._db_storage_vault_details = db_storage_vault_details + + @property + def vm_cluster_details(self): + """ + **[Required]** Gets the vm_cluster_details of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + + :return: The vm_cluster_details of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + :rtype: oci.distributed_database_v26.models.VmClusterDetails + """ + return self._vm_cluster_details + + @vm_cluster_details.setter + def vm_cluster_details(self, vm_cluster_details): + """ + Sets the vm_cluster_details of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + + :param vm_cluster_details: The vm_cluster_details of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + :type: oci.distributed_database_v26.models.VmClusterDetails + """ + self._vm_cluster_details = vm_cluster_details + + @property + def protection_mode(self): + """ + Gets the protection_mode of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + The protection mode used for the Data Guard association. + + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION" + + + :return: The protection_mode of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + :rtype: str + """ + return self._protection_mode + + @protection_mode.setter + def protection_mode(self, protection_mode): + """ + Sets the protection_mode of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + The protection mode used for the Data Guard association. + + + :param protection_mode: The protection_mode of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + :type: str + """ + allowed_values = ["MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION"] + if not value_allowed_none_or_none_sentinel(protection_mode, allowed_values): + raise ValueError( + f"Invalid value for `protection_mode`, must be None or one of {allowed_values}" + ) + self._protection_mode = protection_mode + + @property + def transport_type(self): + """ + Gets the transport_type of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + The transport type used for the Data Guard association. + + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC" + + + :return: The transport_type of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + :rtype: str + """ + return self._transport_type + + @transport_type.setter + def transport_type(self, transport_type): + """ + Sets the transport_type of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + The transport type used for the Data Guard association. + + + :param transport_type: The transport_type of this CreateDistributedDatabaseShardWithExadbXsNewVaultAndClusterDetails. + :type: str + """ + allowed_values = ["SYNC", "ASYNC", "FASTSYNC"] + if not value_allowed_none_or_none_sentinel(transport_type, allowed_values): + raise ValueError( + f"Invalid value for `transport_type`, must be None or one of {allowed_values}" + ) + self._transport_type = transport_type + + def __repr__(self): + as_dict = to_dict(self) + redact_password_field(as_dict, ['admin_password']) + return formatted_flat_dict(as_dict) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_system_data_guard_database_details.py b/src/oci/distributed_database_v26/models/create_system_data_guard_database_details.py new file mode 100644 index 0000000000..229ecd804d --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_system_data_guard_database_details.py @@ -0,0 +1,97 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateSystemDataGuardDatabaseDetails(object): + """ + Details required to create system data guard shard. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateSystemDataGuardDatabaseDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param original_replica: + The value to assign to the original_replica property of this CreateSystemDataGuardDatabaseDetails. + :type original_replica: oci.distributed_database_v26.models.CreateSystemDataGuardReplicaDetails + + :param data_guard_replicas: + The value to assign to the data_guard_replicas property of this CreateSystemDataGuardDatabaseDetails. + :type data_guard_replicas: list[oci.distributed_database_v26.models.CreateSystemDataGuardReplicaDetails] + + """ + self.swagger_types = { + 'original_replica': 'CreateSystemDataGuardReplicaDetails', + 'data_guard_replicas': 'list[CreateSystemDataGuardReplicaDetails]' + } + self.attribute_map = { + 'original_replica': 'originalReplica', + 'data_guard_replicas': 'dataGuardReplicas' + } + self._original_replica = None + self._data_guard_replicas = None + + @property + def original_replica(self): + """ + **[Required]** Gets the original_replica of this CreateSystemDataGuardDatabaseDetails. + + :return: The original_replica of this CreateSystemDataGuardDatabaseDetails. + :rtype: oci.distributed_database_v26.models.CreateSystemDataGuardReplicaDetails + """ + return self._original_replica + + @original_replica.setter + def original_replica(self, original_replica): + """ + Sets the original_replica of this CreateSystemDataGuardDatabaseDetails. + + :param original_replica: The original_replica of this CreateSystemDataGuardDatabaseDetails. + :type: oci.distributed_database_v26.models.CreateSystemDataGuardReplicaDetails + """ + self._original_replica = original_replica + + @property + def data_guard_replicas(self): + """ + Gets the data_guard_replicas of this CreateSystemDataGuardDatabaseDetails. + The details required to create system data guard replicas. + + + :return: The data_guard_replicas of this CreateSystemDataGuardDatabaseDetails. + :rtype: list[oci.distributed_database_v26.models.CreateSystemDataGuardReplicaDetails] + """ + return self._data_guard_replicas + + @data_guard_replicas.setter + def data_guard_replicas(self, data_guard_replicas): + """ + Sets the data_guard_replicas of this CreateSystemDataGuardDatabaseDetails. + The details required to create system data guard replicas. + + + :param data_guard_replicas: The data_guard_replicas of this CreateSystemDataGuardDatabaseDetails. + :type: list[oci.distributed_database_v26.models.CreateSystemDataGuardReplicaDetails] + """ + self._data_guard_replicas = data_guard_replicas + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_system_data_guard_replica_details.py b/src/oci/distributed_database_v26/models/create_system_data_guard_replica_details.py new file mode 100644 index 0000000000..231fbe2007 --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_system_data_guard_replica_details.py @@ -0,0 +1,105 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateSystemDataGuardReplicaDetails(object): + """ + Details required to create system data guard replica. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateSystemDataGuardReplicaDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this CreateSystemDataGuardReplicaDetails. + :type name: str + + :param databases: + The value to assign to the databases property of this CreateSystemDataGuardReplicaDetails. + :type databases: list[oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseDetails] + + """ + self.swagger_types = { + 'name': 'str', + 'databases': 'list[CreateDistributedDatabaseShardDatabaseDetails]' + } + self.attribute_map = { + 'name': 'name', + 'databases': 'databases' + } + self._name = None + self._databases = None + + @property + def name(self): + """ + **[Required]** Gets the name of this CreateSystemDataGuardReplicaDetails. + The name of data guard replica. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this CreateSystemDataGuardReplicaDetails. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this CreateSystemDataGuardReplicaDetails. + The name of data guard replica. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this CreateSystemDataGuardReplicaDetails. + :type: str + """ + self._name = name + + @property + def databases(self): + """ + **[Required]** Gets the databases of this CreateSystemDataGuardReplicaDetails. + Details of the databases associated with the system data guard replica. + + + :return: The databases of this CreateSystemDataGuardReplicaDetails. + :rtype: list[oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseDetails] + """ + return self._databases + + @databases.setter + def databases(self, databases): + """ + Sets the databases of this CreateSystemDataGuardReplicaDetails. + Details of the databases associated with the system data guard replica. + + + :param databases: The databases of this CreateSystemDataGuardReplicaDetails. + :type: list[oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseDetails] + """ + self._databases = databases + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_system_raft_cluster_details.py b/src/oci/distributed_database_v26/models/create_system_raft_cluster_details.py new file mode 100644 index 0000000000..31e9c8fe55 --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_system_raft_cluster_details.py @@ -0,0 +1,214 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateSystemRaftClusterDetails(object): + """ + Details required to create system raft cluster. + """ + + #: A constant which can be used with the ru_mode property of a CreateSystemRaftClusterDetails. + #: This constant has a value of "READ_ONLY" + RU_MODE_READ_ONLY = "READ_ONLY" + + #: A constant which can be used with the ru_mode property of a CreateSystemRaftClusterDetails. + #: This constant has a value of "READ_WRITE" + RU_MODE_READ_WRITE = "READ_WRITE" + + def __init__(self, **kwargs): + """ + Initializes a new CreateSystemRaftClusterDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this CreateSystemRaftClusterDetails. + :type name: str + + :param replication_factor: + The value to assign to the replication_factor property of this CreateSystemRaftClusterDetails. + :type replication_factor: int + + :param witness_count: + The value to assign to the witness_count property of this CreateSystemRaftClusterDetails. + :type witness_count: int + + :param ru_mode: + The value to assign to the ru_mode property of this CreateSystemRaftClusterDetails. + Allowed values for this property are: "READ_ONLY", "READ_WRITE" + :type ru_mode: str + + :param databases: + The value to assign to the databases property of this CreateSystemRaftClusterDetails. + :type databases: list[oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseDetails] + + """ + self.swagger_types = { + 'name': 'str', + 'replication_factor': 'int', + 'witness_count': 'int', + 'ru_mode': 'str', + 'databases': 'list[CreateDistributedDatabaseShardDatabaseDetails]' + } + self.attribute_map = { + 'name': 'name', + 'replication_factor': 'replicationFactor', + 'witness_count': 'witnessCount', + 'ru_mode': 'ruMode', + 'databases': 'databases' + } + self._name = None + self._replication_factor = None + self._witness_count = None + self._ru_mode = None + self._databases = None + + @property + def name(self): + """ + **[Required]** Gets the name of this CreateSystemRaftClusterDetails. + The name of raft cluster. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this CreateSystemRaftClusterDetails. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this CreateSystemRaftClusterDetails. + The name of raft cluster. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this CreateSystemRaftClusterDetails. + :type: str + """ + self._name = name + + @property + def replication_factor(self): + """ + **[Required]** Gets the replication_factor of this CreateSystemRaftClusterDetails. + Replication factor associated with the raft cluster. + + + :return: The replication_factor of this CreateSystemRaftClusterDetails. + :rtype: int + """ + return self._replication_factor + + @replication_factor.setter + def replication_factor(self, replication_factor): + """ + Sets the replication_factor of this CreateSystemRaftClusterDetails. + Replication factor associated with the raft cluster. + + + :param replication_factor: The replication_factor of this CreateSystemRaftClusterDetails. + :type: int + """ + self._replication_factor = replication_factor + + @property + def witness_count(self): + """ + **[Required]** Gets the witness_count of this CreateSystemRaftClusterDetails. + Witnesses RU count associated with the raft cluster. + + + :return: The witness_count of this CreateSystemRaftClusterDetails. + :rtype: int + """ + return self._witness_count + + @witness_count.setter + def witness_count(self, witness_count): + """ + Sets the witness_count of this CreateSystemRaftClusterDetails. + Witnesses RU count associated with the raft cluster. + + + :param witness_count: The witness_count of this CreateSystemRaftClusterDetails. + :type: int + """ + self._witness_count = witness_count + + @property + def ru_mode(self): + """ + **[Required]** Gets the ru_mode of this CreateSystemRaftClusterDetails. + Replication factor associated with the raft cluster. + + Allowed values for this property are: "READ_ONLY", "READ_WRITE" + + + :return: The ru_mode of this CreateSystemRaftClusterDetails. + :rtype: str + """ + return self._ru_mode + + @ru_mode.setter + def ru_mode(self, ru_mode): + """ + Sets the ru_mode of this CreateSystemRaftClusterDetails. + Replication factor associated with the raft cluster. + + + :param ru_mode: The ru_mode of this CreateSystemRaftClusterDetails. + :type: str + """ + allowed_values = ["READ_ONLY", "READ_WRITE"] + if not value_allowed_none_or_none_sentinel(ru_mode, allowed_values): + raise ValueError( + f"Invalid value for `ru_mode`, must be None or one of {allowed_values}" + ) + self._ru_mode = ru_mode + + @property + def databases(self): + """ + **[Required]** Gets the databases of this CreateSystemRaftClusterDetails. + Details of the databases associated with the system raft cluster. + + + :return: The databases of this CreateSystemRaftClusterDetails. + :rtype: list[oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseDetails] + """ + return self._databases + + @databases.setter + def databases(self, databases): + """ + Sets the databases of this CreateSystemRaftClusterDetails. + Details of the databases associated with the system raft cluster. + + + :param databases: The databases of this CreateSystemRaftClusterDetails. + :type: list[oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseDetails] + """ + self._databases = databases + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_user_shard_space_details.py b/src/oci/distributed_database_v26/models/create_user_shard_space_details.py new file mode 100644 index 0000000000..ee8a3ddf99 --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_user_shard_space_details.py @@ -0,0 +1,132 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateUserShardSpaceDetails(object): + """ + Details required to create user shard space. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateUserShardSpaceDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this CreateUserShardSpaceDetails. + :type name: str + + :param original_replica: + The value to assign to the original_replica property of this CreateUserShardSpaceDetails. + :type original_replica: oci.distributed_database_v26.models.CreateUserShardSpaceReplicaDetails + + :param data_guard_replicas: + The value to assign to the data_guard_replicas property of this CreateUserShardSpaceDetails. + :type data_guard_replicas: list[oci.distributed_database_v26.models.CreateUserShardSpaceReplicaDetails] + + """ + self.swagger_types = { + 'name': 'str', + 'original_replica': 'CreateUserShardSpaceReplicaDetails', + 'data_guard_replicas': 'list[CreateUserShardSpaceReplicaDetails]' + } + self.attribute_map = { + 'name': 'name', + 'original_replica': 'originalReplica', + 'data_guard_replicas': 'dataGuardReplicas' + } + self._name = None + self._original_replica = None + self._data_guard_replicas = None + + @property + def name(self): + """ + **[Required]** Gets the name of this CreateUserShardSpaceDetails. + The name of user shard space. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this CreateUserShardSpaceDetails. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this CreateUserShardSpaceDetails. + The name of user shard space. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this CreateUserShardSpaceDetails. + :type: str + """ + self._name = name + + @property + def original_replica(self): + """ + **[Required]** Gets the original_replica of this CreateUserShardSpaceDetails. + + :return: The original_replica of this CreateUserShardSpaceDetails. + :rtype: oci.distributed_database_v26.models.CreateUserShardSpaceReplicaDetails + """ + return self._original_replica + + @original_replica.setter + def original_replica(self, original_replica): + """ + Sets the original_replica of this CreateUserShardSpaceDetails. + + :param original_replica: The original_replica of this CreateUserShardSpaceDetails. + :type: oci.distributed_database_v26.models.CreateUserShardSpaceReplicaDetails + """ + self._original_replica = original_replica + + @property + def data_guard_replicas(self): + """ + Gets the data_guard_replicas of this CreateUserShardSpaceDetails. + The details of data guard replica for the user shard space being created. + + + :return: The data_guard_replicas of this CreateUserShardSpaceDetails. + :rtype: list[oci.distributed_database_v26.models.CreateUserShardSpaceReplicaDetails] + """ + return self._data_guard_replicas + + @data_guard_replicas.setter + def data_guard_replicas(self, data_guard_replicas): + """ + Sets the data_guard_replicas of this CreateUserShardSpaceDetails. + The details of data guard replica for the user shard space being created. + + + :param data_guard_replicas: The data_guard_replicas of this CreateUserShardSpaceDetails. + :type: list[oci.distributed_database_v26.models.CreateUserShardSpaceReplicaDetails] + """ + self._data_guard_replicas = data_guard_replicas + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/create_user_shard_space_replica_details.py b/src/oci/distributed_database_v26/models/create_user_shard_space_replica_details.py new file mode 100644 index 0000000000..0ddab9280e --- /dev/null +++ b/src/oci/distributed_database_v26/models/create_user_shard_space_replica_details.py @@ -0,0 +1,101 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class CreateUserShardSpaceReplicaDetails(object): + """ + Details required to create user shard space replica. + """ + + def __init__(self, **kwargs): + """ + Initializes a new CreateUserShardSpaceReplicaDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this CreateUserShardSpaceReplicaDetails. + :type name: str + + :param database: + The value to assign to the database property of this CreateUserShardSpaceReplicaDetails. + :type database: oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseDetails + + """ + self.swagger_types = { + 'name': 'str', + 'database': 'CreateDistributedDatabaseShardDatabaseDetails' + } + self.attribute_map = { + 'name': 'name', + 'database': 'database' + } + self._name = None + self._database = None + + @property + def name(self): + """ + **[Required]** Gets the name of this CreateUserShardSpaceReplicaDetails. + The name of user shard space replica. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this CreateUserShardSpaceReplicaDetails. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this CreateUserShardSpaceReplicaDetails. + The name of user shard space replica. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this CreateUserShardSpaceReplicaDetails. + :type: str + """ + self._name = name + + @property + def database(self): + """ + **[Required]** Gets the database of this CreateUserShardSpaceReplicaDetails. + + :return: The database of this CreateUserShardSpaceReplicaDetails. + :rtype: oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseDetails + """ + return self._database + + @database.setter + def database(self, database): + """ + Sets the database of this CreateUserShardSpaceReplicaDetails. + + :param database: The database of this CreateUserShardSpaceReplicaDetails. + :type: oci.distributed_database_v26.models.CreateDistributedDatabaseShardDatabaseDetails + """ + self._database = database + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/db_storage_vault_details.py b/src/oci/distributed_database_v26/models/db_storage_vault_details.py new file mode 100644 index 0000000000..2d90ecb37f --- /dev/null +++ b/src/oci/distributed_database_v26/models/db_storage_vault_details.py @@ -0,0 +1,233 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DbStorageVaultDetails(object): + """ + Details of the request to create exascale db vault storage for shard or catalog of the distributed database. + """ + + def __init__(self, **kwargs): + """ + Initializes a new DbStorageVaultDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param compartment_id: + The value to assign to the compartment_id property of this DbStorageVaultDetails. + :type compartment_id: str + + :param high_capacity_database_storage: + The value to assign to the high_capacity_database_storage property of this DbStorageVaultDetails. + :type high_capacity_database_storage: int + + :param additional_flash_cache_in_percent: + The value to assign to the additional_flash_cache_in_percent property of this DbStorageVaultDetails. + :type additional_flash_cache_in_percent: int + + :param subscription_id: + The value to assign to the subscription_id property of this DbStorageVaultDetails. + :type subscription_id: str + + :param is_autoscale_enabled: + The value to assign to the is_autoscale_enabled property of this DbStorageVaultDetails. + :type is_autoscale_enabled: bool + + :param autoscale_limit_in_gbs: + The value to assign to the autoscale_limit_in_gbs property of this DbStorageVaultDetails. + :type autoscale_limit_in_gbs: int + + """ + self.swagger_types = { + 'compartment_id': 'str', + 'high_capacity_database_storage': 'int', + 'additional_flash_cache_in_percent': 'int', + 'subscription_id': 'str', + 'is_autoscale_enabled': 'bool', + 'autoscale_limit_in_gbs': 'int' + } + self.attribute_map = { + 'compartment_id': 'compartmentId', + 'high_capacity_database_storage': 'highCapacityDatabaseStorage', + 'additional_flash_cache_in_percent': 'additionalFlashCacheInPercent', + 'subscription_id': 'subscriptionId', + 'is_autoscale_enabled': 'isAutoscaleEnabled', + 'autoscale_limit_in_gbs': 'autoscaleLimitInGBs' + } + self._compartment_id = None + self._high_capacity_database_storage = None + self._additional_flash_cache_in_percent = None + self._subscription_id = None + self._is_autoscale_enabled = None + self._autoscale_limit_in_gbs = None + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this DbStorageVaultDetails. + The `OCID`__ of the compartment for Db Storage Vault. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this DbStorageVaultDetails. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this DbStorageVaultDetails. + The `OCID`__ of the compartment for Db Storage Vault. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this DbStorageVaultDetails. + :type: str + """ + self._compartment_id = compartment_id + + @property + def high_capacity_database_storage(self): + """ + **[Required]** Gets the high_capacity_database_storage of this DbStorageVaultDetails. + Total storage capacity in GB for vault storage. + + + :return: The high_capacity_database_storage of this DbStorageVaultDetails. + :rtype: int + """ + return self._high_capacity_database_storage + + @high_capacity_database_storage.setter + def high_capacity_database_storage(self, high_capacity_database_storage): + """ + Sets the high_capacity_database_storage of this DbStorageVaultDetails. + Total storage capacity in GB for vault storage. + + + :param high_capacity_database_storage: The high_capacity_database_storage of this DbStorageVaultDetails. + :type: int + """ + self._high_capacity_database_storage = high_capacity_database_storage + + @property + def additional_flash_cache_in_percent(self): + """ + Gets the additional_flash_cache_in_percent of this DbStorageVaultDetails. + The size of additional Flash Cache in percentage of High Capacity database storage. + + + :return: The additional_flash_cache_in_percent of this DbStorageVaultDetails. + :rtype: int + """ + return self._additional_flash_cache_in_percent + + @additional_flash_cache_in_percent.setter + def additional_flash_cache_in_percent(self, additional_flash_cache_in_percent): + """ + Sets the additional_flash_cache_in_percent of this DbStorageVaultDetails. + The size of additional Flash Cache in percentage of High Capacity database storage. + + + :param additional_flash_cache_in_percent: The additional_flash_cache_in_percent of this DbStorageVaultDetails. + :type: int + """ + self._additional_flash_cache_in_percent = additional_flash_cache_in_percent + + @property + def subscription_id(self): + """ + Gets the subscription_id of this DbStorageVaultDetails. + The `OCID`__ of the subscription with which resource needs to be associated with. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The subscription_id of this DbStorageVaultDetails. + :rtype: str + """ + return self._subscription_id + + @subscription_id.setter + def subscription_id(self, subscription_id): + """ + Sets the subscription_id of this DbStorageVaultDetails. + The `OCID`__ of the subscription with which resource needs to be associated with. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param subscription_id: The subscription_id of this DbStorageVaultDetails. + :type: str + """ + self._subscription_id = subscription_id + + @property + def is_autoscale_enabled(self): + """ + Gets the is_autoscale_enabled of this DbStorageVaultDetails. + Indicates if autoscale feature is enabled for the Database Storage Vault. The default value is `FALSE`. + + + :return: The is_autoscale_enabled of this DbStorageVaultDetails. + :rtype: bool + """ + return self._is_autoscale_enabled + + @is_autoscale_enabled.setter + def is_autoscale_enabled(self, is_autoscale_enabled): + """ + Sets the is_autoscale_enabled of this DbStorageVaultDetails. + Indicates if autoscale feature is enabled for the Database Storage Vault. The default value is `FALSE`. + + + :param is_autoscale_enabled: The is_autoscale_enabled of this DbStorageVaultDetails. + :type: bool + """ + self._is_autoscale_enabled = is_autoscale_enabled + + @property + def autoscale_limit_in_gbs(self): + """ + Gets the autoscale_limit_in_gbs of this DbStorageVaultDetails. + The maximum limit, in gigabytes, to which the Vault storage size can automatically scale when auto scaling is enabled for the Database Storage Vault. + + + :return: The autoscale_limit_in_gbs of this DbStorageVaultDetails. + :rtype: int + """ + return self._autoscale_limit_in_gbs + + @autoscale_limit_in_gbs.setter + def autoscale_limit_in_gbs(self, autoscale_limit_in_gbs): + """ + Sets the autoscale_limit_in_gbs of this DbStorageVaultDetails. + The maximum limit, in gigabytes, to which the Vault storage size can automatically scale when auto scaling is enabled for the Database Storage Vault. + + + :param autoscale_limit_in_gbs: The autoscale_limit_in_gbs of this DbStorageVaultDetails. + :type: int + """ + self._autoscale_limit_in_gbs = autoscale_limit_in_gbs + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_autonomous_database.py b/src/oci/distributed_database_v26/models/distributed_autonomous_database.py new file mode 100644 index 0000000000..b7c71bd12f --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_autonomous_database.py @@ -0,0 +1,1389 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedAutonomousDatabase(object): + """ + Globally distributed autonomous database. + """ + + #: A constant which can be used with the lifecycle_state property of a DistributedAutonomousDatabase. + #: This constant has a value of "ACTIVE" + LIFECYCLE_STATE_ACTIVE = "ACTIVE" + + #: A constant which can be used with the lifecycle_state property of a DistributedAutonomousDatabase. + #: This constant has a value of "FAILED" + LIFECYCLE_STATE_FAILED = "FAILED" + + #: A constant which can be used with the lifecycle_state property of a DistributedAutonomousDatabase. + #: This constant has a value of "NEEDS_ATTENTION" + LIFECYCLE_STATE_NEEDS_ATTENTION = "NEEDS_ATTENTION" + + #: A constant which can be used with the lifecycle_state property of a DistributedAutonomousDatabase. + #: This constant has a value of "INACTIVE" + LIFECYCLE_STATE_INACTIVE = "INACTIVE" + + #: A constant which can be used with the lifecycle_state property of a DistributedAutonomousDatabase. + #: This constant has a value of "DELETING" + LIFECYCLE_STATE_DELETING = "DELETING" + + #: A constant which can be used with the lifecycle_state property of a DistributedAutonomousDatabase. + #: This constant has a value of "DELETED" + LIFECYCLE_STATE_DELETED = "DELETED" + + #: A constant which can be used with the lifecycle_state property of a DistributedAutonomousDatabase. + #: This constant has a value of "UPDATING" + LIFECYCLE_STATE_UPDATING = "UPDATING" + + #: A constant which can be used with the lifecycle_state property of a DistributedAutonomousDatabase. + #: This constant has a value of "CREATING" + LIFECYCLE_STATE_CREATING = "CREATING" + + #: A constant which can be used with the sharding_method property of a DistributedAutonomousDatabase. + #: This constant has a value of "USER" + SHARDING_METHOD_USER = "USER" + + #: A constant which can be used with the sharding_method property of a DistributedAutonomousDatabase. + #: This constant has a value of "SYSTEM" + SHARDING_METHOD_SYSTEM = "SYSTEM" + + #: A constant which can be used with the sharding_method property of a DistributedAutonomousDatabase. + #: This constant has a value of "COMPOSITE" + SHARDING_METHOD_COMPOSITE = "COMPOSITE" + + #: A constant which can be used with the replication_method property of a DistributedAutonomousDatabase. + #: This constant has a value of "RAFT" + REPLICATION_METHOD_RAFT = "RAFT" + + #: A constant which can be used with the replication_method property of a DistributedAutonomousDatabase. + #: This constant has a value of "DG" + REPLICATION_METHOD_DG = "DG" + + #: A constant which can be used with the db_deployment_type property of a DistributedAutonomousDatabase. + #: This constant has a value of "ADB_D" + DB_DEPLOYMENT_TYPE_ADB_D = "ADB_D" + + #: A constant which can be used with the db_workload_type property of a DistributedAutonomousDatabase. + #: This constant has a value of "OLTP" + DB_WORKLOAD_TYPE_OLTP = "OLTP" + + #: A constant which can be used with the db_workload_type property of a DistributedAutonomousDatabase. + #: This constant has a value of "DW" + DB_WORKLOAD_TYPE_DW = "DW" + + def __init__(self, **kwargs): + """ + Initializes a new DistributedAutonomousDatabase object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this DistributedAutonomousDatabase. + :type id: str + + :param compartment_id: + The value to assign to the compartment_id property of this DistributedAutonomousDatabase. + :type compartment_id: str + + :param display_name: + The value to assign to the display_name property of this DistributedAutonomousDatabase. + :type display_name: str + + :param time_created: + The value to assign to the time_created property of this DistributedAutonomousDatabase. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this DistributedAutonomousDatabase. + :type time_updated: datetime + + :param database_version: + The value to assign to the database_version property of this DistributedAutonomousDatabase. + :type database_version: str + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this DistributedAutonomousDatabase. + Allowed values for this property are: "ACTIVE", "FAILED", "NEEDS_ATTENTION", "INACTIVE", "DELETING", "DELETED", "UPDATING", "CREATING", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + :param sharding_method: + The value to assign to the sharding_method property of this DistributedAutonomousDatabase. + Allowed values for this property are: "USER", "SYSTEM", "COMPOSITE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type sharding_method: str + + :param replication_method: + The value to assign to the replication_method property of this DistributedAutonomousDatabase. + Allowed values for this property are: "RAFT", "DG", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type replication_method: str + + :param db_deployment_type: + The value to assign to the db_deployment_type property of this DistributedAutonomousDatabase. + Allowed values for this property are: "ADB_D", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type db_deployment_type: str + + :param lifecycle_details: + The value to assign to the lifecycle_details property of this DistributedAutonomousDatabase. + :type lifecycle_details: str + + :param connection_strings: + The value to assign to the connection_strings property of this DistributedAutonomousDatabase. + :type connection_strings: oci.distributed_database_v26.models.DistributedAutonomousDatabaseConnectionString + + :param prefix: + The value to assign to the prefix property of this DistributedAutonomousDatabase. + :type prefix: str + + :param private_endpoint_ids: + The value to assign to the private_endpoint_ids property of this DistributedAutonomousDatabase. + :type private_endpoint_ids: list[str] + + :param notification_topic_ids: + The value to assign to the notification_topic_ids property of this DistributedAutonomousDatabase. + :type notification_topic_ids: list[str] + + :param db_workload_type: + The value to assign to the db_workload_type property of this DistributedAutonomousDatabase. + Allowed values for this property are: "OLTP", "DW", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type db_workload_type: str + + :param character_set: + The value to assign to the character_set property of this DistributedAutonomousDatabase. + :type character_set: str + + :param ncharacter_set: + The value to assign to the ncharacter_set property of this DistributedAutonomousDatabase. + :type ncharacter_set: str + + :param listener_port: + The value to assign to the listener_port property of this DistributedAutonomousDatabase. + :type listener_port: int + + :param listener_port_tls: + The value to assign to the listener_port_tls property of this DistributedAutonomousDatabase. + :type listener_port_tls: int + + :param ons_port_local: + The value to assign to the ons_port_local property of this DistributedAutonomousDatabase. + :type ons_port_local: int + + :param ons_port_remote: + The value to assign to the ons_port_remote property of this DistributedAutonomousDatabase. + :type ons_port_remote: int + + :param system_chunk_count: + The value to assign to the system_chunk_count property of this DistributedAutonomousDatabase. + :type system_chunk_count: int + + :param system_raft_replication_unit_count: + The value to assign to the system_raft_replication_unit_count property of this DistributedAutonomousDatabase. + :type system_raft_replication_unit_count: int + + :param latest_gsm_image: + The value to assign to the latest_gsm_image property of this DistributedAutonomousDatabase. + :type latest_gsm_image: oci.distributed_database_v26.models.DistributedAutonomousDatabaseGsmImage + + :param composite_raft_shard_spaces: + The value to assign to the composite_raft_shard_spaces property of this DistributedAutonomousDatabase. + :type composite_raft_shard_spaces: list[oci.distributed_database_v26.models.AutonomousCompositeRaftShardSpace] + + :param composite_data_guard_shard_spaces: + The value to assign to the composite_data_guard_shard_spaces property of this DistributedAutonomousDatabase. + :type composite_data_guard_shard_spaces: list[oci.distributed_database_v26.models.AutonomousCompositeDataGuardShardSpace] + + :param system_raft_clusters: + The value to assign to the system_raft_clusters property of this DistributedAutonomousDatabase. + :type system_raft_clusters: list[oci.distributed_database_v26.models.AutonomousSystemRaftCluster] + + :param system_data_guard_databases: + The value to assign to the system_data_guard_databases property of this DistributedAutonomousDatabase. + :type system_data_guard_databases: oci.distributed_database_v26.models.AutonomousSystemDataGuardDatabase + + :param user_shard_spaces: + The value to assign to the user_shard_spaces property of this DistributedAutonomousDatabase. + :type user_shard_spaces: list[oci.distributed_database_v26.models.AutonomousUserShardSpace] + + :param catalog_details: + The value to assign to the catalog_details property of this DistributedAutonomousDatabase. + :type catalog_details: list[oci.distributed_database_v26.models.DistributedAutonomousDatabaseCatalog] + + :param gsm_details: + The value to assign to the gsm_details property of this DistributedAutonomousDatabase. + :type gsm_details: list[oci.distributed_database_v26.models.DistributedAutonomousDatabaseGsm] + + :param gds_control_node_details: + The value to assign to the gds_control_node_details property of this DistributedAutonomousDatabase. + :type gds_control_node_details: list[oci.distributed_database_v26.models.DistributedAutonomousDatabaseGdsControlNode] + + :param db_backup_config: + The value to assign to the db_backup_config property of this DistributedAutonomousDatabase. + :type db_backup_config: oci.distributed_database_v26.models.DistributedAutonomousDbBackupConfig + + :param auto_resource_management_config: + The value to assign to the auto_resource_management_config property of this DistributedAutonomousDatabase. + :type auto_resource_management_config: oci.distributed_database_v26.models.AutoResourceManagementConfigurationDetails + + :param vcn_nsg_ids: + The value to assign to the vcn_nsg_ids property of this DistributedAutonomousDatabase. + :type vcn_nsg_ids: list[oci.distributed_database_v26.models.VcnNsgIdsDetails] + + :param metadata: + The value to assign to the metadata property of this DistributedAutonomousDatabase. + :type metadata: oci.distributed_database_v26.models.DistributedAutonomousDbMetadata + + :param freeform_tags: + The value to assign to the freeform_tags property of this DistributedAutonomousDatabase. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this DistributedAutonomousDatabase. + :type defined_tags: dict(str, dict(str, object)) + + :param system_tags: + The value to assign to the system_tags property of this DistributedAutonomousDatabase. + :type system_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'id': 'str', + 'compartment_id': 'str', + 'display_name': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'database_version': 'str', + 'lifecycle_state': 'str', + 'sharding_method': 'str', + 'replication_method': 'str', + 'db_deployment_type': 'str', + 'lifecycle_details': 'str', + 'connection_strings': 'DistributedAutonomousDatabaseConnectionString', + 'prefix': 'str', + 'private_endpoint_ids': 'list[str]', + 'notification_topic_ids': 'list[str]', + 'db_workload_type': 'str', + 'character_set': 'str', + 'ncharacter_set': 'str', + 'listener_port': 'int', + 'listener_port_tls': 'int', + 'ons_port_local': 'int', + 'ons_port_remote': 'int', + 'system_chunk_count': 'int', + 'system_raft_replication_unit_count': 'int', + 'latest_gsm_image': 'DistributedAutonomousDatabaseGsmImage', + 'composite_raft_shard_spaces': 'list[AutonomousCompositeRaftShardSpace]', + 'composite_data_guard_shard_spaces': 'list[AutonomousCompositeDataGuardShardSpace]', + 'system_raft_clusters': 'list[AutonomousSystemRaftCluster]', + 'system_data_guard_databases': 'AutonomousSystemDataGuardDatabase', + 'user_shard_spaces': 'list[AutonomousUserShardSpace]', + 'catalog_details': 'list[DistributedAutonomousDatabaseCatalog]', + 'gsm_details': 'list[DistributedAutonomousDatabaseGsm]', + 'gds_control_node_details': 'list[DistributedAutonomousDatabaseGdsControlNode]', + 'db_backup_config': 'DistributedAutonomousDbBackupConfig', + 'auto_resource_management_config': 'AutoResourceManagementConfigurationDetails', + 'vcn_nsg_ids': 'list[VcnNsgIdsDetails]', + 'metadata': 'DistributedAutonomousDbMetadata', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'id': 'id', + 'compartment_id': 'compartmentId', + 'display_name': 'displayName', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'database_version': 'databaseVersion', + 'lifecycle_state': 'lifecycleState', + 'sharding_method': 'shardingMethod', + 'replication_method': 'replicationMethod', + 'db_deployment_type': 'dbDeploymentType', + 'lifecycle_details': 'lifecycleDetails', + 'connection_strings': 'connectionStrings', + 'prefix': 'prefix', + 'private_endpoint_ids': 'privateEndpointIds', + 'notification_topic_ids': 'notificationTopicIds', + 'db_workload_type': 'dbWorkloadType', + 'character_set': 'characterSet', + 'ncharacter_set': 'ncharacterSet', + 'listener_port': 'listenerPort', + 'listener_port_tls': 'listenerPortTls', + 'ons_port_local': 'onsPortLocal', + 'ons_port_remote': 'onsPortRemote', + 'system_chunk_count': 'systemChunkCount', + 'system_raft_replication_unit_count': 'systemRaftReplicationUnitCount', + 'latest_gsm_image': 'latestGsmImage', + 'composite_raft_shard_spaces': 'compositeRaftShardSpaces', + 'composite_data_guard_shard_spaces': 'compositeDataGuardShardSpaces', + 'system_raft_clusters': 'systemRaftClusters', + 'system_data_guard_databases': 'systemDataGuardDatabases', + 'user_shard_spaces': 'userShardSpaces', + 'catalog_details': 'catalogDetails', + 'gsm_details': 'gsmDetails', + 'gds_control_node_details': 'gdsControlNodeDetails', + 'db_backup_config': 'dbBackupConfig', + 'auto_resource_management_config': 'autoResourceManagementConfig', + 'vcn_nsg_ids': 'vcnNsgIds', + 'metadata': 'metadata', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags' + } + self._id = None + self._compartment_id = None + self._display_name = None + self._time_created = None + self._time_updated = None + self._database_version = None + self._lifecycle_state = None + self._sharding_method = None + self._replication_method = None + self._db_deployment_type = None + self._lifecycle_details = None + self._connection_strings = None + self._prefix = None + self._private_endpoint_ids = None + self._notification_topic_ids = None + self._db_workload_type = None + self._character_set = None + self._ncharacter_set = None + self._listener_port = None + self._listener_port_tls = None + self._ons_port_local = None + self._ons_port_remote = None + self._system_chunk_count = None + self._system_raft_replication_unit_count = None + self._latest_gsm_image = None + self._composite_raft_shard_spaces = None + self._composite_data_guard_shard_spaces = None + self._system_raft_clusters = None + self._system_data_guard_databases = None + self._user_shard_spaces = None + self._catalog_details = None + self._gsm_details = None + self._gds_control_node_details = None + self._db_backup_config = None + self._auto_resource_management_config = None + self._vcn_nsg_ids = None + self._metadata = None + self._freeform_tags = None + self._defined_tags = None + self._system_tags = None + + @property + def id(self): + """ + **[Required]** Gets the id of this DistributedAutonomousDatabase. + The `OCID`__ of the Globally distributed autonomous database. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this DistributedAutonomousDatabase. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this DistributedAutonomousDatabase. + The `OCID`__ of the Globally distributed autonomous database. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this DistributedAutonomousDatabase. + :type: str + """ + self._id = id + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this DistributedAutonomousDatabase. + The `OCID`__ of the Globally distributed autonomous database compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this DistributedAutonomousDatabase. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this DistributedAutonomousDatabase. + The `OCID`__ of the Globally distributed autonomous database compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this DistributedAutonomousDatabase. + :type: str + """ + self._compartment_id = compartment_id + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this DistributedAutonomousDatabase. + The display name of the Globally distributed autonomous database. + + + :return: The display_name of this DistributedAutonomousDatabase. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this DistributedAutonomousDatabase. + The display name of the Globally distributed autonomous database. + + + :param display_name: The display_name of this DistributedAutonomousDatabase. + :type: str + """ + self._display_name = display_name + + @property + def time_created(self): + """ + **[Required]** Gets the time_created of this DistributedAutonomousDatabase. + The time the Globally distributed autonomous database was created. An RFC3339 formatted datetime string. + + + :return: The time_created of this DistributedAutonomousDatabase. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this DistributedAutonomousDatabase. + The time the Globally distributed autonomous database was created. An RFC3339 formatted datetime string. + + + :param time_created: The time_created of this DistributedAutonomousDatabase. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + **[Required]** Gets the time_updated of this DistributedAutonomousDatabase. + The time the Globally distributed autonomous database was last updated. An RFC3339 formatted datetime string. + + + :return: The time_updated of this DistributedAutonomousDatabase. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this DistributedAutonomousDatabase. + The time the Globally distributed autonomous database was last updated. An RFC3339 formatted datetime string. + + + :param time_updated: The time_updated of this DistributedAutonomousDatabase. + :type: datetime + """ + self._time_updated = time_updated + + @property + def database_version(self): + """ + **[Required]** Gets the database_version of this DistributedAutonomousDatabase. + Oracle Database version for the shards and catalog used in Globally distributed autonomous database. + + + :return: The database_version of this DistributedAutonomousDatabase. + :rtype: str + """ + return self._database_version + + @database_version.setter + def database_version(self, database_version): + """ + Sets the database_version of this DistributedAutonomousDatabase. + Oracle Database version for the shards and catalog used in Globally distributed autonomous database. + + + :param database_version: The database_version of this DistributedAutonomousDatabase. + :type: str + """ + self._database_version = database_version + + @property + def lifecycle_state(self): + """ + **[Required]** Gets the lifecycle_state of this DistributedAutonomousDatabase. + Lifecycle states for the Globally distributed autonomous database. + + Allowed values for this property are: "ACTIVE", "FAILED", "NEEDS_ATTENTION", "INACTIVE", "DELETING", "DELETED", "UPDATING", "CREATING", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this DistributedAutonomousDatabase. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this DistributedAutonomousDatabase. + Lifecycle states for the Globally distributed autonomous database. + + + :param lifecycle_state: The lifecycle_state of this DistributedAutonomousDatabase. + :type: str + """ + allowed_values = ["ACTIVE", "FAILED", "NEEDS_ATTENTION", "INACTIVE", "DELETING", "DELETED", "UPDATING", "CREATING"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + + @property + def sharding_method(self): + """ + **[Required]** Gets the sharding_method of this DistributedAutonomousDatabase. + Sharding methods for the Globally distributed autonomous database. + + Allowed values for this property are: "USER", "SYSTEM", "COMPOSITE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The sharding_method of this DistributedAutonomousDatabase. + :rtype: str + """ + return self._sharding_method + + @sharding_method.setter + def sharding_method(self, sharding_method): + """ + Sets the sharding_method of this DistributedAutonomousDatabase. + Sharding methods for the Globally distributed autonomous database. + + + :param sharding_method: The sharding_method of this DistributedAutonomousDatabase. + :type: str + """ + allowed_values = ["USER", "SYSTEM", "COMPOSITE"] + if not value_allowed_none_or_none_sentinel(sharding_method, allowed_values): + sharding_method = 'UNKNOWN_ENUM_VALUE' + self._sharding_method = sharding_method + + @property + def replication_method(self): + """ + Gets the replication_method of this DistributedAutonomousDatabase. + The Replication method for Globally distributed Autonomous database. Use RAFT for Raft based replication. + With RAFT replication, shards cannot have peers details set on them. In case shards need to + have peers, please do not set RAFT replicationMethod. For all non RAFT replication cases (with or + without peers), please set replicationMethod as DG or do not set any value for replicationMethod. + + Allowed values for this property are: "RAFT", "DG", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The replication_method of this DistributedAutonomousDatabase. + :rtype: str + """ + return self._replication_method + + @replication_method.setter + def replication_method(self, replication_method): + """ + Sets the replication_method of this DistributedAutonomousDatabase. + The Replication method for Globally distributed Autonomous database. Use RAFT for Raft based replication. + With RAFT replication, shards cannot have peers details set on them. In case shards need to + have peers, please do not set RAFT replicationMethod. For all non RAFT replication cases (with or + without peers), please set replicationMethod as DG or do not set any value for replicationMethod. + + + :param replication_method: The replication_method of this DistributedAutonomousDatabase. + :type: str + """ + allowed_values = ["RAFT", "DG"] + if not value_allowed_none_or_none_sentinel(replication_method, allowed_values): + replication_method = 'UNKNOWN_ENUM_VALUE' + self._replication_method = replication_method + + @property + def db_deployment_type(self): + """ + **[Required]** Gets the db_deployment_type of this DistributedAutonomousDatabase. + The distributed autonomous database deployment type. + + Allowed values for this property are: "ADB_D", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The db_deployment_type of this DistributedAutonomousDatabase. + :rtype: str + """ + return self._db_deployment_type + + @db_deployment_type.setter + def db_deployment_type(self, db_deployment_type): + """ + Sets the db_deployment_type of this DistributedAutonomousDatabase. + The distributed autonomous database deployment type. + + + :param db_deployment_type: The db_deployment_type of this DistributedAutonomousDatabase. + :type: str + """ + allowed_values = ["ADB_D"] + if not value_allowed_none_or_none_sentinel(db_deployment_type, allowed_values): + db_deployment_type = 'UNKNOWN_ENUM_VALUE' + self._db_deployment_type = db_deployment_type + + @property + def lifecycle_details(self): + """ + **[Required]** Gets the lifecycle_details of this DistributedAutonomousDatabase. + The lifecycleDetails for the Globally distributed autonomous database. + + + :return: The lifecycle_details of this DistributedAutonomousDatabase. + :rtype: str + """ + return self._lifecycle_details + + @lifecycle_details.setter + def lifecycle_details(self, lifecycle_details): + """ + Sets the lifecycle_details of this DistributedAutonomousDatabase. + The lifecycleDetails for the Globally distributed autonomous database. + + + :param lifecycle_details: The lifecycle_details of this DistributedAutonomousDatabase. + :type: str + """ + self._lifecycle_details = lifecycle_details + + @property + def connection_strings(self): + """ + Gets the connection_strings of this DistributedAutonomousDatabase. + + :return: The connection_strings of this DistributedAutonomousDatabase. + :rtype: oci.distributed_database_v26.models.DistributedAutonomousDatabaseConnectionString + """ + return self._connection_strings + + @connection_strings.setter + def connection_strings(self, connection_strings): + """ + Sets the connection_strings of this DistributedAutonomousDatabase. + + :param connection_strings: The connection_strings of this DistributedAutonomousDatabase. + :type: oci.distributed_database_v26.models.DistributedAutonomousDatabaseConnectionString + """ + self._connection_strings = connection_strings + + @property + def prefix(self): + """ + **[Required]** Gets the prefix of this DistributedAutonomousDatabase. + Unique name prefix for the Globally distributed autonomous databases. Only alpha-numeric values are allowed. First character + has to be a letter followed by any combination of letter and number. + + + :return: The prefix of this DistributedAutonomousDatabase. + :rtype: str + """ + return self._prefix + + @prefix.setter + def prefix(self, prefix): + """ + Sets the prefix of this DistributedAutonomousDatabase. + Unique name prefix for the Globally distributed autonomous databases. Only alpha-numeric values are allowed. First character + has to be a letter followed by any combination of letter and number. + + + :param prefix: The prefix of this DistributedAutonomousDatabase. + :type: str + """ + self._prefix = prefix + + @property + def private_endpoint_ids(self): + """ + **[Required]** Gets the private_endpoint_ids of this DistributedAutonomousDatabase. + The collection of `OCID`__ of the private endpoint associated with Globally distributed autonomous database. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The private_endpoint_ids of this DistributedAutonomousDatabase. + :rtype: list[str] + """ + return self._private_endpoint_ids + + @private_endpoint_ids.setter + def private_endpoint_ids(self, private_endpoint_ids): + """ + Sets the private_endpoint_ids of this DistributedAutonomousDatabase. + The collection of `OCID`__ of the private endpoint associated with Globally distributed autonomous database. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param private_endpoint_ids: The private_endpoint_ids of this DistributedAutonomousDatabase. + :type: list[str] + """ + self._private_endpoint_ids = private_endpoint_ids + + @property + def notification_topic_ids(self): + """ + Gets the notification_topic_ids of this DistributedAutonomousDatabase. + The collection of `OCID`__ for the notification topics associated with the globally distributed autonomous database. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The notification_topic_ids of this DistributedAutonomousDatabase. + :rtype: list[str] + """ + return self._notification_topic_ids + + @notification_topic_ids.setter + def notification_topic_ids(self, notification_topic_ids): + """ + Sets the notification_topic_ids of this DistributedAutonomousDatabase. + The collection of `OCID`__ for the notification topics associated with the globally distributed autonomous database. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param notification_topic_ids: The notification_topic_ids of this DistributedAutonomousDatabase. + :type: list[str] + """ + self._notification_topic_ids = notification_topic_ids + + @property + def db_workload_type(self): + """ + **[Required]** Gets the db_workload_type of this DistributedAutonomousDatabase. + Possible workload types. Currently only OLTP workload type is supported. + + Allowed values for this property are: "OLTP", "DW", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The db_workload_type of this DistributedAutonomousDatabase. + :rtype: str + """ + return self._db_workload_type + + @db_workload_type.setter + def db_workload_type(self, db_workload_type): + """ + Sets the db_workload_type of this DistributedAutonomousDatabase. + Possible workload types. Currently only OLTP workload type is supported. + + + :param db_workload_type: The db_workload_type of this DistributedAutonomousDatabase. + :type: str + """ + allowed_values = ["OLTP", "DW"] + if not value_allowed_none_or_none_sentinel(db_workload_type, allowed_values): + db_workload_type = 'UNKNOWN_ENUM_VALUE' + self._db_workload_type = db_workload_type + + @property + def character_set(self): + """ + **[Required]** Gets the character_set of this DistributedAutonomousDatabase. + The character set for the database. + + + :return: The character_set of this DistributedAutonomousDatabase. + :rtype: str + """ + return self._character_set + + @character_set.setter + def character_set(self, character_set): + """ + Sets the character_set of this DistributedAutonomousDatabase. + The character set for the database. + + + :param character_set: The character_set of this DistributedAutonomousDatabase. + :type: str + """ + self._character_set = character_set + + @property + def ncharacter_set(self): + """ + **[Required]** Gets the ncharacter_set of this DistributedAutonomousDatabase. + The national character set for the database. + + + :return: The ncharacter_set of this DistributedAutonomousDatabase. + :rtype: str + """ + return self._ncharacter_set + + @ncharacter_set.setter + def ncharacter_set(self, ncharacter_set): + """ + Sets the ncharacter_set of this DistributedAutonomousDatabase. + The national character set for the database. + + + :param ncharacter_set: The ncharacter_set of this DistributedAutonomousDatabase. + :type: str + """ + self._ncharacter_set = ncharacter_set + + @property + def listener_port(self): + """ + **[Required]** Gets the listener_port of this DistributedAutonomousDatabase. + The listener port number for the Globally distributed autonomous database. + + + :return: The listener_port of this DistributedAutonomousDatabase. + :rtype: int + """ + return self._listener_port + + @listener_port.setter + def listener_port(self, listener_port): + """ + Sets the listener_port of this DistributedAutonomousDatabase. + The listener port number for the Globally distributed autonomous database. + + + :param listener_port: The listener_port of this DistributedAutonomousDatabase. + :type: int + """ + self._listener_port = listener_port + + @property + def listener_port_tls(self): + """ + Gets the listener_port_tls of this DistributedAutonomousDatabase. + The TLS listener port number for Globally distributed autonomous database. + + + :return: The listener_port_tls of this DistributedAutonomousDatabase. + :rtype: int + """ + return self._listener_port_tls + + @listener_port_tls.setter + def listener_port_tls(self, listener_port_tls): + """ + Sets the listener_port_tls of this DistributedAutonomousDatabase. + The TLS listener port number for Globally distributed autonomous database. + + + :param listener_port_tls: The listener_port_tls of this DistributedAutonomousDatabase. + :type: int + """ + self._listener_port_tls = listener_port_tls + + @property + def ons_port_local(self): + """ + **[Required]** Gets the ons_port_local of this DistributedAutonomousDatabase. + Ons local port number for Globally distributed autonomous database. + + + :return: The ons_port_local of this DistributedAutonomousDatabase. + :rtype: int + """ + return self._ons_port_local + + @ons_port_local.setter + def ons_port_local(self, ons_port_local): + """ + Sets the ons_port_local of this DistributedAutonomousDatabase. + Ons local port number for Globally distributed autonomous database. + + + :param ons_port_local: The ons_port_local of this DistributedAutonomousDatabase. + :type: int + """ + self._ons_port_local = ons_port_local + + @property + def ons_port_remote(self): + """ + **[Required]** Gets the ons_port_remote of this DistributedAutonomousDatabase. + Ons remote port number for Globally distributed autonomous database. + + + :return: The ons_port_remote of this DistributedAutonomousDatabase. + :rtype: int + """ + return self._ons_port_remote + + @ons_port_remote.setter + def ons_port_remote(self, ons_port_remote): + """ + Sets the ons_port_remote of this DistributedAutonomousDatabase. + Ons remote port number for Globally distributed autonomous database. + + + :param ons_port_remote: The ons_port_remote of this DistributedAutonomousDatabase. + :type: int + """ + self._ons_port_remote = ons_port_remote + + @property + def system_chunk_count(self): + """ + Gets the system_chunk_count of this DistributedAutonomousDatabase. + Count of chunks associated with system raft clusters or system data guard databases. + + + :return: The system_chunk_count of this DistributedAutonomousDatabase. + :rtype: int + """ + return self._system_chunk_count + + @system_chunk_count.setter + def system_chunk_count(self, system_chunk_count): + """ + Sets the system_chunk_count of this DistributedAutonomousDatabase. + Count of chunks associated with system raft clusters or system data guard databases. + + + :param system_chunk_count: The system_chunk_count of this DistributedAutonomousDatabase. + :type: int + """ + self._system_chunk_count = system_chunk_count + + @property + def system_raft_replication_unit_count(self): + """ + Gets the system_raft_replication_unit_count of this DistributedAutonomousDatabase. + Number of replication units associated with system raft clusters. + + + :return: The system_raft_replication_unit_count of this DistributedAutonomousDatabase. + :rtype: int + """ + return self._system_raft_replication_unit_count + + @system_raft_replication_unit_count.setter + def system_raft_replication_unit_count(self, system_raft_replication_unit_count): + """ + Sets the system_raft_replication_unit_count of this DistributedAutonomousDatabase. + Number of replication units associated with system raft clusters. + + + :param system_raft_replication_unit_count: The system_raft_replication_unit_count of this DistributedAutonomousDatabase. + :type: int + """ + self._system_raft_replication_unit_count = system_raft_replication_unit_count + + @property + def latest_gsm_image(self): + """ + Gets the latest_gsm_image of this DistributedAutonomousDatabase. + + :return: The latest_gsm_image of this DistributedAutonomousDatabase. + :rtype: oci.distributed_database_v26.models.DistributedAutonomousDatabaseGsmImage + """ + return self._latest_gsm_image + + @latest_gsm_image.setter + def latest_gsm_image(self, latest_gsm_image): + """ + Sets the latest_gsm_image of this DistributedAutonomousDatabase. + + :param latest_gsm_image: The latest_gsm_image of this DistributedAutonomousDatabase. + :type: oci.distributed_database_v26.models.DistributedAutonomousDatabaseGsmImage + """ + self._latest_gsm_image = latest_gsm_image + + @property + def composite_raft_shard_spaces(self): + """ + Gets the composite_raft_shard_spaces of this DistributedAutonomousDatabase. + Collection of composite raft shards. + + + :return: The composite_raft_shard_spaces of this DistributedAutonomousDatabase. + :rtype: list[oci.distributed_database_v26.models.AutonomousCompositeRaftShardSpace] + """ + return self._composite_raft_shard_spaces + + @composite_raft_shard_spaces.setter + def composite_raft_shard_spaces(self, composite_raft_shard_spaces): + """ + Sets the composite_raft_shard_spaces of this DistributedAutonomousDatabase. + Collection of composite raft shards. + + + :param composite_raft_shard_spaces: The composite_raft_shard_spaces of this DistributedAutonomousDatabase. + :type: list[oci.distributed_database_v26.models.AutonomousCompositeRaftShardSpace] + """ + self._composite_raft_shard_spaces = composite_raft_shard_spaces + + @property + def composite_data_guard_shard_spaces(self): + """ + Gets the composite_data_guard_shard_spaces of this DistributedAutonomousDatabase. + Collection of composite data guard shard spaces. + + + :return: The composite_data_guard_shard_spaces of this DistributedAutonomousDatabase. + :rtype: list[oci.distributed_database_v26.models.AutonomousCompositeDataGuardShardSpace] + """ + return self._composite_data_guard_shard_spaces + + @composite_data_guard_shard_spaces.setter + def composite_data_guard_shard_spaces(self, composite_data_guard_shard_spaces): + """ + Sets the composite_data_guard_shard_spaces of this DistributedAutonomousDatabase. + Collection of composite data guard shard spaces. + + + :param composite_data_guard_shard_spaces: The composite_data_guard_shard_spaces of this DistributedAutonomousDatabase. + :type: list[oci.distributed_database_v26.models.AutonomousCompositeDataGuardShardSpace] + """ + self._composite_data_guard_shard_spaces = composite_data_guard_shard_spaces + + @property + def system_raft_clusters(self): + """ + Gets the system_raft_clusters of this DistributedAutonomousDatabase. + Collection of system raft clusters. + + + :return: The system_raft_clusters of this DistributedAutonomousDatabase. + :rtype: list[oci.distributed_database_v26.models.AutonomousSystemRaftCluster] + """ + return self._system_raft_clusters + + @system_raft_clusters.setter + def system_raft_clusters(self, system_raft_clusters): + """ + Sets the system_raft_clusters of this DistributedAutonomousDatabase. + Collection of system raft clusters. + + + :param system_raft_clusters: The system_raft_clusters of this DistributedAutonomousDatabase. + :type: list[oci.distributed_database_v26.models.AutonomousSystemRaftCluster] + """ + self._system_raft_clusters = system_raft_clusters + + @property + def system_data_guard_databases(self): + """ + Gets the system_data_guard_databases of this DistributedAutonomousDatabase. + + :return: The system_data_guard_databases of this DistributedAutonomousDatabase. + :rtype: oci.distributed_database_v26.models.AutonomousSystemDataGuardDatabase + """ + return self._system_data_guard_databases + + @system_data_guard_databases.setter + def system_data_guard_databases(self, system_data_guard_databases): + """ + Sets the system_data_guard_databases of this DistributedAutonomousDatabase. + + :param system_data_guard_databases: The system_data_guard_databases of this DistributedAutonomousDatabase. + :type: oci.distributed_database_v26.models.AutonomousSystemDataGuardDatabase + """ + self._system_data_guard_databases = system_data_guard_databases + + @property + def user_shard_spaces(self): + """ + Gets the user_shard_spaces of this DistributedAutonomousDatabase. + Collection of user defined shard spaces. + + + :return: The user_shard_spaces of this DistributedAutonomousDatabase. + :rtype: list[oci.distributed_database_v26.models.AutonomousUserShardSpace] + """ + return self._user_shard_spaces + + @user_shard_spaces.setter + def user_shard_spaces(self, user_shard_spaces): + """ + Sets the user_shard_spaces of this DistributedAutonomousDatabase. + Collection of user defined shard spaces. + + + :param user_shard_spaces: The user_shard_spaces of this DistributedAutonomousDatabase. + :type: list[oci.distributed_database_v26.models.AutonomousUserShardSpace] + """ + self._user_shard_spaces = user_shard_spaces + + @property + def catalog_details(self): + """ + Gets the catalog_details of this DistributedAutonomousDatabase. + Catalog details associated with the distributed autonomous database. + + + :return: The catalog_details of this DistributedAutonomousDatabase. + :rtype: list[oci.distributed_database_v26.models.DistributedAutonomousDatabaseCatalog] + """ + return self._catalog_details + + @catalog_details.setter + def catalog_details(self, catalog_details): + """ + Sets the catalog_details of this DistributedAutonomousDatabase. + Catalog details associated with the distributed autonomous database. + + + :param catalog_details: The catalog_details of this DistributedAutonomousDatabase. + :type: list[oci.distributed_database_v26.models.DistributedAutonomousDatabaseCatalog] + """ + self._catalog_details = catalog_details + + @property + def gsm_details(self): + """ + Gets the gsm_details of this DistributedAutonomousDatabase. + Global Service Manager (GSM) instances associated with the distributed autonomous database. + + + :return: The gsm_details of this DistributedAutonomousDatabase. + :rtype: list[oci.distributed_database_v26.models.DistributedAutonomousDatabaseGsm] + """ + return self._gsm_details + + @gsm_details.setter + def gsm_details(self, gsm_details): + """ + Sets the gsm_details of this DistributedAutonomousDatabase. + Global Service Manager (GSM) instances associated with the distributed autonomous database. + + + :param gsm_details: The gsm_details of this DistributedAutonomousDatabase. + :type: list[oci.distributed_database_v26.models.DistributedAutonomousDatabaseGsm] + """ + self._gsm_details = gsm_details + + @property + def gds_control_node_details(self): + """ + Gets the gds_control_node_details of this DistributedAutonomousDatabase. + Global Database Services Control(GDS CTL) instances associated with the distributed autonomous database. + + + :return: The gds_control_node_details of this DistributedAutonomousDatabase. + :rtype: list[oci.distributed_database_v26.models.DistributedAutonomousDatabaseGdsControlNode] + """ + return self._gds_control_node_details + + @gds_control_node_details.setter + def gds_control_node_details(self, gds_control_node_details): + """ + Sets the gds_control_node_details of this DistributedAutonomousDatabase. + Global Database Services Control(GDS CTL) instances associated with the distributed autonomous database. + + + :param gds_control_node_details: The gds_control_node_details of this DistributedAutonomousDatabase. + :type: list[oci.distributed_database_v26.models.DistributedAutonomousDatabaseGdsControlNode] + """ + self._gds_control_node_details = gds_control_node_details + + @property + def db_backup_config(self): + """ + Gets the db_backup_config of this DistributedAutonomousDatabase. + + :return: The db_backup_config of this DistributedAutonomousDatabase. + :rtype: oci.distributed_database_v26.models.DistributedAutonomousDbBackupConfig + """ + return self._db_backup_config + + @db_backup_config.setter + def db_backup_config(self, db_backup_config): + """ + Sets the db_backup_config of this DistributedAutonomousDatabase. + + :param db_backup_config: The db_backup_config of this DistributedAutonomousDatabase. + :type: oci.distributed_database_v26.models.DistributedAutonomousDbBackupConfig + """ + self._db_backup_config = db_backup_config + + @property + def auto_resource_management_config(self): + """ + Gets the auto_resource_management_config of this DistributedAutonomousDatabase. + + :return: The auto_resource_management_config of this DistributedAutonomousDatabase. + :rtype: oci.distributed_database_v26.models.AutoResourceManagementConfigurationDetails + """ + return self._auto_resource_management_config + + @auto_resource_management_config.setter + def auto_resource_management_config(self, auto_resource_management_config): + """ + Sets the auto_resource_management_config of this DistributedAutonomousDatabase. + + :param auto_resource_management_config: The auto_resource_management_config of this DistributedAutonomousDatabase. + :type: oci.distributed_database_v26.models.AutoResourceManagementConfigurationDetails + """ + self._auto_resource_management_config = auto_resource_management_config + + @property + def vcn_nsg_ids(self): + """ + Gets the vcn_nsg_ids of this DistributedAutonomousDatabase. + The list of network security group (NSG) details associated with the distributed autonomous database. + + + :return: The vcn_nsg_ids of this DistributedAutonomousDatabase. + :rtype: list[oci.distributed_database_v26.models.VcnNsgIdsDetails] + """ + return self._vcn_nsg_ids + + @vcn_nsg_ids.setter + def vcn_nsg_ids(self, vcn_nsg_ids): + """ + Sets the vcn_nsg_ids of this DistributedAutonomousDatabase. + The list of network security group (NSG) details associated with the distributed autonomous database. + + + :param vcn_nsg_ids: The vcn_nsg_ids of this DistributedAutonomousDatabase. + :type: list[oci.distributed_database_v26.models.VcnNsgIdsDetails] + """ + self._vcn_nsg_ids = vcn_nsg_ids + + @property + def metadata(self): + """ + Gets the metadata of this DistributedAutonomousDatabase. + + :return: The metadata of this DistributedAutonomousDatabase. + :rtype: oci.distributed_database_v26.models.DistributedAutonomousDbMetadata + """ + return self._metadata + + @metadata.setter + def metadata(self, metadata): + """ + Sets the metadata of this DistributedAutonomousDatabase. + + :param metadata: The metadata of this DistributedAutonomousDatabase. + :type: oci.distributed_database_v26.models.DistributedAutonomousDbMetadata + """ + self._metadata = metadata + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this DistributedAutonomousDatabase. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this DistributedAutonomousDatabase. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this DistributedAutonomousDatabase. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this DistributedAutonomousDatabase. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this DistributedAutonomousDatabase. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this DistributedAutonomousDatabase. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this DistributedAutonomousDatabase. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this DistributedAutonomousDatabase. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def system_tags(self): + """ + Gets the system_tags of this DistributedAutonomousDatabase. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :return: The system_tags of this DistributedAutonomousDatabase. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this DistributedAutonomousDatabase. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :param system_tags: The system_tags of this DistributedAutonomousDatabase. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_autonomous_database_auto_resource_management_details.py b/src/oci/distributed_database_v26/models/distributed_autonomous_database_auto_resource_management_details.py new file mode 100644 index 0000000000..760505a789 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_autonomous_database_auto_resource_management_details.py @@ -0,0 +1,339 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedAutonomousDatabaseAutoResourceManagementDetails(object): + """ + Automatic resource management configuration details for the Globally distributed autonomous database. + """ + + #: A constant which can be used with the max_move_ru_unit property of a DistributedAutonomousDatabaseAutoResourceManagementDetails. + #: This constant has a value of "HOUR" + MAX_MOVE_RU_UNIT_HOUR = "HOUR" + + #: A constant which can be used with the max_move_ru_unit property of a DistributedAutonomousDatabaseAutoResourceManagementDetails. + #: This constant has a value of "DAY" + MAX_MOVE_RU_UNIT_DAY = "DAY" + + #: A constant which can be used with the mode property of a DistributedAutonomousDatabaseAutoResourceManagementDetails. + #: This constant has a value of "AUTOMATIC" + MODE_AUTOMATIC = "AUTOMATIC" + + #: A constant which can be used with the mode property of a DistributedAutonomousDatabaseAutoResourceManagementDetails. + #: This constant has a value of "RECOMMENDATION" + MODE_RECOMMENDATION = "RECOMMENDATION" + + #: A constant which can be used with the action_type property of a DistributedAutonomousDatabaseAutoResourceManagementDetails. + #: This constant has a value of "MOVE" + ACTION_TYPE_MOVE = "MOVE" + + def __init__(self, **kwargs): + """ + Initializes a new DistributedAutonomousDatabaseAutoResourceManagementDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param is_enabled: + The value to assign to the is_enabled property of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + :type is_enabled: bool + + :param cool_off_period_in_minutes: + The value to assign to the cool_off_period_in_minutes property of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + :type cool_off_period_in_minutes: int + + :param max_move_ru_attempts: + The value to assign to the max_move_ru_attempts property of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + :type max_move_ru_attempts: int + + :param max_move_ru_unit: + The value to assign to the max_move_ru_unit property of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + Allowed values for this property are: "HOUR", "DAY", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type max_move_ru_unit: str + + :param mode: + The value to assign to the mode property of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + Allowed values for this property are: "AUTOMATIC", "RECOMMENDATION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type mode: str + + :param action_type: + The value to assign to the action_type property of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + Allowed values for this property are: "MOVE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type action_type: str + + :param notification_topic_ids: + The value to assign to the notification_topic_ids property of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + :type notification_topic_ids: list[str] + + :param stream_ids: + The value to assign to the stream_ids property of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + :type stream_ids: list[str] + + """ + self.swagger_types = { + 'is_enabled': 'bool', + 'cool_off_period_in_minutes': 'int', + 'max_move_ru_attempts': 'int', + 'max_move_ru_unit': 'str', + 'mode': 'str', + 'action_type': 'str', + 'notification_topic_ids': 'list[str]', + 'stream_ids': 'list[str]' + } + self.attribute_map = { + 'is_enabled': 'isEnabled', + 'cool_off_period_in_minutes': 'coolOffPeriodInMinutes', + 'max_move_ru_attempts': 'maxMoveRuAttempts', + 'max_move_ru_unit': 'maxMoveRuUnit', + 'mode': 'mode', + 'action_type': 'actionType', + 'notification_topic_ids': 'notificationTopicIds', + 'stream_ids': 'streamIds' + } + self._is_enabled = None + self._cool_off_period_in_minutes = None + self._max_move_ru_attempts = None + self._max_move_ru_unit = None + self._mode = None + self._action_type = None + self._notification_topic_ids = None + self._stream_ids = None + + @property + def is_enabled(self): + """ + **[Required]** Gets the is_enabled of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + Flag indicating if autoResourceManagement is enabled or disabled. + + + :return: The is_enabled of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + :rtype: bool + """ + return self._is_enabled + + @is_enabled.setter + def is_enabled(self, is_enabled): + """ + Sets the is_enabled of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + Flag indicating if autoResourceManagement is enabled or disabled. + + + :param is_enabled: The is_enabled of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + :type: bool + """ + self._is_enabled = is_enabled + + @property + def cool_off_period_in_minutes(self): + """ + Gets the cool_off_period_in_minutes of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + Time period to wait for the database to get stable after autoResourceManagement event. + + + :return: The cool_off_period_in_minutes of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + :rtype: int + """ + return self._cool_off_period_in_minutes + + @cool_off_period_in_minutes.setter + def cool_off_period_in_minutes(self, cool_off_period_in_minutes): + """ + Sets the cool_off_period_in_minutes of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + Time period to wait for the database to get stable after autoResourceManagement event. + + + :param cool_off_period_in_minutes: The cool_off_period_in_minutes of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + :type: int + """ + self._cool_off_period_in_minutes = cool_off_period_in_minutes + + @property + def max_move_ru_attempts(self): + """ + Gets the max_move_ru_attempts of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + Maximum number of move replication unit attempts allowed within the configured period per database. + + + :return: The max_move_ru_attempts of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + :rtype: int + """ + return self._max_move_ru_attempts + + @max_move_ru_attempts.setter + def max_move_ru_attempts(self, max_move_ru_attempts): + """ + Sets the max_move_ru_attempts of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + Maximum number of move replication unit attempts allowed within the configured period per database. + + + :param max_move_ru_attempts: The max_move_ru_attempts of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + :type: int + """ + self._max_move_ru_attempts = max_move_ru_attempts + + @property + def max_move_ru_unit(self): + """ + Gets the max_move_ru_unit of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + Time unit applicable to maxMoveRuAttempts. + + Allowed values for this property are: "HOUR", "DAY", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The max_move_ru_unit of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + :rtype: str + """ + return self._max_move_ru_unit + + @max_move_ru_unit.setter + def max_move_ru_unit(self, max_move_ru_unit): + """ + Sets the max_move_ru_unit of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + Time unit applicable to maxMoveRuAttempts. + + + :param max_move_ru_unit: The max_move_ru_unit of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + :type: str + """ + allowed_values = ["HOUR", "DAY"] + if not value_allowed_none_or_none_sentinel(max_move_ru_unit, allowed_values): + max_move_ru_unit = 'UNKNOWN_ENUM_VALUE' + self._max_move_ru_unit = max_move_ru_unit + + @property + def mode(self): + """ + Gets the mode of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + Mode of autoResourceManagement execution. + + Allowed values for this property are: "AUTOMATIC", "RECOMMENDATION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The mode of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + :rtype: str + """ + return self._mode + + @mode.setter + def mode(self, mode): + """ + Sets the mode of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + Mode of autoResourceManagement execution. + + + :param mode: The mode of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + :type: str + """ + allowed_values = ["AUTOMATIC", "RECOMMENDATION"] + if not value_allowed_none_or_none_sentinel(mode, allowed_values): + mode = 'UNKNOWN_ENUM_VALUE' + self._mode = mode + + @property + def action_type(self): + """ + Gets the action_type of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + The action that will be taken when autoResourceManagement is triggered. + + Allowed values for this property are: "MOVE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The action_type of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + :rtype: str + """ + return self._action_type + + @action_type.setter + def action_type(self, action_type): + """ + Sets the action_type of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + The action that will be taken when autoResourceManagement is triggered. + + + :param action_type: The action_type of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + :type: str + """ + allowed_values = ["MOVE"] + if not value_allowed_none_or_none_sentinel(action_type, allowed_values): + action_type = 'UNKNOWN_ENUM_VALUE' + self._action_type = action_type + + @property + def notification_topic_ids(self): + """ + Gets the notification_topic_ids of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + The list of notification topic ids `OCIDs`__ to receive autoResourceManagement events. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The notification_topic_ids of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + :rtype: list[str] + """ + return self._notification_topic_ids + + @notification_topic_ids.setter + def notification_topic_ids(self, notification_topic_ids): + """ + Sets the notification_topic_ids of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + The list of notification topic ids `OCIDs`__ to receive autoResourceManagement events. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param notification_topic_ids: The notification_topic_ids of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + :type: list[str] + """ + self._notification_topic_ids = notification_topic_ids + + @property + def stream_ids(self): + """ + Gets the stream_ids of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + The list of stream ids `OCIDs`__ that receive shard-related telemetry. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The stream_ids of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + :rtype: list[str] + """ + return self._stream_ids + + @stream_ids.setter + def stream_ids(self, stream_ids): + """ + Sets the stream_ids of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + The list of stream ids `OCIDs`__ that receive shard-related telemetry. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param stream_ids: The stream_ids of this DistributedAutonomousDatabaseAutoResourceManagementDetails. + :type: list[str] + """ + self._stream_ids = stream_ids + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_autonomous_database_catalog.py b/src/oci/distributed_database_v26/models/distributed_autonomous_database_catalog.py new file mode 100644 index 0000000000..d5f9df0965 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_autonomous_database_catalog.py @@ -0,0 +1,97 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedAutonomousDatabaseCatalog(object): + """ + Globally distributed autonomous database catalog details. + """ + + def __init__(self, **kwargs): + """ + Initializes a new DistributedAutonomousDatabaseCatalog object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param original_replica: + The value to assign to the original_replica property of this DistributedAutonomousDatabaseCatalog. + :type original_replica: oci.distributed_database_v26.models.DistributedAutonomousDatabaseCatalogReplica + + :param data_guard_replicas: + The value to assign to the data_guard_replicas property of this DistributedAutonomousDatabaseCatalog. + :type data_guard_replicas: list[oci.distributed_database_v26.models.DistributedAutonomousDatabaseCatalogReplica] + + """ + self.swagger_types = { + 'original_replica': 'DistributedAutonomousDatabaseCatalogReplica', + 'data_guard_replicas': 'list[DistributedAutonomousDatabaseCatalogReplica]' + } + self.attribute_map = { + 'original_replica': 'originalReplica', + 'data_guard_replicas': 'dataGuardReplicas' + } + self._original_replica = None + self._data_guard_replicas = None + + @property + def original_replica(self): + """ + **[Required]** Gets the original_replica of this DistributedAutonomousDatabaseCatalog. + + :return: The original_replica of this DistributedAutonomousDatabaseCatalog. + :rtype: oci.distributed_database_v26.models.DistributedAutonomousDatabaseCatalogReplica + """ + return self._original_replica + + @original_replica.setter + def original_replica(self, original_replica): + """ + Sets the original_replica of this DistributedAutonomousDatabaseCatalog. + + :param original_replica: The original_replica of this DistributedAutonomousDatabaseCatalog. + :type: oci.distributed_database_v26.models.DistributedAutonomousDatabaseCatalogReplica + """ + self._original_replica = original_replica + + @property + def data_guard_replicas(self): + """ + Gets the data_guard_replicas of this DistributedAutonomousDatabaseCatalog. + The details of data guard replicas for the catalog. + + + :return: The data_guard_replicas of this DistributedAutonomousDatabaseCatalog. + :rtype: list[oci.distributed_database_v26.models.DistributedAutonomousDatabaseCatalogReplica] + """ + return self._data_guard_replicas + + @data_guard_replicas.setter + def data_guard_replicas(self, data_guard_replicas): + """ + Sets the data_guard_replicas of this DistributedAutonomousDatabaseCatalog. + The details of data guard replicas for the catalog. + + + :param data_guard_replicas: The data_guard_replicas of this DistributedAutonomousDatabaseCatalog. + :type: list[oci.distributed_database_v26.models.DistributedAutonomousDatabaseCatalogReplica] + """ + self._data_guard_replicas = data_guard_replicas + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_autonomous_database_catalog_database.py b/src/oci/distributed_database_v26/models/distributed_autonomous_database_catalog_database.py new file mode 100644 index 0000000000..d179901ae1 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_autonomous_database_catalog_database.py @@ -0,0 +1,221 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedAutonomousDatabaseCatalogDatabase(object): + """ + Details of the catalog database associated with the Globally distributed autonomous database. + """ + + #: A constant which can be used with the source property of a DistributedAutonomousDatabaseCatalogDatabase. + #: This constant has a value of "ADBD_EXISTING_CLUSTER" + SOURCE_ADBD_EXISTING_CLUSTER = "ADBD_EXISTING_CLUSTER" + + def __init__(self, **kwargs): + """ + Initializes a new DistributedAutonomousDatabaseCatalogDatabase object with values from keyword arguments. This class has the following subclasses and if you are using this class as input + to a service operations then you should favor using a subclass over the base class: + + * :class:`~oci.distributed_database_v26.models.DistributedAutonomousDatabaseCatalogWithDedicatedInfra` + + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source: + The value to assign to the source property of this DistributedAutonomousDatabaseCatalogDatabase. + Allowed values for this property are: "ADBD_EXISTING_CLUSTER", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type source: str + + :param name: + The value to assign to the name property of this DistributedAutonomousDatabaseCatalogDatabase. + :type name: str + + :param time_created: + The value to assign to the time_created property of this DistributedAutonomousDatabaseCatalogDatabase. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this DistributedAutonomousDatabaseCatalogDatabase. + :type time_updated: datetime + + :param metadata: + The value to assign to the metadata property of this DistributedAutonomousDatabaseCatalogDatabase. + :type metadata: oci.distributed_database_v26.models.DistributedAutonomousDbMetadata + + """ + self.swagger_types = { + 'source': 'str', + 'name': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'metadata': 'DistributedAutonomousDbMetadata' + } + self.attribute_map = { + 'source': 'source', + 'name': 'name', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'metadata': 'metadata' + } + self._source = None + self._name = None + self._time_created = None + self._time_updated = None + self._metadata = None + + @staticmethod + def get_subtype(object_dictionary): + """ + Given the hash representation of a subtype of this class, + use the info in the hash to return the class of the subtype. + """ + type = object_dictionary['source'] + + if type == 'ADBD_EXISTING_CLUSTER': + return 'DistributedAutonomousDatabaseCatalogWithDedicatedInfra' + else: + return 'DistributedAutonomousDatabaseCatalogDatabase' + + @property + def source(self): + """ + **[Required]** Gets the source of this DistributedAutonomousDatabaseCatalogDatabase. + The source of the Globally distributed autonomous database type. + Use ADBD_EXISTING_CLUSTER for an autonomous database on Dedicated Infrastructure that uses a pre-existing cluster. + + Allowed values for this property are: "ADBD_EXISTING_CLUSTER", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The source of this DistributedAutonomousDatabaseCatalogDatabase. + :rtype: str + """ + return self._source + + @source.setter + def source(self, source): + """ + Sets the source of this DistributedAutonomousDatabaseCatalogDatabase. + The source of the Globally distributed autonomous database type. + Use ADBD_EXISTING_CLUSTER for an autonomous database on Dedicated Infrastructure that uses a pre-existing cluster. + + + :param source: The source of this DistributedAutonomousDatabaseCatalogDatabase. + :type: str + """ + allowed_values = ["ADBD_EXISTING_CLUSTER"] + if not value_allowed_none_or_none_sentinel(source, allowed_values): + source = 'UNKNOWN_ENUM_VALUE' + self._source = source + + @property + def name(self): + """ + **[Required]** Gets the name of this DistributedAutonomousDatabaseCatalogDatabase. + The name of the catalog. + + + :return: The name of this DistributedAutonomousDatabaseCatalogDatabase. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this DistributedAutonomousDatabaseCatalogDatabase. + The name of the catalog. + + + :param name: The name of this DistributedAutonomousDatabaseCatalogDatabase. + :type: str + """ + self._name = name + + @property + def time_created(self): + """ + **[Required]** Gets the time_created of this DistributedAutonomousDatabaseCatalogDatabase. + The time the catalog was created. An RFC3339 formatted datetime string. + + + :return: The time_created of this DistributedAutonomousDatabaseCatalogDatabase. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this DistributedAutonomousDatabaseCatalogDatabase. + The time the catalog was created. An RFC3339 formatted datetime string. + + + :param time_created: The time_created of this DistributedAutonomousDatabaseCatalogDatabase. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + **[Required]** Gets the time_updated of this DistributedAutonomousDatabaseCatalogDatabase. + The time the catalog was last updated. An RFC3339 formatted datetime string. + + + :return: The time_updated of this DistributedAutonomousDatabaseCatalogDatabase. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this DistributedAutonomousDatabaseCatalogDatabase. + The time the catalog was last updated. An RFC3339 formatted datetime string. + + + :param time_updated: The time_updated of this DistributedAutonomousDatabaseCatalogDatabase. + :type: datetime + """ + self._time_updated = time_updated + + @property + def metadata(self): + """ + Gets the metadata of this DistributedAutonomousDatabaseCatalogDatabase. + + :return: The metadata of this DistributedAutonomousDatabaseCatalogDatabase. + :rtype: oci.distributed_database_v26.models.DistributedAutonomousDbMetadata + """ + return self._metadata + + @metadata.setter + def metadata(self, metadata): + """ + Sets the metadata of this DistributedAutonomousDatabaseCatalogDatabase. + + :param metadata: The metadata of this DistributedAutonomousDatabaseCatalogDatabase. + :type: oci.distributed_database_v26.models.DistributedAutonomousDbMetadata + """ + self._metadata = metadata + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_autonomous_database_catalog_replica.py b/src/oci/distributed_database_v26/models/distributed_autonomous_database_catalog_replica.py new file mode 100644 index 0000000000..127e9c7f7c --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_autonomous_database_catalog_replica.py @@ -0,0 +1,101 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedAutonomousDatabaseCatalogReplica(object): + """ + Details of a catalog replica. + """ + + def __init__(self, **kwargs): + """ + Initializes a new DistributedAutonomousDatabaseCatalogReplica object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this DistributedAutonomousDatabaseCatalogReplica. + :type name: str + + :param database: + The value to assign to the database property of this DistributedAutonomousDatabaseCatalogReplica. + :type database: oci.distributed_database_v26.models.DistributedAutonomousDatabaseCatalogDatabase + + """ + self.swagger_types = { + 'name': 'str', + 'database': 'DistributedAutonomousDatabaseCatalogDatabase' + } + self.attribute_map = { + 'name': 'name', + 'database': 'database' + } + self._name = None + self._database = None + + @property + def name(self): + """ + **[Required]** Gets the name of this DistributedAutonomousDatabaseCatalogReplica. + The name of the catalog replica. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this DistributedAutonomousDatabaseCatalogReplica. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this DistributedAutonomousDatabaseCatalogReplica. + The name of the catalog replica. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this DistributedAutonomousDatabaseCatalogReplica. + :type: str + """ + self._name = name + + @property + def database(self): + """ + **[Required]** Gets the database of this DistributedAutonomousDatabaseCatalogReplica. + + :return: The database of this DistributedAutonomousDatabaseCatalogReplica. + :rtype: oci.distributed_database_v26.models.DistributedAutonomousDatabaseCatalogDatabase + """ + return self._database + + @database.setter + def database(self, database): + """ + Sets the database of this DistributedAutonomousDatabaseCatalogReplica. + + :param database: The database of this DistributedAutonomousDatabaseCatalogReplica. + :type: oci.distributed_database_v26.models.DistributedAutonomousDatabaseCatalogDatabase + """ + self._database = database + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_autonomous_database_catalog_with_dedicated_infra.py b/src/oci/distributed_database_v26/models/distributed_autonomous_database_catalog_with_dedicated_infra.py new file mode 100644 index 0000000000..54d3a45814 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_autonomous_database_catalog_with_dedicated_infra.py @@ -0,0 +1,629 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +from .distributed_autonomous_database_catalog_database import DistributedAutonomousDatabaseCatalogDatabase +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedAutonomousDatabaseCatalogWithDedicatedInfra(DistributedAutonomousDatabaseCatalogDatabase): + """ + Details of a distributed autonomous database catalog on dedicated infrastructure. + """ + + #: A constant which can be used with the protection_mode property of a DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + #: This constant has a value of "MAXIMUM_AVAILABILITY" + PROTECTION_MODE_MAXIMUM_AVAILABILITY = "MAXIMUM_AVAILABILITY" + + #: A constant which can be used with the protection_mode property of a DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + #: This constant has a value of "MAXIMUM_PERFORMANCE" + PROTECTION_MODE_MAXIMUM_PERFORMANCE = "MAXIMUM_PERFORMANCE" + + #: A constant which can be used with the status property of a DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + #: This constant has a value of "FAILED" + STATUS_FAILED = "FAILED" + + #: A constant which can be used with the status property of a DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + #: This constant has a value of "DELETING" + STATUS_DELETING = "DELETING" + + #: A constant which can be used with the status property of a DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + #: This constant has a value of "DELETED" + STATUS_DELETED = "DELETED" + + #: A constant which can be used with the status property of a DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + #: This constant has a value of "UPDATING" + STATUS_UPDATING = "UPDATING" + + #: A constant which can be used with the status property of a DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + #: This constant has a value of "CREATING" + STATUS_CREATING = "CREATING" + + #: A constant which can be used with the status property of a DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + #: This constant has a value of "CREATED" + STATUS_CREATED = "CREATED" + + #: A constant which can be used with the status property of a DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + #: This constant has a value of "READY_FOR_CONFIGURATION" + STATUS_READY_FOR_CONFIGURATION = "READY_FOR_CONFIGURATION" + + #: A constant which can be used with the status property of a DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + #: This constant has a value of "CONFIGURED" + STATUS_CONFIGURED = "CONFIGURED" + + #: A constant which can be used with the status property of a DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + #: This constant has a value of "NEEDS_ATTENTION" + STATUS_NEEDS_ATTENTION = "NEEDS_ATTENTION" + + def __init__(self, **kwargs): + """ + Initializes a new DistributedAutonomousDatabaseCatalogWithDedicatedInfra object with values from keyword arguments. The default value of the :py:attr:`~oci.distributed_database_v26.models.DistributedAutonomousDatabaseCatalogWithDedicatedInfra.source` attribute + of this class is ``ADBD_EXISTING_CLUSTER`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source: + The value to assign to the source property of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + Allowed values for this property are: "ADBD_EXISTING_CLUSTER", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type source: str + + :param name: + The value to assign to the name property of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :type name: str + + :param time_created: + The value to assign to the time_created property of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :type time_updated: datetime + + :param metadata: + The value to assign to the metadata property of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :type metadata: oci.distributed_database_v26.models.DistributedAutonomousDbMetadata + + :param compute_count: + The value to assign to the compute_count property of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :type compute_count: float + + :param data_storage_size_in_gbs: + The value to assign to the data_storage_size_in_gbs property of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :type data_storage_size_in_gbs: float + + :param is_auto_scaling_enabled: + The value to assign to the is_auto_scaling_enabled property of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :type is_auto_scaling_enabled: bool + + :param cloud_autonomous_vm_cluster_id: + The value to assign to the cloud_autonomous_vm_cluster_id property of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :type cloud_autonomous_vm_cluster_id: str + + :param vault_id: + The value to assign to the vault_id property of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :type vault_id: str + + :param kms_key_id: + The value to assign to the kms_key_id property of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :type kms_key_id: str + + :param kms_key_version_id: + The value to assign to the kms_key_version_id property of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :type kms_key_version_id: str + + :param okv_key_store_id: + The value to assign to the okv_key_store_id property of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :type okv_key_store_id: str + + :param okv_end_point_group_name: + The value to assign to the okv_end_point_group_name property of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :type okv_end_point_group_name: str + + :param protection_mode: + The value to assign to the protection_mode property of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type protection_mode: str + + :param fast_start_fail_over_lag_limit_in_seconds: + The value to assign to the fast_start_fail_over_lag_limit_in_seconds property of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :type fast_start_fail_over_lag_limit_in_seconds: int + + :param standby_maintenance_buffer_in_days: + The value to assign to the standby_maintenance_buffer_in_days property of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :type standby_maintenance_buffer_in_days: int + + :param status: + The value to assign to the status property of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + Allowed values for this property are: "FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type status: str + + :param supporting_resource_id: + The value to assign to the supporting_resource_id property of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :type supporting_resource_id: str + + :param container_database_id: + The value to assign to the container_database_id property of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :type container_database_id: str + + """ + self.swagger_types = { + 'source': 'str', + 'name': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'metadata': 'DistributedAutonomousDbMetadata', + 'compute_count': 'float', + 'data_storage_size_in_gbs': 'float', + 'is_auto_scaling_enabled': 'bool', + 'cloud_autonomous_vm_cluster_id': 'str', + 'vault_id': 'str', + 'kms_key_id': 'str', + 'kms_key_version_id': 'str', + 'okv_key_store_id': 'str', + 'okv_end_point_group_name': 'str', + 'protection_mode': 'str', + 'fast_start_fail_over_lag_limit_in_seconds': 'int', + 'standby_maintenance_buffer_in_days': 'int', + 'status': 'str', + 'supporting_resource_id': 'str', + 'container_database_id': 'str' + } + self.attribute_map = { + 'source': 'source', + 'name': 'name', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'metadata': 'metadata', + 'compute_count': 'computeCount', + 'data_storage_size_in_gbs': 'dataStorageSizeInGbs', + 'is_auto_scaling_enabled': 'isAutoScalingEnabled', + 'cloud_autonomous_vm_cluster_id': 'cloudAutonomousVmClusterId', + 'vault_id': 'vaultId', + 'kms_key_id': 'kmsKeyId', + 'kms_key_version_id': 'kmsKeyVersionId', + 'okv_key_store_id': 'okvKeyStoreId', + 'okv_end_point_group_name': 'okvEndPointGroupName', + 'protection_mode': 'protectionMode', + 'fast_start_fail_over_lag_limit_in_seconds': 'fastStartFailOverLagLimitInSeconds', + 'standby_maintenance_buffer_in_days': 'standbyMaintenanceBufferInDays', + 'status': 'status', + 'supporting_resource_id': 'supportingResourceId', + 'container_database_id': 'containerDatabaseId' + } + self._source = None + self._name = None + self._time_created = None + self._time_updated = None + self._metadata = None + self._compute_count = None + self._data_storage_size_in_gbs = None + self._is_auto_scaling_enabled = None + self._cloud_autonomous_vm_cluster_id = None + self._vault_id = None + self._kms_key_id = None + self._kms_key_version_id = None + self._okv_key_store_id = None + self._okv_end_point_group_name = None + self._protection_mode = None + self._fast_start_fail_over_lag_limit_in_seconds = None + self._standby_maintenance_buffer_in_days = None + self._status = None + self._supporting_resource_id = None + self._container_database_id = None + self._source = 'ADBD_EXISTING_CLUSTER' + + @property + def compute_count(self): + """ + **[Required]** Gets the compute_count of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + The compute count for the catalog database. It has to be in multiples of 2. + + + :return: The compute_count of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :rtype: float + """ + return self._compute_count + + @compute_count.setter + def compute_count(self, compute_count): + """ + Sets the compute_count of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + The compute count for the catalog database. It has to be in multiples of 2. + + + :param compute_count: The compute_count of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :type: float + """ + self._compute_count = compute_count + + @property + def data_storage_size_in_gbs(self): + """ + **[Required]** Gets the data_storage_size_in_gbs of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + The data disk group size to be allocated in GBs for the catalog database. + + + :return: The data_storage_size_in_gbs of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :rtype: float + """ + return self._data_storage_size_in_gbs + + @data_storage_size_in_gbs.setter + def data_storage_size_in_gbs(self, data_storage_size_in_gbs): + """ + Sets the data_storage_size_in_gbs of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + The data disk group size to be allocated in GBs for the catalog database. + + + :param data_storage_size_in_gbs: The data_storage_size_in_gbs of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :type: float + """ + self._data_storage_size_in_gbs = data_storage_size_in_gbs + + @property + def is_auto_scaling_enabled(self): + """ + Gets the is_auto_scaling_enabled of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + Indicates if vertical auto scaling is enabled for the Autonomous AI Database CPU core count. + The default value is `FALSE`. + + + :return: The is_auto_scaling_enabled of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :rtype: bool + """ + return self._is_auto_scaling_enabled + + @is_auto_scaling_enabled.setter + def is_auto_scaling_enabled(self, is_auto_scaling_enabled): + """ + Sets the is_auto_scaling_enabled of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + Indicates if vertical auto scaling is enabled for the Autonomous AI Database CPU core count. + The default value is `FALSE`. + + + :param is_auto_scaling_enabled: The is_auto_scaling_enabled of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :type: bool + """ + self._is_auto_scaling_enabled = is_auto_scaling_enabled + + @property + def cloud_autonomous_vm_cluster_id(self): + """ + **[Required]** Gets the cloud_autonomous_vm_cluster_id of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + The `OCID`__ of the cloud Autonomous VM Cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The cloud_autonomous_vm_cluster_id of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :rtype: str + """ + return self._cloud_autonomous_vm_cluster_id + + @cloud_autonomous_vm_cluster_id.setter + def cloud_autonomous_vm_cluster_id(self, cloud_autonomous_vm_cluster_id): + """ + Sets the cloud_autonomous_vm_cluster_id of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + The `OCID`__ of the cloud Autonomous VM Cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param cloud_autonomous_vm_cluster_id: The cloud_autonomous_vm_cluster_id of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :type: str + """ + self._cloud_autonomous_vm_cluster_id = cloud_autonomous_vm_cluster_id + + @property + def vault_id(self): + """ + Gets the vault_id of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :return: The vault_id of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :rtype: str + """ + return self._vault_id + + @vault_id.setter + def vault_id(self, vault_id): + """ + Sets the vault_id of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :param vault_id: The vault_id of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :type: str + """ + self._vault_id = vault_id + + @property + def kms_key_id(self): + """ + Gets the kms_key_id of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_id of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :rtype: str + """ + return self._kms_key_id + + @kms_key_id.setter + def kms_key_id(self, kms_key_id): + """ + Sets the kms_key_id of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_id: The kms_key_id of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :type: str + """ + self._kms_key_id = kms_key_id + + @property + def kms_key_version_id(self): + """ + Gets the kms_key_version_id of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_version_id of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :rtype: str + """ + return self._kms_key_version_id + + @kms_key_version_id.setter + def kms_key_version_id(self, kms_key_version_id): + """ + Sets the kms_key_version_id of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_version_id: The kms_key_version_id of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :type: str + """ + self._kms_key_version_id = kms_key_version_id + + @property + def okv_key_store_id(self): + """ + Gets the okv_key_store_id of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + The `OCID`__ of the key store used to create the catalog. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The okv_key_store_id of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :rtype: str + """ + return self._okv_key_store_id + + @okv_key_store_id.setter + def okv_key_store_id(self, okv_key_store_id): + """ + Sets the okv_key_store_id of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + The `OCID`__ of the key store used to create the catalog. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param okv_key_store_id: The okv_key_store_id of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :type: str + """ + self._okv_key_store_id = okv_key_store_id + + @property + def okv_end_point_group_name(self): + """ + Gets the okv_end_point_group_name of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + The OKV endpoint name. + + + :return: The okv_end_point_group_name of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :rtype: str + """ + return self._okv_end_point_group_name + + @okv_end_point_group_name.setter + def okv_end_point_group_name(self, okv_end_point_group_name): + """ + Sets the okv_end_point_group_name of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + The OKV endpoint name. + + + :param okv_end_point_group_name: The okv_end_point_group_name of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :type: str + """ + self._okv_end_point_group_name = okv_end_point_group_name + + @property + def protection_mode(self): + """ + Gets the protection_mode of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + The protection mode for the catalog peer. + + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The protection_mode of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :rtype: str + """ + return self._protection_mode + + @protection_mode.setter + def protection_mode(self, protection_mode): + """ + Sets the protection_mode of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + The protection mode for the catalog peer. + + + :param protection_mode: The protection_mode of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :type: str + """ + allowed_values = ["MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE"] + if not value_allowed_none_or_none_sentinel(protection_mode, allowed_values): + protection_mode = 'UNKNOWN_ENUM_VALUE' + self._protection_mode = protection_mode + + @property + def fast_start_fail_over_lag_limit_in_seconds(self): + """ + Gets the fast_start_fail_over_lag_limit_in_seconds of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + The lag time preference based on data loss tolerance in seconds. + + + :return: The fast_start_fail_over_lag_limit_in_seconds of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :rtype: int + """ + return self._fast_start_fail_over_lag_limit_in_seconds + + @fast_start_fail_over_lag_limit_in_seconds.setter + def fast_start_fail_over_lag_limit_in_seconds(self, fast_start_fail_over_lag_limit_in_seconds): + """ + Sets the fast_start_fail_over_lag_limit_in_seconds of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + The lag time preference based on data loss tolerance in seconds. + + + :param fast_start_fail_over_lag_limit_in_seconds: The fast_start_fail_over_lag_limit_in_seconds of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :type: int + """ + self._fast_start_fail_over_lag_limit_in_seconds = fast_start_fail_over_lag_limit_in_seconds + + @property + def standby_maintenance_buffer_in_days(self): + """ + Gets the standby_maintenance_buffer_in_days of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + The scheduling detail for the quarterly maintenance window of the standby Autonomous Container Database. + This value represents the number of days before scheduled maintenance of the primary database. + + + :return: The standby_maintenance_buffer_in_days of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :rtype: int + """ + return self._standby_maintenance_buffer_in_days + + @standby_maintenance_buffer_in_days.setter + def standby_maintenance_buffer_in_days(self, standby_maintenance_buffer_in_days): + """ + Sets the standby_maintenance_buffer_in_days of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + The scheduling detail for the quarterly maintenance window of the standby Autonomous Container Database. + This value represents the number of days before scheduled maintenance of the primary database. + + + :param standby_maintenance_buffer_in_days: The standby_maintenance_buffer_in_days of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :type: int + """ + self._standby_maintenance_buffer_in_days = standby_maintenance_buffer_in_days + + @property + def status(self): + """ + **[Required]** Gets the status of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + Status of the distributed autonomous database catalog. + + Allowed values for this property are: "FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The status of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :rtype: str + """ + return self._status + + @status.setter + def status(self, status): + """ + Sets the status of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + Status of the distributed autonomous database catalog. + + + :param status: The status of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :type: str + """ + allowed_values = ["FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION"] + if not value_allowed_none_or_none_sentinel(status, allowed_values): + status = 'UNKNOWN_ENUM_VALUE' + self._status = status + + @property + def supporting_resource_id(self): + """ + Gets the supporting_resource_id of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + the identifier of the underlying supporting resource. + + + :return: The supporting_resource_id of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :rtype: str + """ + return self._supporting_resource_id + + @supporting_resource_id.setter + def supporting_resource_id(self, supporting_resource_id): + """ + Sets the supporting_resource_id of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + the identifier of the underlying supporting resource. + + + :param supporting_resource_id: The supporting_resource_id of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :type: str + """ + self._supporting_resource_id = supporting_resource_id + + @property + def container_database_id(self): + """ + Gets the container_database_id of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + the identifier of the container database for underlying supporting resource. + + + :return: The container_database_id of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :rtype: str + """ + return self._container_database_id + + @container_database_id.setter + def container_database_id(self, container_database_id): + """ + Sets the container_database_id of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + the identifier of the container database for underlying supporting resource. + + + :param container_database_id: The container_database_id of this DistributedAutonomousDatabaseCatalogWithDedicatedInfra. + :type: str + """ + self._container_database_id = container_database_id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_autonomous_database_collection.py b/src/oci/distributed_database_v26/models/distributed_autonomous_database_collection.py new file mode 100644 index 0000000000..3017251509 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_autonomous_database_collection.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedAutonomousDatabaseCollection(object): + """ + Collection of Globally distributed autonomous databases. + """ + + def __init__(self, **kwargs): + """ + Initializes a new DistributedAutonomousDatabaseCollection object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this DistributedAutonomousDatabaseCollection. + :type items: list[oci.distributed_database_v26.models.DistributedAutonomousDatabaseSummary] + + """ + self.swagger_types = { + 'items': 'list[DistributedAutonomousDatabaseSummary]' + } + self.attribute_map = { + 'items': 'items' + } + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this DistributedAutonomousDatabaseCollection. + Array of Globally distributed autonomous database summaries. + + + :return: The items of this DistributedAutonomousDatabaseCollection. + :rtype: list[oci.distributed_database_v26.models.DistributedAutonomousDatabaseSummary] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this DistributedAutonomousDatabaseCollection. + Array of Globally distributed autonomous database summaries. + + + :param items: The items of this DistributedAutonomousDatabaseCollection. + :type: list[oci.distributed_database_v26.models.DistributedAutonomousDatabaseSummary] + """ + self._items = items + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_autonomous_database_connection_string.py b/src/oci/distributed_database_v26/models/distributed_autonomous_database_connection_string.py new file mode 100644 index 0000000000..642e313917 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_autonomous_database_connection_string.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedAutonomousDatabaseConnectionString(object): + """ + Details of Globally distributed autonomous database connection String. + """ + + def __init__(self, **kwargs): + """ + Initializes a new DistributedAutonomousDatabaseConnectionString object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param all_connection_strings: + The value to assign to the all_connection_strings property of this DistributedAutonomousDatabaseConnectionString. + :type all_connection_strings: dict(str, str) + + """ + self.swagger_types = { + 'all_connection_strings': 'dict(str, str)' + } + self.attribute_map = { + 'all_connection_strings': 'allConnectionStrings' + } + self._all_connection_strings = None + + @property + def all_connection_strings(self): + """ + **[Required]** Gets the all_connection_strings of this DistributedAutonomousDatabaseConnectionString. + Collection of connection strings. + + + :return: The all_connection_strings of this DistributedAutonomousDatabaseConnectionString. + :rtype: dict(str, str) + """ + return self._all_connection_strings + + @all_connection_strings.setter + def all_connection_strings(self, all_connection_strings): + """ + Sets the all_connection_strings of this DistributedAutonomousDatabaseConnectionString. + Collection of connection strings. + + + :param all_connection_strings: The all_connection_strings of this DistributedAutonomousDatabaseConnectionString. + :type: dict(str, str) + """ + self._all_connection_strings = all_connection_strings + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_autonomous_database_gds_control_node.py b/src/oci/distributed_database_v26/models/distributed_autonomous_database_gds_control_node.py new file mode 100644 index 0000000000..f3f48b2e67 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_autonomous_database_gds_control_node.py @@ -0,0 +1,314 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedAutonomousDatabaseGdsControlNode(object): + """ + Details of Global Database Services Control(GDS CTL) instances for the Globally distributed autonomous database. + """ + + def __init__(self, **kwargs): + """ + Initializes a new DistributedAutonomousDatabaseGdsControlNode object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this DistributedAutonomousDatabaseGdsControlNode. + :type name: str + + :param subnet_id: + The value to assign to the subnet_id property of this DistributedAutonomousDatabaseGdsControlNode. + :type subnet_id: str + + :param availability_domain: + The value to assign to the availability_domain property of this DistributedAutonomousDatabaseGdsControlNode. + :type availability_domain: str + + :param time_created: + The value to assign to the time_created property of this DistributedAutonomousDatabaseGdsControlNode. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this DistributedAutonomousDatabaseGdsControlNode. + :type time_updated: datetime + + :param supporting_resource_id: + The value to assign to the supporting_resource_id property of this DistributedAutonomousDatabaseGdsControlNode. + :type supporting_resource_id: str + + :param private_ip: + The value to assign to the private_ip property of this DistributedAutonomousDatabaseGdsControlNode. + :type private_ip: str + + :param gds_control_node_image_details: + The value to assign to the gds_control_node_image_details property of this DistributedAutonomousDatabaseGdsControlNode. + :type gds_control_node_image_details: oci.distributed_database_v26.models.DistributedAutonomousDatabaseGdsControlNodeImage + + :param metadata: + The value to assign to the metadata property of this DistributedAutonomousDatabaseGdsControlNode. + :type metadata: oci.distributed_database_v26.models.DistributedAutonomousDbMetadata + + """ + self.swagger_types = { + 'name': 'str', + 'subnet_id': 'str', + 'availability_domain': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'supporting_resource_id': 'str', + 'private_ip': 'str', + 'gds_control_node_image_details': 'DistributedAutonomousDatabaseGdsControlNodeImage', + 'metadata': 'DistributedAutonomousDbMetadata' + } + self.attribute_map = { + 'name': 'name', + 'subnet_id': 'subnetId', + 'availability_domain': 'availabilityDomain', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'supporting_resource_id': 'supportingResourceId', + 'private_ip': 'privateIp', + 'gds_control_node_image_details': 'gdsControlNodeImageDetails', + 'metadata': 'metadata' + } + self._name = None + self._subnet_id = None + self._availability_domain = None + self._time_created = None + self._time_updated = None + self._supporting_resource_id = None + self._private_ip = None + self._gds_control_node_image_details = None + self._metadata = None + + @property + def name(self): + """ + **[Required]** Gets the name of this DistributedAutonomousDatabaseGdsControlNode. + Name of the Global Database Services Control instance + + + :return: The name of this DistributedAutonomousDatabaseGdsControlNode. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this DistributedAutonomousDatabaseGdsControlNode. + Name of the Global Database Services Control instance + + + :param name: The name of this DistributedAutonomousDatabaseGdsControlNode. + :type: str + """ + self._name = name + + @property + def subnet_id(self): + """ + Gets the subnet_id of this DistributedAutonomousDatabaseGdsControlNode. + The `OCID`__ of the subnet associated with the Global Database Services Control instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The subnet_id of this DistributedAutonomousDatabaseGdsControlNode. + :rtype: str + """ + return self._subnet_id + + @subnet_id.setter + def subnet_id(self, subnet_id): + """ + Sets the subnet_id of this DistributedAutonomousDatabaseGdsControlNode. + The `OCID`__ of the subnet associated with the Global Database Services Control instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param subnet_id: The subnet_id of this DistributedAutonomousDatabaseGdsControlNode. + :type: str + """ + self._subnet_id = subnet_id + + @property + def availability_domain(self): + """ + Gets the availability_domain of this DistributedAutonomousDatabaseGdsControlNode. + The name of the availability domain where the Global Database Services Control instance is located in. + + + :return: The availability_domain of this DistributedAutonomousDatabaseGdsControlNode. + :rtype: str + """ + return self._availability_domain + + @availability_domain.setter + def availability_domain(self, availability_domain): + """ + Sets the availability_domain of this DistributedAutonomousDatabaseGdsControlNode. + The name of the availability domain where the Global Database Services Control instance is located in. + + + :param availability_domain: The availability_domain of this DistributedAutonomousDatabaseGdsControlNode. + :type: str + """ + self._availability_domain = availability_domain + + @property + def time_created(self): + """ + **[Required]** Gets the time_created of this DistributedAutonomousDatabaseGdsControlNode. + The time the Global Database Services Control instance was created. An RFC3339 formatted datetime string. + + + :return: The time_created of this DistributedAutonomousDatabaseGdsControlNode. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this DistributedAutonomousDatabaseGdsControlNode. + The time the Global Database Services Control instance was created. An RFC3339 formatted datetime string. + + + :param time_created: The time_created of this DistributedAutonomousDatabaseGdsControlNode. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + **[Required]** Gets the time_updated of this DistributedAutonomousDatabaseGdsControlNode. + The time the Global Database Services Control instance was last updated. An RFC3339 formatted datetime string. + + + :return: The time_updated of this DistributedAutonomousDatabaseGdsControlNode. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this DistributedAutonomousDatabaseGdsControlNode. + The time the Global Database Services Control instance was last updated. An RFC3339 formatted datetime string. + + + :param time_updated: The time_updated of this DistributedAutonomousDatabaseGdsControlNode. + :type: datetime + """ + self._time_updated = time_updated + + @property + def supporting_resource_id(self): + """ + Gets the supporting_resource_id of this DistributedAutonomousDatabaseGdsControlNode. + The identifier of the underlying supporting resource. + + + :return: The supporting_resource_id of this DistributedAutonomousDatabaseGdsControlNode. + :rtype: str + """ + return self._supporting_resource_id + + @supporting_resource_id.setter + def supporting_resource_id(self, supporting_resource_id): + """ + Sets the supporting_resource_id of this DistributedAutonomousDatabaseGdsControlNode. + The identifier of the underlying supporting resource. + + + :param supporting_resource_id: The supporting_resource_id of this DistributedAutonomousDatabaseGdsControlNode. + :type: str + """ + self._supporting_resource_id = supporting_resource_id + + @property + def private_ip(self): + """ + Gets the private_ip of this DistributedAutonomousDatabaseGdsControlNode. + IP address of the Global Database Services Control instance. + + + :return: The private_ip of this DistributedAutonomousDatabaseGdsControlNode. + :rtype: str + """ + return self._private_ip + + @private_ip.setter + def private_ip(self, private_ip): + """ + Sets the private_ip of this DistributedAutonomousDatabaseGdsControlNode. + IP address of the Global Database Services Control instance. + + + :param private_ip: The private_ip of this DistributedAutonomousDatabaseGdsControlNode. + :type: str + """ + self._private_ip = private_ip + + @property + def gds_control_node_image_details(self): + """ + Gets the gds_control_node_image_details of this DistributedAutonomousDatabaseGdsControlNode. + + :return: The gds_control_node_image_details of this DistributedAutonomousDatabaseGdsControlNode. + :rtype: oci.distributed_database_v26.models.DistributedAutonomousDatabaseGdsControlNodeImage + """ + return self._gds_control_node_image_details + + @gds_control_node_image_details.setter + def gds_control_node_image_details(self, gds_control_node_image_details): + """ + Sets the gds_control_node_image_details of this DistributedAutonomousDatabaseGdsControlNode. + + :param gds_control_node_image_details: The gds_control_node_image_details of this DistributedAutonomousDatabaseGdsControlNode. + :type: oci.distributed_database_v26.models.DistributedAutonomousDatabaseGdsControlNodeImage + """ + self._gds_control_node_image_details = gds_control_node_image_details + + @property + def metadata(self): + """ + Gets the metadata of this DistributedAutonomousDatabaseGdsControlNode. + + :return: The metadata of this DistributedAutonomousDatabaseGdsControlNode. + :rtype: oci.distributed_database_v26.models.DistributedAutonomousDbMetadata + """ + return self._metadata + + @metadata.setter + def metadata(self, metadata): + """ + Sets the metadata of this DistributedAutonomousDatabaseGdsControlNode. + + :param metadata: The metadata of this DistributedAutonomousDatabaseGdsControlNode. + :type: oci.distributed_database_v26.models.DistributedAutonomousDbMetadata + """ + self._metadata = metadata + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_autonomous_database_gds_control_node_image.py b/src/oci/distributed_database_v26/models/distributed_autonomous_database_gds_control_node_image.py new file mode 100644 index 0000000000..56d184f70a --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_autonomous_database_gds_control_node_image.py @@ -0,0 +1,105 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedAutonomousDatabaseGdsControlNodeImage(object): + """ + The Global Database Services Control(GDS CTL) image details. + """ + + def __init__(self, **kwargs): + """ + Initializes a new DistributedAutonomousDatabaseGdsControlNodeImage object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this DistributedAutonomousDatabaseGdsControlNodeImage. + :type id: str + + :param version: + The value to assign to the version property of this DistributedAutonomousDatabaseGdsControlNodeImage. + :type version: str + + """ + self.swagger_types = { + 'id': 'str', + 'version': 'str' + } + self.attribute_map = { + 'id': 'id', + 'version': 'version' + } + self._id = None + self._version = None + + @property + def id(self): + """ + **[Required]** Gets the id of this DistributedAutonomousDatabaseGdsControlNodeImage. + The `OCID`__ of the Global Database Services Control(GDS CTL) software image. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this DistributedAutonomousDatabaseGdsControlNodeImage. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this DistributedAutonomousDatabaseGdsControlNodeImage. + The `OCID`__ of the Global Database Services Control(GDS CTL) software image. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this DistributedAutonomousDatabaseGdsControlNodeImage. + :type: str + """ + self._id = id + + @property + def version(self): + """ + **[Required]** Gets the version of this DistributedAutonomousDatabaseGdsControlNodeImage. + The version associated with the image identified by id. + + + :return: The version of this DistributedAutonomousDatabaseGdsControlNodeImage. + :rtype: str + """ + return self._version + + @version.setter + def version(self, version): + """ + Sets the version of this DistributedAutonomousDatabaseGdsControlNodeImage. + The version associated with the image identified by id. + + + :param version: The version of this DistributedAutonomousDatabaseGdsControlNodeImage. + :type: str + """ + self._version = version + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_autonomous_database_gsm.py b/src/oci/distributed_database_v26/models/distributed_autonomous_database_gsm.py new file mode 100644 index 0000000000..2b266db6d0 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_autonomous_database_gsm.py @@ -0,0 +1,385 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedAutonomousDatabaseGsm(object): + """ + Details of global service manager(GSM also known as shard director) instances for the Globally distributed autonomous database. + """ + + #: A constant which can be used with the status property of a DistributedAutonomousDatabaseGsm. + #: This constant has a value of "FAILED" + STATUS_FAILED = "FAILED" + + #: A constant which can be used with the status property of a DistributedAutonomousDatabaseGsm. + #: This constant has a value of "DELETING" + STATUS_DELETING = "DELETING" + + #: A constant which can be used with the status property of a DistributedAutonomousDatabaseGsm. + #: This constant has a value of "DELETED" + STATUS_DELETED = "DELETED" + + #: A constant which can be used with the status property of a DistributedAutonomousDatabaseGsm. + #: This constant has a value of "UPDATING" + STATUS_UPDATING = "UPDATING" + + #: A constant which can be used with the status property of a DistributedAutonomousDatabaseGsm. + #: This constant has a value of "CREATING" + STATUS_CREATING = "CREATING" + + #: A constant which can be used with the status property of a DistributedAutonomousDatabaseGsm. + #: This constant has a value of "CREATED" + STATUS_CREATED = "CREATED" + + #: A constant which can be used with the status property of a DistributedAutonomousDatabaseGsm. + #: This constant has a value of "READY_FOR_CONFIGURATION" + STATUS_READY_FOR_CONFIGURATION = "READY_FOR_CONFIGURATION" + + #: A constant which can be used with the status property of a DistributedAutonomousDatabaseGsm. + #: This constant has a value of "CONFIGURED" + STATUS_CONFIGURED = "CONFIGURED" + + #: A constant which can be used with the status property of a DistributedAutonomousDatabaseGsm. + #: This constant has a value of "NEEDS_ATTENTION" + STATUS_NEEDS_ATTENTION = "NEEDS_ATTENTION" + + def __init__(self, **kwargs): + """ + Initializes a new DistributedAutonomousDatabaseGsm object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this DistributedAutonomousDatabaseGsm. + :type name: str + + :param compute_count: + The value to assign to the compute_count property of this DistributedAutonomousDatabaseGsm. + :type compute_count: float + + :param data_storage_size_in_gbs: + The value to assign to the data_storage_size_in_gbs property of this DistributedAutonomousDatabaseGsm. + :type data_storage_size_in_gbs: float + + :param time_created: + The value to assign to the time_created property of this DistributedAutonomousDatabaseGsm. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this DistributedAutonomousDatabaseGsm. + :type time_updated: datetime + + :param status: + The value to assign to the status property of this DistributedAutonomousDatabaseGsm. + Allowed values for this property are: "FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type status: str + + :param time_ssl_certificate_expires: + The value to assign to the time_ssl_certificate_expires property of this DistributedAutonomousDatabaseGsm. + :type time_ssl_certificate_expires: datetime + + :param supporting_resource_id: + The value to assign to the supporting_resource_id property of this DistributedAutonomousDatabaseGsm. + :type supporting_resource_id: str + + :param gsm_image_details: + The value to assign to the gsm_image_details property of this DistributedAutonomousDatabaseGsm. + :type gsm_image_details: oci.distributed_database_v26.models.DistributedAutonomousDatabaseGsmImage + + :param metadata: + The value to assign to the metadata property of this DistributedAutonomousDatabaseGsm. + :type metadata: oci.distributed_database_v26.models.DistributedAutonomousDbMetadata + + """ + self.swagger_types = { + 'name': 'str', + 'compute_count': 'float', + 'data_storage_size_in_gbs': 'float', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'status': 'str', + 'time_ssl_certificate_expires': 'datetime', + 'supporting_resource_id': 'str', + 'gsm_image_details': 'DistributedAutonomousDatabaseGsmImage', + 'metadata': 'DistributedAutonomousDbMetadata' + } + self.attribute_map = { + 'name': 'name', + 'compute_count': 'computeCount', + 'data_storage_size_in_gbs': 'dataStorageSizeInGbs', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'status': 'status', + 'time_ssl_certificate_expires': 'timeSslCertificateExpires', + 'supporting_resource_id': 'supportingResourceId', + 'gsm_image_details': 'gsmImageDetails', + 'metadata': 'metadata' + } + self._name = None + self._compute_count = None + self._data_storage_size_in_gbs = None + self._time_created = None + self._time_updated = None + self._status = None + self._time_ssl_certificate_expires = None + self._supporting_resource_id = None + self._gsm_image_details = None + self._metadata = None + + @property + def name(self): + """ + **[Required]** Gets the name of this DistributedAutonomousDatabaseGsm. + Name of the Global service manager instance. + + + :return: The name of this DistributedAutonomousDatabaseGsm. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this DistributedAutonomousDatabaseGsm. + Name of the Global service manager instance. + + + :param name: The name of this DistributedAutonomousDatabaseGsm. + :type: str + """ + self._name = name + + @property + def compute_count(self): + """ + **[Required]** Gets the compute_count of this DistributedAutonomousDatabaseGsm. + The compute count for the Global service manager instance. + + + :return: The compute_count of this DistributedAutonomousDatabaseGsm. + :rtype: float + """ + return self._compute_count + + @compute_count.setter + def compute_count(self, compute_count): + """ + Sets the compute_count of this DistributedAutonomousDatabaseGsm. + The compute count for the Global service manager instance. + + + :param compute_count: The compute_count of this DistributedAutonomousDatabaseGsm. + :type: float + """ + self._compute_count = compute_count + + @property + def data_storage_size_in_gbs(self): + """ + **[Required]** Gets the data_storage_size_in_gbs of this DistributedAutonomousDatabaseGsm. + The data disk group size to be allocated in GBs for the Global service manager instance. + + + :return: The data_storage_size_in_gbs of this DistributedAutonomousDatabaseGsm. + :rtype: float + """ + return self._data_storage_size_in_gbs + + @data_storage_size_in_gbs.setter + def data_storage_size_in_gbs(self, data_storage_size_in_gbs): + """ + Sets the data_storage_size_in_gbs of this DistributedAutonomousDatabaseGsm. + The data disk group size to be allocated in GBs for the Global service manager instance. + + + :param data_storage_size_in_gbs: The data_storage_size_in_gbs of this DistributedAutonomousDatabaseGsm. + :type: float + """ + self._data_storage_size_in_gbs = data_storage_size_in_gbs + + @property + def time_created(self): + """ + **[Required]** Gets the time_created of this DistributedAutonomousDatabaseGsm. + The time the Global service manager instance was created. An RFC3339 formatted datetime string. + + + :return: The time_created of this DistributedAutonomousDatabaseGsm. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this DistributedAutonomousDatabaseGsm. + The time the Global service manager instance was created. An RFC3339 formatted datetime string. + + + :param time_created: The time_created of this DistributedAutonomousDatabaseGsm. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + **[Required]** Gets the time_updated of this DistributedAutonomousDatabaseGsm. + The time the Global service manager instance was last updated. An RFC3339 formatted datetime string. + + + :return: The time_updated of this DistributedAutonomousDatabaseGsm. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this DistributedAutonomousDatabaseGsm. + The time the Global service manager instance was last updated. An RFC3339 formatted datetime string. + + + :param time_updated: The time_updated of this DistributedAutonomousDatabaseGsm. + :type: datetime + """ + self._time_updated = time_updated + + @property + def status(self): + """ + **[Required]** Gets the status of this DistributedAutonomousDatabaseGsm. + Status of the gsm for the Globally distributed autonomous database. + + Allowed values for this property are: "FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The status of this DistributedAutonomousDatabaseGsm. + :rtype: str + """ + return self._status + + @status.setter + def status(self, status): + """ + Sets the status of this DistributedAutonomousDatabaseGsm. + Status of the gsm for the Globally distributed autonomous database. + + + :param status: The status of this DistributedAutonomousDatabaseGsm. + :type: str + """ + allowed_values = ["FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION"] + if not value_allowed_none_or_none_sentinel(status, allowed_values): + status = 'UNKNOWN_ENUM_VALUE' + self._status = status + + @property + def time_ssl_certificate_expires(self): + """ + Gets the time_ssl_certificate_expires of this DistributedAutonomousDatabaseGsm. + The time the ssl certificate associated with Global service manager expires. An RFC3339 formatted datetime string. + + + :return: The time_ssl_certificate_expires of this DistributedAutonomousDatabaseGsm. + :rtype: datetime + """ + return self._time_ssl_certificate_expires + + @time_ssl_certificate_expires.setter + def time_ssl_certificate_expires(self, time_ssl_certificate_expires): + """ + Sets the time_ssl_certificate_expires of this DistributedAutonomousDatabaseGsm. + The time the ssl certificate associated with Global service manager expires. An RFC3339 formatted datetime string. + + + :param time_ssl_certificate_expires: The time_ssl_certificate_expires of this DistributedAutonomousDatabaseGsm. + :type: datetime + """ + self._time_ssl_certificate_expires = time_ssl_certificate_expires + + @property + def supporting_resource_id(self): + """ + Gets the supporting_resource_id of this DistributedAutonomousDatabaseGsm. + the identifier of the underlying supporting resource. + + + :return: The supporting_resource_id of this DistributedAutonomousDatabaseGsm. + :rtype: str + """ + return self._supporting_resource_id + + @supporting_resource_id.setter + def supporting_resource_id(self, supporting_resource_id): + """ + Sets the supporting_resource_id of this DistributedAutonomousDatabaseGsm. + the identifier of the underlying supporting resource. + + + :param supporting_resource_id: The supporting_resource_id of this DistributedAutonomousDatabaseGsm. + :type: str + """ + self._supporting_resource_id = supporting_resource_id + + @property + def gsm_image_details(self): + """ + Gets the gsm_image_details of this DistributedAutonomousDatabaseGsm. + + :return: The gsm_image_details of this DistributedAutonomousDatabaseGsm. + :rtype: oci.distributed_database_v26.models.DistributedAutonomousDatabaseGsmImage + """ + return self._gsm_image_details + + @gsm_image_details.setter + def gsm_image_details(self, gsm_image_details): + """ + Sets the gsm_image_details of this DistributedAutonomousDatabaseGsm. + + :param gsm_image_details: The gsm_image_details of this DistributedAutonomousDatabaseGsm. + :type: oci.distributed_database_v26.models.DistributedAutonomousDatabaseGsmImage + """ + self._gsm_image_details = gsm_image_details + + @property + def metadata(self): + """ + Gets the metadata of this DistributedAutonomousDatabaseGsm. + + :return: The metadata of this DistributedAutonomousDatabaseGsm. + :rtype: oci.distributed_database_v26.models.DistributedAutonomousDbMetadata + """ + return self._metadata + + @metadata.setter + def metadata(self, metadata): + """ + Sets the metadata of this DistributedAutonomousDatabaseGsm. + + :param metadata: The metadata of this DistributedAutonomousDatabaseGsm. + :type: oci.distributed_database_v26.models.DistributedAutonomousDbMetadata + """ + self._metadata = metadata + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_autonomous_database_gsm_image.py b/src/oci/distributed_database_v26/models/distributed_autonomous_database_gsm_image.py new file mode 100644 index 0000000000..9fdf2113fd --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_autonomous_database_gsm_image.py @@ -0,0 +1,105 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedAutonomousDatabaseGsmImage(object): + """ + The Global service manager image details. + """ + + def __init__(self, **kwargs): + """ + Initializes a new DistributedAutonomousDatabaseGsmImage object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this DistributedAutonomousDatabaseGsmImage. + :type id: str + + :param version: + The value to assign to the version property of this DistributedAutonomousDatabaseGsmImage. + :type version: str + + """ + self.swagger_types = { + 'id': 'str', + 'version': 'str' + } + self.attribute_map = { + 'id': 'id', + 'version': 'version' + } + self._id = None + self._version = None + + @property + def id(self): + """ + **[Required]** Gets the id of this DistributedAutonomousDatabaseGsmImage. + The `OCID`__ of the Global service manager software image. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this DistributedAutonomousDatabaseGsmImage. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this DistributedAutonomousDatabaseGsmImage. + The `OCID`__ of the Global service manager software image. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this DistributedAutonomousDatabaseGsmImage. + :type: str + """ + self._id = id + + @property + def version(self): + """ + **[Required]** Gets the version of this DistributedAutonomousDatabaseGsmImage. + The version associated with the image identified by id. + + + :return: The version of this DistributedAutonomousDatabaseGsmImage. + :rtype: str + """ + return self._version + + @version.setter + def version(self, version): + """ + Sets the version of this DistributedAutonomousDatabaseGsmImage. + The version associated with the image identified by id. + + + :param version: The version of this DistributedAutonomousDatabaseGsmImage. + :type: str + """ + self._version = version + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_autonomous_database_raft_metric.py b/src/oci/distributed_database_v26/models/distributed_autonomous_database_raft_metric.py new file mode 100644 index 0000000000..65414bde09 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_autonomous_database_raft_metric.py @@ -0,0 +1,101 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedAutonomousDatabaseRaftMetric(object): + """ + Raft metrics for shards and catalog for the Globally distributed autonomous database. + """ + + def __init__(self, **kwargs): + """ + Initializes a new DistributedAutonomousDatabaseRaftMetric object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param raft_metrics: + The value to assign to the raft_metrics property of this DistributedAutonomousDatabaseRaftMetric. + :type raft_metrics: dict(str, object) + + :param config_tasks: + The value to assign to the config_tasks property of this DistributedAutonomousDatabaseRaftMetric. + :type config_tasks: dict(str, object) + + """ + self.swagger_types = { + 'raft_metrics': 'dict(str, object)', + 'config_tasks': 'dict(str, object)' + } + self.attribute_map = { + 'raft_metrics': 'raftMetrics', + 'config_tasks': 'configTasks' + } + self._raft_metrics = None + self._config_tasks = None + + @property + def raft_metrics(self): + """ + **[Required]** Gets the raft_metrics of this DistributedAutonomousDatabaseRaftMetric. + Raft metrics for the Globally distributed autonomous database. + + + :return: The raft_metrics of this DistributedAutonomousDatabaseRaftMetric. + :rtype: dict(str, object) + """ + return self._raft_metrics + + @raft_metrics.setter + def raft_metrics(self, raft_metrics): + """ + Sets the raft_metrics of this DistributedAutonomousDatabaseRaftMetric. + Raft metrics for the Globally distributed autonomous database. + + + :param raft_metrics: The raft_metrics of this DistributedAutonomousDatabaseRaftMetric. + :type: dict(str, object) + """ + self._raft_metrics = raft_metrics + + @property + def config_tasks(self): + """ + Gets the config_tasks of this DistributedAutonomousDatabaseRaftMetric. + Details of in-progress configuration tasks. + + + :return: The config_tasks of this DistributedAutonomousDatabaseRaftMetric. + :rtype: dict(str, object) + """ + return self._config_tasks + + @config_tasks.setter + def config_tasks(self, config_tasks): + """ + Sets the config_tasks of this DistributedAutonomousDatabaseRaftMetric. + Details of in-progress configuration tasks. + + + :param config_tasks: The config_tasks of this DistributedAutonomousDatabaseRaftMetric. + :type: dict(str, object) + """ + self._config_tasks = config_tasks + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_autonomous_database_ru_change_log.py b/src/oci/distributed_database_v26/models/distributed_autonomous_database_ru_change_log.py new file mode 100644 index 0000000000..645668abf8 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_autonomous_database_ru_change_log.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedAutonomousDatabaseRuChangeLog(object): + """ + Move RU invocation history for the Globally distributed autonomous database. + """ + + def __init__(self, **kwargs): + """ + Initializes a new DistributedAutonomousDatabaseRuChangeLog object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param ru_change_log: + The value to assign to the ru_change_log property of this DistributedAutonomousDatabaseRuChangeLog. + :type ru_change_log: list[oci.distributed_database_v26.models.DistributedAutonomousDatabaseRuChangeLogSummary] + + """ + self.swagger_types = { + 'ru_change_log': 'list[DistributedAutonomousDatabaseRuChangeLogSummary]' + } + self.attribute_map = { + 'ru_change_log': 'ruChangeLog' + } + self._ru_change_log = None + + @property + def ru_change_log(self): + """ + **[Required]** Gets the ru_change_log of this DistributedAutonomousDatabaseRuChangeLog. + Ordered list of move RU invocations (latest first). + + + :return: The ru_change_log of this DistributedAutonomousDatabaseRuChangeLog. + :rtype: list[oci.distributed_database_v26.models.DistributedAutonomousDatabaseRuChangeLogSummary] + """ + return self._ru_change_log + + @ru_change_log.setter + def ru_change_log(self, ru_change_log): + """ + Sets the ru_change_log of this DistributedAutonomousDatabaseRuChangeLog. + Ordered list of move RU invocations (latest first). + + + :param ru_change_log: The ru_change_log of this DistributedAutonomousDatabaseRuChangeLog. + :type: list[oci.distributed_database_v26.models.DistributedAutonomousDatabaseRuChangeLogSummary] + """ + self._ru_change_log = ru_change_log + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_autonomous_database_ru_change_log_summary.py b/src/oci/distributed_database_v26/models/distributed_autonomous_database_ru_change_log_summary.py new file mode 100644 index 0000000000..b02197a811 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_autonomous_database_ru_change_log_summary.py @@ -0,0 +1,280 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedAutonomousDatabaseRuChangeLogSummary(object): + """ + One move RU invocation record for the Globally distributed autonomous database. + """ + + #: A constant which can be used with the status property of a DistributedAutonomousDatabaseRuChangeLogSummary. + #: This constant has a value of "FAILED" + STATUS_FAILED = "FAILED" + + #: A constant which can be used with the status property of a DistributedAutonomousDatabaseRuChangeLogSummary. + #: This constant has a value of "QUEUED" + STATUS_QUEUED = "QUEUED" + + #: A constant which can be used with the status property of a DistributedAutonomousDatabaseRuChangeLogSummary. + #: This constant has a value of "IN_PROGRESS" + STATUS_IN_PROGRESS = "IN_PROGRESS" + + #: A constant which can be used with the status property of a DistributedAutonomousDatabaseRuChangeLogSummary. + #: This constant has a value of "COMPLETED" + STATUS_COMPLETED = "COMPLETED" + + def __init__(self, **kwargs): + """ + Initializes a new DistributedAutonomousDatabaseRuChangeLogSummary object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source_shard_name: + The value to assign to the source_shard_name property of this DistributedAutonomousDatabaseRuChangeLogSummary. + :type source_shard_name: str + + :param target_shard_name: + The value to assign to the target_shard_name property of this DistributedAutonomousDatabaseRuChangeLogSummary. + :type target_shard_name: str + + :param ru_id: + The value to assign to the ru_id property of this DistributedAutonomousDatabaseRuChangeLogSummary. + :type ru_id: str + + :param status: + The value to assign to the status property of this DistributedAutonomousDatabaseRuChangeLogSummary. + Allowed values for this property are: "FAILED", "QUEUED", "IN_PROGRESS", "COMPLETED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type status: str + + :param triggered_by: + The value to assign to the triggered_by property of this DistributedAutonomousDatabaseRuChangeLogSummary. + :type triggered_by: str + + :param time_created: + The value to assign to the time_created property of this DistributedAutonomousDatabaseRuChangeLogSummary. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this DistributedAutonomousDatabaseRuChangeLogSummary. + :type time_updated: datetime + + """ + self.swagger_types = { + 'source_shard_name': 'str', + 'target_shard_name': 'str', + 'ru_id': 'str', + 'status': 'str', + 'triggered_by': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime' + } + self.attribute_map = { + 'source_shard_name': 'sourceShardName', + 'target_shard_name': 'targetShardName', + 'ru_id': 'ruId', + 'status': 'status', + 'triggered_by': 'triggeredBy', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated' + } + self._source_shard_name = None + self._target_shard_name = None + self._ru_id = None + self._status = None + self._triggered_by = None + self._time_created = None + self._time_updated = None + + @property + def source_shard_name(self): + """ + Gets the source_shard_name of this DistributedAutonomousDatabaseRuChangeLogSummary. + Source shard for move RU invocation. + + + :return: The source_shard_name of this DistributedAutonomousDatabaseRuChangeLogSummary. + :rtype: str + """ + return self._source_shard_name + + @source_shard_name.setter + def source_shard_name(self, source_shard_name): + """ + Sets the source_shard_name of this DistributedAutonomousDatabaseRuChangeLogSummary. + Source shard for move RU invocation. + + + :param source_shard_name: The source_shard_name of this DistributedAutonomousDatabaseRuChangeLogSummary. + :type: str + """ + self._source_shard_name = source_shard_name + + @property + def target_shard_name(self): + """ + Gets the target_shard_name of this DistributedAutonomousDatabaseRuChangeLogSummary. + Target shard for move RU invocation. + + + :return: The target_shard_name of this DistributedAutonomousDatabaseRuChangeLogSummary. + :rtype: str + """ + return self._target_shard_name + + @target_shard_name.setter + def target_shard_name(self, target_shard_name): + """ + Sets the target_shard_name of this DistributedAutonomousDatabaseRuChangeLogSummary. + Target shard for move RU invocation. + + + :param target_shard_name: The target_shard_name of this DistributedAutonomousDatabaseRuChangeLogSummary. + :type: str + """ + self._target_shard_name = target_shard_name + + @property + def ru_id(self): + """ + Gets the ru_id of this DistributedAutonomousDatabaseRuChangeLogSummary. + Replication unit identifier associated with the invocation. + + + :return: The ru_id of this DistributedAutonomousDatabaseRuChangeLogSummary. + :rtype: str + """ + return self._ru_id + + @ru_id.setter + def ru_id(self, ru_id): + """ + Sets the ru_id of this DistributedAutonomousDatabaseRuChangeLogSummary. + Replication unit identifier associated with the invocation. + + + :param ru_id: The ru_id of this DistributedAutonomousDatabaseRuChangeLogSummary. + :type: str + """ + self._ru_id = ru_id + + @property + def status(self): + """ + Gets the status of this DistributedAutonomousDatabaseRuChangeLogSummary. + Current or terminal status of the move RU invocation. + + Allowed values for this property are: "FAILED", "QUEUED", "IN_PROGRESS", "COMPLETED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The status of this DistributedAutonomousDatabaseRuChangeLogSummary. + :rtype: str + """ + return self._status + + @status.setter + def status(self, status): + """ + Sets the status of this DistributedAutonomousDatabaseRuChangeLogSummary. + Current or terminal status of the move RU invocation. + + + :param status: The status of this DistributedAutonomousDatabaseRuChangeLogSummary. + :type: str + """ + allowed_values = ["FAILED", "QUEUED", "IN_PROGRESS", "COMPLETED"] + if not value_allowed_none_or_none_sentinel(status, allowed_values): + status = 'UNKNOWN_ENUM_VALUE' + self._status = status + + @property + def triggered_by(self): + """ + Gets the triggered_by of this DistributedAutonomousDatabaseRuChangeLogSummary. + Actor who triggered the move RU invocation. + + + :return: The triggered_by of this DistributedAutonomousDatabaseRuChangeLogSummary. + :rtype: str + """ + return self._triggered_by + + @triggered_by.setter + def triggered_by(self, triggered_by): + """ + Sets the triggered_by of this DistributedAutonomousDatabaseRuChangeLogSummary. + Actor who triggered the move RU invocation. + + + :param triggered_by: The triggered_by of this DistributedAutonomousDatabaseRuChangeLogSummary. + :type: str + """ + self._triggered_by = triggered_by + + @property + def time_created(self): + """ + Gets the time_created of this DistributedAutonomousDatabaseRuChangeLogSummary. + Entry creation timestamp in UTC. + + + :return: The time_created of this DistributedAutonomousDatabaseRuChangeLogSummary. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this DistributedAutonomousDatabaseRuChangeLogSummary. + Entry creation timestamp in UTC. + + + :param time_created: The time_created of this DistributedAutonomousDatabaseRuChangeLogSummary. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + Gets the time_updated of this DistributedAutonomousDatabaseRuChangeLogSummary. + Entry update timestamp in UTC. + + + :return: The time_updated of this DistributedAutonomousDatabaseRuChangeLogSummary. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this DistributedAutonomousDatabaseRuChangeLogSummary. + Entry update timestamp in UTC. + + + :param time_updated: The time_updated of this DistributedAutonomousDatabaseRuChangeLogSummary. + :type: datetime + """ + self._time_updated = time_updated + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_autonomous_database_shard_database.py b/src/oci/distributed_database_v26/models/distributed_autonomous_database_shard_database.py new file mode 100644 index 0000000000..9349651859 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_autonomous_database_shard_database.py @@ -0,0 +1,221 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedAutonomousDatabaseShardDatabase(object): + """ + Globally distributed autonomous database shard. + """ + + #: A constant which can be used with the source property of a DistributedAutonomousDatabaseShardDatabase. + #: This constant has a value of "ADBD_EXISTING_CLUSTER" + SOURCE_ADBD_EXISTING_CLUSTER = "ADBD_EXISTING_CLUSTER" + + def __init__(self, **kwargs): + """ + Initializes a new DistributedAutonomousDatabaseShardDatabase object with values from keyword arguments. This class has the following subclasses and if you are using this class as input + to a service operations then you should favor using a subclass over the base class: + + * :class:`~oci.distributed_database_v26.models.DistributedAutonomousDatabaseShardWithDedicatedInfra` + + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source: + The value to assign to the source property of this DistributedAutonomousDatabaseShardDatabase. + Allowed values for this property are: "ADBD_EXISTING_CLUSTER", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type source: str + + :param name: + The value to assign to the name property of this DistributedAutonomousDatabaseShardDatabase. + :type name: str + + :param time_created: + The value to assign to the time_created property of this DistributedAutonomousDatabaseShardDatabase. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this DistributedAutonomousDatabaseShardDatabase. + :type time_updated: datetime + + :param metadata: + The value to assign to the metadata property of this DistributedAutonomousDatabaseShardDatabase. + :type metadata: oci.distributed_database_v26.models.DistributedAutonomousDbMetadata + + """ + self.swagger_types = { + 'source': 'str', + 'name': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'metadata': 'DistributedAutonomousDbMetadata' + } + self.attribute_map = { + 'source': 'source', + 'name': 'name', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'metadata': 'metadata' + } + self._source = None + self._name = None + self._time_created = None + self._time_updated = None + self._metadata = None + + @staticmethod + def get_subtype(object_dictionary): + """ + Given the hash representation of a subtype of this class, + use the info in the hash to return the class of the subtype. + """ + type = object_dictionary['source'] + + if type == 'ADBD_EXISTING_CLUSTER': + return 'DistributedAutonomousDatabaseShardWithDedicatedInfra' + else: + return 'DistributedAutonomousDatabaseShardDatabase' + + @property + def source(self): + """ + **[Required]** Gets the source of this DistributedAutonomousDatabaseShardDatabase. + The source of the Globally distributed autonomous database type. + Use ADBD_EXISTING_CLUSTER for an autonomous database on Dedicated Infrastructure that uses a pre-existing cluster. + + Allowed values for this property are: "ADBD_EXISTING_CLUSTER", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The source of this DistributedAutonomousDatabaseShardDatabase. + :rtype: str + """ + return self._source + + @source.setter + def source(self, source): + """ + Sets the source of this DistributedAutonomousDatabaseShardDatabase. + The source of the Globally distributed autonomous database type. + Use ADBD_EXISTING_CLUSTER for an autonomous database on Dedicated Infrastructure that uses a pre-existing cluster. + + + :param source: The source of this DistributedAutonomousDatabaseShardDatabase. + :type: str + """ + allowed_values = ["ADBD_EXISTING_CLUSTER"] + if not value_allowed_none_or_none_sentinel(source, allowed_values): + source = 'UNKNOWN_ENUM_VALUE' + self._source = source + + @property + def name(self): + """ + **[Required]** Gets the name of this DistributedAutonomousDatabaseShardDatabase. + Name of the shard. + + + :return: The name of this DistributedAutonomousDatabaseShardDatabase. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this DistributedAutonomousDatabaseShardDatabase. + Name of the shard. + + + :param name: The name of this DistributedAutonomousDatabaseShardDatabase. + :type: str + """ + self._name = name + + @property + def time_created(self): + """ + **[Required]** Gets the time_created of this DistributedAutonomousDatabaseShardDatabase. + The time the shard was created. An RFC3339 formatted datetime string. + + + :return: The time_created of this DistributedAutonomousDatabaseShardDatabase. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this DistributedAutonomousDatabaseShardDatabase. + The time the shard was created. An RFC3339 formatted datetime string. + + + :param time_created: The time_created of this DistributedAutonomousDatabaseShardDatabase. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + **[Required]** Gets the time_updated of this DistributedAutonomousDatabaseShardDatabase. + The time the shard was last updated. An RFC3339 formatted datetime string. + + + :return: The time_updated of this DistributedAutonomousDatabaseShardDatabase. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this DistributedAutonomousDatabaseShardDatabase. + The time the shard was last updated. An RFC3339 formatted datetime string. + + + :param time_updated: The time_updated of this DistributedAutonomousDatabaseShardDatabase. + :type: datetime + """ + self._time_updated = time_updated + + @property + def metadata(self): + """ + Gets the metadata of this DistributedAutonomousDatabaseShardDatabase. + + :return: The metadata of this DistributedAutonomousDatabaseShardDatabase. + :rtype: oci.distributed_database_v26.models.DistributedAutonomousDbMetadata + """ + return self._metadata + + @metadata.setter + def metadata(self, metadata): + """ + Sets the metadata of this DistributedAutonomousDatabaseShardDatabase. + + :param metadata: The metadata of this DistributedAutonomousDatabaseShardDatabase. + :type: oci.distributed_database_v26.models.DistributedAutonomousDbMetadata + """ + self._metadata = metadata + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_autonomous_database_shard_with_dedicated_infra.py b/src/oci/distributed_database_v26/models/distributed_autonomous_database_shard_with_dedicated_infra.py new file mode 100644 index 0000000000..0087645655 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_autonomous_database_shard_with_dedicated_infra.py @@ -0,0 +1,627 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +from .distributed_autonomous_database_shard_database import DistributedAutonomousDatabaseShardDatabase +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedAutonomousDatabaseShardWithDedicatedInfra(DistributedAutonomousDatabaseShardDatabase): + """ + Details of a distributed autonomous database shard on dedicated infrastructure. + """ + + #: A constant which can be used with the protection_mode property of a DistributedAutonomousDatabaseShardWithDedicatedInfra. + #: This constant has a value of "MAXIMUM_AVAILABILITY" + PROTECTION_MODE_MAXIMUM_AVAILABILITY = "MAXIMUM_AVAILABILITY" + + #: A constant which can be used with the protection_mode property of a DistributedAutonomousDatabaseShardWithDedicatedInfra. + #: This constant has a value of "MAXIMUM_PERFORMANCE" + PROTECTION_MODE_MAXIMUM_PERFORMANCE = "MAXIMUM_PERFORMANCE" + + #: A constant which can be used with the status property of a DistributedAutonomousDatabaseShardWithDedicatedInfra. + #: This constant has a value of "FAILED" + STATUS_FAILED = "FAILED" + + #: A constant which can be used with the status property of a DistributedAutonomousDatabaseShardWithDedicatedInfra. + #: This constant has a value of "DELETING" + STATUS_DELETING = "DELETING" + + #: A constant which can be used with the status property of a DistributedAutonomousDatabaseShardWithDedicatedInfra. + #: This constant has a value of "DELETED" + STATUS_DELETED = "DELETED" + + #: A constant which can be used with the status property of a DistributedAutonomousDatabaseShardWithDedicatedInfra. + #: This constant has a value of "UPDATING" + STATUS_UPDATING = "UPDATING" + + #: A constant which can be used with the status property of a DistributedAutonomousDatabaseShardWithDedicatedInfra. + #: This constant has a value of "CREATING" + STATUS_CREATING = "CREATING" + + #: A constant which can be used with the status property of a DistributedAutonomousDatabaseShardWithDedicatedInfra. + #: This constant has a value of "CREATED" + STATUS_CREATED = "CREATED" + + #: A constant which can be used with the status property of a DistributedAutonomousDatabaseShardWithDedicatedInfra. + #: This constant has a value of "READY_FOR_CONFIGURATION" + STATUS_READY_FOR_CONFIGURATION = "READY_FOR_CONFIGURATION" + + #: A constant which can be used with the status property of a DistributedAutonomousDatabaseShardWithDedicatedInfra. + #: This constant has a value of "CONFIGURED" + STATUS_CONFIGURED = "CONFIGURED" + + #: A constant which can be used with the status property of a DistributedAutonomousDatabaseShardWithDedicatedInfra. + #: This constant has a value of "NEEDS_ATTENTION" + STATUS_NEEDS_ATTENTION = "NEEDS_ATTENTION" + + def __init__(self, **kwargs): + """ + Initializes a new DistributedAutonomousDatabaseShardWithDedicatedInfra object with values from keyword arguments. The default value of the :py:attr:`~oci.distributed_database_v26.models.DistributedAutonomousDatabaseShardWithDedicatedInfra.source` attribute + of this class is ``ADBD_EXISTING_CLUSTER`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source: + The value to assign to the source property of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + Allowed values for this property are: "ADBD_EXISTING_CLUSTER", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type source: str + + :param name: + The value to assign to the name property of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :type name: str + + :param time_created: + The value to assign to the time_created property of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :type time_updated: datetime + + :param metadata: + The value to assign to the metadata property of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :type metadata: oci.distributed_database_v26.models.DistributedAutonomousDbMetadata + + :param compute_count: + The value to assign to the compute_count property of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :type compute_count: float + + :param data_storage_size_in_gbs: + The value to assign to the data_storage_size_in_gbs property of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :type data_storage_size_in_gbs: float + + :param is_auto_scaling_enabled: + The value to assign to the is_auto_scaling_enabled property of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :type is_auto_scaling_enabled: bool + + :param cloud_autonomous_vm_cluster_id: + The value to assign to the cloud_autonomous_vm_cluster_id property of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :type cloud_autonomous_vm_cluster_id: str + + :param vault_id: + The value to assign to the vault_id property of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :type vault_id: str + + :param kms_key_id: + The value to assign to the kms_key_id property of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :type kms_key_id: str + + :param kms_key_version_id: + The value to assign to the kms_key_version_id property of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :type kms_key_version_id: str + + :param okv_key_store_id: + The value to assign to the okv_key_store_id property of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :type okv_key_store_id: str + + :param okv_end_point_group_name: + The value to assign to the okv_end_point_group_name property of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :type okv_end_point_group_name: str + + :param protection_mode: + The value to assign to the protection_mode property of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type protection_mode: str + + :param fast_start_fail_over_lag_limit_in_seconds: + The value to assign to the fast_start_fail_over_lag_limit_in_seconds property of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :type fast_start_fail_over_lag_limit_in_seconds: int + + :param standby_maintenance_buffer_in_days: + The value to assign to the standby_maintenance_buffer_in_days property of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :type standby_maintenance_buffer_in_days: int + + :param status: + The value to assign to the status property of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + Allowed values for this property are: "FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type status: str + + :param supporting_resource_id: + The value to assign to the supporting_resource_id property of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :type supporting_resource_id: str + + :param container_database_id: + The value to assign to the container_database_id property of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :type container_database_id: str + + """ + self.swagger_types = { + 'source': 'str', + 'name': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'metadata': 'DistributedAutonomousDbMetadata', + 'compute_count': 'float', + 'data_storage_size_in_gbs': 'float', + 'is_auto_scaling_enabled': 'bool', + 'cloud_autonomous_vm_cluster_id': 'str', + 'vault_id': 'str', + 'kms_key_id': 'str', + 'kms_key_version_id': 'str', + 'okv_key_store_id': 'str', + 'okv_end_point_group_name': 'str', + 'protection_mode': 'str', + 'fast_start_fail_over_lag_limit_in_seconds': 'int', + 'standby_maintenance_buffer_in_days': 'int', + 'status': 'str', + 'supporting_resource_id': 'str', + 'container_database_id': 'str' + } + self.attribute_map = { + 'source': 'source', + 'name': 'name', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'metadata': 'metadata', + 'compute_count': 'computeCount', + 'data_storage_size_in_gbs': 'dataStorageSizeInGbs', + 'is_auto_scaling_enabled': 'isAutoScalingEnabled', + 'cloud_autonomous_vm_cluster_id': 'cloudAutonomousVmClusterId', + 'vault_id': 'vaultId', + 'kms_key_id': 'kmsKeyId', + 'kms_key_version_id': 'kmsKeyVersionId', + 'okv_key_store_id': 'okvKeyStoreId', + 'okv_end_point_group_name': 'okvEndPointGroupName', + 'protection_mode': 'protectionMode', + 'fast_start_fail_over_lag_limit_in_seconds': 'fastStartFailOverLagLimitInSeconds', + 'standby_maintenance_buffer_in_days': 'standbyMaintenanceBufferInDays', + 'status': 'status', + 'supporting_resource_id': 'supportingResourceId', + 'container_database_id': 'containerDatabaseId' + } + self._source = None + self._name = None + self._time_created = None + self._time_updated = None + self._metadata = None + self._compute_count = None + self._data_storage_size_in_gbs = None + self._is_auto_scaling_enabled = None + self._cloud_autonomous_vm_cluster_id = None + self._vault_id = None + self._kms_key_id = None + self._kms_key_version_id = None + self._okv_key_store_id = None + self._okv_end_point_group_name = None + self._protection_mode = None + self._fast_start_fail_over_lag_limit_in_seconds = None + self._standby_maintenance_buffer_in_days = None + self._status = None + self._supporting_resource_id = None + self._container_database_id = None + self._source = 'ADBD_EXISTING_CLUSTER' + + @property + def compute_count(self): + """ + **[Required]** Gets the compute_count of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + The compute count for the shard database. It has to be in multiples of 2. + + + :return: The compute_count of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :rtype: float + """ + return self._compute_count + + @compute_count.setter + def compute_count(self, compute_count): + """ + Sets the compute_count of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + The compute count for the shard database. It has to be in multiples of 2. + + + :param compute_count: The compute_count of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :type: float + """ + self._compute_count = compute_count + + @property + def data_storage_size_in_gbs(self): + """ + **[Required]** Gets the data_storage_size_in_gbs of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + The data disk group size to be allocated in GBs for the shard database. + + + :return: The data_storage_size_in_gbs of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :rtype: float + """ + return self._data_storage_size_in_gbs + + @data_storage_size_in_gbs.setter + def data_storage_size_in_gbs(self, data_storage_size_in_gbs): + """ + Sets the data_storage_size_in_gbs of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + The data disk group size to be allocated in GBs for the shard database. + + + :param data_storage_size_in_gbs: The data_storage_size_in_gbs of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :type: float + """ + self._data_storage_size_in_gbs = data_storage_size_in_gbs + + @property + def is_auto_scaling_enabled(self): + """ + Gets the is_auto_scaling_enabled of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + Indicates if vertical auto scaling is enabled for the Autonomous AI Database CPU core count. + The default value is `FALSE`. + + + :return: The is_auto_scaling_enabled of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :rtype: bool + """ + return self._is_auto_scaling_enabled + + @is_auto_scaling_enabled.setter + def is_auto_scaling_enabled(self, is_auto_scaling_enabled): + """ + Sets the is_auto_scaling_enabled of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + Indicates if vertical auto scaling is enabled for the Autonomous AI Database CPU core count. + The default value is `FALSE`. + + + :param is_auto_scaling_enabled: The is_auto_scaling_enabled of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :type: bool + """ + self._is_auto_scaling_enabled = is_auto_scaling_enabled + + @property + def cloud_autonomous_vm_cluster_id(self): + """ + **[Required]** Gets the cloud_autonomous_vm_cluster_id of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + The `OCID`__ of the cloud Autonomous Exadata VM Cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The cloud_autonomous_vm_cluster_id of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :rtype: str + """ + return self._cloud_autonomous_vm_cluster_id + + @cloud_autonomous_vm_cluster_id.setter + def cloud_autonomous_vm_cluster_id(self, cloud_autonomous_vm_cluster_id): + """ + Sets the cloud_autonomous_vm_cluster_id of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + The `OCID`__ of the cloud Autonomous Exadata VM Cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param cloud_autonomous_vm_cluster_id: The cloud_autonomous_vm_cluster_id of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :type: str + """ + self._cloud_autonomous_vm_cluster_id = cloud_autonomous_vm_cluster_id + + @property + def vault_id(self): + """ + Gets the vault_id of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :return: The vault_id of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :rtype: str + """ + return self._vault_id + + @vault_id.setter + def vault_id(self, vault_id): + """ + Sets the vault_id of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :param vault_id: The vault_id of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :type: str + """ + self._vault_id = vault_id + + @property + def kms_key_id(self): + """ + Gets the kms_key_id of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_id of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :rtype: str + """ + return self._kms_key_id + + @kms_key_id.setter + def kms_key_id(self, kms_key_id): + """ + Sets the kms_key_id of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_id: The kms_key_id of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :type: str + """ + self._kms_key_id = kms_key_id + + @property + def kms_key_version_id(self): + """ + Gets the kms_key_version_id of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_version_id of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :rtype: str + """ + return self._kms_key_version_id + + @kms_key_version_id.setter + def kms_key_version_id(self, kms_key_version_id): + """ + Sets the kms_key_version_id of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_version_id: The kms_key_version_id of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :type: str + """ + self._kms_key_version_id = kms_key_version_id + + @property + def okv_key_store_id(self): + """ + Gets the okv_key_store_id of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + The `OCID`__ of the key store used to create the shard. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The okv_key_store_id of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :rtype: str + """ + return self._okv_key_store_id + + @okv_key_store_id.setter + def okv_key_store_id(self, okv_key_store_id): + """ + Sets the okv_key_store_id of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + The `OCID`__ of the key store used to create the shard. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param okv_key_store_id: The okv_key_store_id of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :type: str + """ + self._okv_key_store_id = okv_key_store_id + + @property + def okv_end_point_group_name(self): + """ + Gets the okv_end_point_group_name of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + The OKV endpoint name. + + + :return: The okv_end_point_group_name of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :rtype: str + """ + return self._okv_end_point_group_name + + @okv_end_point_group_name.setter + def okv_end_point_group_name(self, okv_end_point_group_name): + """ + Sets the okv_end_point_group_name of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + The OKV endpoint name. + + + :param okv_end_point_group_name: The okv_end_point_group_name of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :type: str + """ + self._okv_end_point_group_name = okv_end_point_group_name + + @property + def protection_mode(self): + """ + Gets the protection_mode of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + The protection mode for the shard peer. + + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The protection_mode of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :rtype: str + """ + return self._protection_mode + + @protection_mode.setter + def protection_mode(self, protection_mode): + """ + Sets the protection_mode of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + The protection mode for the shard peer. + + + :param protection_mode: The protection_mode of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :type: str + """ + allowed_values = ["MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE"] + if not value_allowed_none_or_none_sentinel(protection_mode, allowed_values): + protection_mode = 'UNKNOWN_ENUM_VALUE' + self._protection_mode = protection_mode + + @property + def fast_start_fail_over_lag_limit_in_seconds(self): + """ + Gets the fast_start_fail_over_lag_limit_in_seconds of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + The lag time preference based on data loss tolerance in seconds. + + + :return: The fast_start_fail_over_lag_limit_in_seconds of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :rtype: int + """ + return self._fast_start_fail_over_lag_limit_in_seconds + + @fast_start_fail_over_lag_limit_in_seconds.setter + def fast_start_fail_over_lag_limit_in_seconds(self, fast_start_fail_over_lag_limit_in_seconds): + """ + Sets the fast_start_fail_over_lag_limit_in_seconds of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + The lag time preference based on data loss tolerance in seconds. + + + :param fast_start_fail_over_lag_limit_in_seconds: The fast_start_fail_over_lag_limit_in_seconds of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :type: int + """ + self._fast_start_fail_over_lag_limit_in_seconds = fast_start_fail_over_lag_limit_in_seconds + + @property + def standby_maintenance_buffer_in_days(self): + """ + Gets the standby_maintenance_buffer_in_days of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + The scheduling detail for the quarterly maintenance window of the standby Autonomous Container Database. + + + :return: The standby_maintenance_buffer_in_days of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :rtype: int + """ + return self._standby_maintenance_buffer_in_days + + @standby_maintenance_buffer_in_days.setter + def standby_maintenance_buffer_in_days(self, standby_maintenance_buffer_in_days): + """ + Sets the standby_maintenance_buffer_in_days of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + The scheduling detail for the quarterly maintenance window of the standby Autonomous Container Database. + + + :param standby_maintenance_buffer_in_days: The standby_maintenance_buffer_in_days of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :type: int + """ + self._standby_maintenance_buffer_in_days = standby_maintenance_buffer_in_days + + @property + def status(self): + """ + **[Required]** Gets the status of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + Status of the distributed autonomous database shard. + + Allowed values for this property are: "FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The status of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :rtype: str + """ + return self._status + + @status.setter + def status(self, status): + """ + Sets the status of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + Status of the distributed autonomous database shard. + + + :param status: The status of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :type: str + """ + allowed_values = ["FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION"] + if not value_allowed_none_or_none_sentinel(status, allowed_values): + status = 'UNKNOWN_ENUM_VALUE' + self._status = status + + @property + def supporting_resource_id(self): + """ + Gets the supporting_resource_id of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + the identifier of the underlying supporting resource. + + + :return: The supporting_resource_id of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :rtype: str + """ + return self._supporting_resource_id + + @supporting_resource_id.setter + def supporting_resource_id(self, supporting_resource_id): + """ + Sets the supporting_resource_id of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + the identifier of the underlying supporting resource. + + + :param supporting_resource_id: The supporting_resource_id of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :type: str + """ + self._supporting_resource_id = supporting_resource_id + + @property + def container_database_id(self): + """ + Gets the container_database_id of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + the identifier of the container database for underlying supporting resource. + + + :return: The container_database_id of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :rtype: str + """ + return self._container_database_id + + @container_database_id.setter + def container_database_id(self, container_database_id): + """ + Sets the container_database_id of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + the identifier of the container database for underlying supporting resource. + + + :param container_database_id: The container_database_id of this DistributedAutonomousDatabaseShardWithDedicatedInfra. + :type: str + """ + self._container_database_id = container_database_id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_autonomous_database_summary.py b/src/oci/distributed_database_v26/models/distributed_autonomous_database_summary.py new file mode 100644 index 0000000000..0aa4d90d37 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_autonomous_database_summary.py @@ -0,0 +1,977 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedAutonomousDatabaseSummary(object): + """ + Globally distributed autonomous database. + """ + + #: A constant which can be used with the sharding_method property of a DistributedAutonomousDatabaseSummary. + #: This constant has a value of "USER" + SHARDING_METHOD_USER = "USER" + + #: A constant which can be used with the sharding_method property of a DistributedAutonomousDatabaseSummary. + #: This constant has a value of "SYSTEM" + SHARDING_METHOD_SYSTEM = "SYSTEM" + + #: A constant which can be used with the sharding_method property of a DistributedAutonomousDatabaseSummary. + #: This constant has a value of "COMPOSITE" + SHARDING_METHOD_COMPOSITE = "COMPOSITE" + + #: A constant which can be used with the replication_method property of a DistributedAutonomousDatabaseSummary. + #: This constant has a value of "RAFT" + REPLICATION_METHOD_RAFT = "RAFT" + + #: A constant which can be used with the replication_method property of a DistributedAutonomousDatabaseSummary. + #: This constant has a value of "DG" + REPLICATION_METHOD_DG = "DG" + + #: A constant which can be used with the db_deployment_type property of a DistributedAutonomousDatabaseSummary. + #: This constant has a value of "ADB_D" + DB_DEPLOYMENT_TYPE_ADB_D = "ADB_D" + + def __init__(self, **kwargs): + """ + Initializes a new DistributedAutonomousDatabaseSummary object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this DistributedAutonomousDatabaseSummary. + :type id: str + + :param compartment_id: + The value to assign to the compartment_id property of this DistributedAutonomousDatabaseSummary. + :type compartment_id: str + + :param display_name: + The value to assign to the display_name property of this DistributedAutonomousDatabaseSummary. + :type display_name: str + + :param time_created: + The value to assign to the time_created property of this DistributedAutonomousDatabaseSummary. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this DistributedAutonomousDatabaseSummary. + :type time_updated: datetime + + :param database_version: + The value to assign to the database_version property of this DistributedAutonomousDatabaseSummary. + :type database_version: str + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this DistributedAutonomousDatabaseSummary. + :type lifecycle_state: str + + :param lifecycle_details: + The value to assign to the lifecycle_details property of this DistributedAutonomousDatabaseSummary. + :type lifecycle_details: str + + :param prefix: + The value to assign to the prefix property of this DistributedAutonomousDatabaseSummary. + :type prefix: str + + :param private_endpoint_ids: + The value to assign to the private_endpoint_ids property of this DistributedAutonomousDatabaseSummary. + :type private_endpoint_ids: list[str] + + :param notification_topic_ids: + The value to assign to the notification_topic_ids property of this DistributedAutonomousDatabaseSummary. + :type notification_topic_ids: list[str] + + :param db_workload_type: + The value to assign to the db_workload_type property of this DistributedAutonomousDatabaseSummary. + :type db_workload_type: str + + :param character_set: + The value to assign to the character_set property of this DistributedAutonomousDatabaseSummary. + :type character_set: str + + :param ncharacter_set: + The value to assign to the ncharacter_set property of this DistributedAutonomousDatabaseSummary. + :type ncharacter_set: str + + :param listener_port: + The value to assign to the listener_port property of this DistributedAutonomousDatabaseSummary. + :type listener_port: int + + :param listener_port_tls: + The value to assign to the listener_port_tls property of this DistributedAutonomousDatabaseSummary. + :type listener_port_tls: int + + :param ons_port_local: + The value to assign to the ons_port_local property of this DistributedAutonomousDatabaseSummary. + :type ons_port_local: int + + :param ons_port_remote: + The value to assign to the ons_port_remote property of this DistributedAutonomousDatabaseSummary. + :type ons_port_remote: int + + :param system_chunk_count: + The value to assign to the system_chunk_count property of this DistributedAutonomousDatabaseSummary. + :type system_chunk_count: int + + :param auto_resource_management_config: + The value to assign to the auto_resource_management_config property of this DistributedAutonomousDatabaseSummary. + :type auto_resource_management_config: oci.distributed_database_v26.models.AutoResourceManagementConfigurationDetails + + :param system_raft_replication_unit_count: + The value to assign to the system_raft_replication_unit_count property of this DistributedAutonomousDatabaseSummary. + :type system_raft_replication_unit_count: int + + :param metadata: + The value to assign to the metadata property of this DistributedAutonomousDatabaseSummary. + :type metadata: oci.distributed_database_v26.models.DistributedAutonomousDbMetadata + + :param sharding_method: + The value to assign to the sharding_method property of this DistributedAutonomousDatabaseSummary. + Allowed values for this property are: "USER", "SYSTEM", "COMPOSITE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type sharding_method: str + + :param replication_method: + The value to assign to the replication_method property of this DistributedAutonomousDatabaseSummary. + Allowed values for this property are: "RAFT", "DG", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type replication_method: str + + :param db_deployment_type: + The value to assign to the db_deployment_type property of this DistributedAutonomousDatabaseSummary. + Allowed values for this property are: "ADB_D", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type db_deployment_type: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this DistributedAutonomousDatabaseSummary. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this DistributedAutonomousDatabaseSummary. + :type defined_tags: dict(str, dict(str, object)) + + :param system_tags: + The value to assign to the system_tags property of this DistributedAutonomousDatabaseSummary. + :type system_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'id': 'str', + 'compartment_id': 'str', + 'display_name': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'database_version': 'str', + 'lifecycle_state': 'str', + 'lifecycle_details': 'str', + 'prefix': 'str', + 'private_endpoint_ids': 'list[str]', + 'notification_topic_ids': 'list[str]', + 'db_workload_type': 'str', + 'character_set': 'str', + 'ncharacter_set': 'str', + 'listener_port': 'int', + 'listener_port_tls': 'int', + 'ons_port_local': 'int', + 'ons_port_remote': 'int', + 'system_chunk_count': 'int', + 'auto_resource_management_config': 'AutoResourceManagementConfigurationDetails', + 'system_raft_replication_unit_count': 'int', + 'metadata': 'DistributedAutonomousDbMetadata', + 'sharding_method': 'str', + 'replication_method': 'str', + 'db_deployment_type': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'id': 'id', + 'compartment_id': 'compartmentId', + 'display_name': 'displayName', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'database_version': 'databaseVersion', + 'lifecycle_state': 'lifecycleState', + 'lifecycle_details': 'lifecycleDetails', + 'prefix': 'prefix', + 'private_endpoint_ids': 'privateEndpointIds', + 'notification_topic_ids': 'notificationTopicIds', + 'db_workload_type': 'dbWorkloadType', + 'character_set': 'characterSet', + 'ncharacter_set': 'ncharacterSet', + 'listener_port': 'listenerPort', + 'listener_port_tls': 'listenerPortTls', + 'ons_port_local': 'onsPortLocal', + 'ons_port_remote': 'onsPortRemote', + 'system_chunk_count': 'systemChunkCount', + 'auto_resource_management_config': 'autoResourceManagementConfig', + 'system_raft_replication_unit_count': 'systemRaftReplicationUnitCount', + 'metadata': 'metadata', + 'sharding_method': 'shardingMethod', + 'replication_method': 'replicationMethod', + 'db_deployment_type': 'dbDeploymentType', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags' + } + self._id = None + self._compartment_id = None + self._display_name = None + self._time_created = None + self._time_updated = None + self._database_version = None + self._lifecycle_state = None + self._lifecycle_details = None + self._prefix = None + self._private_endpoint_ids = None + self._notification_topic_ids = None + self._db_workload_type = None + self._character_set = None + self._ncharacter_set = None + self._listener_port = None + self._listener_port_tls = None + self._ons_port_local = None + self._ons_port_remote = None + self._system_chunk_count = None + self._auto_resource_management_config = None + self._system_raft_replication_unit_count = None + self._metadata = None + self._sharding_method = None + self._replication_method = None + self._db_deployment_type = None + self._freeform_tags = None + self._defined_tags = None + self._system_tags = None + + @property + def id(self): + """ + **[Required]** Gets the id of this DistributedAutonomousDatabaseSummary. + The `OCID`__ of the Globally distributed autonomous database. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this DistributedAutonomousDatabaseSummary. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this DistributedAutonomousDatabaseSummary. + The `OCID`__ of the Globally distributed autonomous database. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this DistributedAutonomousDatabaseSummary. + :type: str + """ + self._id = id + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this DistributedAutonomousDatabaseSummary. + The `OCID`__ of the Globally distributed autonomous database compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this DistributedAutonomousDatabaseSummary. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this DistributedAutonomousDatabaseSummary. + The `OCID`__ of the Globally distributed autonomous database compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this DistributedAutonomousDatabaseSummary. + :type: str + """ + self._compartment_id = compartment_id + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this DistributedAutonomousDatabaseSummary. + The display name of the Globally distributed autonomous database. + + + :return: The display_name of this DistributedAutonomousDatabaseSummary. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this DistributedAutonomousDatabaseSummary. + The display name of the Globally distributed autonomous database. + + + :param display_name: The display_name of this DistributedAutonomousDatabaseSummary. + :type: str + """ + self._display_name = display_name + + @property + def time_created(self): + """ + **[Required]** Gets the time_created of this DistributedAutonomousDatabaseSummary. + The time the Globally distributed autonomous database was created. An RFC3339 formatted datetime string + + + :return: The time_created of this DistributedAutonomousDatabaseSummary. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this DistributedAutonomousDatabaseSummary. + The time the Globally distributed autonomous database was created. An RFC3339 formatted datetime string + + + :param time_created: The time_created of this DistributedAutonomousDatabaseSummary. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + **[Required]** Gets the time_updated of this DistributedAutonomousDatabaseSummary. + The time the Globally distributed autonomous database was last updated. An RFC3339 formatted datetime string + + + :return: The time_updated of this DistributedAutonomousDatabaseSummary. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this DistributedAutonomousDatabaseSummary. + The time the Globally distributed autonomous database was last updated. An RFC3339 formatted datetime string + + + :param time_updated: The time_updated of this DistributedAutonomousDatabaseSummary. + :type: datetime + """ + self._time_updated = time_updated + + @property + def database_version(self): + """ + **[Required]** Gets the database_version of this DistributedAutonomousDatabaseSummary. + Oracle Database version for the shards and catalog used in Globally distributed autonomous database. + + + :return: The database_version of this DistributedAutonomousDatabaseSummary. + :rtype: str + """ + return self._database_version + + @database_version.setter + def database_version(self, database_version): + """ + Sets the database_version of this DistributedAutonomousDatabaseSummary. + Oracle Database version for the shards and catalog used in Globally distributed autonomous database. + + + :param database_version: The database_version of this DistributedAutonomousDatabaseSummary. + :type: str + """ + self._database_version = database_version + + @property + def lifecycle_state(self): + """ + **[Required]** Gets the lifecycle_state of this DistributedAutonomousDatabaseSummary. + Lifecycle state of sharded database. + + + :return: The lifecycle_state of this DistributedAutonomousDatabaseSummary. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this DistributedAutonomousDatabaseSummary. + Lifecycle state of sharded database. + + + :param lifecycle_state: The lifecycle_state of this DistributedAutonomousDatabaseSummary. + :type: str + """ + self._lifecycle_state = lifecycle_state + + @property + def lifecycle_details(self): + """ + **[Required]** Gets the lifecycle_details of this DistributedAutonomousDatabaseSummary. + The lifecycleDetails for the Globally distributed autonomous database. + + + :return: The lifecycle_details of this DistributedAutonomousDatabaseSummary. + :rtype: str + """ + return self._lifecycle_details + + @lifecycle_details.setter + def lifecycle_details(self, lifecycle_details): + """ + Sets the lifecycle_details of this DistributedAutonomousDatabaseSummary. + The lifecycleDetails for the Globally distributed autonomous database. + + + :param lifecycle_details: The lifecycle_details of this DistributedAutonomousDatabaseSummary. + :type: str + """ + self._lifecycle_details = lifecycle_details + + @property + def prefix(self): + """ + **[Required]** Gets the prefix of this DistributedAutonomousDatabaseSummary. + Unique name prefix for the Globally distributed autonomous databases. Only alpha-numeric values are allowed. First character + has to be a letter followed by any combination of letter and number. + + + :return: The prefix of this DistributedAutonomousDatabaseSummary. + :rtype: str + """ + return self._prefix + + @prefix.setter + def prefix(self, prefix): + """ + Sets the prefix of this DistributedAutonomousDatabaseSummary. + Unique name prefix for the Globally distributed autonomous databases. Only alpha-numeric values are allowed. First character + has to be a letter followed by any combination of letter and number. + + + :param prefix: The prefix of this DistributedAutonomousDatabaseSummary. + :type: str + """ + self._prefix = prefix + + @property + def private_endpoint_ids(self): + """ + **[Required]** Gets the private_endpoint_ids of this DistributedAutonomousDatabaseSummary. + The collection of `OCID`__ of the private endpoint associated with Globally distributed autonomous database. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The private_endpoint_ids of this DistributedAutonomousDatabaseSummary. + :rtype: list[str] + """ + return self._private_endpoint_ids + + @private_endpoint_ids.setter + def private_endpoint_ids(self, private_endpoint_ids): + """ + Sets the private_endpoint_ids of this DistributedAutonomousDatabaseSummary. + The collection of `OCID`__ of the private endpoint associated with Globally distributed autonomous database. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param private_endpoint_ids: The private_endpoint_ids of this DistributedAutonomousDatabaseSummary. + :type: list[str] + """ + self._private_endpoint_ids = private_endpoint_ids + + @property + def notification_topic_ids(self): + """ + Gets the notification_topic_ids of this DistributedAutonomousDatabaseSummary. + The collection of `OCID`__ for the notification topics associated with the globally distributed autonomous database. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The notification_topic_ids of this DistributedAutonomousDatabaseSummary. + :rtype: list[str] + """ + return self._notification_topic_ids + + @notification_topic_ids.setter + def notification_topic_ids(self, notification_topic_ids): + """ + Sets the notification_topic_ids of this DistributedAutonomousDatabaseSummary. + The collection of `OCID`__ for the notification topics associated with the globally distributed autonomous database. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param notification_topic_ids: The notification_topic_ids of this DistributedAutonomousDatabaseSummary. + :type: list[str] + """ + self._notification_topic_ids = notification_topic_ids + + @property + def db_workload_type(self): + """ + **[Required]** Gets the db_workload_type of this DistributedAutonomousDatabaseSummary. + The workload type for the database. + + + :return: The db_workload_type of this DistributedAutonomousDatabaseSummary. + :rtype: str + """ + return self._db_workload_type + + @db_workload_type.setter + def db_workload_type(self, db_workload_type): + """ + Sets the db_workload_type of this DistributedAutonomousDatabaseSummary. + The workload type for the database. + + + :param db_workload_type: The db_workload_type of this DistributedAutonomousDatabaseSummary. + :type: str + """ + self._db_workload_type = db_workload_type + + @property + def character_set(self): + """ + **[Required]** Gets the character_set of this DistributedAutonomousDatabaseSummary. + The character set for the database. + + + :return: The character_set of this DistributedAutonomousDatabaseSummary. + :rtype: str + """ + return self._character_set + + @character_set.setter + def character_set(self, character_set): + """ + Sets the character_set of this DistributedAutonomousDatabaseSummary. + The character set for the database. + + + :param character_set: The character_set of this DistributedAutonomousDatabaseSummary. + :type: str + """ + self._character_set = character_set + + @property + def ncharacter_set(self): + """ + **[Required]** Gets the ncharacter_set of this DistributedAutonomousDatabaseSummary. + The national character set for the database. + + + :return: The ncharacter_set of this DistributedAutonomousDatabaseSummary. + :rtype: str + """ + return self._ncharacter_set + + @ncharacter_set.setter + def ncharacter_set(self, ncharacter_set): + """ + Sets the ncharacter_set of this DistributedAutonomousDatabaseSummary. + The national character set for the database. + + + :param ncharacter_set: The ncharacter_set of this DistributedAutonomousDatabaseSummary. + :type: str + """ + self._ncharacter_set = ncharacter_set + + @property + def listener_port(self): + """ + **[Required]** Gets the listener_port of this DistributedAutonomousDatabaseSummary. + The listener port number for the Globally distributed autonomous database. + + + :return: The listener_port of this DistributedAutonomousDatabaseSummary. + :rtype: int + """ + return self._listener_port + + @listener_port.setter + def listener_port(self, listener_port): + """ + Sets the listener_port of this DistributedAutonomousDatabaseSummary. + The listener port number for the Globally distributed autonomous database. + + + :param listener_port: The listener_port of this DistributedAutonomousDatabaseSummary. + :type: int + """ + self._listener_port = listener_port + + @property + def listener_port_tls(self): + """ + Gets the listener_port_tls of this DistributedAutonomousDatabaseSummary. + The TLS listener port number for the Globally distributed autonomous database. + + + :return: The listener_port_tls of this DistributedAutonomousDatabaseSummary. + :rtype: int + """ + return self._listener_port_tls + + @listener_port_tls.setter + def listener_port_tls(self, listener_port_tls): + """ + Sets the listener_port_tls of this DistributedAutonomousDatabaseSummary. + The TLS listener port number for the Globally distributed autonomous database. + + + :param listener_port_tls: The listener_port_tls of this DistributedAutonomousDatabaseSummary. + :type: int + """ + self._listener_port_tls = listener_port_tls + + @property + def ons_port_local(self): + """ + **[Required]** Gets the ons_port_local of this DistributedAutonomousDatabaseSummary. + Ons local port number for the Globally distributed autonomous database. + + + :return: The ons_port_local of this DistributedAutonomousDatabaseSummary. + :rtype: int + """ + return self._ons_port_local + + @ons_port_local.setter + def ons_port_local(self, ons_port_local): + """ + Sets the ons_port_local of this DistributedAutonomousDatabaseSummary. + Ons local port number for the Globally distributed autonomous database. + + + :param ons_port_local: The ons_port_local of this DistributedAutonomousDatabaseSummary. + :type: int + """ + self._ons_port_local = ons_port_local + + @property + def ons_port_remote(self): + """ + **[Required]** Gets the ons_port_remote of this DistributedAutonomousDatabaseSummary. + Ons remote port number for the Globally distributed autonomous database. + + + :return: The ons_port_remote of this DistributedAutonomousDatabaseSummary. + :rtype: int + """ + return self._ons_port_remote + + @ons_port_remote.setter + def ons_port_remote(self, ons_port_remote): + """ + Sets the ons_port_remote of this DistributedAutonomousDatabaseSummary. + Ons remote port number for the Globally distributed autonomous database. + + + :param ons_port_remote: The ons_port_remote of this DistributedAutonomousDatabaseSummary. + :type: int + """ + self._ons_port_remote = ons_port_remote + + @property + def system_chunk_count(self): + """ + Gets the system_chunk_count of this DistributedAutonomousDatabaseSummary. + Count of chunks associated with system raft clusters or system data guard databases. + + + :return: The system_chunk_count of this DistributedAutonomousDatabaseSummary. + :rtype: int + """ + return self._system_chunk_count + + @system_chunk_count.setter + def system_chunk_count(self, system_chunk_count): + """ + Sets the system_chunk_count of this DistributedAutonomousDatabaseSummary. + Count of chunks associated with system raft clusters or system data guard databases. + + + :param system_chunk_count: The system_chunk_count of this DistributedAutonomousDatabaseSummary. + :type: int + """ + self._system_chunk_count = system_chunk_count + + @property + def auto_resource_management_config(self): + """ + Gets the auto_resource_management_config of this DistributedAutonomousDatabaseSummary. + + :return: The auto_resource_management_config of this DistributedAutonomousDatabaseSummary. + :rtype: oci.distributed_database_v26.models.AutoResourceManagementConfigurationDetails + """ + return self._auto_resource_management_config + + @auto_resource_management_config.setter + def auto_resource_management_config(self, auto_resource_management_config): + """ + Sets the auto_resource_management_config of this DistributedAutonomousDatabaseSummary. + + :param auto_resource_management_config: The auto_resource_management_config of this DistributedAutonomousDatabaseSummary. + :type: oci.distributed_database_v26.models.AutoResourceManagementConfigurationDetails + """ + self._auto_resource_management_config = auto_resource_management_config + + @property + def system_raft_replication_unit_count(self): + """ + Gets the system_raft_replication_unit_count of this DistributedAutonomousDatabaseSummary. + Number of replication units associated with system raft clusters. + + + :return: The system_raft_replication_unit_count of this DistributedAutonomousDatabaseSummary. + :rtype: int + """ + return self._system_raft_replication_unit_count + + @system_raft_replication_unit_count.setter + def system_raft_replication_unit_count(self, system_raft_replication_unit_count): + """ + Sets the system_raft_replication_unit_count of this DistributedAutonomousDatabaseSummary. + Number of replication units associated with system raft clusters. + + + :param system_raft_replication_unit_count: The system_raft_replication_unit_count of this DistributedAutonomousDatabaseSummary. + :type: int + """ + self._system_raft_replication_unit_count = system_raft_replication_unit_count + + @property + def metadata(self): + """ + Gets the metadata of this DistributedAutonomousDatabaseSummary. + + :return: The metadata of this DistributedAutonomousDatabaseSummary. + :rtype: oci.distributed_database_v26.models.DistributedAutonomousDbMetadata + """ + return self._metadata + + @metadata.setter + def metadata(self, metadata): + """ + Sets the metadata of this DistributedAutonomousDatabaseSummary. + + :param metadata: The metadata of this DistributedAutonomousDatabaseSummary. + :type: oci.distributed_database_v26.models.DistributedAutonomousDbMetadata + """ + self._metadata = metadata + + @property + def sharding_method(self): + """ + **[Required]** Gets the sharding_method of this DistributedAutonomousDatabaseSummary. + Sharding methods for the Globally distributed autonomous database. + + Allowed values for this property are: "USER", "SYSTEM", "COMPOSITE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The sharding_method of this DistributedAutonomousDatabaseSummary. + :rtype: str + """ + return self._sharding_method + + @sharding_method.setter + def sharding_method(self, sharding_method): + """ + Sets the sharding_method of this DistributedAutonomousDatabaseSummary. + Sharding methods for the Globally distributed autonomous database. + + + :param sharding_method: The sharding_method of this DistributedAutonomousDatabaseSummary. + :type: str + """ + allowed_values = ["USER", "SYSTEM", "COMPOSITE"] + if not value_allowed_none_or_none_sentinel(sharding_method, allowed_values): + sharding_method = 'UNKNOWN_ENUM_VALUE' + self._sharding_method = sharding_method + + @property + def replication_method(self): + """ + Gets the replication_method of this DistributedAutonomousDatabaseSummary. + The Replication method for Globally distributed Autonomous database. Use RAFT for Raft based replication. + With RAFT replication, shards cannot have peers details set on them. In case shards need to + have peers, please do not set RAFT replicationMethod. For all non RAFT replication cases (with or + without peers), please set replicationMethod as DG or do not set any value for replicationMethod. + + Allowed values for this property are: "RAFT", "DG", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The replication_method of this DistributedAutonomousDatabaseSummary. + :rtype: str + """ + return self._replication_method + + @replication_method.setter + def replication_method(self, replication_method): + """ + Sets the replication_method of this DistributedAutonomousDatabaseSummary. + The Replication method for Globally distributed Autonomous database. Use RAFT for Raft based replication. + With RAFT replication, shards cannot have peers details set on them. In case shards need to + have peers, please do not set RAFT replicationMethod. For all non RAFT replication cases (with or + without peers), please set replicationMethod as DG or do not set any value for replicationMethod. + + + :param replication_method: The replication_method of this DistributedAutonomousDatabaseSummary. + :type: str + """ + allowed_values = ["RAFT", "DG"] + if not value_allowed_none_or_none_sentinel(replication_method, allowed_values): + replication_method = 'UNKNOWN_ENUM_VALUE' + self._replication_method = replication_method + + @property + def db_deployment_type(self): + """ + **[Required]** Gets the db_deployment_type of this DistributedAutonomousDatabaseSummary. + The distributed autonomous database deployment type. + + Allowed values for this property are: "ADB_D", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The db_deployment_type of this DistributedAutonomousDatabaseSummary. + :rtype: str + """ + return self._db_deployment_type + + @db_deployment_type.setter + def db_deployment_type(self, db_deployment_type): + """ + Sets the db_deployment_type of this DistributedAutonomousDatabaseSummary. + The distributed autonomous database deployment type. + + + :param db_deployment_type: The db_deployment_type of this DistributedAutonomousDatabaseSummary. + :type: str + """ + allowed_values = ["ADB_D"] + if not value_allowed_none_or_none_sentinel(db_deployment_type, allowed_values): + db_deployment_type = 'UNKNOWN_ENUM_VALUE' + self._db_deployment_type = db_deployment_type + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this DistributedAutonomousDatabaseSummary. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this DistributedAutonomousDatabaseSummary. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this DistributedAutonomousDatabaseSummary. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this DistributedAutonomousDatabaseSummary. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this DistributedAutonomousDatabaseSummary. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this DistributedAutonomousDatabaseSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this DistributedAutonomousDatabaseSummary. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this DistributedAutonomousDatabaseSummary. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def system_tags(self): + """ + Gets the system_tags of this DistributedAutonomousDatabaseSummary. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :return: The system_tags of this DistributedAutonomousDatabaseSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this DistributedAutonomousDatabaseSummary. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :param system_tags: The system_tags of this DistributedAutonomousDatabaseSummary. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_autonomous_db_backup_config.py b/src/oci/distributed_database_v26/models/distributed_autonomous_db_backup_config.py new file mode 100644 index 0000000000..a9ae26d2f7 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_autonomous_db_backup_config.py @@ -0,0 +1,105 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedAutonomousDbBackupConfig(object): + """ + Backup options for the Distributed Autonomous Database. + """ + + def __init__(self, **kwargs): + """ + Initializes a new DistributedAutonomousDbBackupConfig object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param backup_destination_details: + The value to assign to the backup_destination_details property of this DistributedAutonomousDbBackupConfig. + :type backup_destination_details: list[oci.distributed_database_v26.models.DistributedAutonomousDbBackupDestination] + + :param recovery_window_in_days: + The value to assign to the recovery_window_in_days property of this DistributedAutonomousDbBackupConfig. + :type recovery_window_in_days: int + + """ + self.swagger_types = { + 'backup_destination_details': 'list[DistributedAutonomousDbBackupDestination]', + 'recovery_window_in_days': 'int' + } + self.attribute_map = { + 'backup_destination_details': 'backupDestinationDetails', + 'recovery_window_in_days': 'recoveryWindowInDays' + } + self._backup_destination_details = None + self._recovery_window_in_days = None + + @property + def backup_destination_details(self): + """ + Gets the backup_destination_details of this DistributedAutonomousDbBackupConfig. + Backup destination details. + + + :return: The backup_destination_details of this DistributedAutonomousDbBackupConfig. + :rtype: list[oci.distributed_database_v26.models.DistributedAutonomousDbBackupDestination] + """ + return self._backup_destination_details + + @backup_destination_details.setter + def backup_destination_details(self, backup_destination_details): + """ + Sets the backup_destination_details of this DistributedAutonomousDbBackupConfig. + Backup destination details. + + + :param backup_destination_details: The backup_destination_details of this DistributedAutonomousDbBackupConfig. + :type: list[oci.distributed_database_v26.models.DistributedAutonomousDbBackupDestination] + """ + self._backup_destination_details = backup_destination_details + + @property + def recovery_window_in_days(self): + """ + Gets the recovery_window_in_days of this DistributedAutonomousDbBackupConfig. + Number of days between the current and the earliest point of recoverability covered by automatic backups. + This value applies to automatic backups. When the value is updated, it is applied to all existing automatic backups. + If the number of specified days is 0 then there will be no backups. + + + :return: The recovery_window_in_days of this DistributedAutonomousDbBackupConfig. + :rtype: int + """ + return self._recovery_window_in_days + + @recovery_window_in_days.setter + def recovery_window_in_days(self, recovery_window_in_days): + """ + Sets the recovery_window_in_days of this DistributedAutonomousDbBackupConfig. + Number of days between the current and the earliest point of recoverability covered by automatic backups. + This value applies to automatic backups. When the value is updated, it is applied to all existing automatic backups. + If the number of specified days is 0 then there will be no backups. + + + :param recovery_window_in_days: The recovery_window_in_days of this DistributedAutonomousDbBackupConfig. + :type: int + """ + self._recovery_window_in_days = recovery_window_in_days + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_autonomous_db_backup_destination.py b/src/oci/distributed_database_v26/models/distributed_autonomous_db_backup_destination.py new file mode 100644 index 0000000000..42ef15952f --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_autonomous_db_backup_destination.py @@ -0,0 +1,265 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedAutonomousDbBackupDestination(object): + """ + Backup destination details + """ + + #: A constant which can be used with the type property of a DistributedAutonomousDbBackupDestination. + #: This constant has a value of "NFS" + TYPE_NFS = "NFS" + + #: A constant which can be used with the type property of a DistributedAutonomousDbBackupDestination. + #: This constant has a value of "OBJECT_STORE" + TYPE_OBJECT_STORE = "OBJECT_STORE" + + #: A constant which can be used with the type property of a DistributedAutonomousDbBackupDestination. + #: This constant has a value of "LOCAL" + TYPE_LOCAL = "LOCAL" + + #: A constant which can be used with the type property of a DistributedAutonomousDbBackupDestination. + #: This constant has a value of "DBRS" + TYPE_DBRS = "DBRS" + + def __init__(self, **kwargs): + """ + Initializes a new DistributedAutonomousDbBackupDestination object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param type: + The value to assign to the type property of this DistributedAutonomousDbBackupDestination. + Allowed values for this property are: "NFS", "OBJECT_STORE", "LOCAL", "DBRS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type type: str + + :param id: + The value to assign to the id property of this DistributedAutonomousDbBackupDestination. + :type id: str + + :param internet_proxy: + The value to assign to the internet_proxy property of this DistributedAutonomousDbBackupDestination. + :type internet_proxy: str + + :param dbrs_policy_id: + The value to assign to the dbrs_policy_id property of this DistributedAutonomousDbBackupDestination. + :type dbrs_policy_id: str + + :param is_remote: + The value to assign to the is_remote property of this DistributedAutonomousDbBackupDestination. + :type is_remote: bool + + :param remote_region: + The value to assign to the remote_region property of this DistributedAutonomousDbBackupDestination. + :type remote_region: str + + """ + self.swagger_types = { + 'type': 'str', + 'id': 'str', + 'internet_proxy': 'str', + 'dbrs_policy_id': 'str', + 'is_remote': 'bool', + 'remote_region': 'str' + } + self.attribute_map = { + 'type': 'type', + 'id': 'id', + 'internet_proxy': 'internetProxy', + 'dbrs_policy_id': 'dbrsPolicyId', + 'is_remote': 'isRemote', + 'remote_region': 'remoteRegion' + } + self._type = None + self._id = None + self._internet_proxy = None + self._dbrs_policy_id = None + self._is_remote = None + self._remote_region = None + + @property + def type(self): + """ + **[Required]** Gets the type of this DistributedAutonomousDbBackupDestination. + Type of the database backup destination. + + Allowed values for this property are: "NFS", "OBJECT_STORE", "LOCAL", "DBRS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The type of this DistributedAutonomousDbBackupDestination. + :rtype: str + """ + return self._type + + @type.setter + def type(self, type): + """ + Sets the type of this DistributedAutonomousDbBackupDestination. + Type of the database backup destination. + + + :param type: The type of this DistributedAutonomousDbBackupDestination. + :type: str + """ + allowed_values = ["NFS", "OBJECT_STORE", "LOCAL", "DBRS"] + if not value_allowed_none_or_none_sentinel(type, allowed_values): + type = 'UNKNOWN_ENUM_VALUE' + self._type = type + + @property + def id(self): + """ + Gets the id of this DistributedAutonomousDbBackupDestination. + The `OCID`__ of the backup destination. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this DistributedAutonomousDbBackupDestination. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this DistributedAutonomousDbBackupDestination. + The `OCID`__ of the backup destination. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this DistributedAutonomousDbBackupDestination. + :type: str + """ + self._id = id + + @property + def internet_proxy(self): + """ + Gets the internet_proxy of this DistributedAutonomousDbBackupDestination. + Proxy URL to connect to object store. + + + :return: The internet_proxy of this DistributedAutonomousDbBackupDestination. + :rtype: str + """ + return self._internet_proxy + + @internet_proxy.setter + def internet_proxy(self, internet_proxy): + """ + Sets the internet_proxy of this DistributedAutonomousDbBackupDestination. + Proxy URL to connect to object store. + + + :param internet_proxy: The internet_proxy of this DistributedAutonomousDbBackupDestination. + :type: str + """ + self._internet_proxy = internet_proxy + + @property + def dbrs_policy_id(self): + """ + Gets the dbrs_policy_id of this DistributedAutonomousDbBackupDestination. + The `OCID`__ of the DBRS policy used for backup. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The dbrs_policy_id of this DistributedAutonomousDbBackupDestination. + :rtype: str + """ + return self._dbrs_policy_id + + @dbrs_policy_id.setter + def dbrs_policy_id(self, dbrs_policy_id): + """ + Sets the dbrs_policy_id of this DistributedAutonomousDbBackupDestination. + The `OCID`__ of the DBRS policy used for backup. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param dbrs_policy_id: The dbrs_policy_id of this DistributedAutonomousDbBackupDestination. + :type: str + """ + self._dbrs_policy_id = dbrs_policy_id + + @property + def is_remote(self): + """ + Gets the is_remote of this DistributedAutonomousDbBackupDestination. + Indicates whether the backup destination is cross-region or local region. + + + :return: The is_remote of this DistributedAutonomousDbBackupDestination. + :rtype: bool + """ + return self._is_remote + + @is_remote.setter + def is_remote(self, is_remote): + """ + Sets the is_remote of this DistributedAutonomousDbBackupDestination. + Indicates whether the backup destination is cross-region or local region. + + + :param is_remote: The is_remote of this DistributedAutonomousDbBackupDestination. + :type: bool + """ + self._is_remote = is_remote + + @property + def remote_region(self): + """ + Gets the remote_region of this DistributedAutonomousDbBackupDestination. + The name of the remote region where the remote automatic incremental backups will be stored. + For information about valid region names, see + `Regions and Availability Domains`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/regions.htm + + + :return: The remote_region of this DistributedAutonomousDbBackupDestination. + :rtype: str + """ + return self._remote_region + + @remote_region.setter + def remote_region(self, remote_region): + """ + Sets the remote_region of this DistributedAutonomousDbBackupDestination. + The name of the remote region where the remote automatic incremental backups will be stored. + For information about valid region names, see + `Regions and Availability Domains`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/regions.htm + + + :param remote_region: The remote_region of this DistributedAutonomousDbBackupDestination. + :type: str + """ + self._remote_region = remote_region + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_autonomous_db_metadata.py b/src/oci/distributed_database_v26/models/distributed_autonomous_db_metadata.py new file mode 100644 index 0000000000..5171f4d266 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_autonomous_db_metadata.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedAutonomousDbMetadata(object): + """ + Additional metadata related to Globally distributed autonomous database resources. + """ + + def __init__(self, **kwargs): + """ + Initializes a new DistributedAutonomousDbMetadata object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param map: + The value to assign to the map property of this DistributedAutonomousDbMetadata. + :type map: dict(str, str) + + """ + self.swagger_types = { + 'map': 'dict(str, str)' + } + self.attribute_map = { + 'map': 'map' + } + self._map = None + + @property + def map(self): + """ + Gets the map of this DistributedAutonomousDbMetadata. + The map containing key-value pair of additional metadata. + + + :return: The map of this DistributedAutonomousDbMetadata. + :rtype: dict(str, str) + """ + return self._map + + @map.setter + def map(self, map): + """ + Sets the map of this DistributedAutonomousDbMetadata. + The map containing key-value pair of additional metadata. + + + :param map: The map of this DistributedAutonomousDbMetadata. + :type: dict(str, str) + """ + self._map = map + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_database.py b/src/oci/distributed_database_v26/models/distributed_database.py new file mode 100644 index 0000000000..a8983dd30f --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_database.py @@ -0,0 +1,1404 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedDatabase(object): + """ + Globally distributed database. + """ + + #: A constant which can be used with the lifecycle_state property of a DistributedDatabase. + #: This constant has a value of "ACTIVE" + LIFECYCLE_STATE_ACTIVE = "ACTIVE" + + #: A constant which can be used with the lifecycle_state property of a DistributedDatabase. + #: This constant has a value of "FAILED" + LIFECYCLE_STATE_FAILED = "FAILED" + + #: A constant which can be used with the lifecycle_state property of a DistributedDatabase. + #: This constant has a value of "NEEDS_ATTENTION" + LIFECYCLE_STATE_NEEDS_ATTENTION = "NEEDS_ATTENTION" + + #: A constant which can be used with the lifecycle_state property of a DistributedDatabase. + #: This constant has a value of "INACTIVE" + LIFECYCLE_STATE_INACTIVE = "INACTIVE" + + #: A constant which can be used with the lifecycle_state property of a DistributedDatabase. + #: This constant has a value of "DELETING" + LIFECYCLE_STATE_DELETING = "DELETING" + + #: A constant which can be used with the lifecycle_state property of a DistributedDatabase. + #: This constant has a value of "DELETED" + LIFECYCLE_STATE_DELETED = "DELETED" + + #: A constant which can be used with the lifecycle_state property of a DistributedDatabase. + #: This constant has a value of "UPDATING" + LIFECYCLE_STATE_UPDATING = "UPDATING" + + #: A constant which can be used with the lifecycle_state property of a DistributedDatabase. + #: This constant has a value of "CREATING" + LIFECYCLE_STATE_CREATING = "CREATING" + + #: A constant which can be used with the sharding_method property of a DistributedDatabase. + #: This constant has a value of "USER" + SHARDING_METHOD_USER = "USER" + + #: A constant which can be used with the sharding_method property of a DistributedDatabase. + #: This constant has a value of "SYSTEM" + SHARDING_METHOD_SYSTEM = "SYSTEM" + + #: A constant which can be used with the sharding_method property of a DistributedDatabase. + #: This constant has a value of "COMPOSITE" + SHARDING_METHOD_COMPOSITE = "COMPOSITE" + + #: A constant which can be used with the replication_method property of a DistributedDatabase. + #: This constant has a value of "RAFT" + REPLICATION_METHOD_RAFT = "RAFT" + + #: A constant which can be used with the replication_method property of a DistributedDatabase. + #: This constant has a value of "DG" + REPLICATION_METHOD_DG = "DG" + + #: A constant which can be used with the db_deployment_type property of a DistributedDatabase. + #: This constant has a value of "EXADB" + DB_DEPLOYMENT_TYPE_EXADB = "EXADB" + + def __init__(self, **kwargs): + """ + Initializes a new DistributedDatabase object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this DistributedDatabase. + :type id: str + + :param compartment_id: + The value to assign to the compartment_id property of this DistributedDatabase. + :type compartment_id: str + + :param display_name: + The value to assign to the display_name property of this DistributedDatabase. + :type display_name: str + + :param time_created: + The value to assign to the time_created property of this DistributedDatabase. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this DistributedDatabase. + :type time_updated: datetime + + :param database_version: + The value to assign to the database_version property of this DistributedDatabase. + :type database_version: str + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this DistributedDatabase. + Allowed values for this property are: "ACTIVE", "FAILED", "NEEDS_ATTENTION", "INACTIVE", "DELETING", "DELETED", "UPDATING", "CREATING", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + :param sharding_method: + The value to assign to the sharding_method property of this DistributedDatabase. + Allowed values for this property are: "USER", "SYSTEM", "COMPOSITE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type sharding_method: str + + :param replication_method: + The value to assign to the replication_method property of this DistributedDatabase. + Allowed values for this property are: "RAFT", "DG", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type replication_method: str + + :param db_deployment_type: + The value to assign to the db_deployment_type property of this DistributedDatabase. + Allowed values for this property are: "EXADB", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type db_deployment_type: str + + :param lifecycle_details: + The value to assign to the lifecycle_details property of this DistributedDatabase. + :type lifecycle_details: str + + :param connection_strings: + The value to assign to the connection_strings property of this DistributedDatabase. + :type connection_strings: oci.distributed_database_v26.models.DistributedDbConnectionString + + :param prefix: + The value to assign to the prefix property of this DistributedDatabase. + :type prefix: str + + :param private_endpoint_ids: + The value to assign to the private_endpoint_ids property of this DistributedDatabase. + :type private_endpoint_ids: list[str] + + :param notification_topic_ids: + The value to assign to the notification_topic_ids property of this DistributedDatabase. + :type notification_topic_ids: list[str] + + :param latest_gsm_image_details: + The value to assign to the latest_gsm_image_details property of this DistributedDatabase. + :type latest_gsm_image_details: oci.distributed_database_v26.models.DistributedDbGsmImage + + :param character_set: + The value to assign to the character_set property of this DistributedDatabase. + :type character_set: str + + :param ncharacter_set: + The value to assign to the ncharacter_set property of this DistributedDatabase. + :type ncharacter_set: str + + :param listener_port: + The value to assign to the listener_port property of this DistributedDatabase. + :type listener_port: int + + :param listener_port_tls: + The value to assign to the listener_port_tls property of this DistributedDatabase. + :type listener_port_tls: int + + :param ons_port_local: + The value to assign to the ons_port_local property of this DistributedDatabase. + :type ons_port_local: int + + :param ons_port_remote: + The value to assign to the ons_port_remote property of this DistributedDatabase. + :type ons_port_remote: int + + :param scan_listener_port: + The value to assign to the scan_listener_port property of this DistributedDatabase. + :type scan_listener_port: int + + :param system_chunk_count: + The value to assign to the system_chunk_count property of this DistributedDatabase. + :type system_chunk_count: int + + :param system_raft_replication_unit_count: + The value to assign to the system_raft_replication_unit_count property of this DistributedDatabase. + :type system_raft_replication_unit_count: int + + :param composite_raft_shard_spaces: + The value to assign to the composite_raft_shard_spaces property of this DistributedDatabase. + :type composite_raft_shard_spaces: list[oci.distributed_database_v26.models.CompositeRaftShardSpace] + + :param composite_data_guard_shard_spaces: + The value to assign to the composite_data_guard_shard_spaces property of this DistributedDatabase. + :type composite_data_guard_shard_spaces: list[oci.distributed_database_v26.models.CompositeDataGuardShardSpace] + + :param system_raft_clusters: + The value to assign to the system_raft_clusters property of this DistributedDatabase. + :type system_raft_clusters: list[oci.distributed_database_v26.models.SystemRaftCluster] + + :param system_data_guard_databases: + The value to assign to the system_data_guard_databases property of this DistributedDatabase. + :type system_data_guard_databases: oci.distributed_database_v26.models.SystemDataGuardDatabase + + :param user_shard_spaces: + The value to assign to the user_shard_spaces property of this DistributedDatabase. + :type user_shard_spaces: list[oci.distributed_database_v26.models.UserShardSpace] + + :param catalog_details: + The value to assign to the catalog_details property of this DistributedDatabase. + :type catalog_details: list[oci.distributed_database_v26.models.DistributedDatabaseCatalog] + + :param gsm_details: + The value to assign to the gsm_details property of this DistributedDatabase. + :type gsm_details: list[oci.distributed_database_v26.models.DistributedDatabaseGsm] + + :param gds_control_node_details: + The value to assign to the gds_control_node_details property of this DistributedDatabase. + :type gds_control_node_details: list[oci.distributed_database_v26.models.DistributedDatabaseGdsControlNode] + + :param db_backup_config: + The value to assign to the db_backup_config property of this DistributedDatabase. + :type db_backup_config: oci.distributed_database_v26.models.DistributedDbBackupConfig + + :param auto_resource_management_config: + The value to assign to the auto_resource_management_config property of this DistributedDatabase. + :type auto_resource_management_config: oci.distributed_database_v26.models.AutoResourceManagementConfigurationDetails + + :param gsm_ssh_public_key: + The value to assign to the gsm_ssh_public_key property of this DistributedDatabase. + :type gsm_ssh_public_key: str + + :param vcn_nsg_ids: + The value to assign to the vcn_nsg_ids property of this DistributedDatabase. + :type vcn_nsg_ids: list[oci.distributed_database_v26.models.VcnNsgIdsDetails] + + :param metadata: + The value to assign to the metadata property of this DistributedDatabase. + :type metadata: oci.distributed_database_v26.models.DistributedDbMetadata + + :param freeform_tags: + The value to assign to the freeform_tags property of this DistributedDatabase. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this DistributedDatabase. + :type defined_tags: dict(str, dict(str, object)) + + :param system_tags: + The value to assign to the system_tags property of this DistributedDatabase. + :type system_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'id': 'str', + 'compartment_id': 'str', + 'display_name': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'database_version': 'str', + 'lifecycle_state': 'str', + 'sharding_method': 'str', + 'replication_method': 'str', + 'db_deployment_type': 'str', + 'lifecycle_details': 'str', + 'connection_strings': 'DistributedDbConnectionString', + 'prefix': 'str', + 'private_endpoint_ids': 'list[str]', + 'notification_topic_ids': 'list[str]', + 'latest_gsm_image_details': 'DistributedDbGsmImage', + 'character_set': 'str', + 'ncharacter_set': 'str', + 'listener_port': 'int', + 'listener_port_tls': 'int', + 'ons_port_local': 'int', + 'ons_port_remote': 'int', + 'scan_listener_port': 'int', + 'system_chunk_count': 'int', + 'system_raft_replication_unit_count': 'int', + 'composite_raft_shard_spaces': 'list[CompositeRaftShardSpace]', + 'composite_data_guard_shard_spaces': 'list[CompositeDataGuardShardSpace]', + 'system_raft_clusters': 'list[SystemRaftCluster]', + 'system_data_guard_databases': 'SystemDataGuardDatabase', + 'user_shard_spaces': 'list[UserShardSpace]', + 'catalog_details': 'list[DistributedDatabaseCatalog]', + 'gsm_details': 'list[DistributedDatabaseGsm]', + 'gds_control_node_details': 'list[DistributedDatabaseGdsControlNode]', + 'db_backup_config': 'DistributedDbBackupConfig', + 'auto_resource_management_config': 'AutoResourceManagementConfigurationDetails', + 'gsm_ssh_public_key': 'str', + 'vcn_nsg_ids': 'list[VcnNsgIdsDetails]', + 'metadata': 'DistributedDbMetadata', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'id': 'id', + 'compartment_id': 'compartmentId', + 'display_name': 'displayName', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'database_version': 'databaseVersion', + 'lifecycle_state': 'lifecycleState', + 'sharding_method': 'shardingMethod', + 'replication_method': 'replicationMethod', + 'db_deployment_type': 'dbDeploymentType', + 'lifecycle_details': 'lifecycleDetails', + 'connection_strings': 'connectionStrings', + 'prefix': 'prefix', + 'private_endpoint_ids': 'privateEndpointIds', + 'notification_topic_ids': 'notificationTopicIds', + 'latest_gsm_image_details': 'latestGsmImageDetails', + 'character_set': 'characterSet', + 'ncharacter_set': 'ncharacterSet', + 'listener_port': 'listenerPort', + 'listener_port_tls': 'listenerPortTls', + 'ons_port_local': 'onsPortLocal', + 'ons_port_remote': 'onsPortRemote', + 'scan_listener_port': 'scanListenerPort', + 'system_chunk_count': 'systemChunkCount', + 'system_raft_replication_unit_count': 'systemRaftReplicationUnitCount', + 'composite_raft_shard_spaces': 'compositeRaftShardSpaces', + 'composite_data_guard_shard_spaces': 'compositeDataGuardShardSpaces', + 'system_raft_clusters': 'systemRaftClusters', + 'system_data_guard_databases': 'systemDataGuardDatabases', + 'user_shard_spaces': 'userShardSpaces', + 'catalog_details': 'catalogDetails', + 'gsm_details': 'gsmDetails', + 'gds_control_node_details': 'gdsControlNodeDetails', + 'db_backup_config': 'dbBackupConfig', + 'auto_resource_management_config': 'autoResourceManagementConfig', + 'gsm_ssh_public_key': 'gsmSshPublicKey', + 'vcn_nsg_ids': 'vcnNsgIds', + 'metadata': 'metadata', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags' + } + self._id = None + self._compartment_id = None + self._display_name = None + self._time_created = None + self._time_updated = None + self._database_version = None + self._lifecycle_state = None + self._sharding_method = None + self._replication_method = None + self._db_deployment_type = None + self._lifecycle_details = None + self._connection_strings = None + self._prefix = None + self._private_endpoint_ids = None + self._notification_topic_ids = None + self._latest_gsm_image_details = None + self._character_set = None + self._ncharacter_set = None + self._listener_port = None + self._listener_port_tls = None + self._ons_port_local = None + self._ons_port_remote = None + self._scan_listener_port = None + self._system_chunk_count = None + self._system_raft_replication_unit_count = None + self._composite_raft_shard_spaces = None + self._composite_data_guard_shard_spaces = None + self._system_raft_clusters = None + self._system_data_guard_databases = None + self._user_shard_spaces = None + self._catalog_details = None + self._gsm_details = None + self._gds_control_node_details = None + self._db_backup_config = None + self._auto_resource_management_config = None + self._gsm_ssh_public_key = None + self._vcn_nsg_ids = None + self._metadata = None + self._freeform_tags = None + self._defined_tags = None + self._system_tags = None + + @property + def id(self): + """ + **[Required]** Gets the id of this DistributedDatabase. + The `OCID`__ of the Globally distributed database. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this DistributedDatabase. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this DistributedDatabase. + The `OCID`__ of the Globally distributed database. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this DistributedDatabase. + :type: str + """ + self._id = id + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this DistributedDatabase. + The `OCID`__ of the Globally distributed database compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this DistributedDatabase. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this DistributedDatabase. + The `OCID`__ of the Globally distributed database compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this DistributedDatabase. + :type: str + """ + self._compartment_id = compartment_id + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this DistributedDatabase. + The display name of the Globally distributed database. + + + :return: The display_name of this DistributedDatabase. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this DistributedDatabase. + The display name of the Globally distributed database. + + + :param display_name: The display_name of this DistributedDatabase. + :type: str + """ + self._display_name = display_name + + @property + def time_created(self): + """ + **[Required]** Gets the time_created of this DistributedDatabase. + The time the Globally distributed database was created. An RFC3339 formatted datetime string. + + + :return: The time_created of this DistributedDatabase. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this DistributedDatabase. + The time the Globally distributed database was created. An RFC3339 formatted datetime string. + + + :param time_created: The time_created of this DistributedDatabase. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + **[Required]** Gets the time_updated of this DistributedDatabase. + The time the Globally distributed database was last updated. An RFC3339 formatted datetime string. + + + :return: The time_updated of this DistributedDatabase. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this DistributedDatabase. + The time the Globally distributed database was last updated. An RFC3339 formatted datetime string. + + + :param time_updated: The time_updated of this DistributedDatabase. + :type: datetime + """ + self._time_updated = time_updated + + @property + def database_version(self): + """ + **[Required]** Gets the database_version of this DistributedDatabase. + Oracle Database version for the shards and catalog used in Globally distributed database. + + + :return: The database_version of this DistributedDatabase. + :rtype: str + """ + return self._database_version + + @database_version.setter + def database_version(self, database_version): + """ + Sets the database_version of this DistributedDatabase. + Oracle Database version for the shards and catalog used in Globally distributed database. + + + :param database_version: The database_version of this DistributedDatabase. + :type: str + """ + self._database_version = database_version + + @property + def lifecycle_state(self): + """ + **[Required]** Gets the lifecycle_state of this DistributedDatabase. + Lifecycle states for the Globally distributed database. + + Allowed values for this property are: "ACTIVE", "FAILED", "NEEDS_ATTENTION", "INACTIVE", "DELETING", "DELETED", "UPDATING", "CREATING", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this DistributedDatabase. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this DistributedDatabase. + Lifecycle states for the Globally distributed database. + + + :param lifecycle_state: The lifecycle_state of this DistributedDatabase. + :type: str + """ + allowed_values = ["ACTIVE", "FAILED", "NEEDS_ATTENTION", "INACTIVE", "DELETING", "DELETED", "UPDATING", "CREATING"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + + @property + def sharding_method(self): + """ + **[Required]** Gets the sharding_method of this DistributedDatabase. + Sharding methods for the Globally distributed database. + + Allowed values for this property are: "USER", "SYSTEM", "COMPOSITE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The sharding_method of this DistributedDatabase. + :rtype: str + """ + return self._sharding_method + + @sharding_method.setter + def sharding_method(self, sharding_method): + """ + Sets the sharding_method of this DistributedDatabase. + Sharding methods for the Globally distributed database. + + + :param sharding_method: The sharding_method of this DistributedDatabase. + :type: str + """ + allowed_values = ["USER", "SYSTEM", "COMPOSITE"] + if not value_allowed_none_or_none_sentinel(sharding_method, allowed_values): + sharding_method = 'UNKNOWN_ENUM_VALUE' + self._sharding_method = sharding_method + + @property + def replication_method(self): + """ + Gets the replication_method of this DistributedDatabase. + The Replication method for Globally distributed database. Use RAFT for Raft based replication. + With RAFT replication, shards cannot have peers details set on them. In case shards need to + have peers, please do not set RAFT replicationMethod. For all non RAFT replication cases (with or + without peers), please set replicationMethod as DG or do not set any value for replicationMethod. + + Allowed values for this property are: "RAFT", "DG", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The replication_method of this DistributedDatabase. + :rtype: str + """ + return self._replication_method + + @replication_method.setter + def replication_method(self, replication_method): + """ + Sets the replication_method of this DistributedDatabase. + The Replication method for Globally distributed database. Use RAFT for Raft based replication. + With RAFT replication, shards cannot have peers details set on them. In case shards need to + have peers, please do not set RAFT replicationMethod. For all non RAFT replication cases (with or + without peers), please set replicationMethod as DG or do not set any value for replicationMethod. + + + :param replication_method: The replication_method of this DistributedDatabase. + :type: str + """ + allowed_values = ["RAFT", "DG"] + if not value_allowed_none_or_none_sentinel(replication_method, allowed_values): + replication_method = 'UNKNOWN_ENUM_VALUE' + self._replication_method = replication_method + + @property + def db_deployment_type(self): + """ + **[Required]** Gets the db_deployment_type of this DistributedDatabase. + The distributed database deployment type. + + Allowed values for this property are: "EXADB", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The db_deployment_type of this DistributedDatabase. + :rtype: str + """ + return self._db_deployment_type + + @db_deployment_type.setter + def db_deployment_type(self, db_deployment_type): + """ + Sets the db_deployment_type of this DistributedDatabase. + The distributed database deployment type. + + + :param db_deployment_type: The db_deployment_type of this DistributedDatabase. + :type: str + """ + allowed_values = ["EXADB"] + if not value_allowed_none_or_none_sentinel(db_deployment_type, allowed_values): + db_deployment_type = 'UNKNOWN_ENUM_VALUE' + self._db_deployment_type = db_deployment_type + + @property + def lifecycle_details(self): + """ + **[Required]** Gets the lifecycle_details of this DistributedDatabase. + The lifecycleDetails for the Globally distributed database. + + + :return: The lifecycle_details of this DistributedDatabase. + :rtype: str + """ + return self._lifecycle_details + + @lifecycle_details.setter + def lifecycle_details(self, lifecycle_details): + """ + Sets the lifecycle_details of this DistributedDatabase. + The lifecycleDetails for the Globally distributed database. + + + :param lifecycle_details: The lifecycle_details of this DistributedDatabase. + :type: str + """ + self._lifecycle_details = lifecycle_details + + @property + def connection_strings(self): + """ + Gets the connection_strings of this DistributedDatabase. + + :return: The connection_strings of this DistributedDatabase. + :rtype: oci.distributed_database_v26.models.DistributedDbConnectionString + """ + return self._connection_strings + + @connection_strings.setter + def connection_strings(self, connection_strings): + """ + Sets the connection_strings of this DistributedDatabase. + + :param connection_strings: The connection_strings of this DistributedDatabase. + :type: oci.distributed_database_v26.models.DistributedDbConnectionString + """ + self._connection_strings = connection_strings + + @property + def prefix(self): + """ + **[Required]** Gets the prefix of this DistributedDatabase. + Unique name prefix for the Globally distributed databases. Only alpha-numeric values are allowed. First character + has to be a letter followed by any combination of letter and number. + + + :return: The prefix of this DistributedDatabase. + :rtype: str + """ + return self._prefix + + @prefix.setter + def prefix(self, prefix): + """ + Sets the prefix of this DistributedDatabase. + Unique name prefix for the Globally distributed databases. Only alpha-numeric values are allowed. First character + has to be a letter followed by any combination of letter and number. + + + :param prefix: The prefix of this DistributedDatabase. + :type: str + """ + self._prefix = prefix + + @property + def private_endpoint_ids(self): + """ + **[Required]** Gets the private_endpoint_ids of this DistributedDatabase. + The collection of `OCID`__ of the private endpoint associated with Globally distributed autonomous database. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The private_endpoint_ids of this DistributedDatabase. + :rtype: list[str] + """ + return self._private_endpoint_ids + + @private_endpoint_ids.setter + def private_endpoint_ids(self, private_endpoint_ids): + """ + Sets the private_endpoint_ids of this DistributedDatabase. + The collection of `OCID`__ of the private endpoint associated with Globally distributed autonomous database. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param private_endpoint_ids: The private_endpoint_ids of this DistributedDatabase. + :type: list[str] + """ + self._private_endpoint_ids = private_endpoint_ids + + @property + def notification_topic_ids(self): + """ + Gets the notification_topic_ids of this DistributedDatabase. + The collection of `OCID`__ for the notification topics associated with the globally distributed database. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The notification_topic_ids of this DistributedDatabase. + :rtype: list[str] + """ + return self._notification_topic_ids + + @notification_topic_ids.setter + def notification_topic_ids(self, notification_topic_ids): + """ + Sets the notification_topic_ids of this DistributedDatabase. + The collection of `OCID`__ for the notification topics associated with the globally distributed database. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param notification_topic_ids: The notification_topic_ids of this DistributedDatabase. + :type: list[str] + """ + self._notification_topic_ids = notification_topic_ids + + @property + def latest_gsm_image_details(self): + """ + Gets the latest_gsm_image_details of this DistributedDatabase. + + :return: The latest_gsm_image_details of this DistributedDatabase. + :rtype: oci.distributed_database_v26.models.DistributedDbGsmImage + """ + return self._latest_gsm_image_details + + @latest_gsm_image_details.setter + def latest_gsm_image_details(self, latest_gsm_image_details): + """ + Sets the latest_gsm_image_details of this DistributedDatabase. + + :param latest_gsm_image_details: The latest_gsm_image_details of this DistributedDatabase. + :type: oci.distributed_database_v26.models.DistributedDbGsmImage + """ + self._latest_gsm_image_details = latest_gsm_image_details + + @property + def character_set(self): + """ + **[Required]** Gets the character_set of this DistributedDatabase. + The character set for the database. + + + :return: The character_set of this DistributedDatabase. + :rtype: str + """ + return self._character_set + + @character_set.setter + def character_set(self, character_set): + """ + Sets the character_set of this DistributedDatabase. + The character set for the database. + + + :param character_set: The character_set of this DistributedDatabase. + :type: str + """ + self._character_set = character_set + + @property + def ncharacter_set(self): + """ + **[Required]** Gets the ncharacter_set of this DistributedDatabase. + The national character set for the database. + + + :return: The ncharacter_set of this DistributedDatabase. + :rtype: str + """ + return self._ncharacter_set + + @ncharacter_set.setter + def ncharacter_set(self, ncharacter_set): + """ + Sets the ncharacter_set of this DistributedDatabase. + The national character set for the database. + + + :param ncharacter_set: The ncharacter_set of this DistributedDatabase. + :type: str + """ + self._ncharacter_set = ncharacter_set + + @property + def listener_port(self): + """ + **[Required]** Gets the listener_port of this DistributedDatabase. + The Global service manager listener port number for the Globally distributed database. + + + :return: The listener_port of this DistributedDatabase. + :rtype: int + """ + return self._listener_port + + @listener_port.setter + def listener_port(self, listener_port): + """ + Sets the listener_port of this DistributedDatabase. + The Global service manager listener port number for the Globally distributed database. + + + :param listener_port: The listener_port of this DistributedDatabase. + :type: int + """ + self._listener_port = listener_port + + @property + def listener_port_tls(self): + """ + Gets the listener_port_tls of this DistributedDatabase. + The TLS listener port number for Globally distributed database. + + + :return: The listener_port_tls of this DistributedDatabase. + :rtype: int + """ + return self._listener_port_tls + + @listener_port_tls.setter + def listener_port_tls(self, listener_port_tls): + """ + Sets the listener_port_tls of this DistributedDatabase. + The TLS listener port number for Globally distributed database. + + + :param listener_port_tls: The listener_port_tls of this DistributedDatabase. + :type: int + """ + self._listener_port_tls = listener_port_tls + + @property + def ons_port_local(self): + """ + **[Required]** Gets the ons_port_local of this DistributedDatabase. + Ons local port number. + + + :return: The ons_port_local of this DistributedDatabase. + :rtype: int + """ + return self._ons_port_local + + @ons_port_local.setter + def ons_port_local(self, ons_port_local): + """ + Sets the ons_port_local of this DistributedDatabase. + Ons local port number. + + + :param ons_port_local: The ons_port_local of this DistributedDatabase. + :type: int + """ + self._ons_port_local = ons_port_local + + @property + def ons_port_remote(self): + """ + **[Required]** Gets the ons_port_remote of this DistributedDatabase. + Ons remote port number. + + + :return: The ons_port_remote of this DistributedDatabase. + :rtype: int + """ + return self._ons_port_remote + + @ons_port_remote.setter + def ons_port_remote(self, ons_port_remote): + """ + Sets the ons_port_remote of this DistributedDatabase. + Ons remote port number. + + + :param ons_port_remote: The ons_port_remote of this DistributedDatabase. + :type: int + """ + self._ons_port_remote = ons_port_remote + + @property + def scan_listener_port(self): + """ + Gets the scan_listener_port of this DistributedDatabase. + The TCP SCAN listener port for database clusters with source type XS_NEW_VAULT_AND_CLUSTER or XS_NEW_CLUSTER. + + + :return: The scan_listener_port of this DistributedDatabase. + :rtype: int + """ + return self._scan_listener_port + + @scan_listener_port.setter + def scan_listener_port(self, scan_listener_port): + """ + Sets the scan_listener_port of this DistributedDatabase. + The TCP SCAN listener port for database clusters with source type XS_NEW_VAULT_AND_CLUSTER or XS_NEW_CLUSTER. + + + :param scan_listener_port: The scan_listener_port of this DistributedDatabase. + :type: int + """ + self._scan_listener_port = scan_listener_port + + @property + def system_chunk_count(self): + """ + Gets the system_chunk_count of this DistributedDatabase. + Count of chunks associated with system raft clusters or system data guard databases. + + + :return: The system_chunk_count of this DistributedDatabase. + :rtype: int + """ + return self._system_chunk_count + + @system_chunk_count.setter + def system_chunk_count(self, system_chunk_count): + """ + Sets the system_chunk_count of this DistributedDatabase. + Count of chunks associated with system raft clusters or system data guard databases. + + + :param system_chunk_count: The system_chunk_count of this DistributedDatabase. + :type: int + """ + self._system_chunk_count = system_chunk_count + + @property + def system_raft_replication_unit_count(self): + """ + Gets the system_raft_replication_unit_count of this DistributedDatabase. + Number of replication units associated with system raft clusters. + + + :return: The system_raft_replication_unit_count of this DistributedDatabase. + :rtype: int + """ + return self._system_raft_replication_unit_count + + @system_raft_replication_unit_count.setter + def system_raft_replication_unit_count(self, system_raft_replication_unit_count): + """ + Sets the system_raft_replication_unit_count of this DistributedDatabase. + Number of replication units associated with system raft clusters. + + + :param system_raft_replication_unit_count: The system_raft_replication_unit_count of this DistributedDatabase. + :type: int + """ + self._system_raft_replication_unit_count = system_raft_replication_unit_count + + @property + def composite_raft_shard_spaces(self): + """ + Gets the composite_raft_shard_spaces of this DistributedDatabase. + Collection of composite raft shards. + + + :return: The composite_raft_shard_spaces of this DistributedDatabase. + :rtype: list[oci.distributed_database_v26.models.CompositeRaftShardSpace] + """ + return self._composite_raft_shard_spaces + + @composite_raft_shard_spaces.setter + def composite_raft_shard_spaces(self, composite_raft_shard_spaces): + """ + Sets the composite_raft_shard_spaces of this DistributedDatabase. + Collection of composite raft shards. + + + :param composite_raft_shard_spaces: The composite_raft_shard_spaces of this DistributedDatabase. + :type: list[oci.distributed_database_v26.models.CompositeRaftShardSpace] + """ + self._composite_raft_shard_spaces = composite_raft_shard_spaces + + @property + def composite_data_guard_shard_spaces(self): + """ + Gets the composite_data_guard_shard_spaces of this DistributedDatabase. + Collection of composite data guard shard spaces. + + + :return: The composite_data_guard_shard_spaces of this DistributedDatabase. + :rtype: list[oci.distributed_database_v26.models.CompositeDataGuardShardSpace] + """ + return self._composite_data_guard_shard_spaces + + @composite_data_guard_shard_spaces.setter + def composite_data_guard_shard_spaces(self, composite_data_guard_shard_spaces): + """ + Sets the composite_data_guard_shard_spaces of this DistributedDatabase. + Collection of composite data guard shard spaces. + + + :param composite_data_guard_shard_spaces: The composite_data_guard_shard_spaces of this DistributedDatabase. + :type: list[oci.distributed_database_v26.models.CompositeDataGuardShardSpace] + """ + self._composite_data_guard_shard_spaces = composite_data_guard_shard_spaces + + @property + def system_raft_clusters(self): + """ + Gets the system_raft_clusters of this DistributedDatabase. + Collection of system raft clusters. + + + :return: The system_raft_clusters of this DistributedDatabase. + :rtype: list[oci.distributed_database_v26.models.SystemRaftCluster] + """ + return self._system_raft_clusters + + @system_raft_clusters.setter + def system_raft_clusters(self, system_raft_clusters): + """ + Sets the system_raft_clusters of this DistributedDatabase. + Collection of system raft clusters. + + + :param system_raft_clusters: The system_raft_clusters of this DistributedDatabase. + :type: list[oci.distributed_database_v26.models.SystemRaftCluster] + """ + self._system_raft_clusters = system_raft_clusters + + @property + def system_data_guard_databases(self): + """ + Gets the system_data_guard_databases of this DistributedDatabase. + + :return: The system_data_guard_databases of this DistributedDatabase. + :rtype: oci.distributed_database_v26.models.SystemDataGuardDatabase + """ + return self._system_data_guard_databases + + @system_data_guard_databases.setter + def system_data_guard_databases(self, system_data_guard_databases): + """ + Sets the system_data_guard_databases of this DistributedDatabase. + + :param system_data_guard_databases: The system_data_guard_databases of this DistributedDatabase. + :type: oci.distributed_database_v26.models.SystemDataGuardDatabase + """ + self._system_data_guard_databases = system_data_guard_databases + + @property + def user_shard_spaces(self): + """ + Gets the user_shard_spaces of this DistributedDatabase. + Collection of user defined shard spaces. + + + :return: The user_shard_spaces of this DistributedDatabase. + :rtype: list[oci.distributed_database_v26.models.UserShardSpace] + """ + return self._user_shard_spaces + + @user_shard_spaces.setter + def user_shard_spaces(self, user_shard_spaces): + """ + Sets the user_shard_spaces of this DistributedDatabase. + Collection of user defined shard spaces. + + + :param user_shard_spaces: The user_shard_spaces of this DistributedDatabase. + :type: list[oci.distributed_database_v26.models.UserShardSpace] + """ + self._user_shard_spaces = user_shard_spaces + + @property + def catalog_details(self): + """ + Gets the catalog_details of this DistributedDatabase. + Catalog details associated with the distributed database. + + + :return: The catalog_details of this DistributedDatabase. + :rtype: list[oci.distributed_database_v26.models.DistributedDatabaseCatalog] + """ + return self._catalog_details + + @catalog_details.setter + def catalog_details(self, catalog_details): + """ + Sets the catalog_details of this DistributedDatabase. + Catalog details associated with the distributed database. + + + :param catalog_details: The catalog_details of this DistributedDatabase. + :type: list[oci.distributed_database_v26.models.DistributedDatabaseCatalog] + """ + self._catalog_details = catalog_details + + @property + def gsm_details(self): + """ + Gets the gsm_details of this DistributedDatabase. + Global Service Manager (GSM) instances associated with the distributed database. + + + :return: The gsm_details of this DistributedDatabase. + :rtype: list[oci.distributed_database_v26.models.DistributedDatabaseGsm] + """ + return self._gsm_details + + @gsm_details.setter + def gsm_details(self, gsm_details): + """ + Sets the gsm_details of this DistributedDatabase. + Global Service Manager (GSM) instances associated with the distributed database. + + + :param gsm_details: The gsm_details of this DistributedDatabase. + :type: list[oci.distributed_database_v26.models.DistributedDatabaseGsm] + """ + self._gsm_details = gsm_details + + @property + def gds_control_node_details(self): + """ + Gets the gds_control_node_details of this DistributedDatabase. + Global Database Services Control(GDS CTL) instances associated with the distributed database. + + + :return: The gds_control_node_details of this DistributedDatabase. + :rtype: list[oci.distributed_database_v26.models.DistributedDatabaseGdsControlNode] + """ + return self._gds_control_node_details + + @gds_control_node_details.setter + def gds_control_node_details(self, gds_control_node_details): + """ + Sets the gds_control_node_details of this DistributedDatabase. + Global Database Services Control(GDS CTL) instances associated with the distributed database. + + + :param gds_control_node_details: The gds_control_node_details of this DistributedDatabase. + :type: list[oci.distributed_database_v26.models.DistributedDatabaseGdsControlNode] + """ + self._gds_control_node_details = gds_control_node_details + + @property + def db_backup_config(self): + """ + Gets the db_backup_config of this DistributedDatabase. + + :return: The db_backup_config of this DistributedDatabase. + :rtype: oci.distributed_database_v26.models.DistributedDbBackupConfig + """ + return self._db_backup_config + + @db_backup_config.setter + def db_backup_config(self, db_backup_config): + """ + Sets the db_backup_config of this DistributedDatabase. + + :param db_backup_config: The db_backup_config of this DistributedDatabase. + :type: oci.distributed_database_v26.models.DistributedDbBackupConfig + """ + self._db_backup_config = db_backup_config + + @property + def auto_resource_management_config(self): + """ + Gets the auto_resource_management_config of this DistributedDatabase. + + :return: The auto_resource_management_config of this DistributedDatabase. + :rtype: oci.distributed_database_v26.models.AutoResourceManagementConfigurationDetails + """ + return self._auto_resource_management_config + + @auto_resource_management_config.setter + def auto_resource_management_config(self, auto_resource_management_config): + """ + Sets the auto_resource_management_config of this DistributedDatabase. + + :param auto_resource_management_config: The auto_resource_management_config of this DistributedDatabase. + :type: oci.distributed_database_v26.models.AutoResourceManagementConfigurationDetails + """ + self._auto_resource_management_config = auto_resource_management_config + + @property + def gsm_ssh_public_key(self): + """ + Gets the gsm_ssh_public_key of this DistributedDatabase. + The SSH public key for Global service manager instances. + + + :return: The gsm_ssh_public_key of this DistributedDatabase. + :rtype: str + """ + return self._gsm_ssh_public_key + + @gsm_ssh_public_key.setter + def gsm_ssh_public_key(self, gsm_ssh_public_key): + """ + Sets the gsm_ssh_public_key of this DistributedDatabase. + The SSH public key for Global service manager instances. + + + :param gsm_ssh_public_key: The gsm_ssh_public_key of this DistributedDatabase. + :type: str + """ + self._gsm_ssh_public_key = gsm_ssh_public_key + + @property + def vcn_nsg_ids(self): + """ + Gets the vcn_nsg_ids of this DistributedDatabase. + The list of network security group (NSG) details associated with the distributed database. + + + :return: The vcn_nsg_ids of this DistributedDatabase. + :rtype: list[oci.distributed_database_v26.models.VcnNsgIdsDetails] + """ + return self._vcn_nsg_ids + + @vcn_nsg_ids.setter + def vcn_nsg_ids(self, vcn_nsg_ids): + """ + Sets the vcn_nsg_ids of this DistributedDatabase. + The list of network security group (NSG) details associated with the distributed database. + + + :param vcn_nsg_ids: The vcn_nsg_ids of this DistributedDatabase. + :type: list[oci.distributed_database_v26.models.VcnNsgIdsDetails] + """ + self._vcn_nsg_ids = vcn_nsg_ids + + @property + def metadata(self): + """ + Gets the metadata of this DistributedDatabase. + + :return: The metadata of this DistributedDatabase. + :rtype: oci.distributed_database_v26.models.DistributedDbMetadata + """ + return self._metadata + + @metadata.setter + def metadata(self, metadata): + """ + Sets the metadata of this DistributedDatabase. + + :param metadata: The metadata of this DistributedDatabase. + :type: oci.distributed_database_v26.models.DistributedDbMetadata + """ + self._metadata = metadata + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this DistributedDatabase. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this DistributedDatabase. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this DistributedDatabase. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this DistributedDatabase. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this DistributedDatabase. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this DistributedDatabase. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this DistributedDatabase. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this DistributedDatabase. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def system_tags(self): + """ + Gets the system_tags of this DistributedDatabase. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :return: The system_tags of this DistributedDatabase. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this DistributedDatabase. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :param system_tags: The system_tags of this DistributedDatabase. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_database_auto_resource_management_details.py b/src/oci/distributed_database_v26/models/distributed_database_auto_resource_management_details.py new file mode 100644 index 0000000000..affce0c149 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_database_auto_resource_management_details.py @@ -0,0 +1,339 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedDatabaseAutoResourceManagementDetails(object): + """ + AutoResourceManagement configuration details for the Globally distributed database. + """ + + #: A constant which can be used with the max_move_ru_unit property of a DistributedDatabaseAutoResourceManagementDetails. + #: This constant has a value of "HOUR" + MAX_MOVE_RU_UNIT_HOUR = "HOUR" + + #: A constant which can be used with the max_move_ru_unit property of a DistributedDatabaseAutoResourceManagementDetails. + #: This constant has a value of "DAY" + MAX_MOVE_RU_UNIT_DAY = "DAY" + + #: A constant which can be used with the mode property of a DistributedDatabaseAutoResourceManagementDetails. + #: This constant has a value of "AUTOMATIC" + MODE_AUTOMATIC = "AUTOMATIC" + + #: A constant which can be used with the mode property of a DistributedDatabaseAutoResourceManagementDetails. + #: This constant has a value of "RECOMMENDATION" + MODE_RECOMMENDATION = "RECOMMENDATION" + + #: A constant which can be used with the action_type property of a DistributedDatabaseAutoResourceManagementDetails. + #: This constant has a value of "MOVE" + ACTION_TYPE_MOVE = "MOVE" + + def __init__(self, **kwargs): + """ + Initializes a new DistributedDatabaseAutoResourceManagementDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param is_enabled: + The value to assign to the is_enabled property of this DistributedDatabaseAutoResourceManagementDetails. + :type is_enabled: bool + + :param cool_off_period_in_minutes: + The value to assign to the cool_off_period_in_minutes property of this DistributedDatabaseAutoResourceManagementDetails. + :type cool_off_period_in_minutes: int + + :param max_move_ru_attempts: + The value to assign to the max_move_ru_attempts property of this DistributedDatabaseAutoResourceManagementDetails. + :type max_move_ru_attempts: int + + :param max_move_ru_unit: + The value to assign to the max_move_ru_unit property of this DistributedDatabaseAutoResourceManagementDetails. + Allowed values for this property are: "HOUR", "DAY", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type max_move_ru_unit: str + + :param mode: + The value to assign to the mode property of this DistributedDatabaseAutoResourceManagementDetails. + Allowed values for this property are: "AUTOMATIC", "RECOMMENDATION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type mode: str + + :param action_type: + The value to assign to the action_type property of this DistributedDatabaseAutoResourceManagementDetails. + Allowed values for this property are: "MOVE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type action_type: str + + :param notification_topic_ids: + The value to assign to the notification_topic_ids property of this DistributedDatabaseAutoResourceManagementDetails. + :type notification_topic_ids: list[str] + + :param stream_ids: + The value to assign to the stream_ids property of this DistributedDatabaseAutoResourceManagementDetails. + :type stream_ids: list[str] + + """ + self.swagger_types = { + 'is_enabled': 'bool', + 'cool_off_period_in_minutes': 'int', + 'max_move_ru_attempts': 'int', + 'max_move_ru_unit': 'str', + 'mode': 'str', + 'action_type': 'str', + 'notification_topic_ids': 'list[str]', + 'stream_ids': 'list[str]' + } + self.attribute_map = { + 'is_enabled': 'isEnabled', + 'cool_off_period_in_minutes': 'coolOffPeriodInMinutes', + 'max_move_ru_attempts': 'maxMoveRuAttempts', + 'max_move_ru_unit': 'maxMoveRuUnit', + 'mode': 'mode', + 'action_type': 'actionType', + 'notification_topic_ids': 'notificationTopicIds', + 'stream_ids': 'streamIds' + } + self._is_enabled = None + self._cool_off_period_in_minutes = None + self._max_move_ru_attempts = None + self._max_move_ru_unit = None + self._mode = None + self._action_type = None + self._notification_topic_ids = None + self._stream_ids = None + + @property + def is_enabled(self): + """ + **[Required]** Gets the is_enabled of this DistributedDatabaseAutoResourceManagementDetails. + Flag indicating if autoResourceManagement is enabled or disabled. + + + :return: The is_enabled of this DistributedDatabaseAutoResourceManagementDetails. + :rtype: bool + """ + return self._is_enabled + + @is_enabled.setter + def is_enabled(self, is_enabled): + """ + Sets the is_enabled of this DistributedDatabaseAutoResourceManagementDetails. + Flag indicating if autoResourceManagement is enabled or disabled. + + + :param is_enabled: The is_enabled of this DistributedDatabaseAutoResourceManagementDetails. + :type: bool + """ + self._is_enabled = is_enabled + + @property + def cool_off_period_in_minutes(self): + """ + Gets the cool_off_period_in_minutes of this DistributedDatabaseAutoResourceManagementDetails. + Time period to wait for the database to get stable after autoResourceManagement event. + + + :return: The cool_off_period_in_minutes of this DistributedDatabaseAutoResourceManagementDetails. + :rtype: int + """ + return self._cool_off_period_in_minutes + + @cool_off_period_in_minutes.setter + def cool_off_period_in_minutes(self, cool_off_period_in_minutes): + """ + Sets the cool_off_period_in_minutes of this DistributedDatabaseAutoResourceManagementDetails. + Time period to wait for the database to get stable after autoResourceManagement event. + + + :param cool_off_period_in_minutes: The cool_off_period_in_minutes of this DistributedDatabaseAutoResourceManagementDetails. + :type: int + """ + self._cool_off_period_in_minutes = cool_off_period_in_minutes + + @property + def max_move_ru_attempts(self): + """ + Gets the max_move_ru_attempts of this DistributedDatabaseAutoResourceManagementDetails. + Maximum number of move replication unit attempts allowed within the configured period per database. + + + :return: The max_move_ru_attempts of this DistributedDatabaseAutoResourceManagementDetails. + :rtype: int + """ + return self._max_move_ru_attempts + + @max_move_ru_attempts.setter + def max_move_ru_attempts(self, max_move_ru_attempts): + """ + Sets the max_move_ru_attempts of this DistributedDatabaseAutoResourceManagementDetails. + Maximum number of move replication unit attempts allowed within the configured period per database. + + + :param max_move_ru_attempts: The max_move_ru_attempts of this DistributedDatabaseAutoResourceManagementDetails. + :type: int + """ + self._max_move_ru_attempts = max_move_ru_attempts + + @property + def max_move_ru_unit(self): + """ + Gets the max_move_ru_unit of this DistributedDatabaseAutoResourceManagementDetails. + Time unit applicable to maxMoveRuAttempts. + + Allowed values for this property are: "HOUR", "DAY", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The max_move_ru_unit of this DistributedDatabaseAutoResourceManagementDetails. + :rtype: str + """ + return self._max_move_ru_unit + + @max_move_ru_unit.setter + def max_move_ru_unit(self, max_move_ru_unit): + """ + Sets the max_move_ru_unit of this DistributedDatabaseAutoResourceManagementDetails. + Time unit applicable to maxMoveRuAttempts. + + + :param max_move_ru_unit: The max_move_ru_unit of this DistributedDatabaseAutoResourceManagementDetails. + :type: str + """ + allowed_values = ["HOUR", "DAY"] + if not value_allowed_none_or_none_sentinel(max_move_ru_unit, allowed_values): + max_move_ru_unit = 'UNKNOWN_ENUM_VALUE' + self._max_move_ru_unit = max_move_ru_unit + + @property + def mode(self): + """ + Gets the mode of this DistributedDatabaseAutoResourceManagementDetails. + Mode of autoResourceManagement execution. + + Allowed values for this property are: "AUTOMATIC", "RECOMMENDATION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The mode of this DistributedDatabaseAutoResourceManagementDetails. + :rtype: str + """ + return self._mode + + @mode.setter + def mode(self, mode): + """ + Sets the mode of this DistributedDatabaseAutoResourceManagementDetails. + Mode of autoResourceManagement execution. + + + :param mode: The mode of this DistributedDatabaseAutoResourceManagementDetails. + :type: str + """ + allowed_values = ["AUTOMATIC", "RECOMMENDATION"] + if not value_allowed_none_or_none_sentinel(mode, allowed_values): + mode = 'UNKNOWN_ENUM_VALUE' + self._mode = mode + + @property + def action_type(self): + """ + Gets the action_type of this DistributedDatabaseAutoResourceManagementDetails. + The action that will be taken when autoResourceManagement is triggered. + + Allowed values for this property are: "MOVE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The action_type of this DistributedDatabaseAutoResourceManagementDetails. + :rtype: str + """ + return self._action_type + + @action_type.setter + def action_type(self, action_type): + """ + Sets the action_type of this DistributedDatabaseAutoResourceManagementDetails. + The action that will be taken when autoResourceManagement is triggered. + + + :param action_type: The action_type of this DistributedDatabaseAutoResourceManagementDetails. + :type: str + """ + allowed_values = ["MOVE"] + if not value_allowed_none_or_none_sentinel(action_type, allowed_values): + action_type = 'UNKNOWN_ENUM_VALUE' + self._action_type = action_type + + @property + def notification_topic_ids(self): + """ + Gets the notification_topic_ids of this DistributedDatabaseAutoResourceManagementDetails. + The list of notification topic ids `OCIDs`__ to receive autoResourceManagement events. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The notification_topic_ids of this DistributedDatabaseAutoResourceManagementDetails. + :rtype: list[str] + """ + return self._notification_topic_ids + + @notification_topic_ids.setter + def notification_topic_ids(self, notification_topic_ids): + """ + Sets the notification_topic_ids of this DistributedDatabaseAutoResourceManagementDetails. + The list of notification topic ids `OCIDs`__ to receive autoResourceManagement events. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param notification_topic_ids: The notification_topic_ids of this DistributedDatabaseAutoResourceManagementDetails. + :type: list[str] + """ + self._notification_topic_ids = notification_topic_ids + + @property + def stream_ids(self): + """ + Gets the stream_ids of this DistributedDatabaseAutoResourceManagementDetails. + The list of stream ids `OCIDs`__ that receive shard-related telemetry. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The stream_ids of this DistributedDatabaseAutoResourceManagementDetails. + :rtype: list[str] + """ + return self._stream_ids + + @stream_ids.setter + def stream_ids(self, stream_ids): + """ + Sets the stream_ids of this DistributedDatabaseAutoResourceManagementDetails. + The list of stream ids `OCIDs`__ that receive shard-related telemetry. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param stream_ids: The stream_ids of this DistributedDatabaseAutoResourceManagementDetails. + :type: list[str] + """ + self._stream_ids = stream_ids + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_database_catalog.py b/src/oci/distributed_database_v26/models/distributed_database_catalog.py new file mode 100644 index 0000000000..3ce4e1d9c5 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_database_catalog.py @@ -0,0 +1,97 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedDatabaseCatalog(object): + """ + Details of a Globally distributed database catalog. + """ + + def __init__(self, **kwargs): + """ + Initializes a new DistributedDatabaseCatalog object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param original_replica: + The value to assign to the original_replica property of this DistributedDatabaseCatalog. + :type original_replica: oci.distributed_database_v26.models.DistributedDatabaseCatalogReplicaDetails + + :param data_guard_replicas: + The value to assign to the data_guard_replicas property of this DistributedDatabaseCatalog. + :type data_guard_replicas: list[oci.distributed_database_v26.models.DistributedDatabaseCatalogReplicaDetails] + + """ + self.swagger_types = { + 'original_replica': 'DistributedDatabaseCatalogReplicaDetails', + 'data_guard_replicas': 'list[DistributedDatabaseCatalogReplicaDetails]' + } + self.attribute_map = { + 'original_replica': 'originalReplica', + 'data_guard_replicas': 'dataGuardReplicas' + } + self._original_replica = None + self._data_guard_replicas = None + + @property + def original_replica(self): + """ + **[Required]** Gets the original_replica of this DistributedDatabaseCatalog. + + :return: The original_replica of this DistributedDatabaseCatalog. + :rtype: oci.distributed_database_v26.models.DistributedDatabaseCatalogReplicaDetails + """ + return self._original_replica + + @original_replica.setter + def original_replica(self, original_replica): + """ + Sets the original_replica of this DistributedDatabaseCatalog. + + :param original_replica: The original_replica of this DistributedDatabaseCatalog. + :type: oci.distributed_database_v26.models.DistributedDatabaseCatalogReplicaDetails + """ + self._original_replica = original_replica + + @property + def data_guard_replicas(self): + """ + Gets the data_guard_replicas of this DistributedDatabaseCatalog. + The details of data guard replicas for the catalog. + + + :return: The data_guard_replicas of this DistributedDatabaseCatalog. + :rtype: list[oci.distributed_database_v26.models.DistributedDatabaseCatalogReplicaDetails] + """ + return self._data_guard_replicas + + @data_guard_replicas.setter + def data_guard_replicas(self, data_guard_replicas): + """ + Sets the data_guard_replicas of this DistributedDatabaseCatalog. + The details of data guard replicas for the catalog. + + + :param data_guard_replicas: The data_guard_replicas of this DistributedDatabaseCatalog. + :type: list[oci.distributed_database_v26.models.DistributedDatabaseCatalogReplicaDetails] + """ + self._data_guard_replicas = data_guard_replicas + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_database_catalog_database.py b/src/oci/distributed_database_v26/models/distributed_database_catalog_database.py new file mode 100644 index 0000000000..42d0b8ef3c --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_database_catalog_database.py @@ -0,0 +1,261 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedDatabaseCatalogDatabase(object): + """ + Details of a distributed database catalog. + """ + + #: A constant which can be used with the source property of a DistributedDatabaseCatalogDatabase. + #: This constant has a value of "XS_EXISTING_CLUSTER" + SOURCE_XS_EXISTING_CLUSTER = "XS_EXISTING_CLUSTER" + + #: A constant which can be used with the source property of a DistributedDatabaseCatalogDatabase. + #: This constant has a value of "XS_NEW_CLUSTER" + SOURCE_XS_NEW_CLUSTER = "XS_NEW_CLUSTER" + + #: A constant which can be used with the source property of a DistributedDatabaseCatalogDatabase. + #: This constant has a value of "XS_NEW_VAULT_AND_CLUSTER" + SOURCE_XS_NEW_VAULT_AND_CLUSTER = "XS_NEW_VAULT_AND_CLUSTER" + + #: A constant which can be used with the source property of a DistributedDatabaseCatalogDatabase. + #: This constant has a value of "XD_EXISTING_CLUSTER" + SOURCE_XD_EXISTING_CLUSTER = "XD_EXISTING_CLUSTER" + + #: A constant which can be used with the source property of a DistributedDatabaseCatalogDatabase. + #: This constant has a value of "EXISTING_DB_HOME" + SOURCE_EXISTING_DB_HOME = "EXISTING_DB_HOME" + + def __init__(self, **kwargs): + """ + Initializes a new DistributedDatabaseCatalogDatabase object with values from keyword arguments. This class has the following subclasses and if you are using this class as input + to a service operations then you should favor using a subclass over the base class: + + * :class:`~oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster` + * :class:`~oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithExadbXd` + * :class:`~oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster` + * :class:`~oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithDbHome` + * :class:`~oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithExadbXs` + + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source: + The value to assign to the source property of this DistributedDatabaseCatalogDatabase. + Allowed values for this property are: "XS_EXISTING_CLUSTER", "XS_NEW_CLUSTER", "XS_NEW_VAULT_AND_CLUSTER", "XD_EXISTING_CLUSTER", "EXISTING_DB_HOME", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type source: str + + :param name: + The value to assign to the name property of this DistributedDatabaseCatalogDatabase. + :type name: str + + :param time_created: + The value to assign to the time_created property of this DistributedDatabaseCatalogDatabase. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this DistributedDatabaseCatalogDatabase. + :type time_updated: datetime + + :param metadata: + The value to assign to the metadata property of this DistributedDatabaseCatalogDatabase. + :type metadata: oci.distributed_database_v26.models.DistributedDbMetadata + + """ + self.swagger_types = { + 'source': 'str', + 'name': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'metadata': 'DistributedDbMetadata' + } + self.attribute_map = { + 'source': 'source', + 'name': 'name', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'metadata': 'metadata' + } + self._source = None + self._name = None + self._time_created = None + self._time_updated = None + self._metadata = None + + @staticmethod + def get_subtype(object_dictionary): + """ + Given the hash representation of a subtype of this class, + use the info in the hash to return the class of the subtype. + """ + type = object_dictionary['source'] + + if type == 'XS_NEW_CLUSTER': + return 'DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster' + + if type == 'XD_EXISTING_CLUSTER': + return 'DistributedDatabaseCatalogDatabaseWithExadbXd' + + if type == 'XS_NEW_VAULT_AND_CLUSTER': + return 'DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster' + + if type == 'EXISTING_DB_HOME': + return 'DistributedDatabaseCatalogDatabaseWithDbHome' + + if type == 'XS_EXISTING_CLUSTER': + return 'DistributedDatabaseCatalogDatabaseWithExadbXs' + else: + return 'DistributedDatabaseCatalogDatabase' + + @property + def source(self): + """ + **[Required]** Gets the source of this DistributedDatabaseCatalogDatabase. + The source of the Globally distributed database type. + Use XS_EXISTING_CLUSTER for a database on Exascale Infrastructure that uses a pre-existing cluster. + Use XS_NEW_CLUSTER for a database on Exascale Infrastructure that requires a new cluster created from scratch. + Use XS_NEW_VAULT_AND_CLUSTER for a database on Exascale Infrastructure that requires a new vault and cluster created from scratch. + Use XD_EXISTING_CLUSTER for a database on Dedicated Infrastructure that uses a pre-existing cluster. + Use EXISTING_DB_HOME for a database on a pre-existing database home. + + Allowed values for this property are: "XS_EXISTING_CLUSTER", "XS_NEW_CLUSTER", "XS_NEW_VAULT_AND_CLUSTER", "XD_EXISTING_CLUSTER", "EXISTING_DB_HOME", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The source of this DistributedDatabaseCatalogDatabase. + :rtype: str + """ + return self._source + + @source.setter + def source(self, source): + """ + Sets the source of this DistributedDatabaseCatalogDatabase. + The source of the Globally distributed database type. + Use XS_EXISTING_CLUSTER for a database on Exascale Infrastructure that uses a pre-existing cluster. + Use XS_NEW_CLUSTER for a database on Exascale Infrastructure that requires a new cluster created from scratch. + Use XS_NEW_VAULT_AND_CLUSTER for a database on Exascale Infrastructure that requires a new vault and cluster created from scratch. + Use XD_EXISTING_CLUSTER for a database on Dedicated Infrastructure that uses a pre-existing cluster. + Use EXISTING_DB_HOME for a database on a pre-existing database home. + + + :param source: The source of this DistributedDatabaseCatalogDatabase. + :type: str + """ + allowed_values = ["XS_EXISTING_CLUSTER", "XS_NEW_CLUSTER", "XS_NEW_VAULT_AND_CLUSTER", "XD_EXISTING_CLUSTER", "EXISTING_DB_HOME"] + if not value_allowed_none_or_none_sentinel(source, allowed_values): + source = 'UNKNOWN_ENUM_VALUE' + self._source = source + + @property + def name(self): + """ + **[Required]** Gets the name of this DistributedDatabaseCatalogDatabase. + The name of the catalog. + + + :return: The name of this DistributedDatabaseCatalogDatabase. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this DistributedDatabaseCatalogDatabase. + The name of the catalog. + + + :param name: The name of this DistributedDatabaseCatalogDatabase. + :type: str + """ + self._name = name + + @property + def time_created(self): + """ + **[Required]** Gets the time_created of this DistributedDatabaseCatalogDatabase. + The time the catalog was created. An RFC3339 formatted datetime string. + + + :return: The time_created of this DistributedDatabaseCatalogDatabase. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this DistributedDatabaseCatalogDatabase. + The time the catalog was created. An RFC3339 formatted datetime string. + + + :param time_created: The time_created of this DistributedDatabaseCatalogDatabase. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + **[Required]** Gets the time_updated of this DistributedDatabaseCatalogDatabase. + The time the catalog was last updated. An RFC3339 formatted datetime string. + + + :return: The time_updated of this DistributedDatabaseCatalogDatabase. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this DistributedDatabaseCatalogDatabase. + The time the catalog was last updated. An RFC3339 formatted datetime string. + + + :param time_updated: The time_updated of this DistributedDatabaseCatalogDatabase. + :type: datetime + """ + self._time_updated = time_updated + + @property + def metadata(self): + """ + Gets the metadata of this DistributedDatabaseCatalogDatabase. + + :return: The metadata of this DistributedDatabaseCatalogDatabase. + :rtype: oci.distributed_database_v26.models.DistributedDbMetadata + """ + return self._metadata + + @metadata.setter + def metadata(self, metadata): + """ + Sets the metadata of this DistributedDatabaseCatalogDatabase. + + :param metadata: The metadata of this DistributedDatabaseCatalogDatabase. + :type: oci.distributed_database_v26.models.DistributedDbMetadata + """ + self._metadata = metadata + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_database_catalog_database_with_db_home.py b/src/oci/distributed_database_v26/models/distributed_database_catalog_database_with_db_home.py new file mode 100644 index 0000000000..d886015ad5 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_database_catalog_database_with_db_home.py @@ -0,0 +1,496 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +from .distributed_database_catalog_database import DistributedDatabaseCatalogDatabase +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedDatabaseCatalogDatabaseWithDbHome(DistributedDatabaseCatalogDatabase): + """ + Details of a distributed database catalog using a pre-existing Database Home. + """ + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithDbHome. + #: This constant has a value of "FAILED" + STATUS_FAILED = "FAILED" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithDbHome. + #: This constant has a value of "DELETING" + STATUS_DELETING = "DELETING" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithDbHome. + #: This constant has a value of "DELETED" + STATUS_DELETED = "DELETED" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithDbHome. + #: This constant has a value of "UPDATING" + STATUS_UPDATING = "UPDATING" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithDbHome. + #: This constant has a value of "CREATING" + STATUS_CREATING = "CREATING" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithDbHome. + #: This constant has a value of "CREATED" + STATUS_CREATED = "CREATED" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithDbHome. + #: This constant has a value of "READY_FOR_CONFIGURATION" + STATUS_READY_FOR_CONFIGURATION = "READY_FOR_CONFIGURATION" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithDbHome. + #: This constant has a value of "CONFIGURED" + STATUS_CONFIGURED = "CONFIGURED" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithDbHome. + #: This constant has a value of "NEEDS_ATTENTION" + STATUS_NEEDS_ATTENTION = "NEEDS_ATTENTION" + + #: A constant which can be used with the protection_mode property of a DistributedDatabaseCatalogDatabaseWithDbHome. + #: This constant has a value of "MAXIMUM_AVAILABILITY" + PROTECTION_MODE_MAXIMUM_AVAILABILITY = "MAXIMUM_AVAILABILITY" + + #: A constant which can be used with the protection_mode property of a DistributedDatabaseCatalogDatabaseWithDbHome. + #: This constant has a value of "MAXIMUM_PERFORMANCE" + PROTECTION_MODE_MAXIMUM_PERFORMANCE = "MAXIMUM_PERFORMANCE" + + #: A constant which can be used with the protection_mode property of a DistributedDatabaseCatalogDatabaseWithDbHome. + #: This constant has a value of "MAXIMUM_PROTECTION" + PROTECTION_MODE_MAXIMUM_PROTECTION = "MAXIMUM_PROTECTION" + + #: A constant which can be used with the transport_type property of a DistributedDatabaseCatalogDatabaseWithDbHome. + #: This constant has a value of "SYNC" + TRANSPORT_TYPE_SYNC = "SYNC" + + #: A constant which can be used with the transport_type property of a DistributedDatabaseCatalogDatabaseWithDbHome. + #: This constant has a value of "ASYNC" + TRANSPORT_TYPE_ASYNC = "ASYNC" + + #: A constant which can be used with the transport_type property of a DistributedDatabaseCatalogDatabaseWithDbHome. + #: This constant has a value of "FASTSYNC" + TRANSPORT_TYPE_FASTSYNC = "FASTSYNC" + + def __init__(self, **kwargs): + """ + Initializes a new DistributedDatabaseCatalogDatabaseWithDbHome object with values from keyword arguments. The default value of the :py:attr:`~oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithDbHome.source` attribute + of this class is ``EXISTING_DB_HOME`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source: + The value to assign to the source property of this DistributedDatabaseCatalogDatabaseWithDbHome. + Allowed values for this property are: "XS_EXISTING_CLUSTER", "XS_NEW_CLUSTER", "XS_NEW_VAULT_AND_CLUSTER", "XD_EXISTING_CLUSTER", "EXISTING_DB_HOME", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type source: str + + :param name: + The value to assign to the name property of this DistributedDatabaseCatalogDatabaseWithDbHome. + :type name: str + + :param time_created: + The value to assign to the time_created property of this DistributedDatabaseCatalogDatabaseWithDbHome. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this DistributedDatabaseCatalogDatabaseWithDbHome. + :type time_updated: datetime + + :param metadata: + The value to assign to the metadata property of this DistributedDatabaseCatalogDatabaseWithDbHome. + :type metadata: oci.distributed_database_v26.models.DistributedDbMetadata + + :param db_home_id: + The value to assign to the db_home_id property of this DistributedDatabaseCatalogDatabaseWithDbHome. + :type db_home_id: str + + :param vm_cluster_id: + The value to assign to the vm_cluster_id property of this DistributedDatabaseCatalogDatabaseWithDbHome. + :type vm_cluster_id: str + + :param status: + The value to assign to the status property of this DistributedDatabaseCatalogDatabaseWithDbHome. + Allowed values for this property are: "FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type status: str + + :param supporting_resource_id: + The value to assign to the supporting_resource_id property of this DistributedDatabaseCatalogDatabaseWithDbHome. + :type supporting_resource_id: str + + :param container_database_id: + The value to assign to the container_database_id property of this DistributedDatabaseCatalogDatabaseWithDbHome. + :type container_database_id: str + + :param vault_id: + The value to assign to the vault_id property of this DistributedDatabaseCatalogDatabaseWithDbHome. + :type vault_id: str + + :param kms_key_id: + The value to assign to the kms_key_id property of this DistributedDatabaseCatalogDatabaseWithDbHome. + :type kms_key_id: str + + :param kms_key_version_id: + The value to assign to the kms_key_version_id property of this DistributedDatabaseCatalogDatabaseWithDbHome. + :type kms_key_version_id: str + + :param protection_mode: + The value to assign to the protection_mode property of this DistributedDatabaseCatalogDatabaseWithDbHome. + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type protection_mode: str + + :param transport_type: + The value to assign to the transport_type property of this DistributedDatabaseCatalogDatabaseWithDbHome. + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type transport_type: str + + """ + self.swagger_types = { + 'source': 'str', + 'name': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'metadata': 'DistributedDbMetadata', + 'db_home_id': 'str', + 'vm_cluster_id': 'str', + 'status': 'str', + 'supporting_resource_id': 'str', + 'container_database_id': 'str', + 'vault_id': 'str', + 'kms_key_id': 'str', + 'kms_key_version_id': 'str', + 'protection_mode': 'str', + 'transport_type': 'str' + } + self.attribute_map = { + 'source': 'source', + 'name': 'name', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'metadata': 'metadata', + 'db_home_id': 'dbHomeId', + 'vm_cluster_id': 'vmClusterId', + 'status': 'status', + 'supporting_resource_id': 'supportingResourceId', + 'container_database_id': 'containerDatabaseId', + 'vault_id': 'vaultId', + 'kms_key_id': 'kmsKeyId', + 'kms_key_version_id': 'kmsKeyVersionId', + 'protection_mode': 'protectionMode', + 'transport_type': 'transportType' + } + self._source = None + self._name = None + self._time_created = None + self._time_updated = None + self._metadata = None + self._db_home_id = None + self._vm_cluster_id = None + self._status = None + self._supporting_resource_id = None + self._container_database_id = None + self._vault_id = None + self._kms_key_id = None + self._kms_key_version_id = None + self._protection_mode = None + self._transport_type = None + self._source = 'EXISTING_DB_HOME' + + @property + def db_home_id(self): + """ + **[Required]** Gets the db_home_id of this DistributedDatabaseCatalogDatabaseWithDbHome. + The `OCID`__ of the Database Home. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The db_home_id of this DistributedDatabaseCatalogDatabaseWithDbHome. + :rtype: str + """ + return self._db_home_id + + @db_home_id.setter + def db_home_id(self, db_home_id): + """ + Sets the db_home_id of this DistributedDatabaseCatalogDatabaseWithDbHome. + The `OCID`__ of the Database Home. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param db_home_id: The db_home_id of this DistributedDatabaseCatalogDatabaseWithDbHome. + :type: str + """ + self._db_home_id = db_home_id + + @property + def vm_cluster_id(self): + """ + Gets the vm_cluster_id of this DistributedDatabaseCatalogDatabaseWithDbHome. + The `OCID`__ of the VmCluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The vm_cluster_id of this DistributedDatabaseCatalogDatabaseWithDbHome. + :rtype: str + """ + return self._vm_cluster_id + + @vm_cluster_id.setter + def vm_cluster_id(self, vm_cluster_id): + """ + Sets the vm_cluster_id of this DistributedDatabaseCatalogDatabaseWithDbHome. + The `OCID`__ of the VmCluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param vm_cluster_id: The vm_cluster_id of this DistributedDatabaseCatalogDatabaseWithDbHome. + :type: str + """ + self._vm_cluster_id = vm_cluster_id + + @property + def status(self): + """ + **[Required]** Gets the status of this DistributedDatabaseCatalogDatabaseWithDbHome. + Status of the distributed database catalog. + + Allowed values for this property are: "FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The status of this DistributedDatabaseCatalogDatabaseWithDbHome. + :rtype: str + """ + return self._status + + @status.setter + def status(self, status): + """ + Sets the status of this DistributedDatabaseCatalogDatabaseWithDbHome. + Status of the distributed database catalog. + + + :param status: The status of this DistributedDatabaseCatalogDatabaseWithDbHome. + :type: str + """ + allowed_values = ["FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION"] + if not value_allowed_none_or_none_sentinel(status, allowed_values): + status = 'UNKNOWN_ENUM_VALUE' + self._status = status + + @property + def supporting_resource_id(self): + """ + Gets the supporting_resource_id of this DistributedDatabaseCatalogDatabaseWithDbHome. + the identifier of the underlying supporting resource. + + + :return: The supporting_resource_id of this DistributedDatabaseCatalogDatabaseWithDbHome. + :rtype: str + """ + return self._supporting_resource_id + + @supporting_resource_id.setter + def supporting_resource_id(self, supporting_resource_id): + """ + Sets the supporting_resource_id of this DistributedDatabaseCatalogDatabaseWithDbHome. + the identifier of the underlying supporting resource. + + + :param supporting_resource_id: The supporting_resource_id of this DistributedDatabaseCatalogDatabaseWithDbHome. + :type: str + """ + self._supporting_resource_id = supporting_resource_id + + @property + def container_database_id(self): + """ + Gets the container_database_id of this DistributedDatabaseCatalogDatabaseWithDbHome. + the identifier of the container database for underlying supporting resource. + + + :return: The container_database_id of this DistributedDatabaseCatalogDatabaseWithDbHome. + :rtype: str + """ + return self._container_database_id + + @container_database_id.setter + def container_database_id(self, container_database_id): + """ + Sets the container_database_id of this DistributedDatabaseCatalogDatabaseWithDbHome. + the identifier of the container database for underlying supporting resource. + + + :param container_database_id: The container_database_id of this DistributedDatabaseCatalogDatabaseWithDbHome. + :type: str + """ + self._container_database_id = container_database_id + + @property + def vault_id(self): + """ + Gets the vault_id of this DistributedDatabaseCatalogDatabaseWithDbHome. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :return: The vault_id of this DistributedDatabaseCatalogDatabaseWithDbHome. + :rtype: str + """ + return self._vault_id + + @vault_id.setter + def vault_id(self, vault_id): + """ + Sets the vault_id of this DistributedDatabaseCatalogDatabaseWithDbHome. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :param vault_id: The vault_id of this DistributedDatabaseCatalogDatabaseWithDbHome. + :type: str + """ + self._vault_id = vault_id + + @property + def kms_key_id(self): + """ + Gets the kms_key_id of this DistributedDatabaseCatalogDatabaseWithDbHome. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_id of this DistributedDatabaseCatalogDatabaseWithDbHome. + :rtype: str + """ + return self._kms_key_id + + @kms_key_id.setter + def kms_key_id(self, kms_key_id): + """ + Sets the kms_key_id of this DistributedDatabaseCatalogDatabaseWithDbHome. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_id: The kms_key_id of this DistributedDatabaseCatalogDatabaseWithDbHome. + :type: str + """ + self._kms_key_id = kms_key_id + + @property + def kms_key_version_id(self): + """ + Gets the kms_key_version_id of this DistributedDatabaseCatalogDatabaseWithDbHome. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_version_id of this DistributedDatabaseCatalogDatabaseWithDbHome. + :rtype: str + """ + return self._kms_key_version_id + + @kms_key_version_id.setter + def kms_key_version_id(self, kms_key_version_id): + """ + Sets the kms_key_version_id of this DistributedDatabaseCatalogDatabaseWithDbHome. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_version_id: The kms_key_version_id of this DistributedDatabaseCatalogDatabaseWithDbHome. + :type: str + """ + self._kms_key_version_id = kms_key_version_id + + @property + def protection_mode(self): + """ + Gets the protection_mode of this DistributedDatabaseCatalogDatabaseWithDbHome. + The protection mode used for the Data Guard association. + + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The protection_mode of this DistributedDatabaseCatalogDatabaseWithDbHome. + :rtype: str + """ + return self._protection_mode + + @protection_mode.setter + def protection_mode(self, protection_mode): + """ + Sets the protection_mode of this DistributedDatabaseCatalogDatabaseWithDbHome. + The protection mode used for the Data Guard association. + + + :param protection_mode: The protection_mode of this DistributedDatabaseCatalogDatabaseWithDbHome. + :type: str + """ + allowed_values = ["MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION"] + if not value_allowed_none_or_none_sentinel(protection_mode, allowed_values): + protection_mode = 'UNKNOWN_ENUM_VALUE' + self._protection_mode = protection_mode + + @property + def transport_type(self): + """ + Gets the transport_type of this DistributedDatabaseCatalogDatabaseWithDbHome. + The transport type used for the Data Guard association. + + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The transport_type of this DistributedDatabaseCatalogDatabaseWithDbHome. + :rtype: str + """ + return self._transport_type + + @transport_type.setter + def transport_type(self, transport_type): + """ + Sets the transport_type of this DistributedDatabaseCatalogDatabaseWithDbHome. + The transport type used for the Data Guard association. + + + :param transport_type: The transport_type of this DistributedDatabaseCatalogDatabaseWithDbHome. + :type: str + """ + allowed_values = ["SYNC", "ASYNC", "FASTSYNC"] + if not value_allowed_none_or_none_sentinel(transport_type, allowed_values): + transport_type = 'UNKNOWN_ENUM_VALUE' + self._transport_type = transport_type + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_database_catalog_database_with_exadb_xd.py b/src/oci/distributed_database_v26/models/distributed_database_catalog_database_with_exadb_xd.py new file mode 100644 index 0000000000..a39bca7844 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_database_catalog_database_with_exadb_xd.py @@ -0,0 +1,496 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +from .distributed_database_catalog_database import DistributedDatabaseCatalogDatabase +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedDatabaseCatalogDatabaseWithExadbXd(DistributedDatabaseCatalogDatabase): + """ + Details of a distributed database catalog running on ExaDB-D. + """ + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXd. + #: This constant has a value of "FAILED" + STATUS_FAILED = "FAILED" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXd. + #: This constant has a value of "DELETING" + STATUS_DELETING = "DELETING" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXd. + #: This constant has a value of "DELETED" + STATUS_DELETED = "DELETED" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXd. + #: This constant has a value of "UPDATING" + STATUS_UPDATING = "UPDATING" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXd. + #: This constant has a value of "CREATING" + STATUS_CREATING = "CREATING" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXd. + #: This constant has a value of "CREATED" + STATUS_CREATED = "CREATED" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXd. + #: This constant has a value of "READY_FOR_CONFIGURATION" + STATUS_READY_FOR_CONFIGURATION = "READY_FOR_CONFIGURATION" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXd. + #: This constant has a value of "CONFIGURED" + STATUS_CONFIGURED = "CONFIGURED" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXd. + #: This constant has a value of "NEEDS_ATTENTION" + STATUS_NEEDS_ATTENTION = "NEEDS_ATTENTION" + + #: A constant which can be used with the protection_mode property of a DistributedDatabaseCatalogDatabaseWithExadbXd. + #: This constant has a value of "MAXIMUM_AVAILABILITY" + PROTECTION_MODE_MAXIMUM_AVAILABILITY = "MAXIMUM_AVAILABILITY" + + #: A constant which can be used with the protection_mode property of a DistributedDatabaseCatalogDatabaseWithExadbXd. + #: This constant has a value of "MAXIMUM_PERFORMANCE" + PROTECTION_MODE_MAXIMUM_PERFORMANCE = "MAXIMUM_PERFORMANCE" + + #: A constant which can be used with the protection_mode property of a DistributedDatabaseCatalogDatabaseWithExadbXd. + #: This constant has a value of "MAXIMUM_PROTECTION" + PROTECTION_MODE_MAXIMUM_PROTECTION = "MAXIMUM_PROTECTION" + + #: A constant which can be used with the transport_type property of a DistributedDatabaseCatalogDatabaseWithExadbXd. + #: This constant has a value of "SYNC" + TRANSPORT_TYPE_SYNC = "SYNC" + + #: A constant which can be used with the transport_type property of a DistributedDatabaseCatalogDatabaseWithExadbXd. + #: This constant has a value of "ASYNC" + TRANSPORT_TYPE_ASYNC = "ASYNC" + + #: A constant which can be used with the transport_type property of a DistributedDatabaseCatalogDatabaseWithExadbXd. + #: This constant has a value of "FASTSYNC" + TRANSPORT_TYPE_FASTSYNC = "FASTSYNC" + + def __init__(self, **kwargs): + """ + Initializes a new DistributedDatabaseCatalogDatabaseWithExadbXd object with values from keyword arguments. The default value of the :py:attr:`~oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithExadbXd.source` attribute + of this class is ``XD_EXISTING_CLUSTER`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source: + The value to assign to the source property of this DistributedDatabaseCatalogDatabaseWithExadbXd. + Allowed values for this property are: "XS_EXISTING_CLUSTER", "XS_NEW_CLUSTER", "XS_NEW_VAULT_AND_CLUSTER", "XD_EXISTING_CLUSTER", "EXISTING_DB_HOME", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type source: str + + :param name: + The value to assign to the name property of this DistributedDatabaseCatalogDatabaseWithExadbXd. + :type name: str + + :param time_created: + The value to assign to the time_created property of this DistributedDatabaseCatalogDatabaseWithExadbXd. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this DistributedDatabaseCatalogDatabaseWithExadbXd. + :type time_updated: datetime + + :param metadata: + The value to assign to the metadata property of this DistributedDatabaseCatalogDatabaseWithExadbXd. + :type metadata: oci.distributed_database_v26.models.DistributedDbMetadata + + :param db_home_id: + The value to assign to the db_home_id property of this DistributedDatabaseCatalogDatabaseWithExadbXd. + :type db_home_id: str + + :param vm_cluster_id: + The value to assign to the vm_cluster_id property of this DistributedDatabaseCatalogDatabaseWithExadbXd. + :type vm_cluster_id: str + + :param status: + The value to assign to the status property of this DistributedDatabaseCatalogDatabaseWithExadbXd. + Allowed values for this property are: "FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type status: str + + :param supporting_resource_id: + The value to assign to the supporting_resource_id property of this DistributedDatabaseCatalogDatabaseWithExadbXd. + :type supporting_resource_id: str + + :param container_database_id: + The value to assign to the container_database_id property of this DistributedDatabaseCatalogDatabaseWithExadbXd. + :type container_database_id: str + + :param vault_id: + The value to assign to the vault_id property of this DistributedDatabaseCatalogDatabaseWithExadbXd. + :type vault_id: str + + :param kms_key_id: + The value to assign to the kms_key_id property of this DistributedDatabaseCatalogDatabaseWithExadbXd. + :type kms_key_id: str + + :param kms_key_version_id: + The value to assign to the kms_key_version_id property of this DistributedDatabaseCatalogDatabaseWithExadbXd. + :type kms_key_version_id: str + + :param protection_mode: + The value to assign to the protection_mode property of this DistributedDatabaseCatalogDatabaseWithExadbXd. + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type protection_mode: str + + :param transport_type: + The value to assign to the transport_type property of this DistributedDatabaseCatalogDatabaseWithExadbXd. + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type transport_type: str + + """ + self.swagger_types = { + 'source': 'str', + 'name': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'metadata': 'DistributedDbMetadata', + 'db_home_id': 'str', + 'vm_cluster_id': 'str', + 'status': 'str', + 'supporting_resource_id': 'str', + 'container_database_id': 'str', + 'vault_id': 'str', + 'kms_key_id': 'str', + 'kms_key_version_id': 'str', + 'protection_mode': 'str', + 'transport_type': 'str' + } + self.attribute_map = { + 'source': 'source', + 'name': 'name', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'metadata': 'metadata', + 'db_home_id': 'dbHomeId', + 'vm_cluster_id': 'vmClusterId', + 'status': 'status', + 'supporting_resource_id': 'supportingResourceId', + 'container_database_id': 'containerDatabaseId', + 'vault_id': 'vaultId', + 'kms_key_id': 'kmsKeyId', + 'kms_key_version_id': 'kmsKeyVersionId', + 'protection_mode': 'protectionMode', + 'transport_type': 'transportType' + } + self._source = None + self._name = None + self._time_created = None + self._time_updated = None + self._metadata = None + self._db_home_id = None + self._vm_cluster_id = None + self._status = None + self._supporting_resource_id = None + self._container_database_id = None + self._vault_id = None + self._kms_key_id = None + self._kms_key_version_id = None + self._protection_mode = None + self._transport_type = None + self._source = 'XD_EXISTING_CLUSTER' + + @property + def db_home_id(self): + """ + Gets the db_home_id of this DistributedDatabaseCatalogDatabaseWithExadbXd. + The `OCID`__ of the Database Home. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The db_home_id of this DistributedDatabaseCatalogDatabaseWithExadbXd. + :rtype: str + """ + return self._db_home_id + + @db_home_id.setter + def db_home_id(self, db_home_id): + """ + Sets the db_home_id of this DistributedDatabaseCatalogDatabaseWithExadbXd. + The `OCID`__ of the Database Home. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param db_home_id: The db_home_id of this DistributedDatabaseCatalogDatabaseWithExadbXd. + :type: str + """ + self._db_home_id = db_home_id + + @property + def vm_cluster_id(self): + """ + **[Required]** Gets the vm_cluster_id of this DistributedDatabaseCatalogDatabaseWithExadbXd. + The `OCID`__ of the Cloud VM Cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The vm_cluster_id of this DistributedDatabaseCatalogDatabaseWithExadbXd. + :rtype: str + """ + return self._vm_cluster_id + + @vm_cluster_id.setter + def vm_cluster_id(self, vm_cluster_id): + """ + Sets the vm_cluster_id of this DistributedDatabaseCatalogDatabaseWithExadbXd. + The `OCID`__ of the Cloud VM Cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param vm_cluster_id: The vm_cluster_id of this DistributedDatabaseCatalogDatabaseWithExadbXd. + :type: str + """ + self._vm_cluster_id = vm_cluster_id + + @property + def status(self): + """ + **[Required]** Gets the status of this DistributedDatabaseCatalogDatabaseWithExadbXd. + Status of the distributed database catalog. + + Allowed values for this property are: "FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The status of this DistributedDatabaseCatalogDatabaseWithExadbXd. + :rtype: str + """ + return self._status + + @status.setter + def status(self, status): + """ + Sets the status of this DistributedDatabaseCatalogDatabaseWithExadbXd. + Status of the distributed database catalog. + + + :param status: The status of this DistributedDatabaseCatalogDatabaseWithExadbXd. + :type: str + """ + allowed_values = ["FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION"] + if not value_allowed_none_or_none_sentinel(status, allowed_values): + status = 'UNKNOWN_ENUM_VALUE' + self._status = status + + @property + def supporting_resource_id(self): + """ + Gets the supporting_resource_id of this DistributedDatabaseCatalogDatabaseWithExadbXd. + the identifier of the underlying supporting resource. + + + :return: The supporting_resource_id of this DistributedDatabaseCatalogDatabaseWithExadbXd. + :rtype: str + """ + return self._supporting_resource_id + + @supporting_resource_id.setter + def supporting_resource_id(self, supporting_resource_id): + """ + Sets the supporting_resource_id of this DistributedDatabaseCatalogDatabaseWithExadbXd. + the identifier of the underlying supporting resource. + + + :param supporting_resource_id: The supporting_resource_id of this DistributedDatabaseCatalogDatabaseWithExadbXd. + :type: str + """ + self._supporting_resource_id = supporting_resource_id + + @property + def container_database_id(self): + """ + Gets the container_database_id of this DistributedDatabaseCatalogDatabaseWithExadbXd. + the identifier of the container database for underlying supporting resource. + + + :return: The container_database_id of this DistributedDatabaseCatalogDatabaseWithExadbXd. + :rtype: str + """ + return self._container_database_id + + @container_database_id.setter + def container_database_id(self, container_database_id): + """ + Sets the container_database_id of this DistributedDatabaseCatalogDatabaseWithExadbXd. + the identifier of the container database for underlying supporting resource. + + + :param container_database_id: The container_database_id of this DistributedDatabaseCatalogDatabaseWithExadbXd. + :type: str + """ + self._container_database_id = container_database_id + + @property + def vault_id(self): + """ + Gets the vault_id of this DistributedDatabaseCatalogDatabaseWithExadbXd. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :return: The vault_id of this DistributedDatabaseCatalogDatabaseWithExadbXd. + :rtype: str + """ + return self._vault_id + + @vault_id.setter + def vault_id(self, vault_id): + """ + Sets the vault_id of this DistributedDatabaseCatalogDatabaseWithExadbXd. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :param vault_id: The vault_id of this DistributedDatabaseCatalogDatabaseWithExadbXd. + :type: str + """ + self._vault_id = vault_id + + @property + def kms_key_id(self): + """ + Gets the kms_key_id of this DistributedDatabaseCatalogDatabaseWithExadbXd. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_id of this DistributedDatabaseCatalogDatabaseWithExadbXd. + :rtype: str + """ + return self._kms_key_id + + @kms_key_id.setter + def kms_key_id(self, kms_key_id): + """ + Sets the kms_key_id of this DistributedDatabaseCatalogDatabaseWithExadbXd. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_id: The kms_key_id of this DistributedDatabaseCatalogDatabaseWithExadbXd. + :type: str + """ + self._kms_key_id = kms_key_id + + @property + def kms_key_version_id(self): + """ + Gets the kms_key_version_id of this DistributedDatabaseCatalogDatabaseWithExadbXd. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_version_id of this DistributedDatabaseCatalogDatabaseWithExadbXd. + :rtype: str + """ + return self._kms_key_version_id + + @kms_key_version_id.setter + def kms_key_version_id(self, kms_key_version_id): + """ + Sets the kms_key_version_id of this DistributedDatabaseCatalogDatabaseWithExadbXd. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_version_id: The kms_key_version_id of this DistributedDatabaseCatalogDatabaseWithExadbXd. + :type: str + """ + self._kms_key_version_id = kms_key_version_id + + @property + def protection_mode(self): + """ + Gets the protection_mode of this DistributedDatabaseCatalogDatabaseWithExadbXd. + The protection mode used for the Data Guard association. + + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The protection_mode of this DistributedDatabaseCatalogDatabaseWithExadbXd. + :rtype: str + """ + return self._protection_mode + + @protection_mode.setter + def protection_mode(self, protection_mode): + """ + Sets the protection_mode of this DistributedDatabaseCatalogDatabaseWithExadbXd. + The protection mode used for the Data Guard association. + + + :param protection_mode: The protection_mode of this DistributedDatabaseCatalogDatabaseWithExadbXd. + :type: str + """ + allowed_values = ["MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION"] + if not value_allowed_none_or_none_sentinel(protection_mode, allowed_values): + protection_mode = 'UNKNOWN_ENUM_VALUE' + self._protection_mode = protection_mode + + @property + def transport_type(self): + """ + Gets the transport_type of this DistributedDatabaseCatalogDatabaseWithExadbXd. + The transport type used for the Data Guard association. + + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The transport_type of this DistributedDatabaseCatalogDatabaseWithExadbXd. + :rtype: str + """ + return self._transport_type + + @transport_type.setter + def transport_type(self, transport_type): + """ + Sets the transport_type of this DistributedDatabaseCatalogDatabaseWithExadbXd. + The transport type used for the Data Guard association. + + + :param transport_type: The transport_type of this DistributedDatabaseCatalogDatabaseWithExadbXd. + :type: str + """ + allowed_values = ["SYNC", "ASYNC", "FASTSYNC"] + if not value_allowed_none_or_none_sentinel(transport_type, allowed_values): + transport_type = 'UNKNOWN_ENUM_VALUE' + self._transport_type = transport_type + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_database_catalog_database_with_exadb_xs.py b/src/oci/distributed_database_v26/models/distributed_database_catalog_database_with_exadb_xs.py new file mode 100644 index 0000000000..e307b6834c --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_database_catalog_database_with_exadb_xs.py @@ -0,0 +1,496 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +from .distributed_database_catalog_database import DistributedDatabaseCatalogDatabase +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedDatabaseCatalogDatabaseWithExadbXs(DistributedDatabaseCatalogDatabase): + """ + Details of a distributed database catalog running on ExaDB-XS. + """ + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXs. + #: This constant has a value of "FAILED" + STATUS_FAILED = "FAILED" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXs. + #: This constant has a value of "DELETING" + STATUS_DELETING = "DELETING" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXs. + #: This constant has a value of "DELETED" + STATUS_DELETED = "DELETED" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXs. + #: This constant has a value of "UPDATING" + STATUS_UPDATING = "UPDATING" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXs. + #: This constant has a value of "CREATING" + STATUS_CREATING = "CREATING" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXs. + #: This constant has a value of "CREATED" + STATUS_CREATED = "CREATED" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXs. + #: This constant has a value of "READY_FOR_CONFIGURATION" + STATUS_READY_FOR_CONFIGURATION = "READY_FOR_CONFIGURATION" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXs. + #: This constant has a value of "CONFIGURED" + STATUS_CONFIGURED = "CONFIGURED" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXs. + #: This constant has a value of "NEEDS_ATTENTION" + STATUS_NEEDS_ATTENTION = "NEEDS_ATTENTION" + + #: A constant which can be used with the protection_mode property of a DistributedDatabaseCatalogDatabaseWithExadbXs. + #: This constant has a value of "MAXIMUM_AVAILABILITY" + PROTECTION_MODE_MAXIMUM_AVAILABILITY = "MAXIMUM_AVAILABILITY" + + #: A constant which can be used with the protection_mode property of a DistributedDatabaseCatalogDatabaseWithExadbXs. + #: This constant has a value of "MAXIMUM_PERFORMANCE" + PROTECTION_MODE_MAXIMUM_PERFORMANCE = "MAXIMUM_PERFORMANCE" + + #: A constant which can be used with the protection_mode property of a DistributedDatabaseCatalogDatabaseWithExadbXs. + #: This constant has a value of "MAXIMUM_PROTECTION" + PROTECTION_MODE_MAXIMUM_PROTECTION = "MAXIMUM_PROTECTION" + + #: A constant which can be used with the transport_type property of a DistributedDatabaseCatalogDatabaseWithExadbXs. + #: This constant has a value of "SYNC" + TRANSPORT_TYPE_SYNC = "SYNC" + + #: A constant which can be used with the transport_type property of a DistributedDatabaseCatalogDatabaseWithExadbXs. + #: This constant has a value of "ASYNC" + TRANSPORT_TYPE_ASYNC = "ASYNC" + + #: A constant which can be used with the transport_type property of a DistributedDatabaseCatalogDatabaseWithExadbXs. + #: This constant has a value of "FASTSYNC" + TRANSPORT_TYPE_FASTSYNC = "FASTSYNC" + + def __init__(self, **kwargs): + """ + Initializes a new DistributedDatabaseCatalogDatabaseWithExadbXs object with values from keyword arguments. The default value of the :py:attr:`~oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithExadbXs.source` attribute + of this class is ``XS_EXISTING_CLUSTER`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source: + The value to assign to the source property of this DistributedDatabaseCatalogDatabaseWithExadbXs. + Allowed values for this property are: "XS_EXISTING_CLUSTER", "XS_NEW_CLUSTER", "XS_NEW_VAULT_AND_CLUSTER", "XD_EXISTING_CLUSTER", "EXISTING_DB_HOME", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type source: str + + :param name: + The value to assign to the name property of this DistributedDatabaseCatalogDatabaseWithExadbXs. + :type name: str + + :param time_created: + The value to assign to the time_created property of this DistributedDatabaseCatalogDatabaseWithExadbXs. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this DistributedDatabaseCatalogDatabaseWithExadbXs. + :type time_updated: datetime + + :param metadata: + The value to assign to the metadata property of this DistributedDatabaseCatalogDatabaseWithExadbXs. + :type metadata: oci.distributed_database_v26.models.DistributedDbMetadata + + :param db_home_id: + The value to assign to the db_home_id property of this DistributedDatabaseCatalogDatabaseWithExadbXs. + :type db_home_id: str + + :param vm_cluster_id: + The value to assign to the vm_cluster_id property of this DistributedDatabaseCatalogDatabaseWithExadbXs. + :type vm_cluster_id: str + + :param status: + The value to assign to the status property of this DistributedDatabaseCatalogDatabaseWithExadbXs. + Allowed values for this property are: "FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type status: str + + :param supporting_resource_id: + The value to assign to the supporting_resource_id property of this DistributedDatabaseCatalogDatabaseWithExadbXs. + :type supporting_resource_id: str + + :param container_database_id: + The value to assign to the container_database_id property of this DistributedDatabaseCatalogDatabaseWithExadbXs. + :type container_database_id: str + + :param vault_id: + The value to assign to the vault_id property of this DistributedDatabaseCatalogDatabaseWithExadbXs. + :type vault_id: str + + :param kms_key_id: + The value to assign to the kms_key_id property of this DistributedDatabaseCatalogDatabaseWithExadbXs. + :type kms_key_id: str + + :param kms_key_version_id: + The value to assign to the kms_key_version_id property of this DistributedDatabaseCatalogDatabaseWithExadbXs. + :type kms_key_version_id: str + + :param protection_mode: + The value to assign to the protection_mode property of this DistributedDatabaseCatalogDatabaseWithExadbXs. + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type protection_mode: str + + :param transport_type: + The value to assign to the transport_type property of this DistributedDatabaseCatalogDatabaseWithExadbXs. + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type transport_type: str + + """ + self.swagger_types = { + 'source': 'str', + 'name': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'metadata': 'DistributedDbMetadata', + 'db_home_id': 'str', + 'vm_cluster_id': 'str', + 'status': 'str', + 'supporting_resource_id': 'str', + 'container_database_id': 'str', + 'vault_id': 'str', + 'kms_key_id': 'str', + 'kms_key_version_id': 'str', + 'protection_mode': 'str', + 'transport_type': 'str' + } + self.attribute_map = { + 'source': 'source', + 'name': 'name', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'metadata': 'metadata', + 'db_home_id': 'dbHomeId', + 'vm_cluster_id': 'vmClusterId', + 'status': 'status', + 'supporting_resource_id': 'supportingResourceId', + 'container_database_id': 'containerDatabaseId', + 'vault_id': 'vaultId', + 'kms_key_id': 'kmsKeyId', + 'kms_key_version_id': 'kmsKeyVersionId', + 'protection_mode': 'protectionMode', + 'transport_type': 'transportType' + } + self._source = None + self._name = None + self._time_created = None + self._time_updated = None + self._metadata = None + self._db_home_id = None + self._vm_cluster_id = None + self._status = None + self._supporting_resource_id = None + self._container_database_id = None + self._vault_id = None + self._kms_key_id = None + self._kms_key_version_id = None + self._protection_mode = None + self._transport_type = None + self._source = 'XS_EXISTING_CLUSTER' + + @property + def db_home_id(self): + """ + Gets the db_home_id of this DistributedDatabaseCatalogDatabaseWithExadbXs. + The `OCID`__ of the Database Home. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The db_home_id of this DistributedDatabaseCatalogDatabaseWithExadbXs. + :rtype: str + """ + return self._db_home_id + + @db_home_id.setter + def db_home_id(self, db_home_id): + """ + Sets the db_home_id of this DistributedDatabaseCatalogDatabaseWithExadbXs. + The `OCID`__ of the Database Home. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param db_home_id: The db_home_id of this DistributedDatabaseCatalogDatabaseWithExadbXs. + :type: str + """ + self._db_home_id = db_home_id + + @property + def vm_cluster_id(self): + """ + **[Required]** Gets the vm_cluster_id of this DistributedDatabaseCatalogDatabaseWithExadbXs. + The `OCID`__ of the VmCluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The vm_cluster_id of this DistributedDatabaseCatalogDatabaseWithExadbXs. + :rtype: str + """ + return self._vm_cluster_id + + @vm_cluster_id.setter + def vm_cluster_id(self, vm_cluster_id): + """ + Sets the vm_cluster_id of this DistributedDatabaseCatalogDatabaseWithExadbXs. + The `OCID`__ of the VmCluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param vm_cluster_id: The vm_cluster_id of this DistributedDatabaseCatalogDatabaseWithExadbXs. + :type: str + """ + self._vm_cluster_id = vm_cluster_id + + @property + def status(self): + """ + **[Required]** Gets the status of this DistributedDatabaseCatalogDatabaseWithExadbXs. + Status of the distributed database catalog. + + Allowed values for this property are: "FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The status of this DistributedDatabaseCatalogDatabaseWithExadbXs. + :rtype: str + """ + return self._status + + @status.setter + def status(self, status): + """ + Sets the status of this DistributedDatabaseCatalogDatabaseWithExadbXs. + Status of the distributed database catalog. + + + :param status: The status of this DistributedDatabaseCatalogDatabaseWithExadbXs. + :type: str + """ + allowed_values = ["FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION"] + if not value_allowed_none_or_none_sentinel(status, allowed_values): + status = 'UNKNOWN_ENUM_VALUE' + self._status = status + + @property + def supporting_resource_id(self): + """ + Gets the supporting_resource_id of this DistributedDatabaseCatalogDatabaseWithExadbXs. + the identifier of the underlying supporting resource. + + + :return: The supporting_resource_id of this DistributedDatabaseCatalogDatabaseWithExadbXs. + :rtype: str + """ + return self._supporting_resource_id + + @supporting_resource_id.setter + def supporting_resource_id(self, supporting_resource_id): + """ + Sets the supporting_resource_id of this DistributedDatabaseCatalogDatabaseWithExadbXs. + the identifier of the underlying supporting resource. + + + :param supporting_resource_id: The supporting_resource_id of this DistributedDatabaseCatalogDatabaseWithExadbXs. + :type: str + """ + self._supporting_resource_id = supporting_resource_id + + @property + def container_database_id(self): + """ + Gets the container_database_id of this DistributedDatabaseCatalogDatabaseWithExadbXs. + the identifier of the container database for underlying supporting resource. + + + :return: The container_database_id of this DistributedDatabaseCatalogDatabaseWithExadbXs. + :rtype: str + """ + return self._container_database_id + + @container_database_id.setter + def container_database_id(self, container_database_id): + """ + Sets the container_database_id of this DistributedDatabaseCatalogDatabaseWithExadbXs. + the identifier of the container database for underlying supporting resource. + + + :param container_database_id: The container_database_id of this DistributedDatabaseCatalogDatabaseWithExadbXs. + :type: str + """ + self._container_database_id = container_database_id + + @property + def vault_id(self): + """ + Gets the vault_id of this DistributedDatabaseCatalogDatabaseWithExadbXs. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :return: The vault_id of this DistributedDatabaseCatalogDatabaseWithExadbXs. + :rtype: str + """ + return self._vault_id + + @vault_id.setter + def vault_id(self, vault_id): + """ + Sets the vault_id of this DistributedDatabaseCatalogDatabaseWithExadbXs. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :param vault_id: The vault_id of this DistributedDatabaseCatalogDatabaseWithExadbXs. + :type: str + """ + self._vault_id = vault_id + + @property + def kms_key_id(self): + """ + Gets the kms_key_id of this DistributedDatabaseCatalogDatabaseWithExadbXs. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_id of this DistributedDatabaseCatalogDatabaseWithExadbXs. + :rtype: str + """ + return self._kms_key_id + + @kms_key_id.setter + def kms_key_id(self, kms_key_id): + """ + Sets the kms_key_id of this DistributedDatabaseCatalogDatabaseWithExadbXs. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_id: The kms_key_id of this DistributedDatabaseCatalogDatabaseWithExadbXs. + :type: str + """ + self._kms_key_id = kms_key_id + + @property + def kms_key_version_id(self): + """ + Gets the kms_key_version_id of this DistributedDatabaseCatalogDatabaseWithExadbXs. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_version_id of this DistributedDatabaseCatalogDatabaseWithExadbXs. + :rtype: str + """ + return self._kms_key_version_id + + @kms_key_version_id.setter + def kms_key_version_id(self, kms_key_version_id): + """ + Sets the kms_key_version_id of this DistributedDatabaseCatalogDatabaseWithExadbXs. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_version_id: The kms_key_version_id of this DistributedDatabaseCatalogDatabaseWithExadbXs. + :type: str + """ + self._kms_key_version_id = kms_key_version_id + + @property + def protection_mode(self): + """ + Gets the protection_mode of this DistributedDatabaseCatalogDatabaseWithExadbXs. + The protection mode used for the Data Guard association. + + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The protection_mode of this DistributedDatabaseCatalogDatabaseWithExadbXs. + :rtype: str + """ + return self._protection_mode + + @protection_mode.setter + def protection_mode(self, protection_mode): + """ + Sets the protection_mode of this DistributedDatabaseCatalogDatabaseWithExadbXs. + The protection mode used for the Data Guard association. + + + :param protection_mode: The protection_mode of this DistributedDatabaseCatalogDatabaseWithExadbXs. + :type: str + """ + allowed_values = ["MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION"] + if not value_allowed_none_or_none_sentinel(protection_mode, allowed_values): + protection_mode = 'UNKNOWN_ENUM_VALUE' + self._protection_mode = protection_mode + + @property + def transport_type(self): + """ + Gets the transport_type of this DistributedDatabaseCatalogDatabaseWithExadbXs. + The transport type used for the Data Guard association. + + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The transport_type of this DistributedDatabaseCatalogDatabaseWithExadbXs. + :rtype: str + """ + return self._transport_type + + @transport_type.setter + def transport_type(self, transport_type): + """ + Sets the transport_type of this DistributedDatabaseCatalogDatabaseWithExadbXs. + The transport type used for the Data Guard association. + + + :param transport_type: The transport_type of this DistributedDatabaseCatalogDatabaseWithExadbXs. + :type: str + """ + allowed_values = ["SYNC", "ASYNC", "FASTSYNC"] + if not value_allowed_none_or_none_sentinel(transport_type, allowed_values): + transport_type = 'UNKNOWN_ENUM_VALUE' + self._transport_type = transport_type + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_database_catalog_database_with_exadb_xs_new_cluster.py b/src/oci/distributed_database_v26/models/distributed_database_catalog_database_with_exadb_xs_new_cluster.py new file mode 100644 index 0000000000..d5f5bb4865 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_database_catalog_database_with_exadb_xs_new_cluster.py @@ -0,0 +1,554 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +from .distributed_database_catalog_database import DistributedDatabaseCatalogDatabase +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster(DistributedDatabaseCatalogDatabase): + """ + Details of a distributed database catalog on ExaDB-XS with a new cluster. + """ + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + #: This constant has a value of "FAILED" + STATUS_FAILED = "FAILED" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + #: This constant has a value of "DELETING" + STATUS_DELETING = "DELETING" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + #: This constant has a value of "DELETED" + STATUS_DELETED = "DELETED" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + #: This constant has a value of "UPDATING" + STATUS_UPDATING = "UPDATING" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + #: This constant has a value of "CREATING" + STATUS_CREATING = "CREATING" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + #: This constant has a value of "CREATED" + STATUS_CREATED = "CREATED" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + #: This constant has a value of "READY_FOR_CONFIGURATION" + STATUS_READY_FOR_CONFIGURATION = "READY_FOR_CONFIGURATION" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + #: This constant has a value of "CONFIGURED" + STATUS_CONFIGURED = "CONFIGURED" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + #: This constant has a value of "NEEDS_ATTENTION" + STATUS_NEEDS_ATTENTION = "NEEDS_ATTENTION" + + #: A constant which can be used with the protection_mode property of a DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + #: This constant has a value of "MAXIMUM_AVAILABILITY" + PROTECTION_MODE_MAXIMUM_AVAILABILITY = "MAXIMUM_AVAILABILITY" + + #: A constant which can be used with the protection_mode property of a DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + #: This constant has a value of "MAXIMUM_PERFORMANCE" + PROTECTION_MODE_MAXIMUM_PERFORMANCE = "MAXIMUM_PERFORMANCE" + + #: A constant which can be used with the protection_mode property of a DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + #: This constant has a value of "MAXIMUM_PROTECTION" + PROTECTION_MODE_MAXIMUM_PROTECTION = "MAXIMUM_PROTECTION" + + #: A constant which can be used with the transport_type property of a DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + #: This constant has a value of "SYNC" + TRANSPORT_TYPE_SYNC = "SYNC" + + #: A constant which can be used with the transport_type property of a DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + #: This constant has a value of "ASYNC" + TRANSPORT_TYPE_ASYNC = "ASYNC" + + #: A constant which can be used with the transport_type property of a DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + #: This constant has a value of "FASTSYNC" + TRANSPORT_TYPE_FASTSYNC = "FASTSYNC" + + def __init__(self, **kwargs): + """ + Initializes a new DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster object with values from keyword arguments. The default value of the :py:attr:`~oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster.source` attribute + of this class is ``XS_NEW_CLUSTER`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source: + The value to assign to the source property of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + Allowed values for this property are: "XS_EXISTING_CLUSTER", "XS_NEW_CLUSTER", "XS_NEW_VAULT_AND_CLUSTER", "XD_EXISTING_CLUSTER", "EXISTING_DB_HOME", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type source: str + + :param name: + The value to assign to the name property of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :type name: str + + :param time_created: + The value to assign to the time_created property of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :type time_updated: datetime + + :param metadata: + The value to assign to the metadata property of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :type metadata: oci.distributed_database_v26.models.DistributedDbMetadata + + :param db_home_id: + The value to assign to the db_home_id property of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :type db_home_id: str + + :param vault_id: + The value to assign to the vault_id property of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :type vault_id: str + + :param kms_key_id: + The value to assign to the kms_key_id property of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :type kms_key_id: str + + :param kms_key_version_id: + The value to assign to the kms_key_version_id property of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :type kms_key_version_id: str + + :param status: + The value to assign to the status property of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + Allowed values for this property are: "FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type status: str + + :param supporting_resource_id: + The value to assign to the supporting_resource_id property of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :type supporting_resource_id: str + + :param container_database_id: + The value to assign to the container_database_id property of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :type container_database_id: str + + :param availability_domain: + The value to assign to the availability_domain property of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :type availability_domain: str + + :param exascale_db_storage_vault_id: + The value to assign to the exascale_db_storage_vault_id property of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :type exascale_db_storage_vault_id: str + + :param vm_cluster_details: + The value to assign to the vm_cluster_details property of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :type vm_cluster_details: oci.distributed_database_v26.models.DistributedDbVmCluster + + :param protection_mode: + The value to assign to the protection_mode property of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type protection_mode: str + + :param transport_type: + The value to assign to the transport_type property of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type transport_type: str + + """ + self.swagger_types = { + 'source': 'str', + 'name': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'metadata': 'DistributedDbMetadata', + 'db_home_id': 'str', + 'vault_id': 'str', + 'kms_key_id': 'str', + 'kms_key_version_id': 'str', + 'status': 'str', + 'supporting_resource_id': 'str', + 'container_database_id': 'str', + 'availability_domain': 'str', + 'exascale_db_storage_vault_id': 'str', + 'vm_cluster_details': 'DistributedDbVmCluster', + 'protection_mode': 'str', + 'transport_type': 'str' + } + self.attribute_map = { + 'source': 'source', + 'name': 'name', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'metadata': 'metadata', + 'db_home_id': 'dbHomeId', + 'vault_id': 'vaultId', + 'kms_key_id': 'kmsKeyId', + 'kms_key_version_id': 'kmsKeyVersionId', + 'status': 'status', + 'supporting_resource_id': 'supportingResourceId', + 'container_database_id': 'containerDatabaseId', + 'availability_domain': 'availabilityDomain', + 'exascale_db_storage_vault_id': 'exascaleDbStorageVaultId', + 'vm_cluster_details': 'vmClusterDetails', + 'protection_mode': 'protectionMode', + 'transport_type': 'transportType' + } + self._source = None + self._name = None + self._time_created = None + self._time_updated = None + self._metadata = None + self._db_home_id = None + self._vault_id = None + self._kms_key_id = None + self._kms_key_version_id = None + self._status = None + self._supporting_resource_id = None + self._container_database_id = None + self._availability_domain = None + self._exascale_db_storage_vault_id = None + self._vm_cluster_details = None + self._protection_mode = None + self._transport_type = None + self._source = 'XS_NEW_CLUSTER' + + @property + def db_home_id(self): + """ + Gets the db_home_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + The `OCID`__ of the Database Home. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The db_home_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :rtype: str + """ + return self._db_home_id + + @db_home_id.setter + def db_home_id(self, db_home_id): + """ + Sets the db_home_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + The `OCID`__ of the Database Home. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param db_home_id: The db_home_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :type: str + """ + self._db_home_id = db_home_id + + @property + def vault_id(self): + """ + Gets the vault_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :return: The vault_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :rtype: str + """ + return self._vault_id + + @vault_id.setter + def vault_id(self, vault_id): + """ + Sets the vault_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :param vault_id: The vault_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :type: str + """ + self._vault_id = vault_id + + @property + def kms_key_id(self): + """ + Gets the kms_key_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :rtype: str + """ + return self._kms_key_id + + @kms_key_id.setter + def kms_key_id(self, kms_key_id): + """ + Sets the kms_key_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_id: The kms_key_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :type: str + """ + self._kms_key_id = kms_key_id + + @property + def kms_key_version_id(self): + """ + Gets the kms_key_version_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_version_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :rtype: str + """ + return self._kms_key_version_id + + @kms_key_version_id.setter + def kms_key_version_id(self, kms_key_version_id): + """ + Sets the kms_key_version_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_version_id: The kms_key_version_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :type: str + """ + self._kms_key_version_id = kms_key_version_id + + @property + def status(self): + """ + **[Required]** Gets the status of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + Status of the distributed database catalog. + + Allowed values for this property are: "FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The status of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :rtype: str + """ + return self._status + + @status.setter + def status(self, status): + """ + Sets the status of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + Status of the distributed database catalog. + + + :param status: The status of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :type: str + """ + allowed_values = ["FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION"] + if not value_allowed_none_or_none_sentinel(status, allowed_values): + status = 'UNKNOWN_ENUM_VALUE' + self._status = status + + @property + def supporting_resource_id(self): + """ + Gets the supporting_resource_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + the identifier of the underlying supporting resource. + + + :return: The supporting_resource_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :rtype: str + """ + return self._supporting_resource_id + + @supporting_resource_id.setter + def supporting_resource_id(self, supporting_resource_id): + """ + Sets the supporting_resource_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + the identifier of the underlying supporting resource. + + + :param supporting_resource_id: The supporting_resource_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :type: str + """ + self._supporting_resource_id = supporting_resource_id + + @property + def container_database_id(self): + """ + Gets the container_database_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + the identifier of the container database for underlying supporting resource. + + + :return: The container_database_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :rtype: str + """ + return self._container_database_id + + @container_database_id.setter + def container_database_id(self, container_database_id): + """ + Sets the container_database_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + the identifier of the container database for underlying supporting resource. + + + :param container_database_id: The container_database_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :type: str + """ + self._container_database_id = container_database_id + + @property + def availability_domain(self): + """ + Gets the availability_domain of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + The name of the availability domain that the distributed database catalog will be located in. + + + :return: The availability_domain of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :rtype: str + """ + return self._availability_domain + + @availability_domain.setter + def availability_domain(self, availability_domain): + """ + Sets the availability_domain of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + The name of the availability domain that the distributed database catalog will be located in. + + + :param availability_domain: The availability_domain of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :type: str + """ + self._availability_domain = availability_domain + + @property + def exascale_db_storage_vault_id(self): + """ + **[Required]** Gets the exascale_db_storage_vault_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + The `OCID`__ of the exascale db storage vault. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The exascale_db_storage_vault_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :rtype: str + """ + return self._exascale_db_storage_vault_id + + @exascale_db_storage_vault_id.setter + def exascale_db_storage_vault_id(self, exascale_db_storage_vault_id): + """ + Sets the exascale_db_storage_vault_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + The `OCID`__ of the exascale db storage vault. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param exascale_db_storage_vault_id: The exascale_db_storage_vault_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :type: str + """ + self._exascale_db_storage_vault_id = exascale_db_storage_vault_id + + @property + def vm_cluster_details(self): + """ + Gets the vm_cluster_details of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + + :return: The vm_cluster_details of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :rtype: oci.distributed_database_v26.models.DistributedDbVmCluster + """ + return self._vm_cluster_details + + @vm_cluster_details.setter + def vm_cluster_details(self, vm_cluster_details): + """ + Sets the vm_cluster_details of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + + :param vm_cluster_details: The vm_cluster_details of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :type: oci.distributed_database_v26.models.DistributedDbVmCluster + """ + self._vm_cluster_details = vm_cluster_details + + @property + def protection_mode(self): + """ + Gets the protection_mode of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + The protection mode used for the Data Guard association. + + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The protection_mode of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :rtype: str + """ + return self._protection_mode + + @protection_mode.setter + def protection_mode(self, protection_mode): + """ + Sets the protection_mode of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + The protection mode used for the Data Guard association. + + + :param protection_mode: The protection_mode of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :type: str + """ + allowed_values = ["MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION"] + if not value_allowed_none_or_none_sentinel(protection_mode, allowed_values): + protection_mode = 'UNKNOWN_ENUM_VALUE' + self._protection_mode = protection_mode + + @property + def transport_type(self): + """ + Gets the transport_type of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + The transport type used for the Data Guard association. + + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The transport_type of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :rtype: str + """ + return self._transport_type + + @transport_type.setter + def transport_type(self, transport_type): + """ + Sets the transport_type of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + The transport type used for the Data Guard association. + + + :param transport_type: The transport_type of this DistributedDatabaseCatalogDatabaseWithExadbXsNewCluster. + :type: str + """ + allowed_values = ["SYNC", "ASYNC", "FASTSYNC"] + if not value_allowed_none_or_none_sentinel(transport_type, allowed_values): + transport_type = 'UNKNOWN_ENUM_VALUE' + self._transport_type = transport_type + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_database_catalog_database_with_exadb_xs_new_vault_and_cluster.py b/src/oci/distributed_database_v26/models/distributed_database_catalog_database_with_exadb_xs_new_vault_and_cluster.py new file mode 100644 index 0000000000..45af336902 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_database_catalog_database_with_exadb_xs_new_vault_and_cluster.py @@ -0,0 +1,546 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +from .distributed_database_catalog_database import DistributedDatabaseCatalogDatabase +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster(DistributedDatabaseCatalogDatabase): + """ + Details of a distributed database catalog on ExaDB-XS with a new cluster and storage vault. + """ + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + #: This constant has a value of "FAILED" + STATUS_FAILED = "FAILED" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + #: This constant has a value of "DELETING" + STATUS_DELETING = "DELETING" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + #: This constant has a value of "DELETED" + STATUS_DELETED = "DELETED" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + #: This constant has a value of "UPDATING" + STATUS_UPDATING = "UPDATING" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + #: This constant has a value of "CREATING" + STATUS_CREATING = "CREATING" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + #: This constant has a value of "CREATED" + STATUS_CREATED = "CREATED" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + #: This constant has a value of "READY_FOR_CONFIGURATION" + STATUS_READY_FOR_CONFIGURATION = "READY_FOR_CONFIGURATION" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + #: This constant has a value of "CONFIGURED" + STATUS_CONFIGURED = "CONFIGURED" + + #: A constant which can be used with the status property of a DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + #: This constant has a value of "NEEDS_ATTENTION" + STATUS_NEEDS_ATTENTION = "NEEDS_ATTENTION" + + #: A constant which can be used with the protection_mode property of a DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + #: This constant has a value of "MAXIMUM_AVAILABILITY" + PROTECTION_MODE_MAXIMUM_AVAILABILITY = "MAXIMUM_AVAILABILITY" + + #: A constant which can be used with the protection_mode property of a DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + #: This constant has a value of "MAXIMUM_PERFORMANCE" + PROTECTION_MODE_MAXIMUM_PERFORMANCE = "MAXIMUM_PERFORMANCE" + + #: A constant which can be used with the protection_mode property of a DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + #: This constant has a value of "MAXIMUM_PROTECTION" + PROTECTION_MODE_MAXIMUM_PROTECTION = "MAXIMUM_PROTECTION" + + #: A constant which can be used with the transport_type property of a DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + #: This constant has a value of "SYNC" + TRANSPORT_TYPE_SYNC = "SYNC" + + #: A constant which can be used with the transport_type property of a DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + #: This constant has a value of "ASYNC" + TRANSPORT_TYPE_ASYNC = "ASYNC" + + #: A constant which can be used with the transport_type property of a DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + #: This constant has a value of "FASTSYNC" + TRANSPORT_TYPE_FASTSYNC = "FASTSYNC" + + def __init__(self, **kwargs): + """ + Initializes a new DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster object with values from keyword arguments. The default value of the :py:attr:`~oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster.source` attribute + of this class is ``XS_NEW_VAULT_AND_CLUSTER`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source: + The value to assign to the source property of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + Allowed values for this property are: "XS_EXISTING_CLUSTER", "XS_NEW_CLUSTER", "XS_NEW_VAULT_AND_CLUSTER", "XD_EXISTING_CLUSTER", "EXISTING_DB_HOME", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type source: str + + :param name: + The value to assign to the name property of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :type name: str + + :param time_created: + The value to assign to the time_created property of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :type time_updated: datetime + + :param metadata: + The value to assign to the metadata property of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :type metadata: oci.distributed_database_v26.models.DistributedDbMetadata + + :param db_home_id: + The value to assign to the db_home_id property of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :type db_home_id: str + + :param vault_id: + The value to assign to the vault_id property of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :type vault_id: str + + :param kms_key_id: + The value to assign to the kms_key_id property of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :type kms_key_id: str + + :param kms_key_version_id: + The value to assign to the kms_key_version_id property of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :type kms_key_version_id: str + + :param status: + The value to assign to the status property of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + Allowed values for this property are: "FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type status: str + + :param supporting_resource_id: + The value to assign to the supporting_resource_id property of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :type supporting_resource_id: str + + :param container_database_id: + The value to assign to the container_database_id property of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :type container_database_id: str + + :param availability_domain: + The value to assign to the availability_domain property of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :type availability_domain: str + + :param db_storage_vault_details: + The value to assign to the db_storage_vault_details property of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :type db_storage_vault_details: oci.distributed_database_v26.models.DistributedDbStorageVault + + :param vm_cluster_details: + The value to assign to the vm_cluster_details property of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :type vm_cluster_details: oci.distributed_database_v26.models.DistributedDbVmCluster + + :param protection_mode: + The value to assign to the protection_mode property of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type protection_mode: str + + :param transport_type: + The value to assign to the transport_type property of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type transport_type: str + + """ + self.swagger_types = { + 'source': 'str', + 'name': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'metadata': 'DistributedDbMetadata', + 'db_home_id': 'str', + 'vault_id': 'str', + 'kms_key_id': 'str', + 'kms_key_version_id': 'str', + 'status': 'str', + 'supporting_resource_id': 'str', + 'container_database_id': 'str', + 'availability_domain': 'str', + 'db_storage_vault_details': 'DistributedDbStorageVault', + 'vm_cluster_details': 'DistributedDbVmCluster', + 'protection_mode': 'str', + 'transport_type': 'str' + } + self.attribute_map = { + 'source': 'source', + 'name': 'name', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'metadata': 'metadata', + 'db_home_id': 'dbHomeId', + 'vault_id': 'vaultId', + 'kms_key_id': 'kmsKeyId', + 'kms_key_version_id': 'kmsKeyVersionId', + 'status': 'status', + 'supporting_resource_id': 'supportingResourceId', + 'container_database_id': 'containerDatabaseId', + 'availability_domain': 'availabilityDomain', + 'db_storage_vault_details': 'dbStorageVaultDetails', + 'vm_cluster_details': 'vmClusterDetails', + 'protection_mode': 'protectionMode', + 'transport_type': 'transportType' + } + self._source = None + self._name = None + self._time_created = None + self._time_updated = None + self._metadata = None + self._db_home_id = None + self._vault_id = None + self._kms_key_id = None + self._kms_key_version_id = None + self._status = None + self._supporting_resource_id = None + self._container_database_id = None + self._availability_domain = None + self._db_storage_vault_details = None + self._vm_cluster_details = None + self._protection_mode = None + self._transport_type = None + self._source = 'XS_NEW_VAULT_AND_CLUSTER' + + @property + def db_home_id(self): + """ + Gets the db_home_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + The `OCID`__ of the Database Home. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The db_home_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :rtype: str + """ + return self._db_home_id + + @db_home_id.setter + def db_home_id(self, db_home_id): + """ + Sets the db_home_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + The `OCID`__ of the Database Home. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param db_home_id: The db_home_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :type: str + """ + self._db_home_id = db_home_id + + @property + def vault_id(self): + """ + Gets the vault_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :return: The vault_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :rtype: str + """ + return self._vault_id + + @vault_id.setter + def vault_id(self, vault_id): + """ + Sets the vault_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :param vault_id: The vault_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :type: str + """ + self._vault_id = vault_id + + @property + def kms_key_id(self): + """ + Gets the kms_key_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :rtype: str + """ + return self._kms_key_id + + @kms_key_id.setter + def kms_key_id(self, kms_key_id): + """ + Sets the kms_key_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_id: The kms_key_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :type: str + """ + self._kms_key_id = kms_key_id + + @property + def kms_key_version_id(self): + """ + Gets the kms_key_version_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_version_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :rtype: str + """ + return self._kms_key_version_id + + @kms_key_version_id.setter + def kms_key_version_id(self, kms_key_version_id): + """ + Sets the kms_key_version_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_version_id: The kms_key_version_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :type: str + """ + self._kms_key_version_id = kms_key_version_id + + @property + def status(self): + """ + **[Required]** Gets the status of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + Status of the distributed database catalog. + + Allowed values for this property are: "FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The status of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :rtype: str + """ + return self._status + + @status.setter + def status(self, status): + """ + Sets the status of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + Status of the distributed database catalog. + + + :param status: The status of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :type: str + """ + allowed_values = ["FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION"] + if not value_allowed_none_or_none_sentinel(status, allowed_values): + status = 'UNKNOWN_ENUM_VALUE' + self._status = status + + @property + def supporting_resource_id(self): + """ + Gets the supporting_resource_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + the identifier of the underlying supporting resource. + + + :return: The supporting_resource_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :rtype: str + """ + return self._supporting_resource_id + + @supporting_resource_id.setter + def supporting_resource_id(self, supporting_resource_id): + """ + Sets the supporting_resource_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + the identifier of the underlying supporting resource. + + + :param supporting_resource_id: The supporting_resource_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :type: str + """ + self._supporting_resource_id = supporting_resource_id + + @property + def container_database_id(self): + """ + Gets the container_database_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + the identifier of the container database for underlying supporting resource. + + + :return: The container_database_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :rtype: str + """ + return self._container_database_id + + @container_database_id.setter + def container_database_id(self, container_database_id): + """ + Sets the container_database_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + the identifier of the container database for underlying supporting resource. + + + :param container_database_id: The container_database_id of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :type: str + """ + self._container_database_id = container_database_id + + @property + def availability_domain(self): + """ + Gets the availability_domain of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + The name of the availability domain that the distributed database catalog will be located in. + + + :return: The availability_domain of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :rtype: str + """ + return self._availability_domain + + @availability_domain.setter + def availability_domain(self, availability_domain): + """ + Sets the availability_domain of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + The name of the availability domain that the distributed database catalog will be located in. + + + :param availability_domain: The availability_domain of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :type: str + """ + self._availability_domain = availability_domain + + @property + def db_storage_vault_details(self): + """ + Gets the db_storage_vault_details of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + + :return: The db_storage_vault_details of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :rtype: oci.distributed_database_v26.models.DistributedDbStorageVault + """ + return self._db_storage_vault_details + + @db_storage_vault_details.setter + def db_storage_vault_details(self, db_storage_vault_details): + """ + Sets the db_storage_vault_details of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + + :param db_storage_vault_details: The db_storage_vault_details of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :type: oci.distributed_database_v26.models.DistributedDbStorageVault + """ + self._db_storage_vault_details = db_storage_vault_details + + @property + def vm_cluster_details(self): + """ + Gets the vm_cluster_details of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + + :return: The vm_cluster_details of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :rtype: oci.distributed_database_v26.models.DistributedDbVmCluster + """ + return self._vm_cluster_details + + @vm_cluster_details.setter + def vm_cluster_details(self, vm_cluster_details): + """ + Sets the vm_cluster_details of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + + :param vm_cluster_details: The vm_cluster_details of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :type: oci.distributed_database_v26.models.DistributedDbVmCluster + """ + self._vm_cluster_details = vm_cluster_details + + @property + def protection_mode(self): + """ + Gets the protection_mode of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + The protection mode used for the Data Guard association. + + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The protection_mode of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :rtype: str + """ + return self._protection_mode + + @protection_mode.setter + def protection_mode(self, protection_mode): + """ + Sets the protection_mode of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + The protection mode used for the Data Guard association. + + + :param protection_mode: The protection_mode of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :type: str + """ + allowed_values = ["MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION"] + if not value_allowed_none_or_none_sentinel(protection_mode, allowed_values): + protection_mode = 'UNKNOWN_ENUM_VALUE' + self._protection_mode = protection_mode + + @property + def transport_type(self): + """ + Gets the transport_type of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + The transport type used for the Data Guard association. + + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The transport_type of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :rtype: str + """ + return self._transport_type + + @transport_type.setter + def transport_type(self, transport_type): + """ + Sets the transport_type of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + The transport type used for the Data Guard association. + + + :param transport_type: The transport_type of this DistributedDatabaseCatalogDatabaseWithExadbXsNewVaultAndCluster. + :type: str + """ + allowed_values = ["SYNC", "ASYNC", "FASTSYNC"] + if not value_allowed_none_or_none_sentinel(transport_type, allowed_values): + transport_type = 'UNKNOWN_ENUM_VALUE' + self._transport_type = transport_type + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_database_catalog_replica_details.py b/src/oci/distributed_database_v26/models/distributed_database_catalog_replica_details.py new file mode 100644 index 0000000000..67de13b674 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_database_catalog_replica_details.py @@ -0,0 +1,101 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedDatabaseCatalogReplicaDetails(object): + """ + Details of a catalog replica. + """ + + def __init__(self, **kwargs): + """ + Initializes a new DistributedDatabaseCatalogReplicaDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this DistributedDatabaseCatalogReplicaDetails. + :type name: str + + :param database: + The value to assign to the database property of this DistributedDatabaseCatalogReplicaDetails. + :type database: oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabase + + """ + self.swagger_types = { + 'name': 'str', + 'database': 'DistributedDatabaseCatalogDatabase' + } + self.attribute_map = { + 'name': 'name', + 'database': 'database' + } + self._name = None + self._database = None + + @property + def name(self): + """ + **[Required]** Gets the name of this DistributedDatabaseCatalogReplicaDetails. + The name of the catalog replica. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this DistributedDatabaseCatalogReplicaDetails. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this DistributedDatabaseCatalogReplicaDetails. + The name of the catalog replica. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this DistributedDatabaseCatalogReplicaDetails. + :type: str + """ + self._name = name + + @property + def database(self): + """ + **[Required]** Gets the database of this DistributedDatabaseCatalogReplicaDetails. + + :return: The database of this DistributedDatabaseCatalogReplicaDetails. + :rtype: oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabase + """ + return self._database + + @database.setter + def database(self, database): + """ + Sets the database of this DistributedDatabaseCatalogReplicaDetails. + + :param database: The database of this DistributedDatabaseCatalogReplicaDetails. + :type: oci.distributed_database_v26.models.DistributedDatabaseCatalogDatabase + """ + self._database = database + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_database_collection.py b/src/oci/distributed_database_v26/models/distributed_database_collection.py new file mode 100644 index 0000000000..c4c318bf04 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_database_collection.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedDatabaseCollection(object): + """ + Collection of Globally distributed databases. + """ + + def __init__(self, **kwargs): + """ + Initializes a new DistributedDatabaseCollection object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this DistributedDatabaseCollection. + :type items: list[oci.distributed_database_v26.models.DistributedDatabaseSummary] + + """ + self.swagger_types = { + 'items': 'list[DistributedDatabaseSummary]' + } + self.attribute_map = { + 'items': 'items' + } + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this DistributedDatabaseCollection. + Array of Globally distributed database summaries. + + + :return: The items of this DistributedDatabaseCollection. + :rtype: list[oci.distributed_database_v26.models.DistributedDatabaseSummary] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this DistributedDatabaseCollection. + Array of Globally distributed database summaries. + + + :param items: The items of this DistributedDatabaseCollection. + :type: list[oci.distributed_database_v26.models.DistributedDatabaseSummary] + """ + self._items = items + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_database_gds_control_node.py b/src/oci/distributed_database_v26/models/distributed_database_gds_control_node.py new file mode 100644 index 0000000000..08cd1d68ee --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_database_gds_control_node.py @@ -0,0 +1,314 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedDatabaseGdsControlNode(object): + """ + Details of Global Database Services Control(GDS CTL) instances for the Globally distributed database. + """ + + def __init__(self, **kwargs): + """ + Initializes a new DistributedDatabaseGdsControlNode object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this DistributedDatabaseGdsControlNode. + :type name: str + + :param subnet_id: + The value to assign to the subnet_id property of this DistributedDatabaseGdsControlNode. + :type subnet_id: str + + :param availability_domain: + The value to assign to the availability_domain property of this DistributedDatabaseGdsControlNode. + :type availability_domain: str + + :param time_created: + The value to assign to the time_created property of this DistributedDatabaseGdsControlNode. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this DistributedDatabaseGdsControlNode. + :type time_updated: datetime + + :param supporting_resource_id: + The value to assign to the supporting_resource_id property of this DistributedDatabaseGdsControlNode. + :type supporting_resource_id: str + + :param private_ip: + The value to assign to the private_ip property of this DistributedDatabaseGdsControlNode. + :type private_ip: str + + :param gds_control_node_image_details: + The value to assign to the gds_control_node_image_details property of this DistributedDatabaseGdsControlNode. + :type gds_control_node_image_details: oci.distributed_database_v26.models.DistributedDbGdsControlNodeImage + + :param metadata: + The value to assign to the metadata property of this DistributedDatabaseGdsControlNode. + :type metadata: oci.distributed_database_v26.models.DistributedDbMetadata + + """ + self.swagger_types = { + 'name': 'str', + 'subnet_id': 'str', + 'availability_domain': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'supporting_resource_id': 'str', + 'private_ip': 'str', + 'gds_control_node_image_details': 'DistributedDbGdsControlNodeImage', + 'metadata': 'DistributedDbMetadata' + } + self.attribute_map = { + 'name': 'name', + 'subnet_id': 'subnetId', + 'availability_domain': 'availabilityDomain', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'supporting_resource_id': 'supportingResourceId', + 'private_ip': 'privateIp', + 'gds_control_node_image_details': 'gdsControlNodeImageDetails', + 'metadata': 'metadata' + } + self._name = None + self._subnet_id = None + self._availability_domain = None + self._time_created = None + self._time_updated = None + self._supporting_resource_id = None + self._private_ip = None + self._gds_control_node_image_details = None + self._metadata = None + + @property + def name(self): + """ + **[Required]** Gets the name of this DistributedDatabaseGdsControlNode. + Name of the Global Database Services Control instance + + + :return: The name of this DistributedDatabaseGdsControlNode. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this DistributedDatabaseGdsControlNode. + Name of the Global Database Services Control instance + + + :param name: The name of this DistributedDatabaseGdsControlNode. + :type: str + """ + self._name = name + + @property + def subnet_id(self): + """ + Gets the subnet_id of this DistributedDatabaseGdsControlNode. + The `OCID`__ of the subnet associated with the Global Database Services Control instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The subnet_id of this DistributedDatabaseGdsControlNode. + :rtype: str + """ + return self._subnet_id + + @subnet_id.setter + def subnet_id(self, subnet_id): + """ + Sets the subnet_id of this DistributedDatabaseGdsControlNode. + The `OCID`__ of the subnet associated with the Global Database Services Control instance. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param subnet_id: The subnet_id of this DistributedDatabaseGdsControlNode. + :type: str + """ + self._subnet_id = subnet_id + + @property + def availability_domain(self): + """ + Gets the availability_domain of this DistributedDatabaseGdsControlNode. + The name of the availability domain where the Global Database Services Control instance is located in. + + + :return: The availability_domain of this DistributedDatabaseGdsControlNode. + :rtype: str + """ + return self._availability_domain + + @availability_domain.setter + def availability_domain(self, availability_domain): + """ + Sets the availability_domain of this DistributedDatabaseGdsControlNode. + The name of the availability domain where the Global Database Services Control instance is located in. + + + :param availability_domain: The availability_domain of this DistributedDatabaseGdsControlNode. + :type: str + """ + self._availability_domain = availability_domain + + @property + def time_created(self): + """ + **[Required]** Gets the time_created of this DistributedDatabaseGdsControlNode. + The time the Global Database Services Control instance was created. An RFC3339 formatted datetime string. + + + :return: The time_created of this DistributedDatabaseGdsControlNode. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this DistributedDatabaseGdsControlNode. + The time the Global Database Services Control instance was created. An RFC3339 formatted datetime string. + + + :param time_created: The time_created of this DistributedDatabaseGdsControlNode. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + **[Required]** Gets the time_updated of this DistributedDatabaseGdsControlNode. + The time the Global Database Services Control instance was last updated. An RFC3339 formatted datetime string. + + + :return: The time_updated of this DistributedDatabaseGdsControlNode. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this DistributedDatabaseGdsControlNode. + The time the Global Database Services Control instance was last updated. An RFC3339 formatted datetime string. + + + :param time_updated: The time_updated of this DistributedDatabaseGdsControlNode. + :type: datetime + """ + self._time_updated = time_updated + + @property + def supporting_resource_id(self): + """ + Gets the supporting_resource_id of this DistributedDatabaseGdsControlNode. + The identifier of the underlying supporting resource. + + + :return: The supporting_resource_id of this DistributedDatabaseGdsControlNode. + :rtype: str + """ + return self._supporting_resource_id + + @supporting_resource_id.setter + def supporting_resource_id(self, supporting_resource_id): + """ + Sets the supporting_resource_id of this DistributedDatabaseGdsControlNode. + The identifier of the underlying supporting resource. + + + :param supporting_resource_id: The supporting_resource_id of this DistributedDatabaseGdsControlNode. + :type: str + """ + self._supporting_resource_id = supporting_resource_id + + @property + def private_ip(self): + """ + Gets the private_ip of this DistributedDatabaseGdsControlNode. + IP address of the Global Database Services Control instance. + + + :return: The private_ip of this DistributedDatabaseGdsControlNode. + :rtype: str + """ + return self._private_ip + + @private_ip.setter + def private_ip(self, private_ip): + """ + Sets the private_ip of this DistributedDatabaseGdsControlNode. + IP address of the Global Database Services Control instance. + + + :param private_ip: The private_ip of this DistributedDatabaseGdsControlNode. + :type: str + """ + self._private_ip = private_ip + + @property + def gds_control_node_image_details(self): + """ + Gets the gds_control_node_image_details of this DistributedDatabaseGdsControlNode. + + :return: The gds_control_node_image_details of this DistributedDatabaseGdsControlNode. + :rtype: oci.distributed_database_v26.models.DistributedDbGdsControlNodeImage + """ + return self._gds_control_node_image_details + + @gds_control_node_image_details.setter + def gds_control_node_image_details(self, gds_control_node_image_details): + """ + Sets the gds_control_node_image_details of this DistributedDatabaseGdsControlNode. + + :param gds_control_node_image_details: The gds_control_node_image_details of this DistributedDatabaseGdsControlNode. + :type: oci.distributed_database_v26.models.DistributedDbGdsControlNodeImage + """ + self._gds_control_node_image_details = gds_control_node_image_details + + @property + def metadata(self): + """ + Gets the metadata of this DistributedDatabaseGdsControlNode. + + :return: The metadata of this DistributedDatabaseGdsControlNode. + :rtype: oci.distributed_database_v26.models.DistributedDbMetadata + """ + return self._metadata + + @metadata.setter + def metadata(self, metadata): + """ + Sets the metadata of this DistributedDatabaseGdsControlNode. + + :param metadata: The metadata of this DistributedDatabaseGdsControlNode. + :type: oci.distributed_database_v26.models.DistributedDbMetadata + """ + self._metadata = metadata + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_database_gsm.py b/src/oci/distributed_database_v26/models/distributed_database_gsm.py new file mode 100644 index 0000000000..9df22dbb0a --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_database_gsm.py @@ -0,0 +1,385 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedDatabaseGsm(object): + """ + Details of global service manager(GSM also known as shard director) instances for the Globally distributed database. + """ + + #: A constant which can be used with the status property of a DistributedDatabaseGsm. + #: This constant has a value of "FAILED" + STATUS_FAILED = "FAILED" + + #: A constant which can be used with the status property of a DistributedDatabaseGsm. + #: This constant has a value of "DELETING" + STATUS_DELETING = "DELETING" + + #: A constant which can be used with the status property of a DistributedDatabaseGsm. + #: This constant has a value of "DELETED" + STATUS_DELETED = "DELETED" + + #: A constant which can be used with the status property of a DistributedDatabaseGsm. + #: This constant has a value of "UPDATING" + STATUS_UPDATING = "UPDATING" + + #: A constant which can be used with the status property of a DistributedDatabaseGsm. + #: This constant has a value of "CREATING" + STATUS_CREATING = "CREATING" + + #: A constant which can be used with the status property of a DistributedDatabaseGsm. + #: This constant has a value of "CREATED" + STATUS_CREATED = "CREATED" + + #: A constant which can be used with the status property of a DistributedDatabaseGsm. + #: This constant has a value of "READY_FOR_CONFIGURATION" + STATUS_READY_FOR_CONFIGURATION = "READY_FOR_CONFIGURATION" + + #: A constant which can be used with the status property of a DistributedDatabaseGsm. + #: This constant has a value of "CONFIGURED" + STATUS_CONFIGURED = "CONFIGURED" + + #: A constant which can be used with the status property of a DistributedDatabaseGsm. + #: This constant has a value of "NEEDS_ATTENTION" + STATUS_NEEDS_ATTENTION = "NEEDS_ATTENTION" + + def __init__(self, **kwargs): + """ + Initializes a new DistributedDatabaseGsm object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this DistributedDatabaseGsm. + :type name: str + + :param compute_count: + The value to assign to the compute_count property of this DistributedDatabaseGsm. + :type compute_count: float + + :param data_storage_size_in_gbs: + The value to assign to the data_storage_size_in_gbs property of this DistributedDatabaseGsm. + :type data_storage_size_in_gbs: float + + :param time_created: + The value to assign to the time_created property of this DistributedDatabaseGsm. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this DistributedDatabaseGsm. + :type time_updated: datetime + + :param status: + The value to assign to the status property of this DistributedDatabaseGsm. + Allowed values for this property are: "FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type status: str + + :param time_ssl_certificate_expires: + The value to assign to the time_ssl_certificate_expires property of this DistributedDatabaseGsm. + :type time_ssl_certificate_expires: datetime + + :param supporting_resource_id: + The value to assign to the supporting_resource_id property of this DistributedDatabaseGsm. + :type supporting_resource_id: str + + :param gsm_image_details: + The value to assign to the gsm_image_details property of this DistributedDatabaseGsm. + :type gsm_image_details: oci.distributed_database_v26.models.DistributedDbGsmImage + + :param metadata: + The value to assign to the metadata property of this DistributedDatabaseGsm. + :type metadata: oci.distributed_database_v26.models.DistributedDbMetadata + + """ + self.swagger_types = { + 'name': 'str', + 'compute_count': 'float', + 'data_storage_size_in_gbs': 'float', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'status': 'str', + 'time_ssl_certificate_expires': 'datetime', + 'supporting_resource_id': 'str', + 'gsm_image_details': 'DistributedDbGsmImage', + 'metadata': 'DistributedDbMetadata' + } + self.attribute_map = { + 'name': 'name', + 'compute_count': 'computeCount', + 'data_storage_size_in_gbs': 'dataStorageSizeInGbs', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'status': 'status', + 'time_ssl_certificate_expires': 'timeSslCertificateExpires', + 'supporting_resource_id': 'supportingResourceId', + 'gsm_image_details': 'gsmImageDetails', + 'metadata': 'metadata' + } + self._name = None + self._compute_count = None + self._data_storage_size_in_gbs = None + self._time_created = None + self._time_updated = None + self._status = None + self._time_ssl_certificate_expires = None + self._supporting_resource_id = None + self._gsm_image_details = None + self._metadata = None + + @property + def name(self): + """ + **[Required]** Gets the name of this DistributedDatabaseGsm. + Name of the Global service manager instance + + + :return: The name of this DistributedDatabaseGsm. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this DistributedDatabaseGsm. + Name of the Global service manager instance + + + :param name: The name of this DistributedDatabaseGsm. + :type: str + """ + self._name = name + + @property + def compute_count(self): + """ + **[Required]** Gets the compute_count of this DistributedDatabaseGsm. + The compute count for the Global service manager instance. + + + :return: The compute_count of this DistributedDatabaseGsm. + :rtype: float + """ + return self._compute_count + + @compute_count.setter + def compute_count(self, compute_count): + """ + Sets the compute_count of this DistributedDatabaseGsm. + The compute count for the Global service manager instance. + + + :param compute_count: The compute_count of this DistributedDatabaseGsm. + :type: float + """ + self._compute_count = compute_count + + @property + def data_storage_size_in_gbs(self): + """ + **[Required]** Gets the data_storage_size_in_gbs of this DistributedDatabaseGsm. + The data disk group size to be allocated in GBs for the Global service manager instance. + + + :return: The data_storage_size_in_gbs of this DistributedDatabaseGsm. + :rtype: float + """ + return self._data_storage_size_in_gbs + + @data_storage_size_in_gbs.setter + def data_storage_size_in_gbs(self, data_storage_size_in_gbs): + """ + Sets the data_storage_size_in_gbs of this DistributedDatabaseGsm. + The data disk group size to be allocated in GBs for the Global service manager instance. + + + :param data_storage_size_in_gbs: The data_storage_size_in_gbs of this DistributedDatabaseGsm. + :type: float + """ + self._data_storage_size_in_gbs = data_storage_size_in_gbs + + @property + def time_created(self): + """ + **[Required]** Gets the time_created of this DistributedDatabaseGsm. + The time the Global service manager instance was created. An RFC3339 formatted datetime string. + + + :return: The time_created of this DistributedDatabaseGsm. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this DistributedDatabaseGsm. + The time the Global service manager instance was created. An RFC3339 formatted datetime string. + + + :param time_created: The time_created of this DistributedDatabaseGsm. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + **[Required]** Gets the time_updated of this DistributedDatabaseGsm. + The time the Global service manager instance was last updated. An RFC3339 formatted datetime string. + + + :return: The time_updated of this DistributedDatabaseGsm. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this DistributedDatabaseGsm. + The time the Global service manager instance was last updated. An RFC3339 formatted datetime string. + + + :param time_updated: The time_updated of this DistributedDatabaseGsm. + :type: datetime + """ + self._time_updated = time_updated + + @property + def status(self): + """ + **[Required]** Gets the status of this DistributedDatabaseGsm. + Status of the gsm. + + Allowed values for this property are: "FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The status of this DistributedDatabaseGsm. + :rtype: str + """ + return self._status + + @status.setter + def status(self, status): + """ + Sets the status of this DistributedDatabaseGsm. + Status of the gsm. + + + :param status: The status of this DistributedDatabaseGsm. + :type: str + """ + allowed_values = ["FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION"] + if not value_allowed_none_or_none_sentinel(status, allowed_values): + status = 'UNKNOWN_ENUM_VALUE' + self._status = status + + @property + def time_ssl_certificate_expires(self): + """ + Gets the time_ssl_certificate_expires of this DistributedDatabaseGsm. + The time the ssl certificate associated with Global service manager expires. An RFC3339 formatted datetime string + + + :return: The time_ssl_certificate_expires of this DistributedDatabaseGsm. + :rtype: datetime + """ + return self._time_ssl_certificate_expires + + @time_ssl_certificate_expires.setter + def time_ssl_certificate_expires(self, time_ssl_certificate_expires): + """ + Sets the time_ssl_certificate_expires of this DistributedDatabaseGsm. + The time the ssl certificate associated with Global service manager expires. An RFC3339 formatted datetime string + + + :param time_ssl_certificate_expires: The time_ssl_certificate_expires of this DistributedDatabaseGsm. + :type: datetime + """ + self._time_ssl_certificate_expires = time_ssl_certificate_expires + + @property + def supporting_resource_id(self): + """ + Gets the supporting_resource_id of this DistributedDatabaseGsm. + the identifier of the underlying supporting resource. + + + :return: The supporting_resource_id of this DistributedDatabaseGsm. + :rtype: str + """ + return self._supporting_resource_id + + @supporting_resource_id.setter + def supporting_resource_id(self, supporting_resource_id): + """ + Sets the supporting_resource_id of this DistributedDatabaseGsm. + the identifier of the underlying supporting resource. + + + :param supporting_resource_id: The supporting_resource_id of this DistributedDatabaseGsm. + :type: str + """ + self._supporting_resource_id = supporting_resource_id + + @property + def gsm_image_details(self): + """ + Gets the gsm_image_details of this DistributedDatabaseGsm. + + :return: The gsm_image_details of this DistributedDatabaseGsm. + :rtype: oci.distributed_database_v26.models.DistributedDbGsmImage + """ + return self._gsm_image_details + + @gsm_image_details.setter + def gsm_image_details(self, gsm_image_details): + """ + Sets the gsm_image_details of this DistributedDatabaseGsm. + + :param gsm_image_details: The gsm_image_details of this DistributedDatabaseGsm. + :type: oci.distributed_database_v26.models.DistributedDbGsmImage + """ + self._gsm_image_details = gsm_image_details + + @property + def metadata(self): + """ + Gets the metadata of this DistributedDatabaseGsm. + + :return: The metadata of this DistributedDatabaseGsm. + :rtype: oci.distributed_database_v26.models.DistributedDbMetadata + """ + return self._metadata + + @metadata.setter + def metadata(self, metadata): + """ + Sets the metadata of this DistributedDatabaseGsm. + + :param metadata: The metadata of this DistributedDatabaseGsm. + :type: oci.distributed_database_v26.models.DistributedDbMetadata + """ + self._metadata = metadata + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_database_private_endpoint.py b/src/oci/distributed_database_v26/models/distributed_database_private_endpoint.py new file mode 100644 index 0000000000..d456c98ab4 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_database_private_endpoint.py @@ -0,0 +1,577 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedDatabasePrivateEndpoint(object): + """ + DistributedDatabasePrivateEndpoint resource. + """ + + #: A constant which can be used with the lifecycle_state property of a DistributedDatabasePrivateEndpoint. + #: This constant has a value of "ACTIVE" + LIFECYCLE_STATE_ACTIVE = "ACTIVE" + + #: A constant which can be used with the lifecycle_state property of a DistributedDatabasePrivateEndpoint. + #: This constant has a value of "FAILED" + LIFECYCLE_STATE_FAILED = "FAILED" + + #: A constant which can be used with the lifecycle_state property of a DistributedDatabasePrivateEndpoint. + #: This constant has a value of "INACTIVE" + LIFECYCLE_STATE_INACTIVE = "INACTIVE" + + #: A constant which can be used with the lifecycle_state property of a DistributedDatabasePrivateEndpoint. + #: This constant has a value of "DELETING" + LIFECYCLE_STATE_DELETING = "DELETING" + + #: A constant which can be used with the lifecycle_state property of a DistributedDatabasePrivateEndpoint. + #: This constant has a value of "DELETED" + LIFECYCLE_STATE_DELETED = "DELETED" + + #: A constant which can be used with the lifecycle_state property of a DistributedDatabasePrivateEndpoint. + #: This constant has a value of "UPDATING" + LIFECYCLE_STATE_UPDATING = "UPDATING" + + #: A constant which can be used with the lifecycle_state property of a DistributedDatabasePrivateEndpoint. + #: This constant has a value of "CREATING" + LIFECYCLE_STATE_CREATING = "CREATING" + + def __init__(self, **kwargs): + """ + Initializes a new DistributedDatabasePrivateEndpoint object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this DistributedDatabasePrivateEndpoint. + :type id: str + + :param compartment_id: + The value to assign to the compartment_id property of this DistributedDatabasePrivateEndpoint. + :type compartment_id: str + + :param subnet_id: + The value to assign to the subnet_id property of this DistributedDatabasePrivateEndpoint. + :type subnet_id: str + + :param vcn_id: + The value to assign to the vcn_id property of this DistributedDatabasePrivateEndpoint. + :type vcn_id: str + + :param display_name: + The value to assign to the display_name property of this DistributedDatabasePrivateEndpoint. + :type display_name: str + + :param description: + The value to assign to the description property of this DistributedDatabasePrivateEndpoint. + :type description: str + + :param private_ip: + The value to assign to the private_ip property of this DistributedDatabasePrivateEndpoint. + :type private_ip: str + + :param vcn_nsg_ids: + The value to assign to the vcn_nsg_ids property of this DistributedDatabasePrivateEndpoint. + :type vcn_nsg_ids: list[oci.distributed_database_v26.models.VcnNsgIdsDetails] + + :param time_created: + The value to assign to the time_created property of this DistributedDatabasePrivateEndpoint. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this DistributedDatabasePrivateEndpoint. + :type time_updated: datetime + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this DistributedDatabasePrivateEndpoint. + Allowed values for this property are: "ACTIVE", "FAILED", "INACTIVE", "DELETING", "DELETED", "UPDATING", "CREATING", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type lifecycle_state: str + + :param lifecycle_details: + The value to assign to the lifecycle_details property of this DistributedDatabasePrivateEndpoint. + :type lifecycle_details: str + + :param proxy_compute_instance_id: + The value to assign to the proxy_compute_instance_id property of this DistributedDatabasePrivateEndpoint. + :type proxy_compute_instance_id: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this DistributedDatabasePrivateEndpoint. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this DistributedDatabasePrivateEndpoint. + :type defined_tags: dict(str, dict(str, object)) + + :param system_tags: + The value to assign to the system_tags property of this DistributedDatabasePrivateEndpoint. + :type system_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'id': 'str', + 'compartment_id': 'str', + 'subnet_id': 'str', + 'vcn_id': 'str', + 'display_name': 'str', + 'description': 'str', + 'private_ip': 'str', + 'vcn_nsg_ids': 'list[VcnNsgIdsDetails]', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'lifecycle_state': 'str', + 'lifecycle_details': 'str', + 'proxy_compute_instance_id': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'id': 'id', + 'compartment_id': 'compartmentId', + 'subnet_id': 'subnetId', + 'vcn_id': 'vcnId', + 'display_name': 'displayName', + 'description': 'description', + 'private_ip': 'privateIp', + 'vcn_nsg_ids': 'vcnNsgIds', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'lifecycle_state': 'lifecycleState', + 'lifecycle_details': 'lifecycleDetails', + 'proxy_compute_instance_id': 'proxyComputeInstanceId', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags' + } + self._id = None + self._compartment_id = None + self._subnet_id = None + self._vcn_id = None + self._display_name = None + self._description = None + self._private_ip = None + self._vcn_nsg_ids = None + self._time_created = None + self._time_updated = None + self._lifecycle_state = None + self._lifecycle_details = None + self._proxy_compute_instance_id = None + self._freeform_tags = None + self._defined_tags = None + self._system_tags = None + + @property + def id(self): + """ + **[Required]** Gets the id of this DistributedDatabasePrivateEndpoint. + The identifier of the Private Endpoint. + + + :return: The id of this DistributedDatabasePrivateEndpoint. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this DistributedDatabasePrivateEndpoint. + The identifier of the Private Endpoint. + + + :param id: The id of this DistributedDatabasePrivateEndpoint. + :type: str + """ + self._id = id + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this DistributedDatabasePrivateEndpoint. + Identifier of the compartment in which private endpoint exists. + + + :return: The compartment_id of this DistributedDatabasePrivateEndpoint. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this DistributedDatabasePrivateEndpoint. + Identifier of the compartment in which private endpoint exists. + + + :param compartment_id: The compartment_id of this DistributedDatabasePrivateEndpoint. + :type: str + """ + self._compartment_id = compartment_id + + @property + def subnet_id(self): + """ + **[Required]** Gets the subnet_id of this DistributedDatabasePrivateEndpoint. + Identifier of the subnet in which private endpoint exists. + + + :return: The subnet_id of this DistributedDatabasePrivateEndpoint. + :rtype: str + """ + return self._subnet_id + + @subnet_id.setter + def subnet_id(self, subnet_id): + """ + Sets the subnet_id of this DistributedDatabasePrivateEndpoint. + Identifier of the subnet in which private endpoint exists. + + + :param subnet_id: The subnet_id of this DistributedDatabasePrivateEndpoint. + :type: str + """ + self._subnet_id = subnet_id + + @property + def vcn_id(self): + """ + **[Required]** Gets the vcn_id of this DistributedDatabasePrivateEndpoint. + Identifier of the VCN in which subnet exists. + + + :return: The vcn_id of this DistributedDatabasePrivateEndpoint. + :rtype: str + """ + return self._vcn_id + + @vcn_id.setter + def vcn_id(self, vcn_id): + """ + Sets the vcn_id of this DistributedDatabasePrivateEndpoint. + Identifier of the VCN in which subnet exists. + + + :param vcn_id: The vcn_id of this DistributedDatabasePrivateEndpoint. + :type: str + """ + self._vcn_id = vcn_id + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this DistributedDatabasePrivateEndpoint. + DistributedDatabasePrivateEndpoint display name. + + + :return: The display_name of this DistributedDatabasePrivateEndpoint. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this DistributedDatabasePrivateEndpoint. + DistributedDatabasePrivateEndpoint display name. + + + :param display_name: The display_name of this DistributedDatabasePrivateEndpoint. + :type: str + """ + self._display_name = display_name + + @property + def description(self): + """ + Gets the description of this DistributedDatabasePrivateEndpoint. + DistributedDatabasePrivateEndpoint description. + + + :return: The description of this DistributedDatabasePrivateEndpoint. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this DistributedDatabasePrivateEndpoint. + DistributedDatabasePrivateEndpoint description. + + + :param description: The description of this DistributedDatabasePrivateEndpoint. + :type: str + """ + self._description = description + + @property + def private_ip(self): + """ + Gets the private_ip of this DistributedDatabasePrivateEndpoint. + IP address of the Private Endpoint. + + + :return: The private_ip of this DistributedDatabasePrivateEndpoint. + :rtype: str + """ + return self._private_ip + + @private_ip.setter + def private_ip(self, private_ip): + """ + Sets the private_ip of this DistributedDatabasePrivateEndpoint. + IP address of the Private Endpoint. + + + :param private_ip: The private_ip of this DistributedDatabasePrivateEndpoint. + :type: str + """ + self._private_ip = private_ip + + @property + def vcn_nsg_ids(self): + """ + Gets the vcn_nsg_ids of this DistributedDatabasePrivateEndpoint. + The list of network security group (NSG) details associated with the private endpoint. + + + :return: The vcn_nsg_ids of this DistributedDatabasePrivateEndpoint. + :rtype: list[oci.distributed_database_v26.models.VcnNsgIdsDetails] + """ + return self._vcn_nsg_ids + + @vcn_nsg_ids.setter + def vcn_nsg_ids(self, vcn_nsg_ids): + """ + Sets the vcn_nsg_ids of this DistributedDatabasePrivateEndpoint. + The list of network security group (NSG) details associated with the private endpoint. + + + :param vcn_nsg_ids: The vcn_nsg_ids of this DistributedDatabasePrivateEndpoint. + :type: list[oci.distributed_database_v26.models.VcnNsgIdsDetails] + """ + self._vcn_nsg_ids = vcn_nsg_ids + + @property + def time_created(self): + """ + **[Required]** Gets the time_created of this DistributedDatabasePrivateEndpoint. + The time the DistributedDatabasePrivateEndpoint was first created. An RFC3339 formatted datetime string + + + :return: The time_created of this DistributedDatabasePrivateEndpoint. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this DistributedDatabasePrivateEndpoint. + The time the DistributedDatabasePrivateEndpoint was first created. An RFC3339 formatted datetime string + + + :param time_created: The time_created of this DistributedDatabasePrivateEndpoint. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + **[Required]** Gets the time_updated of this DistributedDatabasePrivateEndpoint. + The time the Private Endpoint was last updated. An RFC3339 formatted datetime string + + + :return: The time_updated of this DistributedDatabasePrivateEndpoint. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this DistributedDatabasePrivateEndpoint. + The time the Private Endpoint was last updated. An RFC3339 formatted datetime string + + + :param time_updated: The time_updated of this DistributedDatabasePrivateEndpoint. + :type: datetime + """ + self._time_updated = time_updated + + @property + def lifecycle_state(self): + """ + **[Required]** Gets the lifecycle_state of this DistributedDatabasePrivateEndpoint. + Lifecycle states for private endpoint. + + Allowed values for this property are: "ACTIVE", "FAILED", "INACTIVE", "DELETING", "DELETED", "UPDATING", "CREATING", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The lifecycle_state of this DistributedDatabasePrivateEndpoint. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this DistributedDatabasePrivateEndpoint. + Lifecycle states for private endpoint. + + + :param lifecycle_state: The lifecycle_state of this DistributedDatabasePrivateEndpoint. + :type: str + """ + allowed_values = ["ACTIVE", "FAILED", "INACTIVE", "DELETING", "DELETED", "UPDATING", "CREATING"] + if not value_allowed_none_or_none_sentinel(lifecycle_state, allowed_values): + lifecycle_state = 'UNKNOWN_ENUM_VALUE' + self._lifecycle_state = lifecycle_state + + @property + def lifecycle_details(self): + """ + Gets the lifecycle_details of this DistributedDatabasePrivateEndpoint. + Detailed message for the lifecycle state. + + + :return: The lifecycle_details of this DistributedDatabasePrivateEndpoint. + :rtype: str + """ + return self._lifecycle_details + + @lifecycle_details.setter + def lifecycle_details(self, lifecycle_details): + """ + Sets the lifecycle_details of this DistributedDatabasePrivateEndpoint. + Detailed message for the lifecycle state. + + + :param lifecycle_details: The lifecycle_details of this DistributedDatabasePrivateEndpoint. + :type: str + """ + self._lifecycle_details = lifecycle_details + + @property + def proxy_compute_instance_id(self): + """ + Gets the proxy_compute_instance_id of this DistributedDatabasePrivateEndpoint. + The identifier of the proxy compute instance. + + + :return: The proxy_compute_instance_id of this DistributedDatabasePrivateEndpoint. + :rtype: str + """ + return self._proxy_compute_instance_id + + @proxy_compute_instance_id.setter + def proxy_compute_instance_id(self, proxy_compute_instance_id): + """ + Sets the proxy_compute_instance_id of this DistributedDatabasePrivateEndpoint. + The identifier of the proxy compute instance. + + + :param proxy_compute_instance_id: The proxy_compute_instance_id of this DistributedDatabasePrivateEndpoint. + :type: str + """ + self._proxy_compute_instance_id = proxy_compute_instance_id + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this DistributedDatabasePrivateEndpoint. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this DistributedDatabasePrivateEndpoint. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this DistributedDatabasePrivateEndpoint. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this DistributedDatabasePrivateEndpoint. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this DistributedDatabasePrivateEndpoint. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this DistributedDatabasePrivateEndpoint. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this DistributedDatabasePrivateEndpoint. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this DistributedDatabasePrivateEndpoint. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def system_tags(self): + """ + Gets the system_tags of this DistributedDatabasePrivateEndpoint. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :return: The system_tags of this DistributedDatabasePrivateEndpoint. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this DistributedDatabasePrivateEndpoint. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :param system_tags: The system_tags of this DistributedDatabasePrivateEndpoint. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_database_private_endpoint_collection.py b/src/oci/distributed_database_v26/models/distributed_database_private_endpoint_collection.py new file mode 100644 index 0000000000..b713118ebb --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_database_private_endpoint_collection.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedDatabasePrivateEndpointCollection(object): + """ + Collection of private endpoints. + """ + + def __init__(self, **kwargs): + """ + Initializes a new DistributedDatabasePrivateEndpointCollection object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this DistributedDatabasePrivateEndpointCollection. + :type items: list[oci.distributed_database_v26.models.DistributedDatabasePrivateEndpointSummary] + + """ + self.swagger_types = { + 'items': 'list[DistributedDatabasePrivateEndpointSummary]' + } + self.attribute_map = { + 'items': 'items' + } + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this DistributedDatabasePrivateEndpointCollection. + Array of private endpoint summaries. + + + :return: The items of this DistributedDatabasePrivateEndpointCollection. + :rtype: list[oci.distributed_database_v26.models.DistributedDatabasePrivateEndpointSummary] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this DistributedDatabasePrivateEndpointCollection. + Array of private endpoint summaries. + + + :param items: The items of this DistributedDatabasePrivateEndpointCollection. + :type: list[oci.distributed_database_v26.models.DistributedDatabasePrivateEndpointSummary] + """ + self._items = items + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_database_private_endpoint_summary.py b/src/oci/distributed_database_v26/models/distributed_database_private_endpoint_summary.py new file mode 100644 index 0000000000..3e18dabccd --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_database_private_endpoint_summary.py @@ -0,0 +1,479 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedDatabasePrivateEndpointSummary(object): + """ + DistributedDatabasePrivateEndpoint resource summary. + """ + + def __init__(self, **kwargs): + """ + Initializes a new DistributedDatabasePrivateEndpointSummary object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this DistributedDatabasePrivateEndpointSummary. + :type id: str + + :param description: + The value to assign to the description property of this DistributedDatabasePrivateEndpointSummary. + :type description: str + + :param compartment_id: + The value to assign to the compartment_id property of this DistributedDatabasePrivateEndpointSummary. + :type compartment_id: str + + :param subnet_id: + The value to assign to the subnet_id property of this DistributedDatabasePrivateEndpointSummary. + :type subnet_id: str + + :param vcn_id: + The value to assign to the vcn_id property of this DistributedDatabasePrivateEndpointSummary. + :type vcn_id: str + + :param display_name: + The value to assign to the display_name property of this DistributedDatabasePrivateEndpointSummary. + :type display_name: str + + :param vcn_nsg_ids: + The value to assign to the vcn_nsg_ids property of this DistributedDatabasePrivateEndpointSummary. + :type vcn_nsg_ids: list[oci.distributed_database_v26.models.VcnNsgIdsDetails] + + :param time_created: + The value to assign to the time_created property of this DistributedDatabasePrivateEndpointSummary. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this DistributedDatabasePrivateEndpointSummary. + :type time_updated: datetime + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this DistributedDatabasePrivateEndpointSummary. + :type lifecycle_state: str + + :param lifecycle_details: + The value to assign to the lifecycle_details property of this DistributedDatabasePrivateEndpointSummary. + :type lifecycle_details: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this DistributedDatabasePrivateEndpointSummary. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this DistributedDatabasePrivateEndpointSummary. + :type defined_tags: dict(str, dict(str, object)) + + :param system_tags: + The value to assign to the system_tags property of this DistributedDatabasePrivateEndpointSummary. + :type system_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'id': 'str', + 'description': 'str', + 'compartment_id': 'str', + 'subnet_id': 'str', + 'vcn_id': 'str', + 'display_name': 'str', + 'vcn_nsg_ids': 'list[VcnNsgIdsDetails]', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'lifecycle_state': 'str', + 'lifecycle_details': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'id': 'id', + 'description': 'description', + 'compartment_id': 'compartmentId', + 'subnet_id': 'subnetId', + 'vcn_id': 'vcnId', + 'display_name': 'displayName', + 'vcn_nsg_ids': 'vcnNsgIds', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'lifecycle_state': 'lifecycleState', + 'lifecycle_details': 'lifecycleDetails', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags' + } + self._id = None + self._description = None + self._compartment_id = None + self._subnet_id = None + self._vcn_id = None + self._display_name = None + self._vcn_nsg_ids = None + self._time_created = None + self._time_updated = None + self._lifecycle_state = None + self._lifecycle_details = None + self._freeform_tags = None + self._defined_tags = None + self._system_tags = None + + @property + def id(self): + """ + **[Required]** Gets the id of this DistributedDatabasePrivateEndpointSummary. + DistributedDatabasePrivateEndpoint identifier + + + :return: The id of this DistributedDatabasePrivateEndpointSummary. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this DistributedDatabasePrivateEndpointSummary. + DistributedDatabasePrivateEndpoint identifier + + + :param id: The id of this DistributedDatabasePrivateEndpointSummary. + :type: str + """ + self._id = id + + @property + def description(self): + """ + Gets the description of this DistributedDatabasePrivateEndpointSummary. + DistributedDatabasePrivateEndpoint description. + + + :return: The description of this DistributedDatabasePrivateEndpointSummary. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this DistributedDatabasePrivateEndpointSummary. + DistributedDatabasePrivateEndpoint description. + + + :param description: The description of this DistributedDatabasePrivateEndpointSummary. + :type: str + """ + self._description = description + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this DistributedDatabasePrivateEndpointSummary. + Identifier of the compartment where private endpoint exists. + + + :return: The compartment_id of this DistributedDatabasePrivateEndpointSummary. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this DistributedDatabasePrivateEndpointSummary. + Identifier of the compartment where private endpoint exists. + + + :param compartment_id: The compartment_id of this DistributedDatabasePrivateEndpointSummary. + :type: str + """ + self._compartment_id = compartment_id + + @property + def subnet_id(self): + """ + **[Required]** Gets the subnet_id of this DistributedDatabasePrivateEndpointSummary. + Identifier of the customer subnet against which private endpoint is created. + + + :return: The subnet_id of this DistributedDatabasePrivateEndpointSummary. + :rtype: str + """ + return self._subnet_id + + @subnet_id.setter + def subnet_id(self, subnet_id): + """ + Sets the subnet_id of this DistributedDatabasePrivateEndpointSummary. + Identifier of the customer subnet against which private endpoint is created. + + + :param subnet_id: The subnet_id of this DistributedDatabasePrivateEndpointSummary. + :type: str + """ + self._subnet_id = subnet_id + + @property + def vcn_id(self): + """ + **[Required]** Gets the vcn_id of this DistributedDatabasePrivateEndpointSummary. + Identifier of the VCN in which subnet exists. + + + :return: The vcn_id of this DistributedDatabasePrivateEndpointSummary. + :rtype: str + """ + return self._vcn_id + + @vcn_id.setter + def vcn_id(self, vcn_id): + """ + Sets the vcn_id of this DistributedDatabasePrivateEndpointSummary. + Identifier of the VCN in which subnet exists. + + + :param vcn_id: The vcn_id of this DistributedDatabasePrivateEndpointSummary. + :type: str + """ + self._vcn_id = vcn_id + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this DistributedDatabasePrivateEndpointSummary. + Private endpoint display name. + + + :return: The display_name of this DistributedDatabasePrivateEndpointSummary. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this DistributedDatabasePrivateEndpointSummary. + Private endpoint display name. + + + :param display_name: The display_name of this DistributedDatabasePrivateEndpointSummary. + :type: str + """ + self._display_name = display_name + + @property + def vcn_nsg_ids(self): + """ + Gets the vcn_nsg_ids of this DistributedDatabasePrivateEndpointSummary. + The list of network security group (NSG) details associated with the private endpoint. + + + :return: The vcn_nsg_ids of this DistributedDatabasePrivateEndpointSummary. + :rtype: list[oci.distributed_database_v26.models.VcnNsgIdsDetails] + """ + return self._vcn_nsg_ids + + @vcn_nsg_ids.setter + def vcn_nsg_ids(self, vcn_nsg_ids): + """ + Sets the vcn_nsg_ids of this DistributedDatabasePrivateEndpointSummary. + The list of network security group (NSG) details associated with the private endpoint. + + + :param vcn_nsg_ids: The vcn_nsg_ids of this DistributedDatabasePrivateEndpointSummary. + :type: list[oci.distributed_database_v26.models.VcnNsgIdsDetails] + """ + self._vcn_nsg_ids = vcn_nsg_ids + + @property + def time_created(self): + """ + **[Required]** Gets the time_created of this DistributedDatabasePrivateEndpointSummary. + The time the the private endpoint was created. An RFC3339 formatted datetime string + + + :return: The time_created of this DistributedDatabasePrivateEndpointSummary. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this DistributedDatabasePrivateEndpointSummary. + The time the the private endpoint was created. An RFC3339 formatted datetime string + + + :param time_created: The time_created of this DistributedDatabasePrivateEndpointSummary. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + **[Required]** Gets the time_updated of this DistributedDatabasePrivateEndpointSummary. + The time the private endpoint was last updated. An RFC3339 formatted datetime string + + + :return: The time_updated of this DistributedDatabasePrivateEndpointSummary. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this DistributedDatabasePrivateEndpointSummary. + The time the private endpoint was last updated. An RFC3339 formatted datetime string + + + :param time_updated: The time_updated of this DistributedDatabasePrivateEndpointSummary. + :type: datetime + """ + self._time_updated = time_updated + + @property + def lifecycle_state(self): + """ + **[Required]** Gets the lifecycle_state of this DistributedDatabasePrivateEndpointSummary. + Lifecycle state of private endpoint. + + + :return: The lifecycle_state of this DistributedDatabasePrivateEndpointSummary. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this DistributedDatabasePrivateEndpointSummary. + Lifecycle state of private endpoint. + + + :param lifecycle_state: The lifecycle_state of this DistributedDatabasePrivateEndpointSummary. + :type: str + """ + self._lifecycle_state = lifecycle_state + + @property + def lifecycle_details(self): + """ + Gets the lifecycle_details of this DistributedDatabasePrivateEndpointSummary. + Detailed message for the lifecycle state. + + + :return: The lifecycle_details of this DistributedDatabasePrivateEndpointSummary. + :rtype: str + """ + return self._lifecycle_details + + @lifecycle_details.setter + def lifecycle_details(self, lifecycle_details): + """ + Sets the lifecycle_details of this DistributedDatabasePrivateEndpointSummary. + Detailed message for the lifecycle state. + + + :param lifecycle_details: The lifecycle_details of this DistributedDatabasePrivateEndpointSummary. + :type: str + """ + self._lifecycle_details = lifecycle_details + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this DistributedDatabasePrivateEndpointSummary. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this DistributedDatabasePrivateEndpointSummary. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this DistributedDatabasePrivateEndpointSummary. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this DistributedDatabasePrivateEndpointSummary. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this DistributedDatabasePrivateEndpointSummary. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this DistributedDatabasePrivateEndpointSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this DistributedDatabasePrivateEndpointSummary. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this DistributedDatabasePrivateEndpointSummary. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def system_tags(self): + """ + Gets the system_tags of this DistributedDatabasePrivateEndpointSummary. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :return: The system_tags of this DistributedDatabasePrivateEndpointSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this DistributedDatabasePrivateEndpointSummary. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :param system_tags: The system_tags of this DistributedDatabasePrivateEndpointSummary. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_database_raft_metric.py b/src/oci/distributed_database_v26/models/distributed_database_raft_metric.py new file mode 100644 index 0000000000..9f629e7f8f --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_database_raft_metric.py @@ -0,0 +1,101 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedDatabaseRaftMetric(object): + """ + Raft metrics for shards and catalog for the Globally distributed database. + """ + + def __init__(self, **kwargs): + """ + Initializes a new DistributedDatabaseRaftMetric object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param raft_metrics: + The value to assign to the raft_metrics property of this DistributedDatabaseRaftMetric. + :type raft_metrics: dict(str, object) + + :param config_tasks: + The value to assign to the config_tasks property of this DistributedDatabaseRaftMetric. + :type config_tasks: dict(str, object) + + """ + self.swagger_types = { + 'raft_metrics': 'dict(str, object)', + 'config_tasks': 'dict(str, object)' + } + self.attribute_map = { + 'raft_metrics': 'raftMetrics', + 'config_tasks': 'configTasks' + } + self._raft_metrics = None + self._config_tasks = None + + @property + def raft_metrics(self): + """ + **[Required]** Gets the raft_metrics of this DistributedDatabaseRaftMetric. + Raft metrics for the Globally distributed database. + + + :return: The raft_metrics of this DistributedDatabaseRaftMetric. + :rtype: dict(str, object) + """ + return self._raft_metrics + + @raft_metrics.setter + def raft_metrics(self, raft_metrics): + """ + Sets the raft_metrics of this DistributedDatabaseRaftMetric. + Raft metrics for the Globally distributed database. + + + :param raft_metrics: The raft_metrics of this DistributedDatabaseRaftMetric. + :type: dict(str, object) + """ + self._raft_metrics = raft_metrics + + @property + def config_tasks(self): + """ + Gets the config_tasks of this DistributedDatabaseRaftMetric. + Details of in-progress configuration tasks. + + + :return: The config_tasks of this DistributedDatabaseRaftMetric. + :rtype: dict(str, object) + """ + return self._config_tasks + + @config_tasks.setter + def config_tasks(self, config_tasks): + """ + Sets the config_tasks of this DistributedDatabaseRaftMetric. + Details of in-progress configuration tasks. + + + :param config_tasks: The config_tasks of this DistributedDatabaseRaftMetric. + :type: dict(str, object) + """ + self._config_tasks = config_tasks + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_database_ru_change_log.py b/src/oci/distributed_database_v26/models/distributed_database_ru_change_log.py new file mode 100644 index 0000000000..b119377cfa --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_database_ru_change_log.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedDatabaseRuChangeLog(object): + """ + Move RU invocation history for the Globally distributed database. + """ + + def __init__(self, **kwargs): + """ + Initializes a new DistributedDatabaseRuChangeLog object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param ru_change_log: + The value to assign to the ru_change_log property of this DistributedDatabaseRuChangeLog. + :type ru_change_log: list[oci.distributed_database_v26.models.DistributedDatabaseRuChangeLogSummary] + + """ + self.swagger_types = { + 'ru_change_log': 'list[DistributedDatabaseRuChangeLogSummary]' + } + self.attribute_map = { + 'ru_change_log': 'ruChangeLog' + } + self._ru_change_log = None + + @property + def ru_change_log(self): + """ + **[Required]** Gets the ru_change_log of this DistributedDatabaseRuChangeLog. + Ordered list of move RU invocations (latest first). + + + :return: The ru_change_log of this DistributedDatabaseRuChangeLog. + :rtype: list[oci.distributed_database_v26.models.DistributedDatabaseRuChangeLogSummary] + """ + return self._ru_change_log + + @ru_change_log.setter + def ru_change_log(self, ru_change_log): + """ + Sets the ru_change_log of this DistributedDatabaseRuChangeLog. + Ordered list of move RU invocations (latest first). + + + :param ru_change_log: The ru_change_log of this DistributedDatabaseRuChangeLog. + :type: list[oci.distributed_database_v26.models.DistributedDatabaseRuChangeLogSummary] + """ + self._ru_change_log = ru_change_log + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_database_ru_change_log_summary.py b/src/oci/distributed_database_v26/models/distributed_database_ru_change_log_summary.py new file mode 100644 index 0000000000..f76b0d536c --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_database_ru_change_log_summary.py @@ -0,0 +1,280 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedDatabaseRuChangeLogSummary(object): + """ + One move RU invocation record for the Globally distributed database. + """ + + #: A constant which can be used with the status property of a DistributedDatabaseRuChangeLogSummary. + #: This constant has a value of "FAILED" + STATUS_FAILED = "FAILED" + + #: A constant which can be used with the status property of a DistributedDatabaseRuChangeLogSummary. + #: This constant has a value of "QUEUED" + STATUS_QUEUED = "QUEUED" + + #: A constant which can be used with the status property of a DistributedDatabaseRuChangeLogSummary. + #: This constant has a value of "IN_PROGRESS" + STATUS_IN_PROGRESS = "IN_PROGRESS" + + #: A constant which can be used with the status property of a DistributedDatabaseRuChangeLogSummary. + #: This constant has a value of "COMPLETED" + STATUS_COMPLETED = "COMPLETED" + + def __init__(self, **kwargs): + """ + Initializes a new DistributedDatabaseRuChangeLogSummary object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source_shard_name: + The value to assign to the source_shard_name property of this DistributedDatabaseRuChangeLogSummary. + :type source_shard_name: str + + :param target_shard_name: + The value to assign to the target_shard_name property of this DistributedDatabaseRuChangeLogSummary. + :type target_shard_name: str + + :param ru_id: + The value to assign to the ru_id property of this DistributedDatabaseRuChangeLogSummary. + :type ru_id: str + + :param status: + The value to assign to the status property of this DistributedDatabaseRuChangeLogSummary. + Allowed values for this property are: "FAILED", "QUEUED", "IN_PROGRESS", "COMPLETED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type status: str + + :param triggered_by: + The value to assign to the triggered_by property of this DistributedDatabaseRuChangeLogSummary. + :type triggered_by: str + + :param time_created: + The value to assign to the time_created property of this DistributedDatabaseRuChangeLogSummary. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this DistributedDatabaseRuChangeLogSummary. + :type time_updated: datetime + + """ + self.swagger_types = { + 'source_shard_name': 'str', + 'target_shard_name': 'str', + 'ru_id': 'str', + 'status': 'str', + 'triggered_by': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime' + } + self.attribute_map = { + 'source_shard_name': 'sourceShardName', + 'target_shard_name': 'targetShardName', + 'ru_id': 'ruId', + 'status': 'status', + 'triggered_by': 'triggeredBy', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated' + } + self._source_shard_name = None + self._target_shard_name = None + self._ru_id = None + self._status = None + self._triggered_by = None + self._time_created = None + self._time_updated = None + + @property + def source_shard_name(self): + """ + Gets the source_shard_name of this DistributedDatabaseRuChangeLogSummary. + Source shard for move RU invocation. + + + :return: The source_shard_name of this DistributedDatabaseRuChangeLogSummary. + :rtype: str + """ + return self._source_shard_name + + @source_shard_name.setter + def source_shard_name(self, source_shard_name): + """ + Sets the source_shard_name of this DistributedDatabaseRuChangeLogSummary. + Source shard for move RU invocation. + + + :param source_shard_name: The source_shard_name of this DistributedDatabaseRuChangeLogSummary. + :type: str + """ + self._source_shard_name = source_shard_name + + @property + def target_shard_name(self): + """ + Gets the target_shard_name of this DistributedDatabaseRuChangeLogSummary. + Target shard for move RU invocation. + + + :return: The target_shard_name of this DistributedDatabaseRuChangeLogSummary. + :rtype: str + """ + return self._target_shard_name + + @target_shard_name.setter + def target_shard_name(self, target_shard_name): + """ + Sets the target_shard_name of this DistributedDatabaseRuChangeLogSummary. + Target shard for move RU invocation. + + + :param target_shard_name: The target_shard_name of this DistributedDatabaseRuChangeLogSummary. + :type: str + """ + self._target_shard_name = target_shard_name + + @property + def ru_id(self): + """ + Gets the ru_id of this DistributedDatabaseRuChangeLogSummary. + Replication unit identifier associated with the invocation. + + + :return: The ru_id of this DistributedDatabaseRuChangeLogSummary. + :rtype: str + """ + return self._ru_id + + @ru_id.setter + def ru_id(self, ru_id): + """ + Sets the ru_id of this DistributedDatabaseRuChangeLogSummary. + Replication unit identifier associated with the invocation. + + + :param ru_id: The ru_id of this DistributedDatabaseRuChangeLogSummary. + :type: str + """ + self._ru_id = ru_id + + @property + def status(self): + """ + Gets the status of this DistributedDatabaseRuChangeLogSummary. + Current or terminal status of the move RU invocation. + + Allowed values for this property are: "FAILED", "QUEUED", "IN_PROGRESS", "COMPLETED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The status of this DistributedDatabaseRuChangeLogSummary. + :rtype: str + """ + return self._status + + @status.setter + def status(self, status): + """ + Sets the status of this DistributedDatabaseRuChangeLogSummary. + Current or terminal status of the move RU invocation. + + + :param status: The status of this DistributedDatabaseRuChangeLogSummary. + :type: str + """ + allowed_values = ["FAILED", "QUEUED", "IN_PROGRESS", "COMPLETED"] + if not value_allowed_none_or_none_sentinel(status, allowed_values): + status = 'UNKNOWN_ENUM_VALUE' + self._status = status + + @property + def triggered_by(self): + """ + Gets the triggered_by of this DistributedDatabaseRuChangeLogSummary. + Actor who triggered the move RU invocation. + + + :return: The triggered_by of this DistributedDatabaseRuChangeLogSummary. + :rtype: str + """ + return self._triggered_by + + @triggered_by.setter + def triggered_by(self, triggered_by): + """ + Sets the triggered_by of this DistributedDatabaseRuChangeLogSummary. + Actor who triggered the move RU invocation. + + + :param triggered_by: The triggered_by of this DistributedDatabaseRuChangeLogSummary. + :type: str + """ + self._triggered_by = triggered_by + + @property + def time_created(self): + """ + Gets the time_created of this DistributedDatabaseRuChangeLogSummary. + Entry creation timestamp in UTC. + + + :return: The time_created of this DistributedDatabaseRuChangeLogSummary. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this DistributedDatabaseRuChangeLogSummary. + Entry creation timestamp in UTC. + + + :param time_created: The time_created of this DistributedDatabaseRuChangeLogSummary. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + Gets the time_updated of this DistributedDatabaseRuChangeLogSummary. + Entry update timestamp in UTC. + + + :return: The time_updated of this DistributedDatabaseRuChangeLogSummary. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this DistributedDatabaseRuChangeLogSummary. + Entry update timestamp in UTC. + + + :param time_updated: The time_updated of this DistributedDatabaseRuChangeLogSummary. + :type: datetime + """ + self._time_updated = time_updated + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_database_shard_database.py b/src/oci/distributed_database_v26/models/distributed_database_shard_database.py new file mode 100644 index 0000000000..302324d3f5 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_database_shard_database.py @@ -0,0 +1,261 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedDatabaseShardDatabase(object): + """ + Details of a distributed database shard. + """ + + #: A constant which can be used with the source property of a DistributedDatabaseShardDatabase. + #: This constant has a value of "XS_EXISTING_CLUSTER" + SOURCE_XS_EXISTING_CLUSTER = "XS_EXISTING_CLUSTER" + + #: A constant which can be used with the source property of a DistributedDatabaseShardDatabase. + #: This constant has a value of "XS_NEW_CLUSTER" + SOURCE_XS_NEW_CLUSTER = "XS_NEW_CLUSTER" + + #: A constant which can be used with the source property of a DistributedDatabaseShardDatabase. + #: This constant has a value of "XS_NEW_VAULT_AND_CLUSTER" + SOURCE_XS_NEW_VAULT_AND_CLUSTER = "XS_NEW_VAULT_AND_CLUSTER" + + #: A constant which can be used with the source property of a DistributedDatabaseShardDatabase. + #: This constant has a value of "XD_EXISTING_CLUSTER" + SOURCE_XD_EXISTING_CLUSTER = "XD_EXISTING_CLUSTER" + + #: A constant which can be used with the source property of a DistributedDatabaseShardDatabase. + #: This constant has a value of "EXISTING_DB_HOME" + SOURCE_EXISTING_DB_HOME = "EXISTING_DB_HOME" + + def __init__(self, **kwargs): + """ + Initializes a new DistributedDatabaseShardDatabase object with values from keyword arguments. This class has the following subclasses and if you are using this class as input + to a service operations then you should favor using a subclass over the base class: + + * :class:`~oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithExadbXsNewCluster` + * :class:`~oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster` + * :class:`~oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithExadbXd` + * :class:`~oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithDbHome` + * :class:`~oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithExadbXs` + + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source: + The value to assign to the source property of this DistributedDatabaseShardDatabase. + Allowed values for this property are: "XS_EXISTING_CLUSTER", "XS_NEW_CLUSTER", "XS_NEW_VAULT_AND_CLUSTER", "XD_EXISTING_CLUSTER", "EXISTING_DB_HOME", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type source: str + + :param name: + The value to assign to the name property of this DistributedDatabaseShardDatabase. + :type name: str + + :param time_created: + The value to assign to the time_created property of this DistributedDatabaseShardDatabase. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this DistributedDatabaseShardDatabase. + :type time_updated: datetime + + :param metadata: + The value to assign to the metadata property of this DistributedDatabaseShardDatabase. + :type metadata: oci.distributed_database_v26.models.DistributedDbMetadata + + """ + self.swagger_types = { + 'source': 'str', + 'name': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'metadata': 'DistributedDbMetadata' + } + self.attribute_map = { + 'source': 'source', + 'name': 'name', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'metadata': 'metadata' + } + self._source = None + self._name = None + self._time_created = None + self._time_updated = None + self._metadata = None + + @staticmethod + def get_subtype(object_dictionary): + """ + Given the hash representation of a subtype of this class, + use the info in the hash to return the class of the subtype. + """ + type = object_dictionary['source'] + + if type == 'XS_NEW_CLUSTER': + return 'DistributedDatabaseShardDatabaseWithExadbXsNewCluster' + + if type == 'XS_NEW_VAULT_AND_CLUSTER': + return 'DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster' + + if type == 'XD_EXISTING_CLUSTER': + return 'DistributedDatabaseShardDatabaseWithExadbXd' + + if type == 'EXISTING_DB_HOME': + return 'DistributedDatabaseShardDatabaseWithDbHome' + + if type == 'XS_EXISTING_CLUSTER': + return 'DistributedDatabaseShardDatabaseWithExadbXs' + else: + return 'DistributedDatabaseShardDatabase' + + @property + def source(self): + """ + **[Required]** Gets the source of this DistributedDatabaseShardDatabase. + The source of the Globally distributed database type. + Use XS_EXISTING_CLUSTER for a database on Exascale Infrastructure that uses a pre-existing cluster. + Use XS_NEW_CLUSTER for a database on Exascale Infrastructure that requires a new cluster created from scratch. + Use XS_NEW_VAULT_AND_CLUSTER for a database on Exascale Infrastructure that requires a new vault and cluster created from scratch. + Use XD_EXISTING_CLUSTER for a database on Dedicated Infrastructure that uses a pre-existing cluster. + Use EXISTING_DB_HOME for a database on a pre-existing database home. + + Allowed values for this property are: "XS_EXISTING_CLUSTER", "XS_NEW_CLUSTER", "XS_NEW_VAULT_AND_CLUSTER", "XD_EXISTING_CLUSTER", "EXISTING_DB_HOME", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The source of this DistributedDatabaseShardDatabase. + :rtype: str + """ + return self._source + + @source.setter + def source(self, source): + """ + Sets the source of this DistributedDatabaseShardDatabase. + The source of the Globally distributed database type. + Use XS_EXISTING_CLUSTER for a database on Exascale Infrastructure that uses a pre-existing cluster. + Use XS_NEW_CLUSTER for a database on Exascale Infrastructure that requires a new cluster created from scratch. + Use XS_NEW_VAULT_AND_CLUSTER for a database on Exascale Infrastructure that requires a new vault and cluster created from scratch. + Use XD_EXISTING_CLUSTER for a database on Dedicated Infrastructure that uses a pre-existing cluster. + Use EXISTING_DB_HOME for a database on a pre-existing database home. + + + :param source: The source of this DistributedDatabaseShardDatabase. + :type: str + """ + allowed_values = ["XS_EXISTING_CLUSTER", "XS_NEW_CLUSTER", "XS_NEW_VAULT_AND_CLUSTER", "XD_EXISTING_CLUSTER", "EXISTING_DB_HOME"] + if not value_allowed_none_or_none_sentinel(source, allowed_values): + source = 'UNKNOWN_ENUM_VALUE' + self._source = source + + @property + def name(self): + """ + **[Required]** Gets the name of this DistributedDatabaseShardDatabase. + Name of the shard. + + + :return: The name of this DistributedDatabaseShardDatabase. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this DistributedDatabaseShardDatabase. + Name of the shard. + + + :param name: The name of this DistributedDatabaseShardDatabase. + :type: str + """ + self._name = name + + @property + def time_created(self): + """ + **[Required]** Gets the time_created of this DistributedDatabaseShardDatabase. + The time the shard was created. An RFC3339 formatted datetime string. + + + :return: The time_created of this DistributedDatabaseShardDatabase. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this DistributedDatabaseShardDatabase. + The time the shard was created. An RFC3339 formatted datetime string. + + + :param time_created: The time_created of this DistributedDatabaseShardDatabase. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + **[Required]** Gets the time_updated of this DistributedDatabaseShardDatabase. + The time the shard was last updated. An RFC3339 formatted datetime string. + + + :return: The time_updated of this DistributedDatabaseShardDatabase. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this DistributedDatabaseShardDatabase. + The time the shard was last updated. An RFC3339 formatted datetime string. + + + :param time_updated: The time_updated of this DistributedDatabaseShardDatabase. + :type: datetime + """ + self._time_updated = time_updated + + @property + def metadata(self): + """ + Gets the metadata of this DistributedDatabaseShardDatabase. + + :return: The metadata of this DistributedDatabaseShardDatabase. + :rtype: oci.distributed_database_v26.models.DistributedDbMetadata + """ + return self._metadata + + @metadata.setter + def metadata(self, metadata): + """ + Sets the metadata of this DistributedDatabaseShardDatabase. + + :param metadata: The metadata of this DistributedDatabaseShardDatabase. + :type: oci.distributed_database_v26.models.DistributedDbMetadata + """ + self._metadata = metadata + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_database_shard_database_with_db_home.py b/src/oci/distributed_database_v26/models/distributed_database_shard_database_with_db_home.py new file mode 100644 index 0000000000..d79bec190a --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_database_shard_database_with_db_home.py @@ -0,0 +1,496 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +from .distributed_database_shard_database import DistributedDatabaseShardDatabase +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedDatabaseShardDatabaseWithDbHome(DistributedDatabaseShardDatabase): + """ + Details of a distributed database shard using a pre-existing Database Home. + """ + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithDbHome. + #: This constant has a value of "FAILED" + STATUS_FAILED = "FAILED" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithDbHome. + #: This constant has a value of "DELETING" + STATUS_DELETING = "DELETING" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithDbHome. + #: This constant has a value of "DELETED" + STATUS_DELETED = "DELETED" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithDbHome. + #: This constant has a value of "UPDATING" + STATUS_UPDATING = "UPDATING" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithDbHome. + #: This constant has a value of "CREATING" + STATUS_CREATING = "CREATING" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithDbHome. + #: This constant has a value of "CREATED" + STATUS_CREATED = "CREATED" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithDbHome. + #: This constant has a value of "READY_FOR_CONFIGURATION" + STATUS_READY_FOR_CONFIGURATION = "READY_FOR_CONFIGURATION" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithDbHome. + #: This constant has a value of "CONFIGURED" + STATUS_CONFIGURED = "CONFIGURED" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithDbHome. + #: This constant has a value of "NEEDS_ATTENTION" + STATUS_NEEDS_ATTENTION = "NEEDS_ATTENTION" + + #: A constant which can be used with the protection_mode property of a DistributedDatabaseShardDatabaseWithDbHome. + #: This constant has a value of "MAXIMUM_AVAILABILITY" + PROTECTION_MODE_MAXIMUM_AVAILABILITY = "MAXIMUM_AVAILABILITY" + + #: A constant which can be used with the protection_mode property of a DistributedDatabaseShardDatabaseWithDbHome. + #: This constant has a value of "MAXIMUM_PERFORMANCE" + PROTECTION_MODE_MAXIMUM_PERFORMANCE = "MAXIMUM_PERFORMANCE" + + #: A constant which can be used with the protection_mode property of a DistributedDatabaseShardDatabaseWithDbHome. + #: This constant has a value of "MAXIMUM_PROTECTION" + PROTECTION_MODE_MAXIMUM_PROTECTION = "MAXIMUM_PROTECTION" + + #: A constant which can be used with the transport_type property of a DistributedDatabaseShardDatabaseWithDbHome. + #: This constant has a value of "SYNC" + TRANSPORT_TYPE_SYNC = "SYNC" + + #: A constant which can be used with the transport_type property of a DistributedDatabaseShardDatabaseWithDbHome. + #: This constant has a value of "ASYNC" + TRANSPORT_TYPE_ASYNC = "ASYNC" + + #: A constant which can be used with the transport_type property of a DistributedDatabaseShardDatabaseWithDbHome. + #: This constant has a value of "FASTSYNC" + TRANSPORT_TYPE_FASTSYNC = "FASTSYNC" + + def __init__(self, **kwargs): + """ + Initializes a new DistributedDatabaseShardDatabaseWithDbHome object with values from keyword arguments. The default value of the :py:attr:`~oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithDbHome.source` attribute + of this class is ``EXISTING_DB_HOME`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source: + The value to assign to the source property of this DistributedDatabaseShardDatabaseWithDbHome. + Allowed values for this property are: "XS_EXISTING_CLUSTER", "XS_NEW_CLUSTER", "XS_NEW_VAULT_AND_CLUSTER", "XD_EXISTING_CLUSTER", "EXISTING_DB_HOME", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type source: str + + :param name: + The value to assign to the name property of this DistributedDatabaseShardDatabaseWithDbHome. + :type name: str + + :param time_created: + The value to assign to the time_created property of this DistributedDatabaseShardDatabaseWithDbHome. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this DistributedDatabaseShardDatabaseWithDbHome. + :type time_updated: datetime + + :param metadata: + The value to assign to the metadata property of this DistributedDatabaseShardDatabaseWithDbHome. + :type metadata: oci.distributed_database_v26.models.DistributedDbMetadata + + :param db_home_id: + The value to assign to the db_home_id property of this DistributedDatabaseShardDatabaseWithDbHome. + :type db_home_id: str + + :param vm_cluster_id: + The value to assign to the vm_cluster_id property of this DistributedDatabaseShardDatabaseWithDbHome. + :type vm_cluster_id: str + + :param status: + The value to assign to the status property of this DistributedDatabaseShardDatabaseWithDbHome. + Allowed values for this property are: "FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type status: str + + :param supporting_resource_id: + The value to assign to the supporting_resource_id property of this DistributedDatabaseShardDatabaseWithDbHome. + :type supporting_resource_id: str + + :param container_database_id: + The value to assign to the container_database_id property of this DistributedDatabaseShardDatabaseWithDbHome. + :type container_database_id: str + + :param vault_id: + The value to assign to the vault_id property of this DistributedDatabaseShardDatabaseWithDbHome. + :type vault_id: str + + :param kms_key_id: + The value to assign to the kms_key_id property of this DistributedDatabaseShardDatabaseWithDbHome. + :type kms_key_id: str + + :param kms_key_version_id: + The value to assign to the kms_key_version_id property of this DistributedDatabaseShardDatabaseWithDbHome. + :type kms_key_version_id: str + + :param protection_mode: + The value to assign to the protection_mode property of this DistributedDatabaseShardDatabaseWithDbHome. + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type protection_mode: str + + :param transport_type: + The value to assign to the transport_type property of this DistributedDatabaseShardDatabaseWithDbHome. + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type transport_type: str + + """ + self.swagger_types = { + 'source': 'str', + 'name': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'metadata': 'DistributedDbMetadata', + 'db_home_id': 'str', + 'vm_cluster_id': 'str', + 'status': 'str', + 'supporting_resource_id': 'str', + 'container_database_id': 'str', + 'vault_id': 'str', + 'kms_key_id': 'str', + 'kms_key_version_id': 'str', + 'protection_mode': 'str', + 'transport_type': 'str' + } + self.attribute_map = { + 'source': 'source', + 'name': 'name', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'metadata': 'metadata', + 'db_home_id': 'dbHomeId', + 'vm_cluster_id': 'vmClusterId', + 'status': 'status', + 'supporting_resource_id': 'supportingResourceId', + 'container_database_id': 'containerDatabaseId', + 'vault_id': 'vaultId', + 'kms_key_id': 'kmsKeyId', + 'kms_key_version_id': 'kmsKeyVersionId', + 'protection_mode': 'protectionMode', + 'transport_type': 'transportType' + } + self._source = None + self._name = None + self._time_created = None + self._time_updated = None + self._metadata = None + self._db_home_id = None + self._vm_cluster_id = None + self._status = None + self._supporting_resource_id = None + self._container_database_id = None + self._vault_id = None + self._kms_key_id = None + self._kms_key_version_id = None + self._protection_mode = None + self._transport_type = None + self._source = 'EXISTING_DB_HOME' + + @property + def db_home_id(self): + """ + **[Required]** Gets the db_home_id of this DistributedDatabaseShardDatabaseWithDbHome. + The `OCID`__ of the Database Home. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The db_home_id of this DistributedDatabaseShardDatabaseWithDbHome. + :rtype: str + """ + return self._db_home_id + + @db_home_id.setter + def db_home_id(self, db_home_id): + """ + Sets the db_home_id of this DistributedDatabaseShardDatabaseWithDbHome. + The `OCID`__ of the Database Home. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param db_home_id: The db_home_id of this DistributedDatabaseShardDatabaseWithDbHome. + :type: str + """ + self._db_home_id = db_home_id + + @property + def vm_cluster_id(self): + """ + Gets the vm_cluster_id of this DistributedDatabaseShardDatabaseWithDbHome. + The `OCID`__ of the VmCluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The vm_cluster_id of this DistributedDatabaseShardDatabaseWithDbHome. + :rtype: str + """ + return self._vm_cluster_id + + @vm_cluster_id.setter + def vm_cluster_id(self, vm_cluster_id): + """ + Sets the vm_cluster_id of this DistributedDatabaseShardDatabaseWithDbHome. + The `OCID`__ of the VmCluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param vm_cluster_id: The vm_cluster_id of this DistributedDatabaseShardDatabaseWithDbHome. + :type: str + """ + self._vm_cluster_id = vm_cluster_id + + @property + def status(self): + """ + **[Required]** Gets the status of this DistributedDatabaseShardDatabaseWithDbHome. + Status of distributed database shard. + + Allowed values for this property are: "FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The status of this DistributedDatabaseShardDatabaseWithDbHome. + :rtype: str + """ + return self._status + + @status.setter + def status(self, status): + """ + Sets the status of this DistributedDatabaseShardDatabaseWithDbHome. + Status of distributed database shard. + + + :param status: The status of this DistributedDatabaseShardDatabaseWithDbHome. + :type: str + """ + allowed_values = ["FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION"] + if not value_allowed_none_or_none_sentinel(status, allowed_values): + status = 'UNKNOWN_ENUM_VALUE' + self._status = status + + @property + def supporting_resource_id(self): + """ + Gets the supporting_resource_id of this DistributedDatabaseShardDatabaseWithDbHome. + the identifier of the underlying supporting resource. + + + :return: The supporting_resource_id of this DistributedDatabaseShardDatabaseWithDbHome. + :rtype: str + """ + return self._supporting_resource_id + + @supporting_resource_id.setter + def supporting_resource_id(self, supporting_resource_id): + """ + Sets the supporting_resource_id of this DistributedDatabaseShardDatabaseWithDbHome. + the identifier of the underlying supporting resource. + + + :param supporting_resource_id: The supporting_resource_id of this DistributedDatabaseShardDatabaseWithDbHome. + :type: str + """ + self._supporting_resource_id = supporting_resource_id + + @property + def container_database_id(self): + """ + Gets the container_database_id of this DistributedDatabaseShardDatabaseWithDbHome. + the identifier of the container database for underlying supporting resource. + + + :return: The container_database_id of this DistributedDatabaseShardDatabaseWithDbHome. + :rtype: str + """ + return self._container_database_id + + @container_database_id.setter + def container_database_id(self, container_database_id): + """ + Sets the container_database_id of this DistributedDatabaseShardDatabaseWithDbHome. + the identifier of the container database for underlying supporting resource. + + + :param container_database_id: The container_database_id of this DistributedDatabaseShardDatabaseWithDbHome. + :type: str + """ + self._container_database_id = container_database_id + + @property + def vault_id(self): + """ + Gets the vault_id of this DistributedDatabaseShardDatabaseWithDbHome. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :return: The vault_id of this DistributedDatabaseShardDatabaseWithDbHome. + :rtype: str + """ + return self._vault_id + + @vault_id.setter + def vault_id(self, vault_id): + """ + Sets the vault_id of this DistributedDatabaseShardDatabaseWithDbHome. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :param vault_id: The vault_id of this DistributedDatabaseShardDatabaseWithDbHome. + :type: str + """ + self._vault_id = vault_id + + @property + def kms_key_id(self): + """ + Gets the kms_key_id of this DistributedDatabaseShardDatabaseWithDbHome. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_id of this DistributedDatabaseShardDatabaseWithDbHome. + :rtype: str + """ + return self._kms_key_id + + @kms_key_id.setter + def kms_key_id(self, kms_key_id): + """ + Sets the kms_key_id of this DistributedDatabaseShardDatabaseWithDbHome. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_id: The kms_key_id of this DistributedDatabaseShardDatabaseWithDbHome. + :type: str + """ + self._kms_key_id = kms_key_id + + @property + def kms_key_version_id(self): + """ + Gets the kms_key_version_id of this DistributedDatabaseShardDatabaseWithDbHome. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_version_id of this DistributedDatabaseShardDatabaseWithDbHome. + :rtype: str + """ + return self._kms_key_version_id + + @kms_key_version_id.setter + def kms_key_version_id(self, kms_key_version_id): + """ + Sets the kms_key_version_id of this DistributedDatabaseShardDatabaseWithDbHome. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_version_id: The kms_key_version_id of this DistributedDatabaseShardDatabaseWithDbHome. + :type: str + """ + self._kms_key_version_id = kms_key_version_id + + @property + def protection_mode(self): + """ + Gets the protection_mode of this DistributedDatabaseShardDatabaseWithDbHome. + The protection mode used for the Data Guard association. + + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The protection_mode of this DistributedDatabaseShardDatabaseWithDbHome. + :rtype: str + """ + return self._protection_mode + + @protection_mode.setter + def protection_mode(self, protection_mode): + """ + Sets the protection_mode of this DistributedDatabaseShardDatabaseWithDbHome. + The protection mode used for the Data Guard association. + + + :param protection_mode: The protection_mode of this DistributedDatabaseShardDatabaseWithDbHome. + :type: str + """ + allowed_values = ["MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION"] + if not value_allowed_none_or_none_sentinel(protection_mode, allowed_values): + protection_mode = 'UNKNOWN_ENUM_VALUE' + self._protection_mode = protection_mode + + @property + def transport_type(self): + """ + Gets the transport_type of this DistributedDatabaseShardDatabaseWithDbHome. + The transport type used for the Data Guard association. + + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The transport_type of this DistributedDatabaseShardDatabaseWithDbHome. + :rtype: str + """ + return self._transport_type + + @transport_type.setter + def transport_type(self, transport_type): + """ + Sets the transport_type of this DistributedDatabaseShardDatabaseWithDbHome. + The transport type used for the Data Guard association. + + + :param transport_type: The transport_type of this DistributedDatabaseShardDatabaseWithDbHome. + :type: str + """ + allowed_values = ["SYNC", "ASYNC", "FASTSYNC"] + if not value_allowed_none_or_none_sentinel(transport_type, allowed_values): + transport_type = 'UNKNOWN_ENUM_VALUE' + self._transport_type = transport_type + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_database_shard_database_with_exadb_xd.py b/src/oci/distributed_database_v26/models/distributed_database_shard_database_with_exadb_xd.py new file mode 100644 index 0000000000..6a64ead970 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_database_shard_database_with_exadb_xd.py @@ -0,0 +1,496 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +from .distributed_database_shard_database import DistributedDatabaseShardDatabase +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedDatabaseShardDatabaseWithExadbXd(DistributedDatabaseShardDatabase): + """ + Details of a distributed database shard running on ExaDB-D. + """ + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXd. + #: This constant has a value of "FAILED" + STATUS_FAILED = "FAILED" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXd. + #: This constant has a value of "DELETING" + STATUS_DELETING = "DELETING" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXd. + #: This constant has a value of "DELETED" + STATUS_DELETED = "DELETED" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXd. + #: This constant has a value of "UPDATING" + STATUS_UPDATING = "UPDATING" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXd. + #: This constant has a value of "CREATING" + STATUS_CREATING = "CREATING" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXd. + #: This constant has a value of "CREATED" + STATUS_CREATED = "CREATED" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXd. + #: This constant has a value of "READY_FOR_CONFIGURATION" + STATUS_READY_FOR_CONFIGURATION = "READY_FOR_CONFIGURATION" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXd. + #: This constant has a value of "CONFIGURED" + STATUS_CONFIGURED = "CONFIGURED" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXd. + #: This constant has a value of "NEEDS_ATTENTION" + STATUS_NEEDS_ATTENTION = "NEEDS_ATTENTION" + + #: A constant which can be used with the protection_mode property of a DistributedDatabaseShardDatabaseWithExadbXd. + #: This constant has a value of "MAXIMUM_AVAILABILITY" + PROTECTION_MODE_MAXIMUM_AVAILABILITY = "MAXIMUM_AVAILABILITY" + + #: A constant which can be used with the protection_mode property of a DistributedDatabaseShardDatabaseWithExadbXd. + #: This constant has a value of "MAXIMUM_PERFORMANCE" + PROTECTION_MODE_MAXIMUM_PERFORMANCE = "MAXIMUM_PERFORMANCE" + + #: A constant which can be used with the protection_mode property of a DistributedDatabaseShardDatabaseWithExadbXd. + #: This constant has a value of "MAXIMUM_PROTECTION" + PROTECTION_MODE_MAXIMUM_PROTECTION = "MAXIMUM_PROTECTION" + + #: A constant which can be used with the transport_type property of a DistributedDatabaseShardDatabaseWithExadbXd. + #: This constant has a value of "SYNC" + TRANSPORT_TYPE_SYNC = "SYNC" + + #: A constant which can be used with the transport_type property of a DistributedDatabaseShardDatabaseWithExadbXd. + #: This constant has a value of "ASYNC" + TRANSPORT_TYPE_ASYNC = "ASYNC" + + #: A constant which can be used with the transport_type property of a DistributedDatabaseShardDatabaseWithExadbXd. + #: This constant has a value of "FASTSYNC" + TRANSPORT_TYPE_FASTSYNC = "FASTSYNC" + + def __init__(self, **kwargs): + """ + Initializes a new DistributedDatabaseShardDatabaseWithExadbXd object with values from keyword arguments. The default value of the :py:attr:`~oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithExadbXd.source` attribute + of this class is ``XD_EXISTING_CLUSTER`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source: + The value to assign to the source property of this DistributedDatabaseShardDatabaseWithExadbXd. + Allowed values for this property are: "XS_EXISTING_CLUSTER", "XS_NEW_CLUSTER", "XS_NEW_VAULT_AND_CLUSTER", "XD_EXISTING_CLUSTER", "EXISTING_DB_HOME", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type source: str + + :param name: + The value to assign to the name property of this DistributedDatabaseShardDatabaseWithExadbXd. + :type name: str + + :param time_created: + The value to assign to the time_created property of this DistributedDatabaseShardDatabaseWithExadbXd. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this DistributedDatabaseShardDatabaseWithExadbXd. + :type time_updated: datetime + + :param metadata: + The value to assign to the metadata property of this DistributedDatabaseShardDatabaseWithExadbXd. + :type metadata: oci.distributed_database_v26.models.DistributedDbMetadata + + :param db_home_id: + The value to assign to the db_home_id property of this DistributedDatabaseShardDatabaseWithExadbXd. + :type db_home_id: str + + :param vm_cluster_id: + The value to assign to the vm_cluster_id property of this DistributedDatabaseShardDatabaseWithExadbXd. + :type vm_cluster_id: str + + :param status: + The value to assign to the status property of this DistributedDatabaseShardDatabaseWithExadbXd. + Allowed values for this property are: "FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type status: str + + :param supporting_resource_id: + The value to assign to the supporting_resource_id property of this DistributedDatabaseShardDatabaseWithExadbXd. + :type supporting_resource_id: str + + :param container_database_id: + The value to assign to the container_database_id property of this DistributedDatabaseShardDatabaseWithExadbXd. + :type container_database_id: str + + :param vault_id: + The value to assign to the vault_id property of this DistributedDatabaseShardDatabaseWithExadbXd. + :type vault_id: str + + :param kms_key_id: + The value to assign to the kms_key_id property of this DistributedDatabaseShardDatabaseWithExadbXd. + :type kms_key_id: str + + :param kms_key_version_id: + The value to assign to the kms_key_version_id property of this DistributedDatabaseShardDatabaseWithExadbXd. + :type kms_key_version_id: str + + :param protection_mode: + The value to assign to the protection_mode property of this DistributedDatabaseShardDatabaseWithExadbXd. + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type protection_mode: str + + :param transport_type: + The value to assign to the transport_type property of this DistributedDatabaseShardDatabaseWithExadbXd. + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type transport_type: str + + """ + self.swagger_types = { + 'source': 'str', + 'name': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'metadata': 'DistributedDbMetadata', + 'db_home_id': 'str', + 'vm_cluster_id': 'str', + 'status': 'str', + 'supporting_resource_id': 'str', + 'container_database_id': 'str', + 'vault_id': 'str', + 'kms_key_id': 'str', + 'kms_key_version_id': 'str', + 'protection_mode': 'str', + 'transport_type': 'str' + } + self.attribute_map = { + 'source': 'source', + 'name': 'name', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'metadata': 'metadata', + 'db_home_id': 'dbHomeId', + 'vm_cluster_id': 'vmClusterId', + 'status': 'status', + 'supporting_resource_id': 'supportingResourceId', + 'container_database_id': 'containerDatabaseId', + 'vault_id': 'vaultId', + 'kms_key_id': 'kmsKeyId', + 'kms_key_version_id': 'kmsKeyVersionId', + 'protection_mode': 'protectionMode', + 'transport_type': 'transportType' + } + self._source = None + self._name = None + self._time_created = None + self._time_updated = None + self._metadata = None + self._db_home_id = None + self._vm_cluster_id = None + self._status = None + self._supporting_resource_id = None + self._container_database_id = None + self._vault_id = None + self._kms_key_id = None + self._kms_key_version_id = None + self._protection_mode = None + self._transport_type = None + self._source = 'XD_EXISTING_CLUSTER' + + @property + def db_home_id(self): + """ + Gets the db_home_id of this DistributedDatabaseShardDatabaseWithExadbXd. + The `OCID`__ of the Database Home. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The db_home_id of this DistributedDatabaseShardDatabaseWithExadbXd. + :rtype: str + """ + return self._db_home_id + + @db_home_id.setter + def db_home_id(self, db_home_id): + """ + Sets the db_home_id of this DistributedDatabaseShardDatabaseWithExadbXd. + The `OCID`__ of the Database Home. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param db_home_id: The db_home_id of this DistributedDatabaseShardDatabaseWithExadbXd. + :type: str + """ + self._db_home_id = db_home_id + + @property + def vm_cluster_id(self): + """ + **[Required]** Gets the vm_cluster_id of this DistributedDatabaseShardDatabaseWithExadbXd. + The `OCID`__ of the Cloud VM Cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The vm_cluster_id of this DistributedDatabaseShardDatabaseWithExadbXd. + :rtype: str + """ + return self._vm_cluster_id + + @vm_cluster_id.setter + def vm_cluster_id(self, vm_cluster_id): + """ + Sets the vm_cluster_id of this DistributedDatabaseShardDatabaseWithExadbXd. + The `OCID`__ of the Cloud VM Cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param vm_cluster_id: The vm_cluster_id of this DistributedDatabaseShardDatabaseWithExadbXd. + :type: str + """ + self._vm_cluster_id = vm_cluster_id + + @property + def status(self): + """ + **[Required]** Gets the status of this DistributedDatabaseShardDatabaseWithExadbXd. + Status of distributed database shard. + + Allowed values for this property are: "FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The status of this DistributedDatabaseShardDatabaseWithExadbXd. + :rtype: str + """ + return self._status + + @status.setter + def status(self, status): + """ + Sets the status of this DistributedDatabaseShardDatabaseWithExadbXd. + Status of distributed database shard. + + + :param status: The status of this DistributedDatabaseShardDatabaseWithExadbXd. + :type: str + """ + allowed_values = ["FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION"] + if not value_allowed_none_or_none_sentinel(status, allowed_values): + status = 'UNKNOWN_ENUM_VALUE' + self._status = status + + @property + def supporting_resource_id(self): + """ + Gets the supporting_resource_id of this DistributedDatabaseShardDatabaseWithExadbXd. + the identifier of the underlying supporting resource. + + + :return: The supporting_resource_id of this DistributedDatabaseShardDatabaseWithExadbXd. + :rtype: str + """ + return self._supporting_resource_id + + @supporting_resource_id.setter + def supporting_resource_id(self, supporting_resource_id): + """ + Sets the supporting_resource_id of this DistributedDatabaseShardDatabaseWithExadbXd. + the identifier of the underlying supporting resource. + + + :param supporting_resource_id: The supporting_resource_id of this DistributedDatabaseShardDatabaseWithExadbXd. + :type: str + """ + self._supporting_resource_id = supporting_resource_id + + @property + def container_database_id(self): + """ + Gets the container_database_id of this DistributedDatabaseShardDatabaseWithExadbXd. + the identifier of the container database for underlying supporting resource. + + + :return: The container_database_id of this DistributedDatabaseShardDatabaseWithExadbXd. + :rtype: str + """ + return self._container_database_id + + @container_database_id.setter + def container_database_id(self, container_database_id): + """ + Sets the container_database_id of this DistributedDatabaseShardDatabaseWithExadbXd. + the identifier of the container database for underlying supporting resource. + + + :param container_database_id: The container_database_id of this DistributedDatabaseShardDatabaseWithExadbXd. + :type: str + """ + self._container_database_id = container_database_id + + @property + def vault_id(self): + """ + Gets the vault_id of this DistributedDatabaseShardDatabaseWithExadbXd. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :return: The vault_id of this DistributedDatabaseShardDatabaseWithExadbXd. + :rtype: str + """ + return self._vault_id + + @vault_id.setter + def vault_id(self, vault_id): + """ + Sets the vault_id of this DistributedDatabaseShardDatabaseWithExadbXd. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :param vault_id: The vault_id of this DistributedDatabaseShardDatabaseWithExadbXd. + :type: str + """ + self._vault_id = vault_id + + @property + def kms_key_id(self): + """ + Gets the kms_key_id of this DistributedDatabaseShardDatabaseWithExadbXd. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_id of this DistributedDatabaseShardDatabaseWithExadbXd. + :rtype: str + """ + return self._kms_key_id + + @kms_key_id.setter + def kms_key_id(self, kms_key_id): + """ + Sets the kms_key_id of this DistributedDatabaseShardDatabaseWithExadbXd. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_id: The kms_key_id of this DistributedDatabaseShardDatabaseWithExadbXd. + :type: str + """ + self._kms_key_id = kms_key_id + + @property + def kms_key_version_id(self): + """ + Gets the kms_key_version_id of this DistributedDatabaseShardDatabaseWithExadbXd. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_version_id of this DistributedDatabaseShardDatabaseWithExadbXd. + :rtype: str + """ + return self._kms_key_version_id + + @kms_key_version_id.setter + def kms_key_version_id(self, kms_key_version_id): + """ + Sets the kms_key_version_id of this DistributedDatabaseShardDatabaseWithExadbXd. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_version_id: The kms_key_version_id of this DistributedDatabaseShardDatabaseWithExadbXd. + :type: str + """ + self._kms_key_version_id = kms_key_version_id + + @property + def protection_mode(self): + """ + Gets the protection_mode of this DistributedDatabaseShardDatabaseWithExadbXd. + The protection mode used for the Data Guard association. + + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The protection_mode of this DistributedDatabaseShardDatabaseWithExadbXd. + :rtype: str + """ + return self._protection_mode + + @protection_mode.setter + def protection_mode(self, protection_mode): + """ + Sets the protection_mode of this DistributedDatabaseShardDatabaseWithExadbXd. + The protection mode used for the Data Guard association. + + + :param protection_mode: The protection_mode of this DistributedDatabaseShardDatabaseWithExadbXd. + :type: str + """ + allowed_values = ["MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION"] + if not value_allowed_none_or_none_sentinel(protection_mode, allowed_values): + protection_mode = 'UNKNOWN_ENUM_VALUE' + self._protection_mode = protection_mode + + @property + def transport_type(self): + """ + Gets the transport_type of this DistributedDatabaseShardDatabaseWithExadbXd. + The transport type used for the Data Guard association. + + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The transport_type of this DistributedDatabaseShardDatabaseWithExadbXd. + :rtype: str + """ + return self._transport_type + + @transport_type.setter + def transport_type(self, transport_type): + """ + Sets the transport_type of this DistributedDatabaseShardDatabaseWithExadbXd. + The transport type used for the Data Guard association. + + + :param transport_type: The transport_type of this DistributedDatabaseShardDatabaseWithExadbXd. + :type: str + """ + allowed_values = ["SYNC", "ASYNC", "FASTSYNC"] + if not value_allowed_none_or_none_sentinel(transport_type, allowed_values): + transport_type = 'UNKNOWN_ENUM_VALUE' + self._transport_type = transport_type + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_database_shard_database_with_exadb_xs.py b/src/oci/distributed_database_v26/models/distributed_database_shard_database_with_exadb_xs.py new file mode 100644 index 0000000000..8802006b84 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_database_shard_database_with_exadb_xs.py @@ -0,0 +1,496 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +from .distributed_database_shard_database import DistributedDatabaseShardDatabase +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedDatabaseShardDatabaseWithExadbXs(DistributedDatabaseShardDatabase): + """ + Details of a distributed database shard running on ExaDB-XS. + """ + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXs. + #: This constant has a value of "FAILED" + STATUS_FAILED = "FAILED" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXs. + #: This constant has a value of "DELETING" + STATUS_DELETING = "DELETING" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXs. + #: This constant has a value of "DELETED" + STATUS_DELETED = "DELETED" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXs. + #: This constant has a value of "UPDATING" + STATUS_UPDATING = "UPDATING" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXs. + #: This constant has a value of "CREATING" + STATUS_CREATING = "CREATING" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXs. + #: This constant has a value of "CREATED" + STATUS_CREATED = "CREATED" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXs. + #: This constant has a value of "READY_FOR_CONFIGURATION" + STATUS_READY_FOR_CONFIGURATION = "READY_FOR_CONFIGURATION" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXs. + #: This constant has a value of "CONFIGURED" + STATUS_CONFIGURED = "CONFIGURED" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXs. + #: This constant has a value of "NEEDS_ATTENTION" + STATUS_NEEDS_ATTENTION = "NEEDS_ATTENTION" + + #: A constant which can be used with the protection_mode property of a DistributedDatabaseShardDatabaseWithExadbXs. + #: This constant has a value of "MAXIMUM_AVAILABILITY" + PROTECTION_MODE_MAXIMUM_AVAILABILITY = "MAXIMUM_AVAILABILITY" + + #: A constant which can be used with the protection_mode property of a DistributedDatabaseShardDatabaseWithExadbXs. + #: This constant has a value of "MAXIMUM_PERFORMANCE" + PROTECTION_MODE_MAXIMUM_PERFORMANCE = "MAXIMUM_PERFORMANCE" + + #: A constant which can be used with the protection_mode property of a DistributedDatabaseShardDatabaseWithExadbXs. + #: This constant has a value of "MAXIMUM_PROTECTION" + PROTECTION_MODE_MAXIMUM_PROTECTION = "MAXIMUM_PROTECTION" + + #: A constant which can be used with the transport_type property of a DistributedDatabaseShardDatabaseWithExadbXs. + #: This constant has a value of "SYNC" + TRANSPORT_TYPE_SYNC = "SYNC" + + #: A constant which can be used with the transport_type property of a DistributedDatabaseShardDatabaseWithExadbXs. + #: This constant has a value of "ASYNC" + TRANSPORT_TYPE_ASYNC = "ASYNC" + + #: A constant which can be used with the transport_type property of a DistributedDatabaseShardDatabaseWithExadbXs. + #: This constant has a value of "FASTSYNC" + TRANSPORT_TYPE_FASTSYNC = "FASTSYNC" + + def __init__(self, **kwargs): + """ + Initializes a new DistributedDatabaseShardDatabaseWithExadbXs object with values from keyword arguments. The default value of the :py:attr:`~oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithExadbXs.source` attribute + of this class is ``XS_EXISTING_CLUSTER`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source: + The value to assign to the source property of this DistributedDatabaseShardDatabaseWithExadbXs. + Allowed values for this property are: "XS_EXISTING_CLUSTER", "XS_NEW_CLUSTER", "XS_NEW_VAULT_AND_CLUSTER", "XD_EXISTING_CLUSTER", "EXISTING_DB_HOME", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type source: str + + :param name: + The value to assign to the name property of this DistributedDatabaseShardDatabaseWithExadbXs. + :type name: str + + :param time_created: + The value to assign to the time_created property of this DistributedDatabaseShardDatabaseWithExadbXs. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this DistributedDatabaseShardDatabaseWithExadbXs. + :type time_updated: datetime + + :param metadata: + The value to assign to the metadata property of this DistributedDatabaseShardDatabaseWithExadbXs. + :type metadata: oci.distributed_database_v26.models.DistributedDbMetadata + + :param db_home_id: + The value to assign to the db_home_id property of this DistributedDatabaseShardDatabaseWithExadbXs. + :type db_home_id: str + + :param vm_cluster_id: + The value to assign to the vm_cluster_id property of this DistributedDatabaseShardDatabaseWithExadbXs. + :type vm_cluster_id: str + + :param status: + The value to assign to the status property of this DistributedDatabaseShardDatabaseWithExadbXs. + Allowed values for this property are: "FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type status: str + + :param supporting_resource_id: + The value to assign to the supporting_resource_id property of this DistributedDatabaseShardDatabaseWithExadbXs. + :type supporting_resource_id: str + + :param container_database_id: + The value to assign to the container_database_id property of this DistributedDatabaseShardDatabaseWithExadbXs. + :type container_database_id: str + + :param vault_id: + The value to assign to the vault_id property of this DistributedDatabaseShardDatabaseWithExadbXs. + :type vault_id: str + + :param kms_key_id: + The value to assign to the kms_key_id property of this DistributedDatabaseShardDatabaseWithExadbXs. + :type kms_key_id: str + + :param kms_key_version_id: + The value to assign to the kms_key_version_id property of this DistributedDatabaseShardDatabaseWithExadbXs. + :type kms_key_version_id: str + + :param protection_mode: + The value to assign to the protection_mode property of this DistributedDatabaseShardDatabaseWithExadbXs. + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type protection_mode: str + + :param transport_type: + The value to assign to the transport_type property of this DistributedDatabaseShardDatabaseWithExadbXs. + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type transport_type: str + + """ + self.swagger_types = { + 'source': 'str', + 'name': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'metadata': 'DistributedDbMetadata', + 'db_home_id': 'str', + 'vm_cluster_id': 'str', + 'status': 'str', + 'supporting_resource_id': 'str', + 'container_database_id': 'str', + 'vault_id': 'str', + 'kms_key_id': 'str', + 'kms_key_version_id': 'str', + 'protection_mode': 'str', + 'transport_type': 'str' + } + self.attribute_map = { + 'source': 'source', + 'name': 'name', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'metadata': 'metadata', + 'db_home_id': 'dbHomeId', + 'vm_cluster_id': 'vmClusterId', + 'status': 'status', + 'supporting_resource_id': 'supportingResourceId', + 'container_database_id': 'containerDatabaseId', + 'vault_id': 'vaultId', + 'kms_key_id': 'kmsKeyId', + 'kms_key_version_id': 'kmsKeyVersionId', + 'protection_mode': 'protectionMode', + 'transport_type': 'transportType' + } + self._source = None + self._name = None + self._time_created = None + self._time_updated = None + self._metadata = None + self._db_home_id = None + self._vm_cluster_id = None + self._status = None + self._supporting_resource_id = None + self._container_database_id = None + self._vault_id = None + self._kms_key_id = None + self._kms_key_version_id = None + self._protection_mode = None + self._transport_type = None + self._source = 'XS_EXISTING_CLUSTER' + + @property + def db_home_id(self): + """ + Gets the db_home_id of this DistributedDatabaseShardDatabaseWithExadbXs. + The `OCID`__ of the Database Home. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The db_home_id of this DistributedDatabaseShardDatabaseWithExadbXs. + :rtype: str + """ + return self._db_home_id + + @db_home_id.setter + def db_home_id(self, db_home_id): + """ + Sets the db_home_id of this DistributedDatabaseShardDatabaseWithExadbXs. + The `OCID`__ of the Database Home. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param db_home_id: The db_home_id of this DistributedDatabaseShardDatabaseWithExadbXs. + :type: str + """ + self._db_home_id = db_home_id + + @property + def vm_cluster_id(self): + """ + **[Required]** Gets the vm_cluster_id of this DistributedDatabaseShardDatabaseWithExadbXs. + The `OCID`__ of the VmCluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The vm_cluster_id of this DistributedDatabaseShardDatabaseWithExadbXs. + :rtype: str + """ + return self._vm_cluster_id + + @vm_cluster_id.setter + def vm_cluster_id(self, vm_cluster_id): + """ + Sets the vm_cluster_id of this DistributedDatabaseShardDatabaseWithExadbXs. + The `OCID`__ of the VmCluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param vm_cluster_id: The vm_cluster_id of this DistributedDatabaseShardDatabaseWithExadbXs. + :type: str + """ + self._vm_cluster_id = vm_cluster_id + + @property + def status(self): + """ + **[Required]** Gets the status of this DistributedDatabaseShardDatabaseWithExadbXs. + Status of distributed database shard. + + Allowed values for this property are: "FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The status of this DistributedDatabaseShardDatabaseWithExadbXs. + :rtype: str + """ + return self._status + + @status.setter + def status(self, status): + """ + Sets the status of this DistributedDatabaseShardDatabaseWithExadbXs. + Status of distributed database shard. + + + :param status: The status of this DistributedDatabaseShardDatabaseWithExadbXs. + :type: str + """ + allowed_values = ["FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION"] + if not value_allowed_none_or_none_sentinel(status, allowed_values): + status = 'UNKNOWN_ENUM_VALUE' + self._status = status + + @property + def supporting_resource_id(self): + """ + Gets the supporting_resource_id of this DistributedDatabaseShardDatabaseWithExadbXs. + the identifier of the underlying supporting resource. + + + :return: The supporting_resource_id of this DistributedDatabaseShardDatabaseWithExadbXs. + :rtype: str + """ + return self._supporting_resource_id + + @supporting_resource_id.setter + def supporting_resource_id(self, supporting_resource_id): + """ + Sets the supporting_resource_id of this DistributedDatabaseShardDatabaseWithExadbXs. + the identifier of the underlying supporting resource. + + + :param supporting_resource_id: The supporting_resource_id of this DistributedDatabaseShardDatabaseWithExadbXs. + :type: str + """ + self._supporting_resource_id = supporting_resource_id + + @property + def container_database_id(self): + """ + Gets the container_database_id of this DistributedDatabaseShardDatabaseWithExadbXs. + the identifier of the container database for underlying supporting resource. + + + :return: The container_database_id of this DistributedDatabaseShardDatabaseWithExadbXs. + :rtype: str + """ + return self._container_database_id + + @container_database_id.setter + def container_database_id(self, container_database_id): + """ + Sets the container_database_id of this DistributedDatabaseShardDatabaseWithExadbXs. + the identifier of the container database for underlying supporting resource. + + + :param container_database_id: The container_database_id of this DistributedDatabaseShardDatabaseWithExadbXs. + :type: str + """ + self._container_database_id = container_database_id + + @property + def vault_id(self): + """ + Gets the vault_id of this DistributedDatabaseShardDatabaseWithExadbXs. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :return: The vault_id of this DistributedDatabaseShardDatabaseWithExadbXs. + :rtype: str + """ + return self._vault_id + + @vault_id.setter + def vault_id(self, vault_id): + """ + Sets the vault_id of this DistributedDatabaseShardDatabaseWithExadbXs. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :param vault_id: The vault_id of this DistributedDatabaseShardDatabaseWithExadbXs. + :type: str + """ + self._vault_id = vault_id + + @property + def kms_key_id(self): + """ + Gets the kms_key_id of this DistributedDatabaseShardDatabaseWithExadbXs. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_id of this DistributedDatabaseShardDatabaseWithExadbXs. + :rtype: str + """ + return self._kms_key_id + + @kms_key_id.setter + def kms_key_id(self, kms_key_id): + """ + Sets the kms_key_id of this DistributedDatabaseShardDatabaseWithExadbXs. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_id: The kms_key_id of this DistributedDatabaseShardDatabaseWithExadbXs. + :type: str + """ + self._kms_key_id = kms_key_id + + @property + def kms_key_version_id(self): + """ + Gets the kms_key_version_id of this DistributedDatabaseShardDatabaseWithExadbXs. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_version_id of this DistributedDatabaseShardDatabaseWithExadbXs. + :rtype: str + """ + return self._kms_key_version_id + + @kms_key_version_id.setter + def kms_key_version_id(self, kms_key_version_id): + """ + Sets the kms_key_version_id of this DistributedDatabaseShardDatabaseWithExadbXs. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_version_id: The kms_key_version_id of this DistributedDatabaseShardDatabaseWithExadbXs. + :type: str + """ + self._kms_key_version_id = kms_key_version_id + + @property + def protection_mode(self): + """ + Gets the protection_mode of this DistributedDatabaseShardDatabaseWithExadbXs. + The protection mode used for the Data Guard association. + + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The protection_mode of this DistributedDatabaseShardDatabaseWithExadbXs. + :rtype: str + """ + return self._protection_mode + + @protection_mode.setter + def protection_mode(self, protection_mode): + """ + Sets the protection_mode of this DistributedDatabaseShardDatabaseWithExadbXs. + The protection mode used for the Data Guard association. + + + :param protection_mode: The protection_mode of this DistributedDatabaseShardDatabaseWithExadbXs. + :type: str + """ + allowed_values = ["MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION"] + if not value_allowed_none_or_none_sentinel(protection_mode, allowed_values): + protection_mode = 'UNKNOWN_ENUM_VALUE' + self._protection_mode = protection_mode + + @property + def transport_type(self): + """ + Gets the transport_type of this DistributedDatabaseShardDatabaseWithExadbXs. + The transport type used for the Data Guard association. + + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The transport_type of this DistributedDatabaseShardDatabaseWithExadbXs. + :rtype: str + """ + return self._transport_type + + @transport_type.setter + def transport_type(self, transport_type): + """ + Sets the transport_type of this DistributedDatabaseShardDatabaseWithExadbXs. + The transport type used for the Data Guard association. + + + :param transport_type: The transport_type of this DistributedDatabaseShardDatabaseWithExadbXs. + :type: str + """ + allowed_values = ["SYNC", "ASYNC", "FASTSYNC"] + if not value_allowed_none_or_none_sentinel(transport_type, allowed_values): + transport_type = 'UNKNOWN_ENUM_VALUE' + self._transport_type = transport_type + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_database_shard_database_with_exadb_xs_new_cluster.py b/src/oci/distributed_database_v26/models/distributed_database_shard_database_with_exadb_xs_new_cluster.py new file mode 100644 index 0000000000..d84a7a7f87 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_database_shard_database_with_exadb_xs_new_cluster.py @@ -0,0 +1,554 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +from .distributed_database_shard_database import DistributedDatabaseShardDatabase +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedDatabaseShardDatabaseWithExadbXsNewCluster(DistributedDatabaseShardDatabase): + """ + Details of a distributed database shard on ExaDB-XS with a new cluster. + """ + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + #: This constant has a value of "FAILED" + STATUS_FAILED = "FAILED" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + #: This constant has a value of "DELETING" + STATUS_DELETING = "DELETING" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + #: This constant has a value of "DELETED" + STATUS_DELETED = "DELETED" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + #: This constant has a value of "UPDATING" + STATUS_UPDATING = "UPDATING" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + #: This constant has a value of "CREATING" + STATUS_CREATING = "CREATING" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + #: This constant has a value of "CREATED" + STATUS_CREATED = "CREATED" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + #: This constant has a value of "READY_FOR_CONFIGURATION" + STATUS_READY_FOR_CONFIGURATION = "READY_FOR_CONFIGURATION" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + #: This constant has a value of "CONFIGURED" + STATUS_CONFIGURED = "CONFIGURED" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + #: This constant has a value of "NEEDS_ATTENTION" + STATUS_NEEDS_ATTENTION = "NEEDS_ATTENTION" + + #: A constant which can be used with the protection_mode property of a DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + #: This constant has a value of "MAXIMUM_AVAILABILITY" + PROTECTION_MODE_MAXIMUM_AVAILABILITY = "MAXIMUM_AVAILABILITY" + + #: A constant which can be used with the protection_mode property of a DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + #: This constant has a value of "MAXIMUM_PERFORMANCE" + PROTECTION_MODE_MAXIMUM_PERFORMANCE = "MAXIMUM_PERFORMANCE" + + #: A constant which can be used with the protection_mode property of a DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + #: This constant has a value of "MAXIMUM_PROTECTION" + PROTECTION_MODE_MAXIMUM_PROTECTION = "MAXIMUM_PROTECTION" + + #: A constant which can be used with the transport_type property of a DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + #: This constant has a value of "SYNC" + TRANSPORT_TYPE_SYNC = "SYNC" + + #: A constant which can be used with the transport_type property of a DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + #: This constant has a value of "ASYNC" + TRANSPORT_TYPE_ASYNC = "ASYNC" + + #: A constant which can be used with the transport_type property of a DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + #: This constant has a value of "FASTSYNC" + TRANSPORT_TYPE_FASTSYNC = "FASTSYNC" + + def __init__(self, **kwargs): + """ + Initializes a new DistributedDatabaseShardDatabaseWithExadbXsNewCluster object with values from keyword arguments. The default value of the :py:attr:`~oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithExadbXsNewCluster.source` attribute + of this class is ``XS_NEW_CLUSTER`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source: + The value to assign to the source property of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + Allowed values for this property are: "XS_EXISTING_CLUSTER", "XS_NEW_CLUSTER", "XS_NEW_VAULT_AND_CLUSTER", "XD_EXISTING_CLUSTER", "EXISTING_DB_HOME", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type source: str + + :param name: + The value to assign to the name property of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :type name: str + + :param time_created: + The value to assign to the time_created property of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :type time_updated: datetime + + :param metadata: + The value to assign to the metadata property of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :type metadata: oci.distributed_database_v26.models.DistributedDbMetadata + + :param db_home_id: + The value to assign to the db_home_id property of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :type db_home_id: str + + :param vault_id: + The value to assign to the vault_id property of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :type vault_id: str + + :param kms_key_id: + The value to assign to the kms_key_id property of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :type kms_key_id: str + + :param kms_key_version_id: + The value to assign to the kms_key_version_id property of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :type kms_key_version_id: str + + :param status: + The value to assign to the status property of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + Allowed values for this property are: "FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type status: str + + :param supporting_resource_id: + The value to assign to the supporting_resource_id property of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :type supporting_resource_id: str + + :param container_database_id: + The value to assign to the container_database_id property of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :type container_database_id: str + + :param availability_domain: + The value to assign to the availability_domain property of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :type availability_domain: str + + :param exascale_db_storage_vault_id: + The value to assign to the exascale_db_storage_vault_id property of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :type exascale_db_storage_vault_id: str + + :param vm_cluster_details: + The value to assign to the vm_cluster_details property of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :type vm_cluster_details: oci.distributed_database_v26.models.DistributedDbVmCluster + + :param protection_mode: + The value to assign to the protection_mode property of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type protection_mode: str + + :param transport_type: + The value to assign to the transport_type property of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type transport_type: str + + """ + self.swagger_types = { + 'source': 'str', + 'name': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'metadata': 'DistributedDbMetadata', + 'db_home_id': 'str', + 'vault_id': 'str', + 'kms_key_id': 'str', + 'kms_key_version_id': 'str', + 'status': 'str', + 'supporting_resource_id': 'str', + 'container_database_id': 'str', + 'availability_domain': 'str', + 'exascale_db_storage_vault_id': 'str', + 'vm_cluster_details': 'DistributedDbVmCluster', + 'protection_mode': 'str', + 'transport_type': 'str' + } + self.attribute_map = { + 'source': 'source', + 'name': 'name', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'metadata': 'metadata', + 'db_home_id': 'dbHomeId', + 'vault_id': 'vaultId', + 'kms_key_id': 'kmsKeyId', + 'kms_key_version_id': 'kmsKeyVersionId', + 'status': 'status', + 'supporting_resource_id': 'supportingResourceId', + 'container_database_id': 'containerDatabaseId', + 'availability_domain': 'availabilityDomain', + 'exascale_db_storage_vault_id': 'exascaleDbStorageVaultId', + 'vm_cluster_details': 'vmClusterDetails', + 'protection_mode': 'protectionMode', + 'transport_type': 'transportType' + } + self._source = None + self._name = None + self._time_created = None + self._time_updated = None + self._metadata = None + self._db_home_id = None + self._vault_id = None + self._kms_key_id = None + self._kms_key_version_id = None + self._status = None + self._supporting_resource_id = None + self._container_database_id = None + self._availability_domain = None + self._exascale_db_storage_vault_id = None + self._vm_cluster_details = None + self._protection_mode = None + self._transport_type = None + self._source = 'XS_NEW_CLUSTER' + + @property + def db_home_id(self): + """ + Gets the db_home_id of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + The `OCID`__ of the Database Home. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The db_home_id of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :rtype: str + """ + return self._db_home_id + + @db_home_id.setter + def db_home_id(self, db_home_id): + """ + Sets the db_home_id of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + The `OCID`__ of the Database Home. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param db_home_id: The db_home_id of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :type: str + """ + self._db_home_id = db_home_id + + @property + def vault_id(self): + """ + Gets the vault_id of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :return: The vault_id of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :rtype: str + """ + return self._vault_id + + @vault_id.setter + def vault_id(self, vault_id): + """ + Sets the vault_id of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :param vault_id: The vault_id of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :type: str + """ + self._vault_id = vault_id + + @property + def kms_key_id(self): + """ + Gets the kms_key_id of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_id of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :rtype: str + """ + return self._kms_key_id + + @kms_key_id.setter + def kms_key_id(self, kms_key_id): + """ + Sets the kms_key_id of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_id: The kms_key_id of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :type: str + """ + self._kms_key_id = kms_key_id + + @property + def kms_key_version_id(self): + """ + Gets the kms_key_version_id of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_version_id of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :rtype: str + """ + return self._kms_key_version_id + + @kms_key_version_id.setter + def kms_key_version_id(self, kms_key_version_id): + """ + Sets the kms_key_version_id of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_version_id: The kms_key_version_id of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :type: str + """ + self._kms_key_version_id = kms_key_version_id + + @property + def status(self): + """ + **[Required]** Gets the status of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + Status of distributed database shard. + + Allowed values for this property are: "FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The status of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :rtype: str + """ + return self._status + + @status.setter + def status(self, status): + """ + Sets the status of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + Status of distributed database shard. + + + :param status: The status of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :type: str + """ + allowed_values = ["FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION"] + if not value_allowed_none_or_none_sentinel(status, allowed_values): + status = 'UNKNOWN_ENUM_VALUE' + self._status = status + + @property + def supporting_resource_id(self): + """ + Gets the supporting_resource_id of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + the identifier of the underlying supporting resource. + + + :return: The supporting_resource_id of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :rtype: str + """ + return self._supporting_resource_id + + @supporting_resource_id.setter + def supporting_resource_id(self, supporting_resource_id): + """ + Sets the supporting_resource_id of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + the identifier of the underlying supporting resource. + + + :param supporting_resource_id: The supporting_resource_id of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :type: str + """ + self._supporting_resource_id = supporting_resource_id + + @property + def container_database_id(self): + """ + Gets the container_database_id of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + the identifier of the container database for underlying supporting resource. + + + :return: The container_database_id of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :rtype: str + """ + return self._container_database_id + + @container_database_id.setter + def container_database_id(self, container_database_id): + """ + Sets the container_database_id of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + the identifier of the container database for underlying supporting resource. + + + :param container_database_id: The container_database_id of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :type: str + """ + self._container_database_id = container_database_id + + @property + def availability_domain(self): + """ + Gets the availability_domain of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + The name of the availability domain that the distributed database shard will be located in. + + + :return: The availability_domain of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :rtype: str + """ + return self._availability_domain + + @availability_domain.setter + def availability_domain(self, availability_domain): + """ + Sets the availability_domain of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + The name of the availability domain that the distributed database shard will be located in. + + + :param availability_domain: The availability_domain of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :type: str + """ + self._availability_domain = availability_domain + + @property + def exascale_db_storage_vault_id(self): + """ + **[Required]** Gets the exascale_db_storage_vault_id of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + The `OCID`__ of the exascale db storage vault. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The exascale_db_storage_vault_id of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :rtype: str + """ + return self._exascale_db_storage_vault_id + + @exascale_db_storage_vault_id.setter + def exascale_db_storage_vault_id(self, exascale_db_storage_vault_id): + """ + Sets the exascale_db_storage_vault_id of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + The `OCID`__ of the exascale db storage vault. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param exascale_db_storage_vault_id: The exascale_db_storage_vault_id of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :type: str + """ + self._exascale_db_storage_vault_id = exascale_db_storage_vault_id + + @property + def vm_cluster_details(self): + """ + Gets the vm_cluster_details of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + + :return: The vm_cluster_details of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :rtype: oci.distributed_database_v26.models.DistributedDbVmCluster + """ + return self._vm_cluster_details + + @vm_cluster_details.setter + def vm_cluster_details(self, vm_cluster_details): + """ + Sets the vm_cluster_details of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + + :param vm_cluster_details: The vm_cluster_details of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :type: oci.distributed_database_v26.models.DistributedDbVmCluster + """ + self._vm_cluster_details = vm_cluster_details + + @property + def protection_mode(self): + """ + Gets the protection_mode of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + The protection mode used for the Data Guard association. + + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The protection_mode of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :rtype: str + """ + return self._protection_mode + + @protection_mode.setter + def protection_mode(self, protection_mode): + """ + Sets the protection_mode of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + The protection mode used for the Data Guard association. + + + :param protection_mode: The protection_mode of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :type: str + """ + allowed_values = ["MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION"] + if not value_allowed_none_or_none_sentinel(protection_mode, allowed_values): + protection_mode = 'UNKNOWN_ENUM_VALUE' + self._protection_mode = protection_mode + + @property + def transport_type(self): + """ + Gets the transport_type of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + The transport type used for the Data Guard association. + + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The transport_type of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :rtype: str + """ + return self._transport_type + + @transport_type.setter + def transport_type(self, transport_type): + """ + Sets the transport_type of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + The transport type used for the Data Guard association. + + + :param transport_type: The transport_type of this DistributedDatabaseShardDatabaseWithExadbXsNewCluster. + :type: str + """ + allowed_values = ["SYNC", "ASYNC", "FASTSYNC"] + if not value_allowed_none_or_none_sentinel(transport_type, allowed_values): + transport_type = 'UNKNOWN_ENUM_VALUE' + self._transport_type = transport_type + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_database_shard_database_with_exadb_xs_new_vault_and_cluster.py b/src/oci/distributed_database_v26/models/distributed_database_shard_database_with_exadb_xs_new_vault_and_cluster.py new file mode 100644 index 0000000000..2b505fec4b --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_database_shard_database_with_exadb_xs_new_vault_and_cluster.py @@ -0,0 +1,546 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +from .distributed_database_shard_database import DistributedDatabaseShardDatabase +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster(DistributedDatabaseShardDatabase): + """ + Details of a distributed database shard on ExaDB-XS with a new cluster and storage vault. + """ + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + #: This constant has a value of "FAILED" + STATUS_FAILED = "FAILED" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + #: This constant has a value of "DELETING" + STATUS_DELETING = "DELETING" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + #: This constant has a value of "DELETED" + STATUS_DELETED = "DELETED" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + #: This constant has a value of "UPDATING" + STATUS_UPDATING = "UPDATING" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + #: This constant has a value of "CREATING" + STATUS_CREATING = "CREATING" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + #: This constant has a value of "CREATED" + STATUS_CREATED = "CREATED" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + #: This constant has a value of "READY_FOR_CONFIGURATION" + STATUS_READY_FOR_CONFIGURATION = "READY_FOR_CONFIGURATION" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + #: This constant has a value of "CONFIGURED" + STATUS_CONFIGURED = "CONFIGURED" + + #: A constant which can be used with the status property of a DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + #: This constant has a value of "NEEDS_ATTENTION" + STATUS_NEEDS_ATTENTION = "NEEDS_ATTENTION" + + #: A constant which can be used with the protection_mode property of a DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + #: This constant has a value of "MAXIMUM_AVAILABILITY" + PROTECTION_MODE_MAXIMUM_AVAILABILITY = "MAXIMUM_AVAILABILITY" + + #: A constant which can be used with the protection_mode property of a DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + #: This constant has a value of "MAXIMUM_PERFORMANCE" + PROTECTION_MODE_MAXIMUM_PERFORMANCE = "MAXIMUM_PERFORMANCE" + + #: A constant which can be used with the protection_mode property of a DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + #: This constant has a value of "MAXIMUM_PROTECTION" + PROTECTION_MODE_MAXIMUM_PROTECTION = "MAXIMUM_PROTECTION" + + #: A constant which can be used with the transport_type property of a DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + #: This constant has a value of "SYNC" + TRANSPORT_TYPE_SYNC = "SYNC" + + #: A constant which can be used with the transport_type property of a DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + #: This constant has a value of "ASYNC" + TRANSPORT_TYPE_ASYNC = "ASYNC" + + #: A constant which can be used with the transport_type property of a DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + #: This constant has a value of "FASTSYNC" + TRANSPORT_TYPE_FASTSYNC = "FASTSYNC" + + def __init__(self, **kwargs): + """ + Initializes a new DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster object with values from keyword arguments. The default value of the :py:attr:`~oci.distributed_database_v26.models.DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster.source` attribute + of this class is ``XS_NEW_VAULT_AND_CLUSTER`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source: + The value to assign to the source property of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + Allowed values for this property are: "XS_EXISTING_CLUSTER", "XS_NEW_CLUSTER", "XS_NEW_VAULT_AND_CLUSTER", "XD_EXISTING_CLUSTER", "EXISTING_DB_HOME", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type source: str + + :param name: + The value to assign to the name property of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :type name: str + + :param time_created: + The value to assign to the time_created property of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :type time_updated: datetime + + :param metadata: + The value to assign to the metadata property of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :type metadata: oci.distributed_database_v26.models.DistributedDbMetadata + + :param db_home_id: + The value to assign to the db_home_id property of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :type db_home_id: str + + :param vault_id: + The value to assign to the vault_id property of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :type vault_id: str + + :param kms_key_id: + The value to assign to the kms_key_id property of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :type kms_key_id: str + + :param kms_key_version_id: + The value to assign to the kms_key_version_id property of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :type kms_key_version_id: str + + :param status: + The value to assign to the status property of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + Allowed values for this property are: "FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type status: str + + :param supporting_resource_id: + The value to assign to the supporting_resource_id property of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :type supporting_resource_id: str + + :param container_database_id: + The value to assign to the container_database_id property of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :type container_database_id: str + + :param availability_domain: + The value to assign to the availability_domain property of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :type availability_domain: str + + :param db_storage_vault_details: + The value to assign to the db_storage_vault_details property of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :type db_storage_vault_details: oci.distributed_database_v26.models.DistributedDbStorageVault + + :param vm_cluster_details: + The value to assign to the vm_cluster_details property of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :type vm_cluster_details: oci.distributed_database_v26.models.DistributedDbVmCluster + + :param protection_mode: + The value to assign to the protection_mode property of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type protection_mode: str + + :param transport_type: + The value to assign to the transport_type property of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type transport_type: str + + """ + self.swagger_types = { + 'source': 'str', + 'name': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'metadata': 'DistributedDbMetadata', + 'db_home_id': 'str', + 'vault_id': 'str', + 'kms_key_id': 'str', + 'kms_key_version_id': 'str', + 'status': 'str', + 'supporting_resource_id': 'str', + 'container_database_id': 'str', + 'availability_domain': 'str', + 'db_storage_vault_details': 'DistributedDbStorageVault', + 'vm_cluster_details': 'DistributedDbVmCluster', + 'protection_mode': 'str', + 'transport_type': 'str' + } + self.attribute_map = { + 'source': 'source', + 'name': 'name', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'metadata': 'metadata', + 'db_home_id': 'dbHomeId', + 'vault_id': 'vaultId', + 'kms_key_id': 'kmsKeyId', + 'kms_key_version_id': 'kmsKeyVersionId', + 'status': 'status', + 'supporting_resource_id': 'supportingResourceId', + 'container_database_id': 'containerDatabaseId', + 'availability_domain': 'availabilityDomain', + 'db_storage_vault_details': 'dbStorageVaultDetails', + 'vm_cluster_details': 'vmClusterDetails', + 'protection_mode': 'protectionMode', + 'transport_type': 'transportType' + } + self._source = None + self._name = None + self._time_created = None + self._time_updated = None + self._metadata = None + self._db_home_id = None + self._vault_id = None + self._kms_key_id = None + self._kms_key_version_id = None + self._status = None + self._supporting_resource_id = None + self._container_database_id = None + self._availability_domain = None + self._db_storage_vault_details = None + self._vm_cluster_details = None + self._protection_mode = None + self._transport_type = None + self._source = 'XS_NEW_VAULT_AND_CLUSTER' + + @property + def db_home_id(self): + """ + Gets the db_home_id of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + The `OCID`__ of the Database Home. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The db_home_id of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :rtype: str + """ + return self._db_home_id + + @db_home_id.setter + def db_home_id(self, db_home_id): + """ + Sets the db_home_id of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + The `OCID`__ of the Database Home. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param db_home_id: The db_home_id of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :type: str + """ + self._db_home_id = db_home_id + + @property + def vault_id(self): + """ + Gets the vault_id of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :return: The vault_id of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :rtype: str + """ + return self._vault_id + + @vault_id.setter + def vault_id(self, vault_id): + """ + Sets the vault_id of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + The `OCID`__ of the Oracle Cloud Infrastructure `vault`__. + This parameter and `kmsKeyId` are required for Customer Managed Keys. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/KeyManagement/Concepts/keyoverview.htm#concepts + + + :param vault_id: The vault_id of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :type: str + """ + self._vault_id = vault_id + + @property + def kms_key_id(self): + """ + Gets the kms_key_id of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_id of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :rtype: str + """ + return self._kms_key_id + + @kms_key_id.setter + def kms_key_id(self, kms_key_id): + """ + Sets the kms_key_id of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + The `OCID`__ of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_id: The kms_key_id of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :type: str + """ + self._kms_key_id = kms_key_id + + @property + def kms_key_version_id(self): + """ + Gets the kms_key_version_id of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The kms_key_version_id of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :rtype: str + """ + return self._kms_key_version_id + + @kms_key_version_id.setter + def kms_key_version_id(self, kms_key_version_id): + """ + Sets the kms_key_version_id of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + The `OCID`__ of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param kms_key_version_id: The kms_key_version_id of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :type: str + """ + self._kms_key_version_id = kms_key_version_id + + @property + def status(self): + """ + **[Required]** Gets the status of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + Status of distributed database shard. + + Allowed values for this property are: "FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The status of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :rtype: str + """ + return self._status + + @status.setter + def status(self, status): + """ + Sets the status of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + Status of distributed database shard. + + + :param status: The status of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :type: str + """ + allowed_values = ["FAILED", "DELETING", "DELETED", "UPDATING", "CREATING", "CREATED", "READY_FOR_CONFIGURATION", "CONFIGURED", "NEEDS_ATTENTION"] + if not value_allowed_none_or_none_sentinel(status, allowed_values): + status = 'UNKNOWN_ENUM_VALUE' + self._status = status + + @property + def supporting_resource_id(self): + """ + Gets the supporting_resource_id of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + the identifier of the underlying supporting resource. + + + :return: The supporting_resource_id of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :rtype: str + """ + return self._supporting_resource_id + + @supporting_resource_id.setter + def supporting_resource_id(self, supporting_resource_id): + """ + Sets the supporting_resource_id of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + the identifier of the underlying supporting resource. + + + :param supporting_resource_id: The supporting_resource_id of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :type: str + """ + self._supporting_resource_id = supporting_resource_id + + @property + def container_database_id(self): + """ + Gets the container_database_id of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + the identifier of the container database for underlying supporting resource. + + + :return: The container_database_id of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :rtype: str + """ + return self._container_database_id + + @container_database_id.setter + def container_database_id(self, container_database_id): + """ + Sets the container_database_id of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + the identifier of the container database for underlying supporting resource. + + + :param container_database_id: The container_database_id of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :type: str + """ + self._container_database_id = container_database_id + + @property + def availability_domain(self): + """ + Gets the availability_domain of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + The name of the availability domain that the distributed database shard will be located in. + + + :return: The availability_domain of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :rtype: str + """ + return self._availability_domain + + @availability_domain.setter + def availability_domain(self, availability_domain): + """ + Sets the availability_domain of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + The name of the availability domain that the distributed database shard will be located in. + + + :param availability_domain: The availability_domain of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :type: str + """ + self._availability_domain = availability_domain + + @property + def db_storage_vault_details(self): + """ + Gets the db_storage_vault_details of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + + :return: The db_storage_vault_details of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :rtype: oci.distributed_database_v26.models.DistributedDbStorageVault + """ + return self._db_storage_vault_details + + @db_storage_vault_details.setter + def db_storage_vault_details(self, db_storage_vault_details): + """ + Sets the db_storage_vault_details of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + + :param db_storage_vault_details: The db_storage_vault_details of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :type: oci.distributed_database_v26.models.DistributedDbStorageVault + """ + self._db_storage_vault_details = db_storage_vault_details + + @property + def vm_cluster_details(self): + """ + Gets the vm_cluster_details of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + + :return: The vm_cluster_details of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :rtype: oci.distributed_database_v26.models.DistributedDbVmCluster + """ + return self._vm_cluster_details + + @vm_cluster_details.setter + def vm_cluster_details(self, vm_cluster_details): + """ + Sets the vm_cluster_details of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + + :param vm_cluster_details: The vm_cluster_details of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :type: oci.distributed_database_v26.models.DistributedDbVmCluster + """ + self._vm_cluster_details = vm_cluster_details + + @property + def protection_mode(self): + """ + Gets the protection_mode of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + The protection mode used for the Data Guard association. + + Allowed values for this property are: "MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The protection_mode of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :rtype: str + """ + return self._protection_mode + + @protection_mode.setter + def protection_mode(self, protection_mode): + """ + Sets the protection_mode of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + The protection mode used for the Data Guard association. + + + :param protection_mode: The protection_mode of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :type: str + """ + allowed_values = ["MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION"] + if not value_allowed_none_or_none_sentinel(protection_mode, allowed_values): + protection_mode = 'UNKNOWN_ENUM_VALUE' + self._protection_mode = protection_mode + + @property + def transport_type(self): + """ + Gets the transport_type of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + The transport type used for the Data Guard association. + + Allowed values for this property are: "SYNC", "ASYNC", "FASTSYNC", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The transport_type of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :rtype: str + """ + return self._transport_type + + @transport_type.setter + def transport_type(self, transport_type): + """ + Sets the transport_type of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + The transport type used for the Data Guard association. + + + :param transport_type: The transport_type of this DistributedDatabaseShardDatabaseWithExadbXsNewVaultAndCluster. + :type: str + """ + allowed_values = ["SYNC", "ASYNC", "FASTSYNC"] + if not value_allowed_none_or_none_sentinel(transport_type, allowed_values): + transport_type = 'UNKNOWN_ENUM_VALUE' + self._transport_type = transport_type + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_database_summary.py b/src/oci/distributed_database_v26/models/distributed_database_summary.py new file mode 100644 index 0000000000..54430bf120 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_database_summary.py @@ -0,0 +1,946 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedDatabaseSummary(object): + """ + Globally distributed database. + """ + + #: A constant which can be used with the sharding_method property of a DistributedDatabaseSummary. + #: This constant has a value of "USER" + SHARDING_METHOD_USER = "USER" + + #: A constant which can be used with the sharding_method property of a DistributedDatabaseSummary. + #: This constant has a value of "SYSTEM" + SHARDING_METHOD_SYSTEM = "SYSTEM" + + #: A constant which can be used with the sharding_method property of a DistributedDatabaseSummary. + #: This constant has a value of "COMPOSITE" + SHARDING_METHOD_COMPOSITE = "COMPOSITE" + + #: A constant which can be used with the replication_method property of a DistributedDatabaseSummary. + #: This constant has a value of "RAFT" + REPLICATION_METHOD_RAFT = "RAFT" + + #: A constant which can be used with the replication_method property of a DistributedDatabaseSummary. + #: This constant has a value of "DG" + REPLICATION_METHOD_DG = "DG" + + #: A constant which can be used with the db_deployment_type property of a DistributedDatabaseSummary. + #: This constant has a value of "EXADB" + DB_DEPLOYMENT_TYPE_EXADB = "EXADB" + + def __init__(self, **kwargs): + """ + Initializes a new DistributedDatabaseSummary object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this DistributedDatabaseSummary. + :type id: str + + :param compartment_id: + The value to assign to the compartment_id property of this DistributedDatabaseSummary. + :type compartment_id: str + + :param display_name: + The value to assign to the display_name property of this DistributedDatabaseSummary. + :type display_name: str + + :param time_created: + The value to assign to the time_created property of this DistributedDatabaseSummary. + :type time_created: datetime + + :param time_updated: + The value to assign to the time_updated property of this DistributedDatabaseSummary. + :type time_updated: datetime + + :param database_version: + The value to assign to the database_version property of this DistributedDatabaseSummary. + :type database_version: str + + :param lifecycle_state: + The value to assign to the lifecycle_state property of this DistributedDatabaseSummary. + :type lifecycle_state: str + + :param lifecycle_details: + The value to assign to the lifecycle_details property of this DistributedDatabaseSummary. + :type lifecycle_details: str + + :param prefix: + The value to assign to the prefix property of this DistributedDatabaseSummary. + :type prefix: str + + :param private_endpoint_ids: + The value to assign to the private_endpoint_ids property of this DistributedDatabaseSummary. + :type private_endpoint_ids: list[str] + + :param notification_topic_ids: + The value to assign to the notification_topic_ids property of this DistributedDatabaseSummary. + :type notification_topic_ids: list[str] + + :param character_set: + The value to assign to the character_set property of this DistributedDatabaseSummary. + :type character_set: str + + :param ncharacter_set: + The value to assign to the ncharacter_set property of this DistributedDatabaseSummary. + :type ncharacter_set: str + + :param listener_port: + The value to assign to the listener_port property of this DistributedDatabaseSummary. + :type listener_port: int + + :param listener_port_tls: + The value to assign to the listener_port_tls property of this DistributedDatabaseSummary. + :type listener_port_tls: int + + :param ons_port_local: + The value to assign to the ons_port_local property of this DistributedDatabaseSummary. + :type ons_port_local: int + + :param ons_port_remote: + The value to assign to the ons_port_remote property of this DistributedDatabaseSummary. + :type ons_port_remote: int + + :param system_chunk_count: + The value to assign to the system_chunk_count property of this DistributedDatabaseSummary. + :type system_chunk_count: int + + :param auto_resource_management_config: + The value to assign to the auto_resource_management_config property of this DistributedDatabaseSummary. + :type auto_resource_management_config: oci.distributed_database_v26.models.AutoResourceManagementConfigurationDetails + + :param system_raft_replication_unit_count: + The value to assign to the system_raft_replication_unit_count property of this DistributedDatabaseSummary. + :type system_raft_replication_unit_count: int + + :param metadata: + The value to assign to the metadata property of this DistributedDatabaseSummary. + :type metadata: oci.distributed_database_v26.models.DistributedDbMetadata + + :param sharding_method: + The value to assign to the sharding_method property of this DistributedDatabaseSummary. + Allowed values for this property are: "USER", "SYSTEM", "COMPOSITE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type sharding_method: str + + :param replication_method: + The value to assign to the replication_method property of this DistributedDatabaseSummary. + Allowed values for this property are: "RAFT", "DG", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type replication_method: str + + :param db_deployment_type: + The value to assign to the db_deployment_type property of this DistributedDatabaseSummary. + Allowed values for this property are: "EXADB", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type db_deployment_type: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this DistributedDatabaseSummary. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this DistributedDatabaseSummary. + :type defined_tags: dict(str, dict(str, object)) + + :param system_tags: + The value to assign to the system_tags property of this DistributedDatabaseSummary. + :type system_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'id': 'str', + 'compartment_id': 'str', + 'display_name': 'str', + 'time_created': 'datetime', + 'time_updated': 'datetime', + 'database_version': 'str', + 'lifecycle_state': 'str', + 'lifecycle_details': 'str', + 'prefix': 'str', + 'private_endpoint_ids': 'list[str]', + 'notification_topic_ids': 'list[str]', + 'character_set': 'str', + 'ncharacter_set': 'str', + 'listener_port': 'int', + 'listener_port_tls': 'int', + 'ons_port_local': 'int', + 'ons_port_remote': 'int', + 'system_chunk_count': 'int', + 'auto_resource_management_config': 'AutoResourceManagementConfigurationDetails', + 'system_raft_replication_unit_count': 'int', + 'metadata': 'DistributedDbMetadata', + 'sharding_method': 'str', + 'replication_method': 'str', + 'db_deployment_type': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))', + 'system_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'id': 'id', + 'compartment_id': 'compartmentId', + 'display_name': 'displayName', + 'time_created': 'timeCreated', + 'time_updated': 'timeUpdated', + 'database_version': 'databaseVersion', + 'lifecycle_state': 'lifecycleState', + 'lifecycle_details': 'lifecycleDetails', + 'prefix': 'prefix', + 'private_endpoint_ids': 'privateEndpointIds', + 'notification_topic_ids': 'notificationTopicIds', + 'character_set': 'characterSet', + 'ncharacter_set': 'ncharacterSet', + 'listener_port': 'listenerPort', + 'listener_port_tls': 'listenerPortTls', + 'ons_port_local': 'onsPortLocal', + 'ons_port_remote': 'onsPortRemote', + 'system_chunk_count': 'systemChunkCount', + 'auto_resource_management_config': 'autoResourceManagementConfig', + 'system_raft_replication_unit_count': 'systemRaftReplicationUnitCount', + 'metadata': 'metadata', + 'sharding_method': 'shardingMethod', + 'replication_method': 'replicationMethod', + 'db_deployment_type': 'dbDeploymentType', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags', + 'system_tags': 'systemTags' + } + self._id = None + self._compartment_id = None + self._display_name = None + self._time_created = None + self._time_updated = None + self._database_version = None + self._lifecycle_state = None + self._lifecycle_details = None + self._prefix = None + self._private_endpoint_ids = None + self._notification_topic_ids = None + self._character_set = None + self._ncharacter_set = None + self._listener_port = None + self._listener_port_tls = None + self._ons_port_local = None + self._ons_port_remote = None + self._system_chunk_count = None + self._auto_resource_management_config = None + self._system_raft_replication_unit_count = None + self._metadata = None + self._sharding_method = None + self._replication_method = None + self._db_deployment_type = None + self._freeform_tags = None + self._defined_tags = None + self._system_tags = None + + @property + def id(self): + """ + **[Required]** Gets the id of this DistributedDatabaseSummary. + The `OCID`__ of the Globally distributed database. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this DistributedDatabaseSummary. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this DistributedDatabaseSummary. + The `OCID`__ of the Globally distributed database. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this DistributedDatabaseSummary. + :type: str + """ + self._id = id + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this DistributedDatabaseSummary. + The `OCID`__ of the Globally distributed database compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this DistributedDatabaseSummary. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this DistributedDatabaseSummary. + The `OCID`__ of the Globally distributed database compartment. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this DistributedDatabaseSummary. + :type: str + """ + self._compartment_id = compartment_id + + @property + def display_name(self): + """ + **[Required]** Gets the display_name of this DistributedDatabaseSummary. + The display name of the Globally distributed database. + + + :return: The display_name of this DistributedDatabaseSummary. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this DistributedDatabaseSummary. + The display name of the Globally distributed database. + + + :param display_name: The display_name of this DistributedDatabaseSummary. + :type: str + """ + self._display_name = display_name + + @property + def time_created(self): + """ + **[Required]** Gets the time_created of this DistributedDatabaseSummary. + The time the Globally distributed database was created. An RFC3339 formatted datetime string + + + :return: The time_created of this DistributedDatabaseSummary. + :rtype: datetime + """ + return self._time_created + + @time_created.setter + def time_created(self, time_created): + """ + Sets the time_created of this DistributedDatabaseSummary. + The time the Globally distributed database was created. An RFC3339 formatted datetime string + + + :param time_created: The time_created of this DistributedDatabaseSummary. + :type: datetime + """ + self._time_created = time_created + + @property + def time_updated(self): + """ + **[Required]** Gets the time_updated of this DistributedDatabaseSummary. + The time the Globally distributed database was last updated. An RFC3339 formatted datetime string + + + :return: The time_updated of this DistributedDatabaseSummary. + :rtype: datetime + """ + return self._time_updated + + @time_updated.setter + def time_updated(self, time_updated): + """ + Sets the time_updated of this DistributedDatabaseSummary. + The time the Globally distributed database was last updated. An RFC3339 formatted datetime string + + + :param time_updated: The time_updated of this DistributedDatabaseSummary. + :type: datetime + """ + self._time_updated = time_updated + + @property + def database_version(self): + """ + **[Required]** Gets the database_version of this DistributedDatabaseSummary. + Oracle Database version for the shards and catalog used in Globally distributed database. + + + :return: The database_version of this DistributedDatabaseSummary. + :rtype: str + """ + return self._database_version + + @database_version.setter + def database_version(self, database_version): + """ + Sets the database_version of this DistributedDatabaseSummary. + Oracle Database version for the shards and catalog used in Globally distributed database. + + + :param database_version: The database_version of this DistributedDatabaseSummary. + :type: str + """ + self._database_version = database_version + + @property + def lifecycle_state(self): + """ + **[Required]** Gets the lifecycle_state of this DistributedDatabaseSummary. + Lifecycle state of sharded database. + + + :return: The lifecycle_state of this DistributedDatabaseSummary. + :rtype: str + """ + return self._lifecycle_state + + @lifecycle_state.setter + def lifecycle_state(self, lifecycle_state): + """ + Sets the lifecycle_state of this DistributedDatabaseSummary. + Lifecycle state of sharded database. + + + :param lifecycle_state: The lifecycle_state of this DistributedDatabaseSummary. + :type: str + """ + self._lifecycle_state = lifecycle_state + + @property + def lifecycle_details(self): + """ + **[Required]** Gets the lifecycle_details of this DistributedDatabaseSummary. + The lifecycleDetails for the Globally distributed database. + + + :return: The lifecycle_details of this DistributedDatabaseSummary. + :rtype: str + """ + return self._lifecycle_details + + @lifecycle_details.setter + def lifecycle_details(self, lifecycle_details): + """ + Sets the lifecycle_details of this DistributedDatabaseSummary. + The lifecycleDetails for the Globally distributed database. + + + :param lifecycle_details: The lifecycle_details of this DistributedDatabaseSummary. + :type: str + """ + self._lifecycle_details = lifecycle_details + + @property + def prefix(self): + """ + **[Required]** Gets the prefix of this DistributedDatabaseSummary. + Unique name prefix for the Globally distributed databases. Only alpha-numeric values are allowed. First character + has to be a letter followed by any combination of letter and number. + + + :return: The prefix of this DistributedDatabaseSummary. + :rtype: str + """ + return self._prefix + + @prefix.setter + def prefix(self, prefix): + """ + Sets the prefix of this DistributedDatabaseSummary. + Unique name prefix for the Globally distributed databases. Only alpha-numeric values are allowed. First character + has to be a letter followed by any combination of letter and number. + + + :param prefix: The prefix of this DistributedDatabaseSummary. + :type: str + """ + self._prefix = prefix + + @property + def private_endpoint_ids(self): + """ + **[Required]** Gets the private_endpoint_ids of this DistributedDatabaseSummary. + The collection of `OCID`__ of the private endpoint associated with Globally distributed autonomous database. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The private_endpoint_ids of this DistributedDatabaseSummary. + :rtype: list[str] + """ + return self._private_endpoint_ids + + @private_endpoint_ids.setter + def private_endpoint_ids(self, private_endpoint_ids): + """ + Sets the private_endpoint_ids of this DistributedDatabaseSummary. + The collection of `OCID`__ of the private endpoint associated with Globally distributed autonomous database. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param private_endpoint_ids: The private_endpoint_ids of this DistributedDatabaseSummary. + :type: list[str] + """ + self._private_endpoint_ids = private_endpoint_ids + + @property + def notification_topic_ids(self): + """ + Gets the notification_topic_ids of this DistributedDatabaseSummary. + The collection of `OCID`__ for the notification topics associated with the globally distributed database. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The notification_topic_ids of this DistributedDatabaseSummary. + :rtype: list[str] + """ + return self._notification_topic_ids + + @notification_topic_ids.setter + def notification_topic_ids(self, notification_topic_ids): + """ + Sets the notification_topic_ids of this DistributedDatabaseSummary. + The collection of `OCID`__ for the notification topics associated with the globally distributed database. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param notification_topic_ids: The notification_topic_ids of this DistributedDatabaseSummary. + :type: list[str] + """ + self._notification_topic_ids = notification_topic_ids + + @property + def character_set(self): + """ + **[Required]** Gets the character_set of this DistributedDatabaseSummary. + The character set for the database. + + + :return: The character_set of this DistributedDatabaseSummary. + :rtype: str + """ + return self._character_set + + @character_set.setter + def character_set(self, character_set): + """ + Sets the character_set of this DistributedDatabaseSummary. + The character set for the database. + + + :param character_set: The character_set of this DistributedDatabaseSummary. + :type: str + """ + self._character_set = character_set + + @property + def ncharacter_set(self): + """ + **[Required]** Gets the ncharacter_set of this DistributedDatabaseSummary. + The national character set for the database. + + + :return: The ncharacter_set of this DistributedDatabaseSummary. + :rtype: str + """ + return self._ncharacter_set + + @ncharacter_set.setter + def ncharacter_set(self, ncharacter_set): + """ + Sets the ncharacter_set of this DistributedDatabaseSummary. + The national character set for the database. + + + :param ncharacter_set: The ncharacter_set of this DistributedDatabaseSummary. + :type: str + """ + self._ncharacter_set = ncharacter_set + + @property + def listener_port(self): + """ + **[Required]** Gets the listener_port of this DistributedDatabaseSummary. + The listener port number for the Globally distributed database. + + + :return: The listener_port of this DistributedDatabaseSummary. + :rtype: int + """ + return self._listener_port + + @listener_port.setter + def listener_port(self, listener_port): + """ + Sets the listener_port of this DistributedDatabaseSummary. + The listener port number for the Globally distributed database. + + + :param listener_port: The listener_port of this DistributedDatabaseSummary. + :type: int + """ + self._listener_port = listener_port + + @property + def listener_port_tls(self): + """ + Gets the listener_port_tls of this DistributedDatabaseSummary. + The TLS listener port number for the Globally distributed database. + + + :return: The listener_port_tls of this DistributedDatabaseSummary. + :rtype: int + """ + return self._listener_port_tls + + @listener_port_tls.setter + def listener_port_tls(self, listener_port_tls): + """ + Sets the listener_port_tls of this DistributedDatabaseSummary. + The TLS listener port number for the Globally distributed database. + + + :param listener_port_tls: The listener_port_tls of this DistributedDatabaseSummary. + :type: int + """ + self._listener_port_tls = listener_port_tls + + @property + def ons_port_local(self): + """ + **[Required]** Gets the ons_port_local of this DistributedDatabaseSummary. + Ons local port number for the Globally distributed database. + + + :return: The ons_port_local of this DistributedDatabaseSummary. + :rtype: int + """ + return self._ons_port_local + + @ons_port_local.setter + def ons_port_local(self, ons_port_local): + """ + Sets the ons_port_local of this DistributedDatabaseSummary. + Ons local port number for the Globally distributed database. + + + :param ons_port_local: The ons_port_local of this DistributedDatabaseSummary. + :type: int + """ + self._ons_port_local = ons_port_local + + @property + def ons_port_remote(self): + """ + **[Required]** Gets the ons_port_remote of this DistributedDatabaseSummary. + Ons remote port number for the Globally distributed database. + + + :return: The ons_port_remote of this DistributedDatabaseSummary. + :rtype: int + """ + return self._ons_port_remote + + @ons_port_remote.setter + def ons_port_remote(self, ons_port_remote): + """ + Sets the ons_port_remote of this DistributedDatabaseSummary. + Ons remote port number for the Globally distributed database. + + + :param ons_port_remote: The ons_port_remote of this DistributedDatabaseSummary. + :type: int + """ + self._ons_port_remote = ons_port_remote + + @property + def system_chunk_count(self): + """ + Gets the system_chunk_count of this DistributedDatabaseSummary. + Count of chunks associated with system raft clusters or system data guard databases. + + + :return: The system_chunk_count of this DistributedDatabaseSummary. + :rtype: int + """ + return self._system_chunk_count + + @system_chunk_count.setter + def system_chunk_count(self, system_chunk_count): + """ + Sets the system_chunk_count of this DistributedDatabaseSummary. + Count of chunks associated with system raft clusters or system data guard databases. + + + :param system_chunk_count: The system_chunk_count of this DistributedDatabaseSummary. + :type: int + """ + self._system_chunk_count = system_chunk_count + + @property + def auto_resource_management_config(self): + """ + Gets the auto_resource_management_config of this DistributedDatabaseSummary. + + :return: The auto_resource_management_config of this DistributedDatabaseSummary. + :rtype: oci.distributed_database_v26.models.AutoResourceManagementConfigurationDetails + """ + return self._auto_resource_management_config + + @auto_resource_management_config.setter + def auto_resource_management_config(self, auto_resource_management_config): + """ + Sets the auto_resource_management_config of this DistributedDatabaseSummary. + + :param auto_resource_management_config: The auto_resource_management_config of this DistributedDatabaseSummary. + :type: oci.distributed_database_v26.models.AutoResourceManagementConfigurationDetails + """ + self._auto_resource_management_config = auto_resource_management_config + + @property + def system_raft_replication_unit_count(self): + """ + Gets the system_raft_replication_unit_count of this DistributedDatabaseSummary. + Number of replication units associated with system raft clusters. + + + :return: The system_raft_replication_unit_count of this DistributedDatabaseSummary. + :rtype: int + """ + return self._system_raft_replication_unit_count + + @system_raft_replication_unit_count.setter + def system_raft_replication_unit_count(self, system_raft_replication_unit_count): + """ + Sets the system_raft_replication_unit_count of this DistributedDatabaseSummary. + Number of replication units associated with system raft clusters. + + + :param system_raft_replication_unit_count: The system_raft_replication_unit_count of this DistributedDatabaseSummary. + :type: int + """ + self._system_raft_replication_unit_count = system_raft_replication_unit_count + + @property + def metadata(self): + """ + Gets the metadata of this DistributedDatabaseSummary. + + :return: The metadata of this DistributedDatabaseSummary. + :rtype: oci.distributed_database_v26.models.DistributedDbMetadata + """ + return self._metadata + + @metadata.setter + def metadata(self, metadata): + """ + Sets the metadata of this DistributedDatabaseSummary. + + :param metadata: The metadata of this DistributedDatabaseSummary. + :type: oci.distributed_database_v26.models.DistributedDbMetadata + """ + self._metadata = metadata + + @property + def sharding_method(self): + """ + **[Required]** Gets the sharding_method of this DistributedDatabaseSummary. + Sharding methods for the Globally distributed database. + + Allowed values for this property are: "USER", "SYSTEM", "COMPOSITE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The sharding_method of this DistributedDatabaseSummary. + :rtype: str + """ + return self._sharding_method + + @sharding_method.setter + def sharding_method(self, sharding_method): + """ + Sets the sharding_method of this DistributedDatabaseSummary. + Sharding methods for the Globally distributed database. + + + :param sharding_method: The sharding_method of this DistributedDatabaseSummary. + :type: str + """ + allowed_values = ["USER", "SYSTEM", "COMPOSITE"] + if not value_allowed_none_or_none_sentinel(sharding_method, allowed_values): + sharding_method = 'UNKNOWN_ENUM_VALUE' + self._sharding_method = sharding_method + + @property + def replication_method(self): + """ + Gets the replication_method of this DistributedDatabaseSummary. + The Replication method for Globally distributed database. Use RAFT for Raft based replication. + With RAFT replication, shards cannot have peers details set on them. In case shards need to + have peers, please do not set RAFT replicationMethod. For all non RAFT replication cases (with or + without peers), please set replicationMethod as DG or do not set any value for replicationMethod. + + Allowed values for this property are: "RAFT", "DG", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The replication_method of this DistributedDatabaseSummary. + :rtype: str + """ + return self._replication_method + + @replication_method.setter + def replication_method(self, replication_method): + """ + Sets the replication_method of this DistributedDatabaseSummary. + The Replication method for Globally distributed database. Use RAFT for Raft based replication. + With RAFT replication, shards cannot have peers details set on them. In case shards need to + have peers, please do not set RAFT replicationMethod. For all non RAFT replication cases (with or + without peers), please set replicationMethod as DG or do not set any value for replicationMethod. + + + :param replication_method: The replication_method of this DistributedDatabaseSummary. + :type: str + """ + allowed_values = ["RAFT", "DG"] + if not value_allowed_none_or_none_sentinel(replication_method, allowed_values): + replication_method = 'UNKNOWN_ENUM_VALUE' + self._replication_method = replication_method + + @property + def db_deployment_type(self): + """ + **[Required]** Gets the db_deployment_type of this DistributedDatabaseSummary. + The distributed database deployment type. + + Allowed values for this property are: "EXADB", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The db_deployment_type of this DistributedDatabaseSummary. + :rtype: str + """ + return self._db_deployment_type + + @db_deployment_type.setter + def db_deployment_type(self, db_deployment_type): + """ + Sets the db_deployment_type of this DistributedDatabaseSummary. + The distributed database deployment type. + + + :param db_deployment_type: The db_deployment_type of this DistributedDatabaseSummary. + :type: str + """ + allowed_values = ["EXADB"] + if not value_allowed_none_or_none_sentinel(db_deployment_type, allowed_values): + db_deployment_type = 'UNKNOWN_ENUM_VALUE' + self._db_deployment_type = db_deployment_type + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this DistributedDatabaseSummary. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this DistributedDatabaseSummary. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this DistributedDatabaseSummary. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this DistributedDatabaseSummary. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this DistributedDatabaseSummary. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this DistributedDatabaseSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this DistributedDatabaseSummary. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this DistributedDatabaseSummary. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + @property + def system_tags(self): + """ + Gets the system_tags of this DistributedDatabaseSummary. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :return: The system_tags of this DistributedDatabaseSummary. + :rtype: dict(str, dict(str, object)) + """ + return self._system_tags + + @system_tags.setter + def system_tags(self, system_tags): + """ + Sets the system_tags of this DistributedDatabaseSummary. + Usage of system tag keys. These predefined keys are scoped to namespaces. + Example: `{\"orcl-cloud\": {\"free-tier-retained\": \"true\"}}` + + + :param system_tags: The system_tags of this DistributedDatabaseSummary. + :type: dict(str, dict(str, object)) + """ + self._system_tags = system_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_db_backup_config.py b/src/oci/distributed_database_v26/models/distributed_db_backup_config.py new file mode 100644 index 0000000000..093dc74c7c --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_db_backup_config.py @@ -0,0 +1,536 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedDbBackupConfig(object): + """ + Backup Options + To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to an administrator. If you're an administrator who needs to write policies to give users access, see `Getting Started with Policies`__. + + __ https://docs.oracle.com/iaas/Content/Identity/Concepts/policygetstarted.htm + """ + + #: A constant which can be used with the auto_backup_window property of a DistributedDbBackupConfig. + #: This constant has a value of "SLOT_ONE" + AUTO_BACKUP_WINDOW_SLOT_ONE = "SLOT_ONE" + + #: A constant which can be used with the auto_backup_window property of a DistributedDbBackupConfig. + #: This constant has a value of "SLOT_TWO" + AUTO_BACKUP_WINDOW_SLOT_TWO = "SLOT_TWO" + + #: A constant which can be used with the auto_backup_window property of a DistributedDbBackupConfig. + #: This constant has a value of "SLOT_THREE" + AUTO_BACKUP_WINDOW_SLOT_THREE = "SLOT_THREE" + + #: A constant which can be used with the auto_backup_window property of a DistributedDbBackupConfig. + #: This constant has a value of "SLOT_FOUR" + AUTO_BACKUP_WINDOW_SLOT_FOUR = "SLOT_FOUR" + + #: A constant which can be used with the auto_backup_window property of a DistributedDbBackupConfig. + #: This constant has a value of "SLOT_FIVE" + AUTO_BACKUP_WINDOW_SLOT_FIVE = "SLOT_FIVE" + + #: A constant which can be used with the auto_backup_window property of a DistributedDbBackupConfig. + #: This constant has a value of "SLOT_SIX" + AUTO_BACKUP_WINDOW_SLOT_SIX = "SLOT_SIX" + + #: A constant which can be used with the auto_backup_window property of a DistributedDbBackupConfig. + #: This constant has a value of "SLOT_SEVEN" + AUTO_BACKUP_WINDOW_SLOT_SEVEN = "SLOT_SEVEN" + + #: A constant which can be used with the auto_backup_window property of a DistributedDbBackupConfig. + #: This constant has a value of "SLOT_EIGHT" + AUTO_BACKUP_WINDOW_SLOT_EIGHT = "SLOT_EIGHT" + + #: A constant which can be used with the auto_backup_window property of a DistributedDbBackupConfig. + #: This constant has a value of "SLOT_NINE" + AUTO_BACKUP_WINDOW_SLOT_NINE = "SLOT_NINE" + + #: A constant which can be used with the auto_backup_window property of a DistributedDbBackupConfig. + #: This constant has a value of "SLOT_TEN" + AUTO_BACKUP_WINDOW_SLOT_TEN = "SLOT_TEN" + + #: A constant which can be used with the auto_backup_window property of a DistributedDbBackupConfig. + #: This constant has a value of "SLOT_ELEVEN" + AUTO_BACKUP_WINDOW_SLOT_ELEVEN = "SLOT_ELEVEN" + + #: A constant which can be used with the auto_backup_window property of a DistributedDbBackupConfig. + #: This constant has a value of "SLOT_TWELVE" + AUTO_BACKUP_WINDOW_SLOT_TWELVE = "SLOT_TWELVE" + + #: A constant which can be used with the auto_full_backup_window property of a DistributedDbBackupConfig. + #: This constant has a value of "SLOT_ONE" + AUTO_FULL_BACKUP_WINDOW_SLOT_ONE = "SLOT_ONE" + + #: A constant which can be used with the auto_full_backup_window property of a DistributedDbBackupConfig. + #: This constant has a value of "SLOT_TWO" + AUTO_FULL_BACKUP_WINDOW_SLOT_TWO = "SLOT_TWO" + + #: A constant which can be used with the auto_full_backup_window property of a DistributedDbBackupConfig. + #: This constant has a value of "SLOT_THREE" + AUTO_FULL_BACKUP_WINDOW_SLOT_THREE = "SLOT_THREE" + + #: A constant which can be used with the auto_full_backup_window property of a DistributedDbBackupConfig. + #: This constant has a value of "SLOT_FOUR" + AUTO_FULL_BACKUP_WINDOW_SLOT_FOUR = "SLOT_FOUR" + + #: A constant which can be used with the auto_full_backup_window property of a DistributedDbBackupConfig. + #: This constant has a value of "SLOT_FIVE" + AUTO_FULL_BACKUP_WINDOW_SLOT_FIVE = "SLOT_FIVE" + + #: A constant which can be used with the auto_full_backup_window property of a DistributedDbBackupConfig. + #: This constant has a value of "SLOT_SIX" + AUTO_FULL_BACKUP_WINDOW_SLOT_SIX = "SLOT_SIX" + + #: A constant which can be used with the auto_full_backup_window property of a DistributedDbBackupConfig. + #: This constant has a value of "SLOT_SEVEN" + AUTO_FULL_BACKUP_WINDOW_SLOT_SEVEN = "SLOT_SEVEN" + + #: A constant which can be used with the auto_full_backup_window property of a DistributedDbBackupConfig. + #: This constant has a value of "SLOT_EIGHT" + AUTO_FULL_BACKUP_WINDOW_SLOT_EIGHT = "SLOT_EIGHT" + + #: A constant which can be used with the auto_full_backup_window property of a DistributedDbBackupConfig. + #: This constant has a value of "SLOT_NINE" + AUTO_FULL_BACKUP_WINDOW_SLOT_NINE = "SLOT_NINE" + + #: A constant which can be used with the auto_full_backup_window property of a DistributedDbBackupConfig. + #: This constant has a value of "SLOT_TEN" + AUTO_FULL_BACKUP_WINDOW_SLOT_TEN = "SLOT_TEN" + + #: A constant which can be used with the auto_full_backup_window property of a DistributedDbBackupConfig. + #: This constant has a value of "SLOT_ELEVEN" + AUTO_FULL_BACKUP_WINDOW_SLOT_ELEVEN = "SLOT_ELEVEN" + + #: A constant which can be used with the auto_full_backup_window property of a DistributedDbBackupConfig. + #: This constant has a value of "SLOT_TWELVE" + AUTO_FULL_BACKUP_WINDOW_SLOT_TWELVE = "SLOT_TWELVE" + + #: A constant which can be used with the auto_full_backup_day property of a DistributedDbBackupConfig. + #: This constant has a value of "SUNDAY" + AUTO_FULL_BACKUP_DAY_SUNDAY = "SUNDAY" + + #: A constant which can be used with the auto_full_backup_day property of a DistributedDbBackupConfig. + #: This constant has a value of "MONDAY" + AUTO_FULL_BACKUP_DAY_MONDAY = "MONDAY" + + #: A constant which can be used with the auto_full_backup_day property of a DistributedDbBackupConfig. + #: This constant has a value of "TUESDAY" + AUTO_FULL_BACKUP_DAY_TUESDAY = "TUESDAY" + + #: A constant which can be used with the auto_full_backup_day property of a DistributedDbBackupConfig. + #: This constant has a value of "WEDNESDAY" + AUTO_FULL_BACKUP_DAY_WEDNESDAY = "WEDNESDAY" + + #: A constant which can be used with the auto_full_backup_day property of a DistributedDbBackupConfig. + #: This constant has a value of "THURSDAY" + AUTO_FULL_BACKUP_DAY_THURSDAY = "THURSDAY" + + #: A constant which can be used with the auto_full_backup_day property of a DistributedDbBackupConfig. + #: This constant has a value of "FRIDAY" + AUTO_FULL_BACKUP_DAY_FRIDAY = "FRIDAY" + + #: A constant which can be used with the auto_full_backup_day property of a DistributedDbBackupConfig. + #: This constant has a value of "SATURDAY" + AUTO_FULL_BACKUP_DAY_SATURDAY = "SATURDAY" + + #: A constant which can be used with the backup_deletion_policy property of a DistributedDbBackupConfig. + #: This constant has a value of "DELETE_IMMEDIATELY" + BACKUP_DELETION_POLICY_DELETE_IMMEDIATELY = "DELETE_IMMEDIATELY" + + #: A constant which can be used with the backup_deletion_policy property of a DistributedDbBackupConfig. + #: This constant has a value of "DELETE_AFTER_RETENTION_PERIOD" + BACKUP_DELETION_POLICY_DELETE_AFTER_RETENTION_PERIOD = "DELETE_AFTER_RETENTION_PERIOD" + + def __init__(self, **kwargs): + """ + Initializes a new DistributedDbBackupConfig object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param is_auto_backup_enabled: + The value to assign to the is_auto_backup_enabled property of this DistributedDbBackupConfig. + :type is_auto_backup_enabled: bool + + :param recovery_window_in_days: + The value to assign to the recovery_window_in_days property of this DistributedDbBackupConfig. + :type recovery_window_in_days: int + + :param auto_backup_window: + The value to assign to the auto_backup_window property of this DistributedDbBackupConfig. + Allowed values for this property are: "SLOT_ONE", "SLOT_TWO", "SLOT_THREE", "SLOT_FOUR", "SLOT_FIVE", "SLOT_SIX", "SLOT_SEVEN", "SLOT_EIGHT", "SLOT_NINE", "SLOT_TEN", "SLOT_ELEVEN", "SLOT_TWELVE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type auto_backup_window: str + + :param auto_full_backup_window: + The value to assign to the auto_full_backup_window property of this DistributedDbBackupConfig. + Allowed values for this property are: "SLOT_ONE", "SLOT_TWO", "SLOT_THREE", "SLOT_FOUR", "SLOT_FIVE", "SLOT_SIX", "SLOT_SEVEN", "SLOT_EIGHT", "SLOT_NINE", "SLOT_TEN", "SLOT_ELEVEN", "SLOT_TWELVE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type auto_full_backup_window: str + + :param auto_full_backup_day: + The value to assign to the auto_full_backup_day property of this DistributedDbBackupConfig. + Allowed values for this property are: "SUNDAY", "MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type auto_full_backup_day: str + + :param can_run_immediate_full_backup: + The value to assign to the can_run_immediate_full_backup property of this DistributedDbBackupConfig. + :type can_run_immediate_full_backup: bool + + :param is_remote_backup_enabled: + The value to assign to the is_remote_backup_enabled property of this DistributedDbBackupConfig. + :type is_remote_backup_enabled: bool + + :param remote_region: + The value to assign to the remote_region property of this DistributedDbBackupConfig. + :type remote_region: str + + :param backup_destination_details: + The value to assign to the backup_destination_details property of this DistributedDbBackupConfig. + :type backup_destination_details: list[oci.distributed_database_v26.models.DistributedDbBackupDestination] + + :param backup_deletion_policy: + The value to assign to the backup_deletion_policy property of this DistributedDbBackupConfig. + Allowed values for this property are: "DELETE_IMMEDIATELY", "DELETE_AFTER_RETENTION_PERIOD", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type backup_deletion_policy: str + + """ + self.swagger_types = { + 'is_auto_backup_enabled': 'bool', + 'recovery_window_in_days': 'int', + 'auto_backup_window': 'str', + 'auto_full_backup_window': 'str', + 'auto_full_backup_day': 'str', + 'can_run_immediate_full_backup': 'bool', + 'is_remote_backup_enabled': 'bool', + 'remote_region': 'str', + 'backup_destination_details': 'list[DistributedDbBackupDestination]', + 'backup_deletion_policy': 'str' + } + self.attribute_map = { + 'is_auto_backup_enabled': 'isAutoBackupEnabled', + 'recovery_window_in_days': 'recoveryWindowInDays', + 'auto_backup_window': 'autoBackupWindow', + 'auto_full_backup_window': 'autoFullBackupWindow', + 'auto_full_backup_day': 'autoFullBackupDay', + 'can_run_immediate_full_backup': 'canRunImmediateFullBackup', + 'is_remote_backup_enabled': 'isRemoteBackupEnabled', + 'remote_region': 'remoteRegion', + 'backup_destination_details': 'backupDestinationDetails', + 'backup_deletion_policy': 'backupDeletionPolicy' + } + self._is_auto_backup_enabled = None + self._recovery_window_in_days = None + self._auto_backup_window = None + self._auto_full_backup_window = None + self._auto_full_backup_day = None + self._can_run_immediate_full_backup = None + self._is_remote_backup_enabled = None + self._remote_region = None + self._backup_destination_details = None + self._backup_deletion_policy = None + + @property + def is_auto_backup_enabled(self): + """ + Gets the is_auto_backup_enabled of this DistributedDbBackupConfig. + If set to true, configures automatic backups. If you previously used RMAN or dbcli to configure backups and then you switch to using the Console or the API for backups, a new backup configuration is created and associated with your database. This means that you can no longer rely on your previously configured unmanaged backups to work. + + + :return: The is_auto_backup_enabled of this DistributedDbBackupConfig. + :rtype: bool + """ + return self._is_auto_backup_enabled + + @is_auto_backup_enabled.setter + def is_auto_backup_enabled(self, is_auto_backup_enabled): + """ + Sets the is_auto_backup_enabled of this DistributedDbBackupConfig. + If set to true, configures automatic backups. If you previously used RMAN or dbcli to configure backups and then you switch to using the Console or the API for backups, a new backup configuration is created and associated with your database. This means that you can no longer rely on your previously configured unmanaged backups to work. + + + :param is_auto_backup_enabled: The is_auto_backup_enabled of this DistributedDbBackupConfig. + :type: bool + """ + self._is_auto_backup_enabled = is_auto_backup_enabled + + @property + def recovery_window_in_days(self): + """ + Gets the recovery_window_in_days of this DistributedDbBackupConfig. + Number of days between the current and the earliest point of recoverability covered by automatic backups. + This value applies to automatic backups only. After a new automatic backup has been created, Oracle removes old automatic backups that are created before the window. + When the value is updated, it is applied to all existing automatic backups. + + + :return: The recovery_window_in_days of this DistributedDbBackupConfig. + :rtype: int + """ + return self._recovery_window_in_days + + @recovery_window_in_days.setter + def recovery_window_in_days(self, recovery_window_in_days): + """ + Sets the recovery_window_in_days of this DistributedDbBackupConfig. + Number of days between the current and the earliest point of recoverability covered by automatic backups. + This value applies to automatic backups only. After a new automatic backup has been created, Oracle removes old automatic backups that are created before the window. + When the value is updated, it is applied to all existing automatic backups. + + + :param recovery_window_in_days: The recovery_window_in_days of this DistributedDbBackupConfig. + :type: int + """ + self._recovery_window_in_days = recovery_window_in_days + + @property + def auto_backup_window(self): + """ + Gets the auto_backup_window of this DistributedDbBackupConfig. + Time window selected for initiating automatic backup for the database system. There are twelve available two-hour time windows. If no option is selected, a start time between 12:00 AM to 7:00 AM in the region of the database is automatically chosen. For example, if the user selects SLOT_TWO from the enum list, the automatic backup job will start in between 2:00 AM (inclusive) to 4:00 AM (exclusive). + Example: `SLOT_TWO` + + Allowed values for this property are: "SLOT_ONE", "SLOT_TWO", "SLOT_THREE", "SLOT_FOUR", "SLOT_FIVE", "SLOT_SIX", "SLOT_SEVEN", "SLOT_EIGHT", "SLOT_NINE", "SLOT_TEN", "SLOT_ELEVEN", "SLOT_TWELVE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The auto_backup_window of this DistributedDbBackupConfig. + :rtype: str + """ + return self._auto_backup_window + + @auto_backup_window.setter + def auto_backup_window(self, auto_backup_window): + """ + Sets the auto_backup_window of this DistributedDbBackupConfig. + Time window selected for initiating automatic backup for the database system. There are twelve available two-hour time windows. If no option is selected, a start time between 12:00 AM to 7:00 AM in the region of the database is automatically chosen. For example, if the user selects SLOT_TWO from the enum list, the automatic backup job will start in between 2:00 AM (inclusive) to 4:00 AM (exclusive). + Example: `SLOT_TWO` + + + :param auto_backup_window: The auto_backup_window of this DistributedDbBackupConfig. + :type: str + """ + allowed_values = ["SLOT_ONE", "SLOT_TWO", "SLOT_THREE", "SLOT_FOUR", "SLOT_FIVE", "SLOT_SIX", "SLOT_SEVEN", "SLOT_EIGHT", "SLOT_NINE", "SLOT_TEN", "SLOT_ELEVEN", "SLOT_TWELVE"] + if not value_allowed_none_or_none_sentinel(auto_backup_window, allowed_values): + auto_backup_window = 'UNKNOWN_ENUM_VALUE' + self._auto_backup_window = auto_backup_window + + @property + def auto_full_backup_window(self): + """ + Gets the auto_full_backup_window of this DistributedDbBackupConfig. + Time window selected for initiating full backup for the database system. There are twelve available two-hour time windows. If no option is selected, the value is null and a start time between 12:00 AM to 7:00 AM in the region of the database is automatically chosen. For example, if the user selects SLOT_TWO from the enum list, the automatic backup job will start in between 2:00 AM (inclusive) to 4:00 AM (exclusive). + Example: `SLOT_TWO` + + Allowed values for this property are: "SLOT_ONE", "SLOT_TWO", "SLOT_THREE", "SLOT_FOUR", "SLOT_FIVE", "SLOT_SIX", "SLOT_SEVEN", "SLOT_EIGHT", "SLOT_NINE", "SLOT_TEN", "SLOT_ELEVEN", "SLOT_TWELVE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The auto_full_backup_window of this DistributedDbBackupConfig. + :rtype: str + """ + return self._auto_full_backup_window + + @auto_full_backup_window.setter + def auto_full_backup_window(self, auto_full_backup_window): + """ + Sets the auto_full_backup_window of this DistributedDbBackupConfig. + Time window selected for initiating full backup for the database system. There are twelve available two-hour time windows. If no option is selected, the value is null and a start time between 12:00 AM to 7:00 AM in the region of the database is automatically chosen. For example, if the user selects SLOT_TWO from the enum list, the automatic backup job will start in between 2:00 AM (inclusive) to 4:00 AM (exclusive). + Example: `SLOT_TWO` + + + :param auto_full_backup_window: The auto_full_backup_window of this DistributedDbBackupConfig. + :type: str + """ + allowed_values = ["SLOT_ONE", "SLOT_TWO", "SLOT_THREE", "SLOT_FOUR", "SLOT_FIVE", "SLOT_SIX", "SLOT_SEVEN", "SLOT_EIGHT", "SLOT_NINE", "SLOT_TEN", "SLOT_ELEVEN", "SLOT_TWELVE"] + if not value_allowed_none_or_none_sentinel(auto_full_backup_window, allowed_values): + auto_full_backup_window = 'UNKNOWN_ENUM_VALUE' + self._auto_full_backup_window = auto_full_backup_window + + @property + def auto_full_backup_day(self): + """ + Gets the auto_full_backup_day of this DistributedDbBackupConfig. + Day of the week the full backup should be applied on the database system. If no option is selected, the value is null and we will default to Sunday. + + Allowed values for this property are: "SUNDAY", "MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The auto_full_backup_day of this DistributedDbBackupConfig. + :rtype: str + """ + return self._auto_full_backup_day + + @auto_full_backup_day.setter + def auto_full_backup_day(self, auto_full_backup_day): + """ + Sets the auto_full_backup_day of this DistributedDbBackupConfig. + Day of the week the full backup should be applied on the database system. If no option is selected, the value is null and we will default to Sunday. + + + :param auto_full_backup_day: The auto_full_backup_day of this DistributedDbBackupConfig. + :type: str + """ + allowed_values = ["SUNDAY", "MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY"] + if not value_allowed_none_or_none_sentinel(auto_full_backup_day, allowed_values): + auto_full_backup_day = 'UNKNOWN_ENUM_VALUE' + self._auto_full_backup_day = auto_full_backup_day + + @property + def can_run_immediate_full_backup(self): + """ + Gets the can_run_immediate_full_backup of this DistributedDbBackupConfig. + If set to true, configures automatic full backups in the local region (the region of the DB system) for the first backup run immediately. + + + :return: The can_run_immediate_full_backup of this DistributedDbBackupConfig. + :rtype: bool + """ + return self._can_run_immediate_full_backup + + @can_run_immediate_full_backup.setter + def can_run_immediate_full_backup(self, can_run_immediate_full_backup): + """ + Sets the can_run_immediate_full_backup of this DistributedDbBackupConfig. + If set to true, configures automatic full backups in the local region (the region of the DB system) for the first backup run immediately. + + + :param can_run_immediate_full_backup: The can_run_immediate_full_backup of this DistributedDbBackupConfig. + :type: bool + """ + self._can_run_immediate_full_backup = can_run_immediate_full_backup + + @property + def is_remote_backup_enabled(self): + """ + Gets the is_remote_backup_enabled of this DistributedDbBackupConfig. + If set to true, configures automatic incremental backups in the local region (the region of the DB system) and the remote region with a default frequency of 1 hour. + If you previously used RMAN or dbcli to configure backups, using the Console or the API for manged backups creates a new backup configuration for your database. The new configuration replaces the configuration created with RMAN or dbcli. + This means that you can no longer rely on your previously configured unmanaged backups to work. + + + :return: The is_remote_backup_enabled of this DistributedDbBackupConfig. + :rtype: bool + """ + return self._is_remote_backup_enabled + + @is_remote_backup_enabled.setter + def is_remote_backup_enabled(self, is_remote_backup_enabled): + """ + Sets the is_remote_backup_enabled of this DistributedDbBackupConfig. + If set to true, configures automatic incremental backups in the local region (the region of the DB system) and the remote region with a default frequency of 1 hour. + If you previously used RMAN or dbcli to configure backups, using the Console or the API for manged backups creates a new backup configuration for your database. The new configuration replaces the configuration created with RMAN or dbcli. + This means that you can no longer rely on your previously configured unmanaged backups to work. + + + :param is_remote_backup_enabled: The is_remote_backup_enabled of this DistributedDbBackupConfig. + :type: bool + """ + self._is_remote_backup_enabled = is_remote_backup_enabled + + @property + def remote_region(self): + """ + Gets the remote_region of this DistributedDbBackupConfig. + The name of the remote region where the remote automatic incremental backups will be stored. + For information about valid region names, see + `Regions and Availability Domains`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/regions.htm + + + :return: The remote_region of this DistributedDbBackupConfig. + :rtype: str + """ + return self._remote_region + + @remote_region.setter + def remote_region(self, remote_region): + """ + Sets the remote_region of this DistributedDbBackupConfig. + The name of the remote region where the remote automatic incremental backups will be stored. + For information about valid region names, see + `Regions and Availability Domains`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/regions.htm + + + :param remote_region: The remote_region of this DistributedDbBackupConfig. + :type: str + """ + self._remote_region = remote_region + + @property + def backup_destination_details(self): + """ + Gets the backup_destination_details of this DistributedDbBackupConfig. + Backup destination details. + + + :return: The backup_destination_details of this DistributedDbBackupConfig. + :rtype: list[oci.distributed_database_v26.models.DistributedDbBackupDestination] + """ + return self._backup_destination_details + + @backup_destination_details.setter + def backup_destination_details(self, backup_destination_details): + """ + Sets the backup_destination_details of this DistributedDbBackupConfig. + Backup destination details. + + + :param backup_destination_details: The backup_destination_details of this DistributedDbBackupConfig. + :type: list[oci.distributed_database_v26.models.DistributedDbBackupDestination] + """ + self._backup_destination_details = backup_destination_details + + @property + def backup_deletion_policy(self): + """ + Gets the backup_deletion_policy of this DistributedDbBackupConfig. + This defines when the backups will be deleted. - IMMEDIATE option keep the backup for predefined time i.e 72 hours and then delete permanently... - RETAIN will keep the backups as per the policy defined for database backups. + + Allowed values for this property are: "DELETE_IMMEDIATELY", "DELETE_AFTER_RETENTION_PERIOD", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The backup_deletion_policy of this DistributedDbBackupConfig. + :rtype: str + """ + return self._backup_deletion_policy + + @backup_deletion_policy.setter + def backup_deletion_policy(self, backup_deletion_policy): + """ + Sets the backup_deletion_policy of this DistributedDbBackupConfig. + This defines when the backups will be deleted. - IMMEDIATE option keep the backup for predefined time i.e 72 hours and then delete permanently... - RETAIN will keep the backups as per the policy defined for database backups. + + + :param backup_deletion_policy: The backup_deletion_policy of this DistributedDbBackupConfig. + :type: str + """ + allowed_values = ["DELETE_IMMEDIATELY", "DELETE_AFTER_RETENTION_PERIOD"] + if not value_allowed_none_or_none_sentinel(backup_deletion_policy, allowed_values): + backup_deletion_policy = 'UNKNOWN_ENUM_VALUE' + self._backup_deletion_policy = backup_deletion_policy + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_db_backup_destination.py b/src/oci/distributed_database_v26/models/distributed_db_backup_destination.py new file mode 100644 index 0000000000..439ffa68b1 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_db_backup_destination.py @@ -0,0 +1,265 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedDbBackupDestination(object): + """ + Backup destination details + """ + + #: A constant which can be used with the type property of a DistributedDbBackupDestination. + #: This constant has a value of "NFS" + TYPE_NFS = "NFS" + + #: A constant which can be used with the type property of a DistributedDbBackupDestination. + #: This constant has a value of "OBJECT_STORE" + TYPE_OBJECT_STORE = "OBJECT_STORE" + + #: A constant which can be used with the type property of a DistributedDbBackupDestination. + #: This constant has a value of "LOCAL" + TYPE_LOCAL = "LOCAL" + + #: A constant which can be used with the type property of a DistributedDbBackupDestination. + #: This constant has a value of "DBRS" + TYPE_DBRS = "DBRS" + + def __init__(self, **kwargs): + """ + Initializes a new DistributedDbBackupDestination object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param type: + The value to assign to the type property of this DistributedDbBackupDestination. + Allowed values for this property are: "NFS", "OBJECT_STORE", "LOCAL", "DBRS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type type: str + + :param id: + The value to assign to the id property of this DistributedDbBackupDestination. + :type id: str + + :param internet_proxy: + The value to assign to the internet_proxy property of this DistributedDbBackupDestination. + :type internet_proxy: str + + :param dbrs_policy_id: + The value to assign to the dbrs_policy_id property of this DistributedDbBackupDestination. + :type dbrs_policy_id: str + + :param is_remote: + The value to assign to the is_remote property of this DistributedDbBackupDestination. + :type is_remote: bool + + :param remote_region: + The value to assign to the remote_region property of this DistributedDbBackupDestination. + :type remote_region: str + + """ + self.swagger_types = { + 'type': 'str', + 'id': 'str', + 'internet_proxy': 'str', + 'dbrs_policy_id': 'str', + 'is_remote': 'bool', + 'remote_region': 'str' + } + self.attribute_map = { + 'type': 'type', + 'id': 'id', + 'internet_proxy': 'internetProxy', + 'dbrs_policy_id': 'dbrsPolicyId', + 'is_remote': 'isRemote', + 'remote_region': 'remoteRegion' + } + self._type = None + self._id = None + self._internet_proxy = None + self._dbrs_policy_id = None + self._is_remote = None + self._remote_region = None + + @property + def type(self): + """ + **[Required]** Gets the type of this DistributedDbBackupDestination. + Type of the database backup destination. + + Allowed values for this property are: "NFS", "OBJECT_STORE", "LOCAL", "DBRS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The type of this DistributedDbBackupDestination. + :rtype: str + """ + return self._type + + @type.setter + def type(self, type): + """ + Sets the type of this DistributedDbBackupDestination. + Type of the database backup destination. + + + :param type: The type of this DistributedDbBackupDestination. + :type: str + """ + allowed_values = ["NFS", "OBJECT_STORE", "LOCAL", "DBRS"] + if not value_allowed_none_or_none_sentinel(type, allowed_values): + type = 'UNKNOWN_ENUM_VALUE' + self._type = type + + @property + def id(self): + """ + Gets the id of this DistributedDbBackupDestination. + The `OCID`__ of the backup destination. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this DistributedDbBackupDestination. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this DistributedDbBackupDestination. + The `OCID`__ of the backup destination. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this DistributedDbBackupDestination. + :type: str + """ + self._id = id + + @property + def internet_proxy(self): + """ + Gets the internet_proxy of this DistributedDbBackupDestination. + Proxy URL to connect to object store. + + + :return: The internet_proxy of this DistributedDbBackupDestination. + :rtype: str + """ + return self._internet_proxy + + @internet_proxy.setter + def internet_proxy(self, internet_proxy): + """ + Sets the internet_proxy of this DistributedDbBackupDestination. + Proxy URL to connect to object store. + + + :param internet_proxy: The internet_proxy of this DistributedDbBackupDestination. + :type: str + """ + self._internet_proxy = internet_proxy + + @property + def dbrs_policy_id(self): + """ + Gets the dbrs_policy_id of this DistributedDbBackupDestination. + The `OCID`__ of the DBRS policy used for backup. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The dbrs_policy_id of this DistributedDbBackupDestination. + :rtype: str + """ + return self._dbrs_policy_id + + @dbrs_policy_id.setter + def dbrs_policy_id(self, dbrs_policy_id): + """ + Sets the dbrs_policy_id of this DistributedDbBackupDestination. + The `OCID`__ of the DBRS policy used for backup. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param dbrs_policy_id: The dbrs_policy_id of this DistributedDbBackupDestination. + :type: str + """ + self._dbrs_policy_id = dbrs_policy_id + + @property + def is_remote(self): + """ + Gets the is_remote of this DistributedDbBackupDestination. + Indicates whether the backup destination is cross-region or local region. + + + :return: The is_remote of this DistributedDbBackupDestination. + :rtype: bool + """ + return self._is_remote + + @is_remote.setter + def is_remote(self, is_remote): + """ + Sets the is_remote of this DistributedDbBackupDestination. + Indicates whether the backup destination is cross-region or local region. + + + :param is_remote: The is_remote of this DistributedDbBackupDestination. + :type: bool + """ + self._is_remote = is_remote + + @property + def remote_region(self): + """ + Gets the remote_region of this DistributedDbBackupDestination. + The name of the remote region where the remote automatic incremental backups will be stored. + For information about valid region names, see + `Regions and Availability Domains`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/regions.htm + + + :return: The remote_region of this DistributedDbBackupDestination. + :rtype: str + """ + return self._remote_region + + @remote_region.setter + def remote_region(self, remote_region): + """ + Sets the remote_region of this DistributedDbBackupDestination. + The name of the remote region where the remote automatic incremental backups will be stored. + For information about valid region names, see + `Regions and Availability Domains`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/regions.htm + + + :param remote_region: The remote_region of this DistributedDbBackupDestination. + :type: str + """ + self._remote_region = remote_region + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_db_connection_string.py b/src/oci/distributed_database_v26/models/distributed_db_connection_string.py new file mode 100644 index 0000000000..44b88942a2 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_db_connection_string.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedDbConnectionString(object): + """ + Details of Globally distributed database connection String. + """ + + def __init__(self, **kwargs): + """ + Initializes a new DistributedDbConnectionString object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param all_connection_strings: + The value to assign to the all_connection_strings property of this DistributedDbConnectionString. + :type all_connection_strings: dict(str, str) + + """ + self.swagger_types = { + 'all_connection_strings': 'dict(str, str)' + } + self.attribute_map = { + 'all_connection_strings': 'allConnectionStrings' + } + self._all_connection_strings = None + + @property + def all_connection_strings(self): + """ + **[Required]** Gets the all_connection_strings of this DistributedDbConnectionString. + Collection of connection strings. + + + :return: The all_connection_strings of this DistributedDbConnectionString. + :rtype: dict(str, str) + """ + return self._all_connection_strings + + @all_connection_strings.setter + def all_connection_strings(self, all_connection_strings): + """ + Sets the all_connection_strings of this DistributedDbConnectionString. + Collection of connection strings. + + + :param all_connection_strings: The all_connection_strings of this DistributedDbConnectionString. + :type: dict(str, str) + """ + self._all_connection_strings = all_connection_strings + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_db_gds_control_node_image.py b/src/oci/distributed_database_v26/models/distributed_db_gds_control_node_image.py new file mode 100644 index 0000000000..dd46df2b06 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_db_gds_control_node_image.py @@ -0,0 +1,105 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedDbGdsControlNodeImage(object): + """ + The Global Database Services Control(GDS CTL) image details. + """ + + def __init__(self, **kwargs): + """ + Initializes a new DistributedDbGdsControlNodeImage object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this DistributedDbGdsControlNodeImage. + :type id: str + + :param version: + The value to assign to the version property of this DistributedDbGdsControlNodeImage. + :type version: str + + """ + self.swagger_types = { + 'id': 'str', + 'version': 'str' + } + self.attribute_map = { + 'id': 'id', + 'version': 'version' + } + self._id = None + self._version = None + + @property + def id(self): + """ + **[Required]** Gets the id of this DistributedDbGdsControlNodeImage. + The `OCID`__ of the Global Database Services Control(GDS CTL) software image. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this DistributedDbGdsControlNodeImage. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this DistributedDbGdsControlNodeImage. + The `OCID`__ of the Global Database Services Control(GDS CTL) software image. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this DistributedDbGdsControlNodeImage. + :type: str + """ + self._id = id + + @property + def version(self): + """ + **[Required]** Gets the version of this DistributedDbGdsControlNodeImage. + The version associated with the image identified by id. + + + :return: The version of this DistributedDbGdsControlNodeImage. + :rtype: str + """ + return self._version + + @version.setter + def version(self, version): + """ + Sets the version of this DistributedDbGdsControlNodeImage. + The version associated with the image identified by id. + + + :param version: The version of this DistributedDbGdsControlNodeImage. + :type: str + """ + self._version = version + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_db_gsm_image.py b/src/oci/distributed_database_v26/models/distributed_db_gsm_image.py new file mode 100644 index 0000000000..df388fb94d --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_db_gsm_image.py @@ -0,0 +1,105 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedDbGsmImage(object): + """ + The Global service manager image details + """ + + def __init__(self, **kwargs): + """ + Initializes a new DistributedDbGsmImage object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param id: + The value to assign to the id property of this DistributedDbGsmImage. + :type id: str + + :param version: + The value to assign to the version property of this DistributedDbGsmImage. + :type version: str + + """ + self.swagger_types = { + 'id': 'str', + 'version': 'str' + } + self.attribute_map = { + 'id': 'id', + 'version': 'version' + } + self._id = None + self._version = None + + @property + def id(self): + """ + **[Required]** Gets the id of this DistributedDbGsmImage. + The `OCID`__ of the Global service manager software image. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The id of this DistributedDbGsmImage. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this DistributedDbGsmImage. + The `OCID`__ of the Global service manager software image. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param id: The id of this DistributedDbGsmImage. + :type: str + """ + self._id = id + + @property + def version(self): + """ + **[Required]** Gets the version of this DistributedDbGsmImage. + The version associated with the image identified by id. + + + :return: The version of this DistributedDbGsmImage. + :rtype: str + """ + return self._version + + @version.setter + def version(self, version): + """ + Sets the version of this DistributedDbGsmImage. + The version associated with the image identified by id. + + + :param version: The version of this DistributedDbGsmImage. + :type: str + """ + self._version = version + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_db_metadata.py b/src/oci/distributed_database_v26/models/distributed_db_metadata.py new file mode 100644 index 0000000000..fc91af48cc --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_db_metadata.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedDbMetadata(object): + """ + Additional metadata related to Globally distributed database resources. + """ + + def __init__(self, **kwargs): + """ + Initializes a new DistributedDbMetadata object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param map: + The value to assign to the map property of this DistributedDbMetadata. + :type map: dict(str, str) + + """ + self.swagger_types = { + 'map': 'dict(str, str)' + } + self.attribute_map = { + 'map': 'map' + } + self._map = None + + @property + def map(self): + """ + Gets the map of this DistributedDbMetadata. + The map containing key-value pair of additional metadata. + + + :return: The map of this DistributedDbMetadata. + :rtype: dict(str, str) + """ + return self._map + + @map.setter + def map(self, map): + """ + Sets the map of this DistributedDbMetadata. + The map containing key-value pair of additional metadata. + + + :param map: The map of this DistributedDbMetadata. + :type: dict(str, str) + """ + self._map = map + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_db_storage_vault.py b/src/oci/distributed_database_v26/models/distributed_db_storage_vault.py new file mode 100644 index 0000000000..6ac997cfc0 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_db_storage_vault.py @@ -0,0 +1,299 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedDbStorageVault(object): + """ + The Storage Vault for Distributed Database Resource. + """ + + def __init__(self, **kwargs): + """ + Initializes a new DistributedDbStorageVault object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param compartment_id: + The value to assign to the compartment_id property of this DistributedDbStorageVault. + :type compartment_id: str + + :param display_name: + The value to assign to the display_name property of this DistributedDbStorageVault. + :type display_name: str + + :param db_storage_vault_id: + The value to assign to the db_storage_vault_id property of this DistributedDbStorageVault. + :type db_storage_vault_id: str + + :param high_capacity_database_storage: + The value to assign to the high_capacity_database_storage property of this DistributedDbStorageVault. + :type high_capacity_database_storage: int + + :param additional_flash_cache_in_percent: + The value to assign to the additional_flash_cache_in_percent property of this DistributedDbStorageVault. + :type additional_flash_cache_in_percent: int + + :param subscription_id: + The value to assign to the subscription_id property of this DistributedDbStorageVault. + :type subscription_id: str + + :param is_autoscale_enabled: + The value to assign to the is_autoscale_enabled property of this DistributedDbStorageVault. + :type is_autoscale_enabled: bool + + :param autoscale_limit_in_gbs: + The value to assign to the autoscale_limit_in_gbs property of this DistributedDbStorageVault. + :type autoscale_limit_in_gbs: int + + """ + self.swagger_types = { + 'compartment_id': 'str', + 'display_name': 'str', + 'db_storage_vault_id': 'str', + 'high_capacity_database_storage': 'int', + 'additional_flash_cache_in_percent': 'int', + 'subscription_id': 'str', + 'is_autoscale_enabled': 'bool', + 'autoscale_limit_in_gbs': 'int' + } + self.attribute_map = { + 'compartment_id': 'compartmentId', + 'display_name': 'displayName', + 'db_storage_vault_id': 'dbStorageVaultId', + 'high_capacity_database_storage': 'highCapacityDatabaseStorage', + 'additional_flash_cache_in_percent': 'additionalFlashCacheInPercent', + 'subscription_id': 'subscriptionId', + 'is_autoscale_enabled': 'isAutoscaleEnabled', + 'autoscale_limit_in_gbs': 'autoscaleLimitInGBs' + } + self._compartment_id = None + self._display_name = None + self._db_storage_vault_id = None + self._high_capacity_database_storage = None + self._additional_flash_cache_in_percent = None + self._subscription_id = None + self._is_autoscale_enabled = None + self._autoscale_limit_in_gbs = None + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this DistributedDbStorageVault. + The `OCID`__ of the compartment for Db Storage Vault. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this DistributedDbStorageVault. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this DistributedDbStorageVault. + The `OCID`__ of the compartment for Db Storage Vault. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this DistributedDbStorageVault. + :type: str + """ + self._compartment_id = compartment_id + + @property + def display_name(self): + """ + Gets the display_name of this DistributedDbStorageVault. + The user-friendly name for the Exadata Database Storage Vault. The name does not need to be unique. + + + :return: The display_name of this DistributedDbStorageVault. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this DistributedDbStorageVault. + The user-friendly name for the Exadata Database Storage Vault. The name does not need to be unique. + + + :param display_name: The display_name of this DistributedDbStorageVault. + :type: str + """ + self._display_name = display_name + + @property + def db_storage_vault_id(self): + """ + Gets the db_storage_vault_id of this DistributedDbStorageVault. + The `OCID`__ of the Exadata Database Storage Vault. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The db_storage_vault_id of this DistributedDbStorageVault. + :rtype: str + """ + return self._db_storage_vault_id + + @db_storage_vault_id.setter + def db_storage_vault_id(self, db_storage_vault_id): + """ + Sets the db_storage_vault_id of this DistributedDbStorageVault. + The `OCID`__ of the Exadata Database Storage Vault. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param db_storage_vault_id: The db_storage_vault_id of this DistributedDbStorageVault. + :type: str + """ + self._db_storage_vault_id = db_storage_vault_id + + @property + def high_capacity_database_storage(self): + """ + **[Required]** Gets the high_capacity_database_storage of this DistributedDbStorageVault. + Total storage capacity in GB for vault storage. + + + :return: The high_capacity_database_storage of this DistributedDbStorageVault. + :rtype: int + """ + return self._high_capacity_database_storage + + @high_capacity_database_storage.setter + def high_capacity_database_storage(self, high_capacity_database_storage): + """ + Sets the high_capacity_database_storage of this DistributedDbStorageVault. + Total storage capacity in GB for vault storage. + + + :param high_capacity_database_storage: The high_capacity_database_storage of this DistributedDbStorageVault. + :type: int + """ + self._high_capacity_database_storage = high_capacity_database_storage + + @property + def additional_flash_cache_in_percent(self): + """ + Gets the additional_flash_cache_in_percent of this DistributedDbStorageVault. + The size of additional Flash Cache in percentage of High Capacity database storage. + + + :return: The additional_flash_cache_in_percent of this DistributedDbStorageVault. + :rtype: int + """ + return self._additional_flash_cache_in_percent + + @additional_flash_cache_in_percent.setter + def additional_flash_cache_in_percent(self, additional_flash_cache_in_percent): + """ + Sets the additional_flash_cache_in_percent of this DistributedDbStorageVault. + The size of additional Flash Cache in percentage of High Capacity database storage. + + + :param additional_flash_cache_in_percent: The additional_flash_cache_in_percent of this DistributedDbStorageVault. + :type: int + """ + self._additional_flash_cache_in_percent = additional_flash_cache_in_percent + + @property + def subscription_id(self): + """ + Gets the subscription_id of this DistributedDbStorageVault. + The `OCID`__ of the subscription with which resource needs to be associated with. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The subscription_id of this DistributedDbStorageVault. + :rtype: str + """ + return self._subscription_id + + @subscription_id.setter + def subscription_id(self, subscription_id): + """ + Sets the subscription_id of this DistributedDbStorageVault. + The `OCID`__ of the subscription with which resource needs to be associated with. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param subscription_id: The subscription_id of this DistributedDbStorageVault. + :type: str + """ + self._subscription_id = subscription_id + + @property + def is_autoscale_enabled(self): + """ + Gets the is_autoscale_enabled of this DistributedDbStorageVault. + Indicates if autoscale feature is enabled for the Database Storage Vault. The default value is `FALSE`. + + + :return: The is_autoscale_enabled of this DistributedDbStorageVault. + :rtype: bool + """ + return self._is_autoscale_enabled + + @is_autoscale_enabled.setter + def is_autoscale_enabled(self, is_autoscale_enabled): + """ + Sets the is_autoscale_enabled of this DistributedDbStorageVault. + Indicates if autoscale feature is enabled for the Database Storage Vault. The default value is `FALSE`. + + + :param is_autoscale_enabled: The is_autoscale_enabled of this DistributedDbStorageVault. + :type: bool + """ + self._is_autoscale_enabled = is_autoscale_enabled + + @property + def autoscale_limit_in_gbs(self): + """ + Gets the autoscale_limit_in_gbs of this DistributedDbStorageVault. + The maximum limit, in gigabytes, to which the Vault storage size can automatically scale when auto scaling is enabled for the Database Storage Vault. + + + :return: The autoscale_limit_in_gbs of this DistributedDbStorageVault. + :rtype: int + """ + return self._autoscale_limit_in_gbs + + @autoscale_limit_in_gbs.setter + def autoscale_limit_in_gbs(self, autoscale_limit_in_gbs): + """ + Sets the autoscale_limit_in_gbs of this DistributedDbStorageVault. + The maximum limit, in gigabytes, to which the Vault storage size can automatically scale when auto scaling is enabled for the Database Storage Vault. + + + :param autoscale_limit_in_gbs: The autoscale_limit_in_gbs of this DistributedDbStorageVault. + :type: int + """ + self._autoscale_limit_in_gbs = autoscale_limit_in_gbs + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/distributed_db_vm_cluster.py b/src/oci/distributed_database_v26/models/distributed_db_vm_cluster.py new file mode 100644 index 0000000000..5f3d17a8c7 --- /dev/null +++ b/src/oci/distributed_database_v26/models/distributed_db_vm_cluster.py @@ -0,0 +1,675 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class DistributedDbVmCluster(object): + """ + The Exadata VM cluster for Distributed Database Resource. + """ + + #: A constant which can be used with the license_model property of a DistributedDbVmCluster. + #: This constant has a value of "LICENSE_INCLUDED" + LICENSE_MODEL_LICENSE_INCLUDED = "LICENSE_INCLUDED" + + #: A constant which can be used with the license_model property of a DistributedDbVmCluster. + #: This constant has a value of "BRING_YOUR_OWN_LICENSE" + LICENSE_MODEL_BRING_YOUR_OWN_LICENSE = "BRING_YOUR_OWN_LICENSE" + + def __init__(self, **kwargs): + """ + Initializes a new DistributedDbVmCluster object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param compartment_id: + The value to assign to the compartment_id property of this DistributedDbVmCluster. + :type compartment_id: str + + :param vm_cluster_id: + The value to assign to the vm_cluster_id property of this DistributedDbVmCluster. + :type vm_cluster_id: str + + :param display_name: + The value to assign to the display_name property of this DistributedDbVmCluster. + :type display_name: str + + :param subnet_id: + The value to assign to the subnet_id property of this DistributedDbVmCluster. + :type subnet_id: str + + :param backup_subnet_id: + The value to assign to the backup_subnet_id property of this DistributedDbVmCluster. + :type backup_subnet_id: str + + :param enabled_e_cpu_count: + The value to assign to the enabled_e_cpu_count property of this DistributedDbVmCluster. + :type enabled_e_cpu_count: int + + :param total_e_cpu_count: + The value to assign to the total_e_cpu_count property of this DistributedDbVmCluster. + :type total_e_cpu_count: int + + :param vm_file_system_storage_size: + The value to assign to the vm_file_system_storage_size property of this DistributedDbVmCluster. + :type vm_file_system_storage_size: int + + :param ssh_public_keys: + The value to assign to the ssh_public_keys property of this DistributedDbVmCluster. + :type ssh_public_keys: list[str] + + :param license_model: + The value to assign to the license_model property of this DistributedDbVmCluster. + Allowed values for this property are: "LICENSE_INCLUDED", "BRING_YOUR_OWN_LICENSE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type license_model: str + + :param domain: + The value to assign to the domain property of this DistributedDbVmCluster. + :type domain: str + + :param private_zone_id: + The value to assign to the private_zone_id property of this DistributedDbVmCluster. + :type private_zone_id: str + + :param nsg_ids: + The value to assign to the nsg_ids property of this DistributedDbVmCluster. + :type nsg_ids: list[str] + + :param backup_network_nsg_ids: + The value to assign to the backup_network_nsg_ids property of this DistributedDbVmCluster. + :type backup_network_nsg_ids: list[str] + + :param is_diagnostics_events_enabled: + The value to assign to the is_diagnostics_events_enabled property of this DistributedDbVmCluster. + :type is_diagnostics_events_enabled: bool + + :param is_health_monitoring_enabled: + The value to assign to the is_health_monitoring_enabled property of this DistributedDbVmCluster. + :type is_health_monitoring_enabled: bool + + :param is_incident_logs_enabled: + The value to assign to the is_incident_logs_enabled property of this DistributedDbVmCluster. + :type is_incident_logs_enabled: bool + + :param subscription_id: + The value to assign to the subscription_id property of this DistributedDbVmCluster. + :type subscription_id: str + + """ + self.swagger_types = { + 'compartment_id': 'str', + 'vm_cluster_id': 'str', + 'display_name': 'str', + 'subnet_id': 'str', + 'backup_subnet_id': 'str', + 'enabled_e_cpu_count': 'int', + 'total_e_cpu_count': 'int', + 'vm_file_system_storage_size': 'int', + 'ssh_public_keys': 'list[str]', + 'license_model': 'str', + 'domain': 'str', + 'private_zone_id': 'str', + 'nsg_ids': 'list[str]', + 'backup_network_nsg_ids': 'list[str]', + 'is_diagnostics_events_enabled': 'bool', + 'is_health_monitoring_enabled': 'bool', + 'is_incident_logs_enabled': 'bool', + 'subscription_id': 'str' + } + self.attribute_map = { + 'compartment_id': 'compartmentId', + 'vm_cluster_id': 'vmClusterId', + 'display_name': 'displayName', + 'subnet_id': 'subnetId', + 'backup_subnet_id': 'backupSubnetId', + 'enabled_e_cpu_count': 'enabledECpuCount', + 'total_e_cpu_count': 'totalECpuCount', + 'vm_file_system_storage_size': 'vmFileSystemStorageSize', + 'ssh_public_keys': 'sshPublicKeys', + 'license_model': 'licenseModel', + 'domain': 'domain', + 'private_zone_id': 'privateZoneId', + 'nsg_ids': 'nsgIds', + 'backup_network_nsg_ids': 'backupNetworkNsgIds', + 'is_diagnostics_events_enabled': 'isDiagnosticsEventsEnabled', + 'is_health_monitoring_enabled': 'isHealthMonitoringEnabled', + 'is_incident_logs_enabled': 'isIncidentLogsEnabled', + 'subscription_id': 'subscriptionId' + } + self._compartment_id = None + self._vm_cluster_id = None + self._display_name = None + self._subnet_id = None + self._backup_subnet_id = None + self._enabled_e_cpu_count = None + self._total_e_cpu_count = None + self._vm_file_system_storage_size = None + self._ssh_public_keys = None + self._license_model = None + self._domain = None + self._private_zone_id = None + self._nsg_ids = None + self._backup_network_nsg_ids = None + self._is_diagnostics_events_enabled = None + self._is_health_monitoring_enabled = None + self._is_incident_logs_enabled = None + self._subscription_id = None + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this DistributedDbVmCluster. + The `OCID`__ of the compartment for VM Cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this DistributedDbVmCluster. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this DistributedDbVmCluster. + The `OCID`__ of the compartment for VM Cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this DistributedDbVmCluster. + :type: str + """ + self._compartment_id = compartment_id + + @property + def vm_cluster_id(self): + """ + Gets the vm_cluster_id of this DistributedDbVmCluster. + The `OCID`__ of the VM cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The vm_cluster_id of this DistributedDbVmCluster. + :rtype: str + """ + return self._vm_cluster_id + + @vm_cluster_id.setter + def vm_cluster_id(self, vm_cluster_id): + """ + Sets the vm_cluster_id of this DistributedDbVmCluster. + The `OCID`__ of the VM cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param vm_cluster_id: The vm_cluster_id of this DistributedDbVmCluster. + :type: str + """ + self._vm_cluster_id = vm_cluster_id + + @property + def display_name(self): + """ + Gets the display_name of this DistributedDbVmCluster. + The user-friendly name for the Exadata VM cluster on Exascale Infrastructure. The name does not need to be unique. + + + :return: The display_name of this DistributedDbVmCluster. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this DistributedDbVmCluster. + The user-friendly name for the Exadata VM cluster on Exascale Infrastructure. The name does not need to be unique. + + + :param display_name: The display_name of this DistributedDbVmCluster. + :type: str + """ + self._display_name = display_name + + @property + def subnet_id(self): + """ + **[Required]** Gets the subnet_id of this DistributedDbVmCluster. + The `OCID`__ of the subnet associated with the Exadata VM cluster on Exascale Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The subnet_id of this DistributedDbVmCluster. + :rtype: str + """ + return self._subnet_id + + @subnet_id.setter + def subnet_id(self, subnet_id): + """ + Sets the subnet_id of this DistributedDbVmCluster. + The `OCID`__ of the subnet associated with the Exadata VM cluster on Exascale Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param subnet_id: The subnet_id of this DistributedDbVmCluster. + :type: str + """ + self._subnet_id = subnet_id + + @property + def backup_subnet_id(self): + """ + **[Required]** Gets the backup_subnet_id of this DistributedDbVmCluster. + The `OCID`__ of the backup network subnet associated with the Exadata VM cluster on Exascale Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The backup_subnet_id of this DistributedDbVmCluster. + :rtype: str + """ + return self._backup_subnet_id + + @backup_subnet_id.setter + def backup_subnet_id(self, backup_subnet_id): + """ + Sets the backup_subnet_id of this DistributedDbVmCluster. + The `OCID`__ of the backup network subnet associated with the Exadata VM cluster on Exascale Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param backup_subnet_id: The backup_subnet_id of this DistributedDbVmCluster. + :type: str + """ + self._backup_subnet_id = backup_subnet_id + + @property + def enabled_e_cpu_count(self): + """ + **[Required]** Gets the enabled_e_cpu_count of this DistributedDbVmCluster. + The number of ECPUs to enable for an Exadata VM cluster on Exascale Infrastructure. + + + :return: The enabled_e_cpu_count of this DistributedDbVmCluster. + :rtype: int + """ + return self._enabled_e_cpu_count + + @enabled_e_cpu_count.setter + def enabled_e_cpu_count(self, enabled_e_cpu_count): + """ + Sets the enabled_e_cpu_count of this DistributedDbVmCluster. + The number of ECPUs to enable for an Exadata VM cluster on Exascale Infrastructure. + + + :param enabled_e_cpu_count: The enabled_e_cpu_count of this DistributedDbVmCluster. + :type: int + """ + self._enabled_e_cpu_count = enabled_e_cpu_count + + @property + def total_e_cpu_count(self): + """ + Gets the total_e_cpu_count of this DistributedDbVmCluster. + The number of Total ECPUs for an Exadata VM cluster on Exascale Infrastructure. + + + :return: The total_e_cpu_count of this DistributedDbVmCluster. + :rtype: int + """ + return self._total_e_cpu_count + + @total_e_cpu_count.setter + def total_e_cpu_count(self, total_e_cpu_count): + """ + Sets the total_e_cpu_count of this DistributedDbVmCluster. + The number of Total ECPUs for an Exadata VM cluster on Exascale Infrastructure. + + + :param total_e_cpu_count: The total_e_cpu_count of this DistributedDbVmCluster. + :type: int + """ + self._total_e_cpu_count = total_e_cpu_count + + @property + def vm_file_system_storage_size(self): + """ + Gets the vm_file_system_storage_size of this DistributedDbVmCluster. + File System Storage Size in GBs for Exadata VM cluster. + + + :return: The vm_file_system_storage_size of this DistributedDbVmCluster. + :rtype: int + """ + return self._vm_file_system_storage_size + + @vm_file_system_storage_size.setter + def vm_file_system_storage_size(self, vm_file_system_storage_size): + """ + Sets the vm_file_system_storage_size of this DistributedDbVmCluster. + File System Storage Size in GBs for Exadata VM cluster. + + + :param vm_file_system_storage_size: The vm_file_system_storage_size of this DistributedDbVmCluster. + :type: int + """ + self._vm_file_system_storage_size = vm_file_system_storage_size + + @property + def ssh_public_keys(self): + """ + **[Required]** Gets the ssh_public_keys of this DistributedDbVmCluster. + The public key portion of one or more key pairs used for SSH access to the Exadata VM cluster on Exascale Infrastructure. + + + :return: The ssh_public_keys of this DistributedDbVmCluster. + :rtype: list[str] + """ + return self._ssh_public_keys + + @ssh_public_keys.setter + def ssh_public_keys(self, ssh_public_keys): + """ + Sets the ssh_public_keys of this DistributedDbVmCluster. + The public key portion of one or more key pairs used for SSH access to the Exadata VM cluster on Exascale Infrastructure. + + + :param ssh_public_keys: The ssh_public_keys of this DistributedDbVmCluster. + :type: list[str] + """ + self._ssh_public_keys = ssh_public_keys + + @property + def license_model(self): + """ + Gets the license_model of this DistributedDbVmCluster. + The Oracle license model that applies to the Exadata VM cluster on Exascale Infrastructure. The default is BRING_YOUR_OWN_LICENSE. + + Allowed values for this property are: "LICENSE_INCLUDED", "BRING_YOUR_OWN_LICENSE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The license_model of this DistributedDbVmCluster. + :rtype: str + """ + return self._license_model + + @license_model.setter + def license_model(self, license_model): + """ + Sets the license_model of this DistributedDbVmCluster. + The Oracle license model that applies to the Exadata VM cluster on Exascale Infrastructure. The default is BRING_YOUR_OWN_LICENSE. + + + :param license_model: The license_model of this DistributedDbVmCluster. + :type: str + """ + allowed_values = ["LICENSE_INCLUDED", "BRING_YOUR_OWN_LICENSE"] + if not value_allowed_none_or_none_sentinel(license_model, allowed_values): + license_model = 'UNKNOWN_ENUM_VALUE' + self._license_model = license_model + + @property + def domain(self): + """ + Gets the domain of this DistributedDbVmCluster. + A domain name used for the Exadata VM cluster on Exascale Infrastructure. + If the Oracle-provided internet and VCN resolver is enabled for the specified subnet, then the domain name for the subnet is used + (do not provide one). Otherwise, provide a valid DNS domain name. + Hyphens (-) are not permitted. Applies to Exadata Database Service on Exascale Infrastructure only. + + + :return: The domain of this DistributedDbVmCluster. + :rtype: str + """ + return self._domain + + @domain.setter + def domain(self, domain): + """ + Sets the domain of this DistributedDbVmCluster. + A domain name used for the Exadata VM cluster on Exascale Infrastructure. + If the Oracle-provided internet and VCN resolver is enabled for the specified subnet, then the domain name for the subnet is used + (do not provide one). Otherwise, provide a valid DNS domain name. + Hyphens (-) are not permitted. Applies to Exadata Database Service on Exascale Infrastructure only. + + + :param domain: The domain of this DistributedDbVmCluster. + :type: str + """ + self._domain = domain + + @property + def private_zone_id(self): + """ + Gets the private_zone_id of this DistributedDbVmCluster. + The private zone ID in which you want DNS records to be created. + + + :return: The private_zone_id of this DistributedDbVmCluster. + :rtype: str + """ + return self._private_zone_id + + @private_zone_id.setter + def private_zone_id(self, private_zone_id): + """ + Sets the private_zone_id of this DistributedDbVmCluster. + The private zone ID in which you want DNS records to be created. + + + :param private_zone_id: The private_zone_id of this DistributedDbVmCluster. + :type: str + """ + self._private_zone_id = private_zone_id + + @property + def nsg_ids(self): + """ + Gets the nsg_ids of this DistributedDbVmCluster. + 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`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/Network/Concepts/securityrules.htm + + + :return: The nsg_ids of this DistributedDbVmCluster. + :rtype: list[str] + """ + return self._nsg_ids + + @nsg_ids.setter + def nsg_ids(self, nsg_ids): + """ + Sets the nsg_ids of this DistributedDbVmCluster. + 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`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/Network/Concepts/securityrules.htm + + + :param nsg_ids: The nsg_ids of this DistributedDbVmCluster. + :type: list[str] + """ + self._nsg_ids = nsg_ids + + @property + def backup_network_nsg_ids(self): + """ + Gets the backup_network_nsg_ids of this DistributedDbVmCluster. + A list of the `OCIDs`__ of the network security groups (NSGs) that the backup network of this DB system belongs to. + Setting this to an empty array after the list is created removes the resource from all NSGs. + For more information about NSGs, see `Security Rules`__. Applicable only to Exadata systems. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/Network/Concepts/securityrules.htm + + + :return: The backup_network_nsg_ids of this DistributedDbVmCluster. + :rtype: list[str] + """ + return self._backup_network_nsg_ids + + @backup_network_nsg_ids.setter + def backup_network_nsg_ids(self, backup_network_nsg_ids): + """ + Sets the backup_network_nsg_ids of this DistributedDbVmCluster. + A list of the `OCIDs`__ of the network security groups (NSGs) that the backup network of this DB system belongs to. + Setting this to an empty array after the list is created removes the resource from all NSGs. + For more information about NSGs, see `Security Rules`__. Applicable only to Exadata systems. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/Network/Concepts/securityrules.htm + + + :param backup_network_nsg_ids: The backup_network_nsg_ids of this DistributedDbVmCluster. + :type: list[str] + """ + self._backup_network_nsg_ids = backup_network_nsg_ids + + @property + def is_diagnostics_events_enabled(self): + """ + Gets the is_diagnostics_events_enabled of this DistributedDbVmCluster. + Indicates whether diagnostic collection is enabled for the VM cluster. + Enabling diagnostic collection allows you to receive Events service notifications for guest VM issues. + Diagnostic collection also allows Oracle to provide enhanced service and proactive support for your Exadata system. + You can enable diagnostic collection during VM cluster provisioning. You can also disable or enable it at any time using the `UpdateVmCluster` API. + + + :return: The is_diagnostics_events_enabled of this DistributedDbVmCluster. + :rtype: bool + """ + return self._is_diagnostics_events_enabled + + @is_diagnostics_events_enabled.setter + def is_diagnostics_events_enabled(self, is_diagnostics_events_enabled): + """ + Sets the is_diagnostics_events_enabled of this DistributedDbVmCluster. + Indicates whether diagnostic collection is enabled for the VM cluster. + Enabling diagnostic collection allows you to receive Events service notifications for guest VM issues. + Diagnostic collection also allows Oracle to provide enhanced service and proactive support for your Exadata system. + You can enable diagnostic collection during VM cluster provisioning. You can also disable or enable it at any time using the `UpdateVmCluster` API. + + + :param is_diagnostics_events_enabled: The is_diagnostics_events_enabled of this DistributedDbVmCluster. + :type: bool + """ + self._is_diagnostics_events_enabled = is_diagnostics_events_enabled + + @property + def is_health_monitoring_enabled(self): + """ + Gets the is_health_monitoring_enabled of this DistributedDbVmCluster. + Indicates whether health monitoring is enabled for the VM cluster. + Enabling health monitoring allows Oracle to collect diagnostic data and share it with its operations and support personnel. + You may also receive notifications for some events. Collecting health diagnostics enables Oracle to provide proactive support and enhanced service for your system. + Optionally enable health monitoring while provisioning a system. You can also disable or enable health monitoring anytime using the `UpdateVmCluster` API. + + + :return: The is_health_monitoring_enabled of this DistributedDbVmCluster. + :rtype: bool + """ + return self._is_health_monitoring_enabled + + @is_health_monitoring_enabled.setter + def is_health_monitoring_enabled(self, is_health_monitoring_enabled): + """ + Sets the is_health_monitoring_enabled of this DistributedDbVmCluster. + Indicates whether health monitoring is enabled for the VM cluster. + Enabling health monitoring allows Oracle to collect diagnostic data and share it with its operations and support personnel. + You may also receive notifications for some events. Collecting health diagnostics enables Oracle to provide proactive support and enhanced service for your system. + Optionally enable health monitoring while provisioning a system. You can also disable or enable health monitoring anytime using the `UpdateVmCluster` API. + + + :param is_health_monitoring_enabled: The is_health_monitoring_enabled of this DistributedDbVmCluster. + :type: bool + """ + self._is_health_monitoring_enabled = is_health_monitoring_enabled + + @property + def is_incident_logs_enabled(self): + """ + Gets the is_incident_logs_enabled of this DistributedDbVmCluster. + Indicates whether incident logs and trace collection are enabled for the VM cluster. + Enabling incident logs collection allows Oracle to receive Events service notifications for guest VM issues, collect incident logs and traces, and use them to diagnose issues and resolve them. + Optionally enable incident logs collection while provisioning a system. You can also disable or enable incident logs collection anytime using the `UpdateVmCluster` API. + + + :return: The is_incident_logs_enabled of this DistributedDbVmCluster. + :rtype: bool + """ + return self._is_incident_logs_enabled + + @is_incident_logs_enabled.setter + def is_incident_logs_enabled(self, is_incident_logs_enabled): + """ + Sets the is_incident_logs_enabled of this DistributedDbVmCluster. + Indicates whether incident logs and trace collection are enabled for the VM cluster. + Enabling incident logs collection allows Oracle to receive Events service notifications for guest VM issues, collect incident logs and traces, and use them to diagnose issues and resolve them. + Optionally enable incident logs collection while provisioning a system. You can also disable or enable incident logs collection anytime using the `UpdateVmCluster` API. + + + :param is_incident_logs_enabled: The is_incident_logs_enabled of this DistributedDbVmCluster. + :type: bool + """ + self._is_incident_logs_enabled = is_incident_logs_enabled + + @property + def subscription_id(self): + """ + Gets the subscription_id of this DistributedDbVmCluster. + The `OCID`__ of the subscription with which resource needs to be associated with. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The subscription_id of this DistributedDbVmCluster. + :rtype: str + """ + return self._subscription_id + + @subscription_id.setter + def subscription_id(self, subscription_id): + """ + Sets the subscription_id of this DistributedDbVmCluster. + The `OCID`__ of the subscription with which resource needs to be associated with. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param subscription_id: The subscription_id of this DistributedDbVmCluster. + :type: str + """ + self._subscription_id = subscription_id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/generate_distributed_autonomous_database_wallet_details.py b/src/oci/distributed_database_v26/models/generate_distributed_autonomous_database_wallet_details.py new file mode 100644 index 0000000000..2075c25bdf --- /dev/null +++ b/src/oci/distributed_database_v26/models/generate_distributed_autonomous_database_wallet_details.py @@ -0,0 +1,75 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class GenerateDistributedAutonomousDatabaseWalletDetails(object): + """ + Details to create and download an Globally distributed autonomous database wallet. + """ + + def __init__(self, **kwargs): + """ + Initializes a new GenerateDistributedAutonomousDatabaseWalletDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param password: + The value to assign to the password property of this GenerateDistributedAutonomousDatabaseWalletDetails. + :type password: str + + """ + self.swagger_types = { + 'password': 'str' + } + self.attribute_map = { + 'password': 'password' + } + self._redacted_field_paths = [ + ['password'], + ] + self._password = None + + @property + def password(self): + """ + **[Required]** Gets the password of this GenerateDistributedAutonomousDatabaseWalletDetails. + The password to encrypt the keys inside the wallet. The password must be at least 8 characters long and must include at least 1 letter and either 1 numeric character or 1 special character. + + + :return: The password of this GenerateDistributedAutonomousDatabaseWalletDetails. + :rtype: str + """ + return self._password + + @password.setter + def password(self, password): + """ + Sets the password of this GenerateDistributedAutonomousDatabaseWalletDetails. + The password to encrypt the keys inside the wallet. The password must be at least 8 characters long and must include at least 1 letter and either 1 numeric character or 1 special character. + + + :param password: The password of this GenerateDistributedAutonomousDatabaseWalletDetails. + :type: str + """ + self._password = password + + def __repr__(self): + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/generate_distributed_database_wallet_details.py b/src/oci/distributed_database_v26/models/generate_distributed_database_wallet_details.py new file mode 100644 index 0000000000..36c555d8f3 --- /dev/null +++ b/src/oci/distributed_database_v26/models/generate_distributed_database_wallet_details.py @@ -0,0 +1,75 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class GenerateDistributedDatabaseWalletDetails(object): + """ + Details to create and download an Globally distributed database wallet. + """ + + def __init__(self, **kwargs): + """ + Initializes a new GenerateDistributedDatabaseWalletDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param password: + The value to assign to the password property of this GenerateDistributedDatabaseWalletDetails. + :type password: str + + """ + self.swagger_types = { + 'password': 'str' + } + self.attribute_map = { + 'password': 'password' + } + self._redacted_field_paths = [ + ['password'], + ] + self._password = None + + @property + def password(self): + """ + **[Required]** Gets the password of this GenerateDistributedDatabaseWalletDetails. + The password to encrypt the keys inside the wallet. The password must be at least 8 characters long and must include at least 1 letter and either 1 numeric character or 1 special character. + + + :return: The password of this GenerateDistributedDatabaseWalletDetails. + :rtype: str + """ + return self._password + + @password.setter + def password(self, password): + """ + Sets the password of this GenerateDistributedDatabaseWalletDetails. + The password to encrypt the keys inside the wallet. The password must be at least 8 characters long and must include at least 1 letter and either 1 numeric character or 1 special character. + + + :param password: The password of this GenerateDistributedDatabaseWalletDetails. + :type: str + """ + self._password = password + + def __repr__(self): + as_dict = to_dict(self) + redact_password_field(as_dict, ['password']) + return formatted_flat_dict(as_dict) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/move_distributed_autonomous_database_replication_unit_details.py b/src/oci/distributed_database_v26/models/move_distributed_autonomous_database_replication_unit_details.py new file mode 100644 index 0000000000..e4f3384310 --- /dev/null +++ b/src/oci/distributed_database_v26/models/move_distributed_autonomous_database_replication_unit_details.py @@ -0,0 +1,132 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class MoveDistributedAutonomousDatabaseReplicationUnitDetails(object): + """ + The details for moving replication units from source shard to destination shard for the Globally distributed autonomous database. + """ + + def __init__(self, **kwargs): + """ + Initializes a new MoveDistributedAutonomousDatabaseReplicationUnitDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source_shard_name: + The value to assign to the source_shard_name property of this MoveDistributedAutonomousDatabaseReplicationUnitDetails. + :type source_shard_name: str + + :param destination_shard_name: + The value to assign to the destination_shard_name property of this MoveDistributedAutonomousDatabaseReplicationUnitDetails. + :type destination_shard_name: str + + :param replication_units: + The value to assign to the replication_units property of this MoveDistributedAutonomousDatabaseReplicationUnitDetails. + :type replication_units: list[int] + + """ + self.swagger_types = { + 'source_shard_name': 'str', + 'destination_shard_name': 'str', + 'replication_units': 'list[int]' + } + self.attribute_map = { + 'source_shard_name': 'sourceShardName', + 'destination_shard_name': 'destinationShardName', + 'replication_units': 'replicationUnits' + } + self._source_shard_name = None + self._destination_shard_name = None + self._replication_units = None + + @property + def source_shard_name(self): + """ + **[Required]** Gets the source_shard_name of this MoveDistributedAutonomousDatabaseReplicationUnitDetails. + The name of the source shard from which to move the chunks out to other shards. + + + :return: The source_shard_name of this MoveDistributedAutonomousDatabaseReplicationUnitDetails. + :rtype: str + """ + return self._source_shard_name + + @source_shard_name.setter + def source_shard_name(self, source_shard_name): + """ + Sets the source_shard_name of this MoveDistributedAutonomousDatabaseReplicationUnitDetails. + The name of the source shard from which to move the chunks out to other shards. + + + :param source_shard_name: The source_shard_name of this MoveDistributedAutonomousDatabaseReplicationUnitDetails. + :type: str + """ + self._source_shard_name = source_shard_name + + @property + def destination_shard_name(self): + """ + Gets the destination_shard_name of this MoveDistributedAutonomousDatabaseReplicationUnitDetails. + The name of the destination shard to which the chunks moved out from source shard should be relocate to. + + + :return: The destination_shard_name of this MoveDistributedAutonomousDatabaseReplicationUnitDetails. + :rtype: str + """ + return self._destination_shard_name + + @destination_shard_name.setter + def destination_shard_name(self, destination_shard_name): + """ + Sets the destination_shard_name of this MoveDistributedAutonomousDatabaseReplicationUnitDetails. + The name of the destination shard to which the chunks moved out from source shard should be relocate to. + + + :param destination_shard_name: The destination_shard_name of this MoveDistributedAutonomousDatabaseReplicationUnitDetails. + :type: str + """ + self._destination_shard_name = destination_shard_name + + @property + def replication_units(self): + """ + Gets the replication_units of this MoveDistributedAutonomousDatabaseReplicationUnitDetails. + For RAFT databases please provide replication unit numbers to be moved from source shard to destination shard. + + + :return: The replication_units of this MoveDistributedAutonomousDatabaseReplicationUnitDetails. + :rtype: list[int] + """ + return self._replication_units + + @replication_units.setter + def replication_units(self, replication_units): + """ + Sets the replication_units of this MoveDistributedAutonomousDatabaseReplicationUnitDetails. + For RAFT databases please provide replication unit numbers to be moved from source shard to destination shard. + + + :param replication_units: The replication_units of this MoveDistributedAutonomousDatabaseReplicationUnitDetails. + :type: list[int] + """ + self._replication_units = replication_units + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/move_distributed_database_replication_unit_details.py b/src/oci/distributed_database_v26/models/move_distributed_database_replication_unit_details.py new file mode 100644 index 0000000000..c110ee4c9d --- /dev/null +++ b/src/oci/distributed_database_v26/models/move_distributed_database_replication_unit_details.py @@ -0,0 +1,132 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class MoveDistributedDatabaseReplicationUnitDetails(object): + """ + The details for moving replication units from source shard to destination shard for the Globally distributed database. + """ + + def __init__(self, **kwargs): + """ + Initializes a new MoveDistributedDatabaseReplicationUnitDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param source_shard_name: + The value to assign to the source_shard_name property of this MoveDistributedDatabaseReplicationUnitDetails. + :type source_shard_name: str + + :param destination_shard_name: + The value to assign to the destination_shard_name property of this MoveDistributedDatabaseReplicationUnitDetails. + :type destination_shard_name: str + + :param replication_units: + The value to assign to the replication_units property of this MoveDistributedDatabaseReplicationUnitDetails. + :type replication_units: list[int] + + """ + self.swagger_types = { + 'source_shard_name': 'str', + 'destination_shard_name': 'str', + 'replication_units': 'list[int]' + } + self.attribute_map = { + 'source_shard_name': 'sourceShardName', + 'destination_shard_name': 'destinationShardName', + 'replication_units': 'replicationUnits' + } + self._source_shard_name = None + self._destination_shard_name = None + self._replication_units = None + + @property + def source_shard_name(self): + """ + **[Required]** Gets the source_shard_name of this MoveDistributedDatabaseReplicationUnitDetails. + The name of the source shard from which to move the chunks out to other shards. + + + :return: The source_shard_name of this MoveDistributedDatabaseReplicationUnitDetails. + :rtype: str + """ + return self._source_shard_name + + @source_shard_name.setter + def source_shard_name(self, source_shard_name): + """ + Sets the source_shard_name of this MoveDistributedDatabaseReplicationUnitDetails. + The name of the source shard from which to move the chunks out to other shards. + + + :param source_shard_name: The source_shard_name of this MoveDistributedDatabaseReplicationUnitDetails. + :type: str + """ + self._source_shard_name = source_shard_name + + @property + def destination_shard_name(self): + """ + Gets the destination_shard_name of this MoveDistributedDatabaseReplicationUnitDetails. + The name of the destination shard to which the chunks moved out from source shard should be relocate to. + + + :return: The destination_shard_name of this MoveDistributedDatabaseReplicationUnitDetails. + :rtype: str + """ + return self._destination_shard_name + + @destination_shard_name.setter + def destination_shard_name(self, destination_shard_name): + """ + Sets the destination_shard_name of this MoveDistributedDatabaseReplicationUnitDetails. + The name of the destination shard to which the chunks moved out from source shard should be relocate to. + + + :param destination_shard_name: The destination_shard_name of this MoveDistributedDatabaseReplicationUnitDetails. + :type: str + """ + self._destination_shard_name = destination_shard_name + + @property + def replication_units(self): + """ + Gets the replication_units of this MoveDistributedDatabaseReplicationUnitDetails. + For RAFT databases please provide replication unit numbers to be moved from source shard to destination shard. + + + :return: The replication_units of this MoveDistributedDatabaseReplicationUnitDetails. + :rtype: list[int] + """ + return self._replication_units + + @replication_units.setter + def replication_units(self, replication_units): + """ + Sets the replication_units of this MoveDistributedDatabaseReplicationUnitDetails. + For RAFT databases please provide replication unit numbers to be moved from source shard to destination shard. + + + :param replication_units: The replication_units of this MoveDistributedDatabaseReplicationUnitDetails. + :type: list[int] + """ + self._replication_units = replication_units + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/patch_distributed_autonomous_database_details.py b/src/oci/distributed_database_v26/models/patch_distributed_autonomous_database_details.py new file mode 100644 index 0000000000..5e1a1bcfa8 --- /dev/null +++ b/src/oci/distributed_database_v26/models/patch_distributed_autonomous_database_details.py @@ -0,0 +1,73 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class PatchDistributedAutonomousDatabaseDetails(object): + """ + Provide PatchInstruction(s) in items array. All instructions in items have to be of same type. + All instructions in items have to either PatchInsertInstruction type, PatchRemoveInstruction or + PatchMergeInstruction. Multiple instructions of different types is not allowed to be performed in + single operation. + """ + + def __init__(self, **kwargs): + """ + Initializes a new PatchDistributedAutonomousDatabaseDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this PatchDistributedAutonomousDatabaseDetails. + :type items: list[oci.distributed_database_v26.models.PatchInstruction] + + """ + self.swagger_types = { + 'items': 'list[PatchInstruction]' + } + self.attribute_map = { + 'items': 'items' + } + self._items = None + + @property + def items(self): + """ + Gets the items of this PatchDistributedAutonomousDatabaseDetails. + List of patch instructions. + + + :return: The items of this PatchDistributedAutonomousDatabaseDetails. + :rtype: list[oci.distributed_database_v26.models.PatchInstruction] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this PatchDistributedAutonomousDatabaseDetails. + List of patch instructions. + + + :param items: The items of this PatchDistributedAutonomousDatabaseDetails. + :type: list[oci.distributed_database_v26.models.PatchInstruction] + """ + self._items = items + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/patch_distributed_database_details.py b/src/oci/distributed_database_v26/models/patch_distributed_database_details.py new file mode 100644 index 0000000000..2cdc897044 --- /dev/null +++ b/src/oci/distributed_database_v26/models/patch_distributed_database_details.py @@ -0,0 +1,73 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class PatchDistributedDatabaseDetails(object): + """ + Provide PatchInstuction(s) in items array. All instructions in items have to be of same type. + All instructions in items have to either PatchInsertInstruction type, PatchRemoveInstruction or + PatchMergeInstruction. Multiple instructions of different types is not allowed to be performed in + single operation. + """ + + def __init__(self, **kwargs): + """ + Initializes a new PatchDistributedDatabaseDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this PatchDistributedDatabaseDetails. + :type items: list[oci.distributed_database_v26.models.PatchInstruction] + + """ + self.swagger_types = { + 'items': 'list[PatchInstruction]' + } + self.attribute_map = { + 'items': 'items' + } + self._items = None + + @property + def items(self): + """ + Gets the items of this PatchDistributedDatabaseDetails. + List of patch instructions. + + + :return: The items of this PatchDistributedDatabaseDetails. + :rtype: list[oci.distributed_database_v26.models.PatchInstruction] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this PatchDistributedDatabaseDetails. + List of patch instructions. + + + :param items: The items of this PatchDistributedDatabaseDetails. + :type: list[oci.distributed_database_v26.models.PatchInstruction] + """ + self._items = items + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/patch_distributed_database_private_endpoint_details.py b/src/oci/distributed_database_v26/models/patch_distributed_database_private_endpoint_details.py new file mode 100644 index 0000000000..9187ceac2d --- /dev/null +++ b/src/oci/distributed_database_v26/models/patch_distributed_database_private_endpoint_details.py @@ -0,0 +1,72 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class PatchDistributedDatabasePrivateEndpointDetails(object): + """ + Provide PatchInstruction(s) in items array. All instructions in items have to be of same type. + The initial supported patch operation is MERGE with selection vcnNsgIds and value containing + the vcnNsgIds payload. + """ + + def __init__(self, **kwargs): + """ + Initializes a new PatchDistributedDatabasePrivateEndpointDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this PatchDistributedDatabasePrivateEndpointDetails. + :type items: list[oci.distributed_database_v26.models.PatchInstruction] + + """ + self.swagger_types = { + 'items': 'list[PatchInstruction]' + } + self.attribute_map = { + 'items': 'items' + } + self._items = None + + @property + def items(self): + """ + Gets the items of this PatchDistributedDatabasePrivateEndpointDetails. + List of patch instructions. + + + :return: The items of this PatchDistributedDatabasePrivateEndpointDetails. + :rtype: list[oci.distributed_database_v26.models.PatchInstruction] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this PatchDistributedDatabasePrivateEndpointDetails. + List of patch instructions. + + + :param items: The items of this PatchDistributedDatabasePrivateEndpointDetails. + :type: list[oci.distributed_database_v26.models.PatchInstruction] + """ + self._items = items + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/patch_insert_instruction.py b/src/oci/distributed_database_v26/models/patch_insert_instruction.py new file mode 100644 index 0000000000..cde8936271 --- /dev/null +++ b/src/oci/distributed_database_v26/models/patch_insert_instruction.py @@ -0,0 +1,87 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +from .patch_instruction import PatchInstruction +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class PatchInsertInstruction(PatchInstruction): + """ + An operation that inserts a value into an array, shifting array items as necessary and handling NOT_FOUND exceptions by creating the implied containing structure. + """ + + def __init__(self, **kwargs): + """ + Initializes a new PatchInsertInstruction object with values from keyword arguments. The default value of the :py:attr:`~oci.distributed_database_v26.models.PatchInsertInstruction.operation` attribute + of this class is ``INSERT`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param operation: + The value to assign to the operation property of this PatchInsertInstruction. + Allowed values for this property are: "INSERT", "REMOVE", "MERGE" + :type operation: str + + :param selection: + The value to assign to the selection property of this PatchInsertInstruction. + :type selection: str + + :param value: + The value to assign to the value property of this PatchInsertInstruction. + :type value: object + + """ + self.swagger_types = { + 'operation': 'str', + 'selection': 'str', + 'value': 'object' + } + self.attribute_map = { + 'operation': 'operation', + 'selection': 'selection', + 'value': 'value' + } + self._operation = None + self._selection = None + self._value = None + self._operation = 'INSERT' + + @property + def value(self): + """ + **[Required]** Gets the value of this PatchInsertInstruction. + A value to be inserted into the target. + + + :return: The value of this PatchInsertInstruction. + :rtype: object + """ + return self._value + + @value.setter + def value(self, value): + """ + Sets the value of this PatchInsertInstruction. + A value to be inserted into the target. + + + :param value: The value of this PatchInsertInstruction. + :type: object + """ + self._value = value + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/patch_instruction.py b/src/oci/distributed_database_v26/models/patch_instruction.py new file mode 100644 index 0000000000..bd89639bd2 --- /dev/null +++ b/src/oci/distributed_database_v26/models/patch_instruction.py @@ -0,0 +1,154 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class PatchInstruction(object): + """ + A single instruction to be included as part of Patch request content. + """ + + #: A constant which can be used with the operation property of a PatchInstruction. + #: This constant has a value of "INSERT" + OPERATION_INSERT = "INSERT" + + #: A constant which can be used with the operation property of a PatchInstruction. + #: This constant has a value of "REMOVE" + OPERATION_REMOVE = "REMOVE" + + #: A constant which can be used with the operation property of a PatchInstruction. + #: This constant has a value of "MERGE" + OPERATION_MERGE = "MERGE" + + def __init__(self, **kwargs): + """ + Initializes a new PatchInstruction object with values from keyword arguments. This class has the following subclasses and if you are using this class as input + to a service operations then you should favor using a subclass over the base class: + + * :class:`~oci.distributed_database_v26.models.PatchRemoveInstruction` + * :class:`~oci.distributed_database_v26.models.PatchInsertInstruction` + * :class:`~oci.distributed_database_v26.models.PatchMergeInstruction` + + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param operation: + The value to assign to the operation property of this PatchInstruction. + Allowed values for this property are: "INSERT", "REMOVE", "MERGE" + :type operation: str + + :param selection: + The value to assign to the selection property of this PatchInstruction. + :type selection: str + + """ + self.swagger_types = { + 'operation': 'str', + 'selection': 'str' + } + self.attribute_map = { + 'operation': 'operation', + 'selection': 'selection' + } + self._operation = None + self._selection = None + + @staticmethod + def get_subtype(object_dictionary): + """ + Given the hash representation of a subtype of this class, + use the info in the hash to return the class of the subtype. + """ + type = object_dictionary['operation'] + + if type == 'REMOVE': + return 'PatchRemoveInstruction' + + if type == 'INSERT': + return 'PatchInsertInstruction' + + if type == 'MERGE': + return 'PatchMergeInstruction' + else: + return 'PatchInstruction' + + @property + def operation(self): + """ + **[Required]** Gets the operation of this PatchInstruction. + The operation that need to be performed on an element inside list. + + Allowed values for this property are: "INSERT", "REMOVE", "MERGE" + + + :return: The operation of this PatchInstruction. + :rtype: str + """ + return self._operation + + @operation.setter + def operation(self, operation): + """ + Sets the operation of this PatchInstruction. + The operation that need to be performed on an element inside list. + + + :param operation: The operation of this PatchInstruction. + :type: str + """ + allowed_values = ["INSERT", "REMOVE", "MERGE"] + if not value_allowed_none_or_none_sentinel(operation, allowed_values): + raise ValueError( + f"Invalid value for `operation`, must be None or one of {allowed_values}" + ) + self._operation = operation + + @property + def selection(self): + """ + **[Required]** Gets the selection of this PatchInstruction. + The set of values to which the operation applies as a `JMESPath expression`__ for evaluation against the context resource. + An operation fails if the selection yields an exception, except as otherwise specified. + Note that comparisons involving non-primitive values (objects or arrays) are not supported and will always evaluate to false. + + __ https://jmespath.org/specification.html + + + :return: The selection of this PatchInstruction. + :rtype: str + """ + return self._selection + + @selection.setter + def selection(self, selection): + """ + Sets the selection of this PatchInstruction. + The set of values to which the operation applies as a `JMESPath expression`__ for evaluation against the context resource. + An operation fails if the selection yields an exception, except as otherwise specified. + Note that comparisons involving non-primitive values (objects or arrays) are not supported and will always evaluate to false. + + __ https://jmespath.org/specification.html + + + :param selection: The selection of this PatchInstruction. + :type: str + """ + self._selection = selection + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/patch_merge_instruction.py b/src/oci/distributed_database_v26/models/patch_merge_instruction.py new file mode 100644 index 0000000000..2456b3d50b --- /dev/null +++ b/src/oci/distributed_database_v26/models/patch_merge_instruction.py @@ -0,0 +1,95 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +from .patch_instruction import PatchInstruction +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class PatchMergeInstruction(PatchInstruction): + """ + An operation that recursively updates items of the selection, or adding the value if the selection is empty. + If the value is not an object, it is used directly, otherwise each key-value member is used + to create or update a member of the same name in the target and the same process is applied recursively for each object-typed value + (similar to `RFC 7396`__ JSON Merge Patch, except that null values are copied + rather than transformed into deletions). + NOT_FOUND exceptions are handled by creating the implied containing structure. + To avoid referential errors if an item's descendant is also in the selection, items of the selection are processed in order of decreasing depth. + + __ https://tools.ietf.org/html/rfc7396#section-2 + """ + + def __init__(self, **kwargs): + """ + Initializes a new PatchMergeInstruction object with values from keyword arguments. The default value of the :py:attr:`~oci.distributed_database_v26.models.PatchMergeInstruction.operation` attribute + of this class is ``MERGE`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param operation: + The value to assign to the operation property of this PatchMergeInstruction. + Allowed values for this property are: "INSERT", "REMOVE", "MERGE" + :type operation: str + + :param selection: + The value to assign to the selection property of this PatchMergeInstruction. + :type selection: str + + :param value: + The value to assign to the value property of this PatchMergeInstruction. + :type value: object + + """ + self.swagger_types = { + 'operation': 'str', + 'selection': 'str', + 'value': 'object' + } + self.attribute_map = { + 'operation': 'operation', + 'selection': 'selection', + 'value': 'value' + } + self._operation = None + self._selection = None + self._value = None + self._operation = 'MERGE' + + @property + def value(self): + """ + Gets the value of this PatchMergeInstruction. + A value to be merged into the target. + + + :return: The value of this PatchMergeInstruction. + :rtype: object + """ + return self._value + + @value.setter + def value(self, value): + """ + Sets the value of this PatchMergeInstruction. + A value to be merged into the target. + + + :param value: The value of this PatchMergeInstruction. + :type: object + """ + self._value = value + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/patch_remove_instruction.py b/src/oci/distributed_database_v26/models/patch_remove_instruction.py new file mode 100644 index 0000000000..b5878fa4cd --- /dev/null +++ b/src/oci/distributed_database_v26/models/patch_remove_instruction.py @@ -0,0 +1,57 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + +from .patch_instruction import PatchInstruction +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class PatchRemoveInstruction(PatchInstruction): + """ + An operation that deletes items, ignoring NOT_FOUND exceptions. + To avoid referential errors if an item's descendant is also in the selection, items of the selection are processed in order of decreasing depth. + """ + + def __init__(self, **kwargs): + """ + Initializes a new PatchRemoveInstruction object with values from keyword arguments. The default value of the :py:attr:`~oci.distributed_database_v26.models.PatchRemoveInstruction.operation` attribute + of this class is ``REMOVE`` and it should not be changed. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param operation: + The value to assign to the operation property of this PatchRemoveInstruction. + Allowed values for this property are: "INSERT", "REMOVE", "MERGE" + :type operation: str + + :param selection: + The value to assign to the selection property of this PatchRemoveInstruction. + :type selection: str + + """ + self.swagger_types = { + 'operation': 'str', + 'selection': 'str' + } + self.attribute_map = { + 'operation': 'operation', + 'selection': 'selection' + } + self._operation = None + self._selection = None + self._operation = 'REMOVE' + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/rotate_distributed_autonomous_database_details.py b/src/oci/distributed_database_v26/models/rotate_distributed_autonomous_database_details.py new file mode 100644 index 0000000000..4032d22c44 --- /dev/null +++ b/src/oci/distributed_database_v26/models/rotate_distributed_autonomous_database_details.py @@ -0,0 +1,106 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class RotateDistributedAutonomousDatabaseDetails(object): + """ + Details to rotate password for a shard or catalog in the Globally distributed autonomous database. + """ + + def __init__(self, **kwargs): + """ + Initializes a new RotateDistributedAutonomousDatabaseDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this RotateDistributedAutonomousDatabaseDetails. + :type name: str + + :param admin_password: + The value to assign to the admin_password property of this RotateDistributedAutonomousDatabaseDetails. + :type admin_password: str + + """ + self.swagger_types = { + 'name': 'str', + 'admin_password': 'str' + } + self.attribute_map = { + 'name': 'name', + 'admin_password': 'adminPassword' + } + self._redacted_field_paths = [ + ['admin_password'], + ] + self._name = None + self._admin_password = None + + @property + def name(self): + """ + **[Required]** Gets the name of this RotateDistributedAutonomousDatabaseDetails. + The shard or catalog name. + + + :return: The name of this RotateDistributedAutonomousDatabaseDetails. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this RotateDistributedAutonomousDatabaseDetails. + The shard or catalog name. + + + :param name: The name of this RotateDistributedAutonomousDatabaseDetails. + :type: str + """ + self._name = name + + @property + def admin_password(self): + """ + **[Required]** Gets the admin_password of this RotateDistributedAutonomousDatabaseDetails. + The admin password for the shard or catalog. + + + :return: The admin_password of this RotateDistributedAutonomousDatabaseDetails. + :rtype: str + """ + return self._admin_password + + @admin_password.setter + def admin_password(self, admin_password): + """ + Sets the admin_password of this RotateDistributedAutonomousDatabaseDetails. + The admin password for the shard or catalog. + + + :param admin_password: The admin_password of this RotateDistributedAutonomousDatabaseDetails. + :type: str + """ + self._admin_password = admin_password + + def __repr__(self): + as_dict = to_dict(self) + redact_password_field(as_dict, ['admin_password']) + return formatted_flat_dict(as_dict) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/rotate_distributed_autonomous_database_passwords_details.py b/src/oci/distributed_database_v26/models/rotate_distributed_autonomous_database_passwords_details.py new file mode 100644 index 0000000000..5d72fadd34 --- /dev/null +++ b/src/oci/distributed_database_v26/models/rotate_distributed_autonomous_database_passwords_details.py @@ -0,0 +1,75 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class RotateDistributedAutonomousDatabasePasswordsDetails(object): + """ + Payload to rotate passwords for shards and catalogs in the Globally distributed autonomous database. + """ + + def __init__(self, **kwargs): + """ + Initializes a new RotateDistributedAutonomousDatabasePasswordsDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param database_details: + The value to assign to the database_details property of this RotateDistributedAutonomousDatabasePasswordsDetails. + :type database_details: list[oci.distributed_database_v26.models.RotateDistributedAutonomousDatabaseDetails] + + """ + self.swagger_types = { + 'database_details': 'list[RotateDistributedAutonomousDatabaseDetails]' + } + self.attribute_map = { + 'database_details': 'databaseDetails' + } + self._redacted_field_paths = [ + ['database_details', '*', 'admin_password'], + ] + self._database_details = None + + @property + def database_details(self): + """ + **[Required]** Gets the database_details of this RotateDistributedAutonomousDatabasePasswordsDetails. + Collection of shard or catalog password rotation details. + + + :return: The database_details of this RotateDistributedAutonomousDatabasePasswordsDetails. + :rtype: list[oci.distributed_database_v26.models.RotateDistributedAutonomousDatabaseDetails] + """ + return self._database_details + + @database_details.setter + def database_details(self, database_details): + """ + Sets the database_details of this RotateDistributedAutonomousDatabasePasswordsDetails. + Collection of shard or catalog password rotation details. + + + :param database_details: The database_details of this RotateDistributedAutonomousDatabasePasswordsDetails. + :type: list[oci.distributed_database_v26.models.RotateDistributedAutonomousDatabaseDetails] + """ + self._database_details = database_details + + def __repr__(self): + as_dict = to_dict(self) + redact_password_field(as_dict, ['database_details', '*', 'admin_password']) + return formatted_flat_dict(as_dict) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/rotate_distributed_database_details.py b/src/oci/distributed_database_v26/models/rotate_distributed_database_details.py new file mode 100644 index 0000000000..b01f1fabd5 --- /dev/null +++ b/src/oci/distributed_database_v26/models/rotate_distributed_database_details.py @@ -0,0 +1,106 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class RotateDistributedDatabaseDetails(object): + """ + Details to rotate password for a shard or catalog in the Globally distributed database. + """ + + def __init__(self, **kwargs): + """ + Initializes a new RotateDistributedDatabaseDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this RotateDistributedDatabaseDetails. + :type name: str + + :param admin_password: + The value to assign to the admin_password property of this RotateDistributedDatabaseDetails. + :type admin_password: str + + """ + self.swagger_types = { + 'name': 'str', + 'admin_password': 'str' + } + self.attribute_map = { + 'name': 'name', + 'admin_password': 'adminPassword' + } + self._redacted_field_paths = [ + ['admin_password'], + ] + self._name = None + self._admin_password = None + + @property + def name(self): + """ + **[Required]** Gets the name of this RotateDistributedDatabaseDetails. + The shard or catalog name. + + + :return: The name of this RotateDistributedDatabaseDetails. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this RotateDistributedDatabaseDetails. + The shard or catalog name. + + + :param name: The name of this RotateDistributedDatabaseDetails. + :type: str + """ + self._name = name + + @property + def admin_password(self): + """ + **[Required]** Gets the admin_password of this RotateDistributedDatabaseDetails. + The admin password for the shard or catalog. + + + :return: The admin_password of this RotateDistributedDatabaseDetails. + :rtype: str + """ + return self._admin_password + + @admin_password.setter + def admin_password(self, admin_password): + """ + Sets the admin_password of this RotateDistributedDatabaseDetails. + The admin password for the shard or catalog. + + + :param admin_password: The admin_password of this RotateDistributedDatabaseDetails. + :type: str + """ + self._admin_password = admin_password + + def __repr__(self): + as_dict = to_dict(self) + redact_password_field(as_dict, ['admin_password']) + return formatted_flat_dict(as_dict) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/rotate_distributed_database_passwords_details.py b/src/oci/distributed_database_v26/models/rotate_distributed_database_passwords_details.py new file mode 100644 index 0000000000..accb70e279 --- /dev/null +++ b/src/oci/distributed_database_v26/models/rotate_distributed_database_passwords_details.py @@ -0,0 +1,75 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class RotateDistributedDatabasePasswordsDetails(object): + """ + Payload to rotate passwords for shards and catalogs in the Globally distributed database. + """ + + def __init__(self, **kwargs): + """ + Initializes a new RotateDistributedDatabasePasswordsDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param database_details: + The value to assign to the database_details property of this RotateDistributedDatabasePasswordsDetails. + :type database_details: list[oci.distributed_database_v26.models.RotateDistributedDatabaseDetails] + + """ + self.swagger_types = { + 'database_details': 'list[RotateDistributedDatabaseDetails]' + } + self.attribute_map = { + 'database_details': 'databaseDetails' + } + self._redacted_field_paths = [ + ['database_details', '*', 'admin_password'], + ] + self._database_details = None + + @property + def database_details(self): + """ + **[Required]** Gets the database_details of this RotateDistributedDatabasePasswordsDetails. + Collection of shard or catalog password rotation details. + + + :return: The database_details of this RotateDistributedDatabasePasswordsDetails. + :rtype: list[oci.distributed_database_v26.models.RotateDistributedDatabaseDetails] + """ + return self._database_details + + @database_details.setter + def database_details(self, database_details): + """ + Sets the database_details of this RotateDistributedDatabasePasswordsDetails. + Collection of shard or catalog password rotation details. + + + :param database_details: The database_details of this RotateDistributedDatabasePasswordsDetails. + :type: list[oci.distributed_database_v26.models.RotateDistributedDatabaseDetails] + """ + self._database_details = database_details + + def __repr__(self): + as_dict = to_dict(self) + redact_password_field(as_dict, ['database_details', '*', 'admin_password']) + return formatted_flat_dict(as_dict) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/scale_distributed_autonomous_database_gsms_details.py b/src/oci/distributed_database_v26/models/scale_distributed_autonomous_database_gsms_details.py new file mode 100644 index 0000000000..ee3c9dc0b0 --- /dev/null +++ b/src/oci/distributed_database_v26/models/scale_distributed_autonomous_database_gsms_details.py @@ -0,0 +1,39 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ScaleDistributedAutonomousDatabaseGsmsDetails(object): + """ + Empty payload to scale global service manager(GSM) instances for the distributed autonomous database. + """ + + def __init__(self, **kwargs): + """ + Initializes a new ScaleDistributedAutonomousDatabaseGsmsDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + """ + self.swagger_types = { + } + self.attribute_map = { + } + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/scale_distributed_database_gsms_details.py b/src/oci/distributed_database_v26/models/scale_distributed_database_gsms_details.py new file mode 100644 index 0000000000..230be9fa2e --- /dev/null +++ b/src/oci/distributed_database_v26/models/scale_distributed_database_gsms_details.py @@ -0,0 +1,39 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class ScaleDistributedDatabaseGsmsDetails(object): + """ + Empty payload to scale global service manager(GSM) instances for the distributed database. + """ + + def __init__(self, **kwargs): + """ + Initializes a new ScaleDistributedDatabaseGsmsDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + """ + self.swagger_types = { + } + self.attribute_map = { + } + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/system_data_guard_database.py b/src/oci/distributed_database_v26/models/system_data_guard_database.py new file mode 100644 index 0000000000..766d1941d2 --- /dev/null +++ b/src/oci/distributed_database_v26/models/system_data_guard_database.py @@ -0,0 +1,97 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class SystemDataGuardDatabase(object): + """ + System data guard shard database details. + """ + + def __init__(self, **kwargs): + """ + Initializes a new SystemDataGuardDatabase object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param original_replica: + The value to assign to the original_replica property of this SystemDataGuardDatabase. + :type original_replica: oci.distributed_database_v26.models.SystemDataGuardReplica + + :param data_guard_replicas: + The value to assign to the data_guard_replicas property of this SystemDataGuardDatabase. + :type data_guard_replicas: list[oci.distributed_database_v26.models.SystemDataGuardReplica] + + """ + self.swagger_types = { + 'original_replica': 'SystemDataGuardReplica', + 'data_guard_replicas': 'list[SystemDataGuardReplica]' + } + self.attribute_map = { + 'original_replica': 'originalReplica', + 'data_guard_replicas': 'dataGuardReplicas' + } + self._original_replica = None + self._data_guard_replicas = None + + @property + def original_replica(self): + """ + **[Required]** Gets the original_replica of this SystemDataGuardDatabase. + + :return: The original_replica of this SystemDataGuardDatabase. + :rtype: oci.distributed_database_v26.models.SystemDataGuardReplica + """ + return self._original_replica + + @original_replica.setter + def original_replica(self, original_replica): + """ + Sets the original_replica of this SystemDataGuardDatabase. + + :param original_replica: The original_replica of this SystemDataGuardDatabase. + :type: oci.distributed_database_v26.models.SystemDataGuardReplica + """ + self._original_replica = original_replica + + @property + def data_guard_replicas(self): + """ + Gets the data_guard_replicas of this SystemDataGuardDatabase. + The system data guard replica details. + + + :return: The data_guard_replicas of this SystemDataGuardDatabase. + :rtype: list[oci.distributed_database_v26.models.SystemDataGuardReplica] + """ + return self._data_guard_replicas + + @data_guard_replicas.setter + def data_guard_replicas(self, data_guard_replicas): + """ + Sets the data_guard_replicas of this SystemDataGuardDatabase. + The system data guard replica details. + + + :param data_guard_replicas: The data_guard_replicas of this SystemDataGuardDatabase. + :type: list[oci.distributed_database_v26.models.SystemDataGuardReplica] + """ + self._data_guard_replicas = data_guard_replicas + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/system_data_guard_replica.py b/src/oci/distributed_database_v26/models/system_data_guard_replica.py new file mode 100644 index 0000000000..f9945856d0 --- /dev/null +++ b/src/oci/distributed_database_v26/models/system_data_guard_replica.py @@ -0,0 +1,105 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class SystemDataGuardReplica(object): + """ + System data guard replica details. + """ + + def __init__(self, **kwargs): + """ + Initializes a new SystemDataGuardReplica object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this SystemDataGuardReplica. + :type name: str + + :param databases: + The value to assign to the databases property of this SystemDataGuardReplica. + :type databases: list[oci.distributed_database_v26.models.DistributedDatabaseShardDatabase] + + """ + self.swagger_types = { + 'name': 'str', + 'databases': 'list[DistributedDatabaseShardDatabase]' + } + self.attribute_map = { + 'name': 'name', + 'databases': 'databases' + } + self._name = None + self._databases = None + + @property + def name(self): + """ + **[Required]** Gets the name of this SystemDataGuardReplica. + The name of data guard replica. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this SystemDataGuardReplica. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this SystemDataGuardReplica. + The name of data guard replica. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this SystemDataGuardReplica. + :type: str + """ + self._name = name + + @property + def databases(self): + """ + **[Required]** Gets the databases of this SystemDataGuardReplica. + Details of the databases associated with the system data guard replica. + + + :return: The databases of this SystemDataGuardReplica. + :rtype: list[oci.distributed_database_v26.models.DistributedDatabaseShardDatabase] + """ + return self._databases + + @databases.setter + def databases(self, databases): + """ + Sets the databases of this SystemDataGuardReplica. + Details of the databases associated with the system data guard replica. + + + :param databases: The databases of this SystemDataGuardReplica. + :type: list[oci.distributed_database_v26.models.DistributedDatabaseShardDatabase] + """ + self._databases = databases + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/system_raft_cluster.py b/src/oci/distributed_database_v26/models/system_raft_cluster.py new file mode 100644 index 0000000000..e2fa824dce --- /dev/null +++ b/src/oci/distributed_database_v26/models/system_raft_cluster.py @@ -0,0 +1,214 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class SystemRaftCluster(object): + """ + System raft cluster definition. + """ + + #: A constant which can be used with the ru_mode property of a SystemRaftCluster. + #: This constant has a value of "READ_ONLY" + RU_MODE_READ_ONLY = "READ_ONLY" + + #: A constant which can be used with the ru_mode property of a SystemRaftCluster. + #: This constant has a value of "READ_WRITE" + RU_MODE_READ_WRITE = "READ_WRITE" + + def __init__(self, **kwargs): + """ + Initializes a new SystemRaftCluster object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this SystemRaftCluster. + :type name: str + + :param replication_factor: + The value to assign to the replication_factor property of this SystemRaftCluster. + :type replication_factor: int + + :param witness_count: + The value to assign to the witness_count property of this SystemRaftCluster. + :type witness_count: int + + :param ru_mode: + The value to assign to the ru_mode property of this SystemRaftCluster. + Allowed values for this property are: "READ_ONLY", "READ_WRITE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type ru_mode: str + + :param databases: + The value to assign to the databases property of this SystemRaftCluster. + :type databases: list[oci.distributed_database_v26.models.DistributedDatabaseShardDatabase] + + """ + self.swagger_types = { + 'name': 'str', + 'replication_factor': 'int', + 'witness_count': 'int', + 'ru_mode': 'str', + 'databases': 'list[DistributedDatabaseShardDatabase]' + } + self.attribute_map = { + 'name': 'name', + 'replication_factor': 'replicationFactor', + 'witness_count': 'witnessCount', + 'ru_mode': 'ruMode', + 'databases': 'databases' + } + self._name = None + self._replication_factor = None + self._witness_count = None + self._ru_mode = None + self._databases = None + + @property + def name(self): + """ + **[Required]** Gets the name of this SystemRaftCluster. + The name of raft cluster. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this SystemRaftCluster. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this SystemRaftCluster. + The name of raft cluster. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this SystemRaftCluster. + :type: str + """ + self._name = name + + @property + def replication_factor(self): + """ + **[Required]** Gets the replication_factor of this SystemRaftCluster. + Replication factor associated with the raft cluster. + + + :return: The replication_factor of this SystemRaftCluster. + :rtype: int + """ + return self._replication_factor + + @replication_factor.setter + def replication_factor(self, replication_factor): + """ + Sets the replication_factor of this SystemRaftCluster. + Replication factor associated with the raft cluster. + + + :param replication_factor: The replication_factor of this SystemRaftCluster. + :type: int + """ + self._replication_factor = replication_factor + + @property + def witness_count(self): + """ + **[Required]** Gets the witness_count of this SystemRaftCluster. + Witnesses RU count associated with the raft cluster. + + + :return: The witness_count of this SystemRaftCluster. + :rtype: int + """ + return self._witness_count + + @witness_count.setter + def witness_count(self, witness_count): + """ + Sets the witness_count of this SystemRaftCluster. + Witnesses RU count associated with the raft cluster. + + + :param witness_count: The witness_count of this SystemRaftCluster. + :type: int + """ + self._witness_count = witness_count + + @property + def ru_mode(self): + """ + **[Required]** Gets the ru_mode of this SystemRaftCluster. + Replication factor associated with the raft cluster. + + Allowed values for this property are: "READ_ONLY", "READ_WRITE", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The ru_mode of this SystemRaftCluster. + :rtype: str + """ + return self._ru_mode + + @ru_mode.setter + def ru_mode(self, ru_mode): + """ + Sets the ru_mode of this SystemRaftCluster. + Replication factor associated with the raft cluster. + + + :param ru_mode: The ru_mode of this SystemRaftCluster. + :type: str + """ + allowed_values = ["READ_ONLY", "READ_WRITE"] + if not value_allowed_none_or_none_sentinel(ru_mode, allowed_values): + ru_mode = 'UNKNOWN_ENUM_VALUE' + self._ru_mode = ru_mode + + @property + def databases(self): + """ + **[Required]** Gets the databases of this SystemRaftCluster. + Details of the databases associated with the system raft cluster. + + + :return: The databases of this SystemRaftCluster. + :rtype: list[oci.distributed_database_v26.models.DistributedDatabaseShardDatabase] + """ + return self._databases + + @databases.setter + def databases(self, databases): + """ + Sets the databases of this SystemRaftCluster. + Details of the databases associated with the system raft cluster. + + + :param databases: The databases of this SystemRaftCluster. + :type: list[oci.distributed_database_v26.models.DistributedDatabaseShardDatabase] + """ + self._databases = databases + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/update_distributed_autonomous_database_details.py b/src/oci/distributed_database_v26/models/update_distributed_autonomous_database_details.py new file mode 100644 index 0000000000..721b02df03 --- /dev/null +++ b/src/oci/distributed_database_v26/models/update_distributed_autonomous_database_details.py @@ -0,0 +1,173 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class UpdateDistributedAutonomousDatabaseDetails(object): + """ + The details of Globally distributed autonomous database to be updated. + """ + + def __init__(self, **kwargs): + """ + Initializes a new UpdateDistributedAutonomousDatabaseDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param display_name: + The value to assign to the display_name property of this UpdateDistributedAutonomousDatabaseDetails. + :type display_name: str + + :param notification_topic_ids: + The value to assign to the notification_topic_ids property of this UpdateDistributedAutonomousDatabaseDetails. + :type notification_topic_ids: list[str] + + :param freeform_tags: + The value to assign to the freeform_tags property of this UpdateDistributedAutonomousDatabaseDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this UpdateDistributedAutonomousDatabaseDetails. + :type defined_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'display_name': 'str', + 'notification_topic_ids': 'list[str]', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'display_name': 'displayName', + 'notification_topic_ids': 'notificationTopicIds', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' + } + self._display_name = None + self._notification_topic_ids = None + self._freeform_tags = None + self._defined_tags = None + + @property + def display_name(self): + """ + Gets the display_name of this UpdateDistributedAutonomousDatabaseDetails. + Display name of the Globally distributed autonomous database. + + + :return: The display_name of this UpdateDistributedAutonomousDatabaseDetails. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this UpdateDistributedAutonomousDatabaseDetails. + Display name of the Globally distributed autonomous database. + + + :param display_name: The display_name of this UpdateDistributedAutonomousDatabaseDetails. + :type: str + """ + self._display_name = display_name + + @property + def notification_topic_ids(self): + """ + Gets the notification_topic_ids of this UpdateDistributedAutonomousDatabaseDetails. + The collection of `OCID`__ for the notification topics associated with the globally distributed autonomous database. + Pass an empty list (`[]`) to remove existing notification topics (set `notificationTopicIds` to empty). + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The notification_topic_ids of this UpdateDistributedAutonomousDatabaseDetails. + :rtype: list[str] + """ + return self._notification_topic_ids + + @notification_topic_ids.setter + def notification_topic_ids(self, notification_topic_ids): + """ + Sets the notification_topic_ids of this UpdateDistributedAutonomousDatabaseDetails. + The collection of `OCID`__ for the notification topics associated with the globally distributed autonomous database. + Pass an empty list (`[]`) to remove existing notification topics (set `notificationTopicIds` to empty). + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param notification_topic_ids: The notification_topic_ids of this UpdateDistributedAutonomousDatabaseDetails. + :type: list[str] + """ + self._notification_topic_ids = notification_topic_ids + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this UpdateDistributedAutonomousDatabaseDetails. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this UpdateDistributedAutonomousDatabaseDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this UpdateDistributedAutonomousDatabaseDetails. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this UpdateDistributedAutonomousDatabaseDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this UpdateDistributedAutonomousDatabaseDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this UpdateDistributedAutonomousDatabaseDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this UpdateDistributedAutonomousDatabaseDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this UpdateDistributedAutonomousDatabaseDetails. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/update_distributed_database_details.py b/src/oci/distributed_database_v26/models/update_distributed_database_details.py new file mode 100644 index 0000000000..e7b915b7b0 --- /dev/null +++ b/src/oci/distributed_database_v26/models/update_distributed_database_details.py @@ -0,0 +1,173 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class UpdateDistributedDatabaseDetails(object): + """ + The details of Globally distributed database to be updated. + """ + + def __init__(self, **kwargs): + """ + Initializes a new UpdateDistributedDatabaseDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param display_name: + The value to assign to the display_name property of this UpdateDistributedDatabaseDetails. + :type display_name: str + + :param notification_topic_ids: + The value to assign to the notification_topic_ids property of this UpdateDistributedDatabaseDetails. + :type notification_topic_ids: list[str] + + :param freeform_tags: + The value to assign to the freeform_tags property of this UpdateDistributedDatabaseDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this UpdateDistributedDatabaseDetails. + :type defined_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'display_name': 'str', + 'notification_topic_ids': 'list[str]', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'display_name': 'displayName', + 'notification_topic_ids': 'notificationTopicIds', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' + } + self._display_name = None + self._notification_topic_ids = None + self._freeform_tags = None + self._defined_tags = None + + @property + def display_name(self): + """ + Gets the display_name of this UpdateDistributedDatabaseDetails. + Display name of the Globally distributed database. + + + :return: The display_name of this UpdateDistributedDatabaseDetails. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this UpdateDistributedDatabaseDetails. + Display name of the Globally distributed database. + + + :param display_name: The display_name of this UpdateDistributedDatabaseDetails. + :type: str + """ + self._display_name = display_name + + @property + def notification_topic_ids(self): + """ + Gets the notification_topic_ids of this UpdateDistributedDatabaseDetails. + The collection of `OCID`__ for the notification topics associated with the globally distributed database. + Pass an empty list (`[]`) to remove existing notification topics (set `notificationTopicIds` to empty). + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The notification_topic_ids of this UpdateDistributedDatabaseDetails. + :rtype: list[str] + """ + return self._notification_topic_ids + + @notification_topic_ids.setter + def notification_topic_ids(self, notification_topic_ids): + """ + Sets the notification_topic_ids of this UpdateDistributedDatabaseDetails. + The collection of `OCID`__ for the notification topics associated with the globally distributed database. + Pass an empty list (`[]`) to remove existing notification topics (set `notificationTopicIds` to empty). + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param notification_topic_ids: The notification_topic_ids of this UpdateDistributedDatabaseDetails. + :type: list[str] + """ + self._notification_topic_ids = notification_topic_ids + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this UpdateDistributedDatabaseDetails. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this UpdateDistributedDatabaseDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this UpdateDistributedDatabaseDetails. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this UpdateDistributedDatabaseDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this UpdateDistributedDatabaseDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this UpdateDistributedDatabaseDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this UpdateDistributedDatabaseDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this UpdateDistributedDatabaseDetails. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/update_distributed_database_private_endpoint_details.py b/src/oci/distributed_database_v26/models/update_distributed_database_private_endpoint_details.py new file mode 100644 index 0000000000..37a70ed7a9 --- /dev/null +++ b/src/oci/distributed_database_v26/models/update_distributed_database_private_endpoint_details.py @@ -0,0 +1,167 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class UpdateDistributedDatabasePrivateEndpointDetails(object): + """ + The details of private endpoint to be updated. + """ + + def __init__(self, **kwargs): + """ + Initializes a new UpdateDistributedDatabasePrivateEndpointDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param display_name: + The value to assign to the display_name property of this UpdateDistributedDatabasePrivateEndpointDetails. + :type display_name: str + + :param description: + The value to assign to the description property of this UpdateDistributedDatabasePrivateEndpointDetails. + :type description: str + + :param freeform_tags: + The value to assign to the freeform_tags property of this UpdateDistributedDatabasePrivateEndpointDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this UpdateDistributedDatabasePrivateEndpointDetails. + :type defined_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'display_name': 'str', + 'description': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' + } + self.attribute_map = { + 'display_name': 'displayName', + 'description': 'description', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' + } + self._display_name = None + self._description = None + self._freeform_tags = None + self._defined_tags = None + + @property + def display_name(self): + """ + Gets the display_name of this UpdateDistributedDatabasePrivateEndpointDetails. + Display name for DistributedDatabasePrivateEndpoint + + + :return: The display_name of this UpdateDistributedDatabasePrivateEndpointDetails. + :rtype: str + """ + return self._display_name + + @display_name.setter + def display_name(self, display_name): + """ + Sets the display_name of this UpdateDistributedDatabasePrivateEndpointDetails. + Display name for DistributedDatabasePrivateEndpoint + + + :param display_name: The display_name of this UpdateDistributedDatabasePrivateEndpointDetails. + :type: str + """ + self._display_name = display_name + + @property + def description(self): + """ + Gets the description of this UpdateDistributedDatabasePrivateEndpointDetails. + DistributedDatabasePrivateEndpoint description. + + + :return: The description of this UpdateDistributedDatabasePrivateEndpointDetails. + :rtype: str + """ + return self._description + + @description.setter + def description(self, description): + """ + Sets the description of this UpdateDistributedDatabasePrivateEndpointDetails. + DistributedDatabasePrivateEndpoint description. + + + :param description: The description of this UpdateDistributedDatabasePrivateEndpointDetails. + :type: str + """ + self._description = description + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this UpdateDistributedDatabasePrivateEndpointDetails. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :return: The freeform_tags of this UpdateDistributedDatabasePrivateEndpointDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this UpdateDistributedDatabasePrivateEndpointDetails. + Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. + Example: `{\"bar-key\": \"value\"}` + + + :param freeform_tags: The freeform_tags of this UpdateDistributedDatabasePrivateEndpointDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this UpdateDistributedDatabasePrivateEndpointDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :return: The defined_tags of this UpdateDistributedDatabasePrivateEndpointDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this UpdateDistributedDatabasePrivateEndpointDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + Example: `{\"foo-namespace\": {\"bar-key\": \"value\"}}` + + + :param defined_tags: The defined_tags of this UpdateDistributedDatabasePrivateEndpointDetails. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/user_shard_space.py b/src/oci/distributed_database_v26/models/user_shard_space.py new file mode 100644 index 0000000000..f7bbb13f3c --- /dev/null +++ b/src/oci/distributed_database_v26/models/user_shard_space.py @@ -0,0 +1,132 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class UserShardSpace(object): + """ + Distributed database user shard space details. + """ + + def __init__(self, **kwargs): + """ + Initializes a new UserShardSpace object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this UserShardSpace. + :type name: str + + :param original_replica: + The value to assign to the original_replica property of this UserShardSpace. + :type original_replica: oci.distributed_database_v26.models.UserShardSpaceReplica + + :param data_guard_replicas: + The value to assign to the data_guard_replicas property of this UserShardSpace. + :type data_guard_replicas: list[oci.distributed_database_v26.models.UserShardSpaceReplica] + + """ + self.swagger_types = { + 'name': 'str', + 'original_replica': 'UserShardSpaceReplica', + 'data_guard_replicas': 'list[UserShardSpaceReplica]' + } + self.attribute_map = { + 'name': 'name', + 'original_replica': 'originalReplica', + 'data_guard_replicas': 'dataGuardReplicas' + } + self._name = None + self._original_replica = None + self._data_guard_replicas = None + + @property + def name(self): + """ + **[Required]** Gets the name of this UserShardSpace. + The name of user shard space. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this UserShardSpace. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this UserShardSpace. + The name of user shard space. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this UserShardSpace. + :type: str + """ + self._name = name + + @property + def original_replica(self): + """ + **[Required]** Gets the original_replica of this UserShardSpace. + + :return: The original_replica of this UserShardSpace. + :rtype: oci.distributed_database_v26.models.UserShardSpaceReplica + """ + return self._original_replica + + @original_replica.setter + def original_replica(self, original_replica): + """ + Sets the original_replica of this UserShardSpace. + + :param original_replica: The original_replica of this UserShardSpace. + :type: oci.distributed_database_v26.models.UserShardSpaceReplica + """ + self._original_replica = original_replica + + @property + def data_guard_replicas(self): + """ + Gets the data_guard_replicas of this UserShardSpace. + The details of data guard replica for the user shard space. + + + :return: The data_guard_replicas of this UserShardSpace. + :rtype: list[oci.distributed_database_v26.models.UserShardSpaceReplica] + """ + return self._data_guard_replicas + + @data_guard_replicas.setter + def data_guard_replicas(self, data_guard_replicas): + """ + Sets the data_guard_replicas of this UserShardSpace. + The details of data guard replica for the user shard space. + + + :param data_guard_replicas: The data_guard_replicas of this UserShardSpace. + :type: list[oci.distributed_database_v26.models.UserShardSpaceReplica] + """ + self._data_guard_replicas = data_guard_replicas + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/user_shard_space_replica.py b/src/oci/distributed_database_v26/models/user_shard_space_replica.py new file mode 100644 index 0000000000..3accb4e366 --- /dev/null +++ b/src/oci/distributed_database_v26/models/user_shard_space_replica.py @@ -0,0 +1,101 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class UserShardSpaceReplica(object): + """ + Details of user shard space. + """ + + def __init__(self, **kwargs): + """ + Initializes a new UserShardSpaceReplica object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param name: + The value to assign to the name property of this UserShardSpaceReplica. + :type name: str + + :param database: + The value to assign to the database property of this UserShardSpaceReplica. + :type database: oci.distributed_database_v26.models.DistributedDatabaseShardDatabase + + """ + self.swagger_types = { + 'name': 'str', + 'database': 'DistributedDatabaseShardDatabase' + } + self.attribute_map = { + 'name': 'name', + 'database': 'database' + } + self._name = None + self._database = None + + @property + def name(self): + """ + **[Required]** Gets the name of this UserShardSpaceReplica. + The name of user shard space replica. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :return: The name of this UserShardSpaceReplica. + :rtype: str + """ + return self._name + + @name.setter + def name(self, name): + """ + Sets the name of this UserShardSpaceReplica. + The name of user shard space replica. + It must start with a letter and contain only letters, digits, and underscores. + Maximum length is 40 characters. + + + :param name: The name of this UserShardSpaceReplica. + :type: str + """ + self._name = name + + @property + def database(self): + """ + **[Required]** Gets the database of this UserShardSpaceReplica. + + :return: The database of this UserShardSpaceReplica. + :rtype: oci.distributed_database_v26.models.DistributedDatabaseShardDatabase + """ + return self._database + + @database.setter + def database(self, database): + """ + Sets the database of this UserShardSpaceReplica. + + :param database: The database of this UserShardSpaceReplica. + :type: oci.distributed_database_v26.models.DistributedDatabaseShardDatabase + """ + self._database = database + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/vcn_nsg_ids_details.py b/src/oci/distributed_database_v26/models/vcn_nsg_ids_details.py new file mode 100644 index 0000000000..895766d6f1 --- /dev/null +++ b/src/oci/distributed_database_v26/models/vcn_nsg_ids_details.py @@ -0,0 +1,119 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class VcnNsgIdsDetails(object): + """ + Specifies the Virtual Cloud Network (VCN) and the list of associated Network Security Group (NSG) OCIDs. + + This model is shared across create (POST), update (PUT/PATCH), and retrieve (GET) operations. + + - During create, `nsgIds` (if provided) specifies the NSGs to associate with the new resource. + - During update or patch, `nsgIds` modifies the associations: provide an empty array (`[]`) to clear all NSGs, or provide a new list to replace them. + - GET responses return the current associations (which may be empty). + """ + + def __init__(self, **kwargs): + """ + Initializes a new VcnNsgIdsDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param vcn_id: + The value to assign to the vcn_id property of this VcnNsgIdsDetails. + :type vcn_id: str + + :param nsg_ids: + The value to assign to the nsg_ids property of this VcnNsgIdsDetails. + :type nsg_ids: list[str] + + """ + self.swagger_types = { + 'vcn_id': 'str', + 'nsg_ids': 'list[str]' + } + self.attribute_map = { + 'vcn_id': 'vcnId', + 'nsg_ids': 'nsgIds' + } + self._vcn_id = None + self._nsg_ids = None + + @property + def vcn_id(self): + """ + **[Required]** Gets the vcn_id of this VcnNsgIdsDetails. + The `OCID`__ of the customer Virtual Cloud Network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The vcn_id of this VcnNsgIdsDetails. + :rtype: str + """ + return self._vcn_id + + @vcn_id.setter + def vcn_id(self, vcn_id): + """ + Sets the vcn_id of this VcnNsgIdsDetails. + The `OCID`__ of the customer Virtual Cloud Network. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param vcn_id: The vcn_id of this VcnNsgIdsDetails. + :type: str + """ + self._vcn_id = vcn_id + + @property + def nsg_ids(self): + """ + **[Required]** Gets the nsg_ids of this VcnNsgIdsDetails. + The list of `OCIDs`__ of the network security groups (NSGs) associated with resources in this VCN. + For more information about NSGs, see `Security Rules`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/Network/Concepts/securityrules.htm + + + :return: The nsg_ids of this VcnNsgIdsDetails. + :rtype: list[str] + """ + return self._nsg_ids + + @nsg_ids.setter + def nsg_ids(self, nsg_ids): + """ + Sets the nsg_ids of this VcnNsgIdsDetails. + The list of `OCIDs`__ of the network security groups (NSGs) associated with resources in this VCN. + For more information about NSGs, see `Security Rules`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/Network/Concepts/securityrules.htm + + + :param nsg_ids: The nsg_ids of this VcnNsgIdsDetails. + :type: list[str] + """ + self._nsg_ids = nsg_ids + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/vm_cluster_details.py b/src/oci/distributed_database_v26/models/vm_cluster_details.py new file mode 100644 index 0000000000..3535d44ed4 --- /dev/null +++ b/src/oci/distributed_database_v26/models/vm_cluster_details.py @@ -0,0 +1,609 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class VmClusterDetails(object): + """ + Details of the request to create exadb vm cluster for shard or catalog of the distributed database. + """ + + #: A constant which can be used with the license_model property of a VmClusterDetails. + #: This constant has a value of "LICENSE_INCLUDED" + LICENSE_MODEL_LICENSE_INCLUDED = "LICENSE_INCLUDED" + + #: A constant which can be used with the license_model property of a VmClusterDetails. + #: This constant has a value of "BRING_YOUR_OWN_LICENSE" + LICENSE_MODEL_BRING_YOUR_OWN_LICENSE = "BRING_YOUR_OWN_LICENSE" + + def __init__(self, **kwargs): + """ + Initializes a new VmClusterDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param compartment_id: + The value to assign to the compartment_id property of this VmClusterDetails. + :type compartment_id: str + + :param subnet_id: + The value to assign to the subnet_id property of this VmClusterDetails. + :type subnet_id: str + + :param backup_subnet_id: + The value to assign to the backup_subnet_id property of this VmClusterDetails. + :type backup_subnet_id: str + + :param enabled_e_cpu_count: + The value to assign to the enabled_e_cpu_count property of this VmClusterDetails. + :type enabled_e_cpu_count: int + + :param total_e_cpu_count: + The value to assign to the total_e_cpu_count property of this VmClusterDetails. + :type total_e_cpu_count: int + + :param vm_file_system_storage_size: + The value to assign to the vm_file_system_storage_size property of this VmClusterDetails. + :type vm_file_system_storage_size: int + + :param ssh_public_keys: + The value to assign to the ssh_public_keys property of this VmClusterDetails. + :type ssh_public_keys: list[str] + + :param license_model: + The value to assign to the license_model property of this VmClusterDetails. + Allowed values for this property are: "LICENSE_INCLUDED", "BRING_YOUR_OWN_LICENSE" + :type license_model: str + + :param domain: + The value to assign to the domain property of this VmClusterDetails. + :type domain: str + + :param private_zone_id: + The value to assign to the private_zone_id property of this VmClusterDetails. + :type private_zone_id: str + + :param is_diagnostics_events_enabled: + The value to assign to the is_diagnostics_events_enabled property of this VmClusterDetails. + :type is_diagnostics_events_enabled: bool + + :param is_health_monitoring_enabled: + The value to assign to the is_health_monitoring_enabled property of this VmClusterDetails. + :type is_health_monitoring_enabled: bool + + :param is_incident_logs_enabled: + The value to assign to the is_incident_logs_enabled property of this VmClusterDetails. + :type is_incident_logs_enabled: bool + + :param nsg_ids: + The value to assign to the nsg_ids property of this VmClusterDetails. + :type nsg_ids: list[str] + + :param backup_network_nsg_ids: + The value to assign to the backup_network_nsg_ids property of this VmClusterDetails. + :type backup_network_nsg_ids: list[str] + + :param subscription_id: + The value to assign to the subscription_id property of this VmClusterDetails. + :type subscription_id: str + + """ + self.swagger_types = { + 'compartment_id': 'str', + 'subnet_id': 'str', + 'backup_subnet_id': 'str', + 'enabled_e_cpu_count': 'int', + 'total_e_cpu_count': 'int', + 'vm_file_system_storage_size': 'int', + 'ssh_public_keys': 'list[str]', + 'license_model': 'str', + 'domain': 'str', + 'private_zone_id': 'str', + 'is_diagnostics_events_enabled': 'bool', + 'is_health_monitoring_enabled': 'bool', + 'is_incident_logs_enabled': 'bool', + 'nsg_ids': 'list[str]', + 'backup_network_nsg_ids': 'list[str]', + 'subscription_id': 'str' + } + self.attribute_map = { + 'compartment_id': 'compartmentId', + 'subnet_id': 'subnetId', + 'backup_subnet_id': 'backupSubnetId', + 'enabled_e_cpu_count': 'enabledECpuCount', + 'total_e_cpu_count': 'totalECpuCount', + 'vm_file_system_storage_size': 'vmFileSystemStorageSize', + 'ssh_public_keys': 'sshPublicKeys', + 'license_model': 'licenseModel', + 'domain': 'domain', + 'private_zone_id': 'privateZoneId', + 'is_diagnostics_events_enabled': 'isDiagnosticsEventsEnabled', + 'is_health_monitoring_enabled': 'isHealthMonitoringEnabled', + 'is_incident_logs_enabled': 'isIncidentLogsEnabled', + 'nsg_ids': 'nsgIds', + 'backup_network_nsg_ids': 'backupNetworkNsgIds', + 'subscription_id': 'subscriptionId' + } + self._compartment_id = None + self._subnet_id = None + self._backup_subnet_id = None + self._enabled_e_cpu_count = None + self._total_e_cpu_count = None + self._vm_file_system_storage_size = None + self._ssh_public_keys = None + self._license_model = None + self._domain = None + self._private_zone_id = None + self._is_diagnostics_events_enabled = None + self._is_health_monitoring_enabled = None + self._is_incident_logs_enabled = None + self._nsg_ids = None + self._backup_network_nsg_ids = None + self._subscription_id = None + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this VmClusterDetails. + The `OCID`__ of the compartment for VM Cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The compartment_id of this VmClusterDetails. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this VmClusterDetails. + The `OCID`__ of the compartment for VM Cluster. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param compartment_id: The compartment_id of this VmClusterDetails. + :type: str + """ + self._compartment_id = compartment_id + + @property + def subnet_id(self): + """ + **[Required]** Gets the subnet_id of this VmClusterDetails. + The `OCID`__ of the subnet associated with the Exadata VM cluster on Exascale Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The subnet_id of this VmClusterDetails. + :rtype: str + """ + return self._subnet_id + + @subnet_id.setter + def subnet_id(self, subnet_id): + """ + Sets the subnet_id of this VmClusterDetails. + The `OCID`__ of the subnet associated with the Exadata VM cluster on Exascale Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param subnet_id: The subnet_id of this VmClusterDetails. + :type: str + """ + self._subnet_id = subnet_id + + @property + def backup_subnet_id(self): + """ + **[Required]** Gets the backup_subnet_id of this VmClusterDetails. + The `OCID`__ of the backup network subnet associated with the Exadata VM cluster on Exascale Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The backup_subnet_id of this VmClusterDetails. + :rtype: str + """ + return self._backup_subnet_id + + @backup_subnet_id.setter + def backup_subnet_id(self, backup_subnet_id): + """ + Sets the backup_subnet_id of this VmClusterDetails. + The `OCID`__ of the backup network subnet associated with the Exadata VM cluster on Exascale Infrastructure. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param backup_subnet_id: The backup_subnet_id of this VmClusterDetails. + :type: str + """ + self._backup_subnet_id = backup_subnet_id + + @property + def enabled_e_cpu_count(self): + """ + **[Required]** Gets the enabled_e_cpu_count of this VmClusterDetails. + The number of ECPUs to enable for an Exadata VM cluster on Exascale Infrastructure. + + + :return: The enabled_e_cpu_count of this VmClusterDetails. + :rtype: int + """ + return self._enabled_e_cpu_count + + @enabled_e_cpu_count.setter + def enabled_e_cpu_count(self, enabled_e_cpu_count): + """ + Sets the enabled_e_cpu_count of this VmClusterDetails. + The number of ECPUs to enable for an Exadata VM cluster on Exascale Infrastructure. + + + :param enabled_e_cpu_count: The enabled_e_cpu_count of this VmClusterDetails. + :type: int + """ + self._enabled_e_cpu_count = enabled_e_cpu_count + + @property + def total_e_cpu_count(self): + """ + Gets the total_e_cpu_count of this VmClusterDetails. + The number of Total ECPUs for an Exadata VM cluster on Exascale Infrastructure. + + + :return: The total_e_cpu_count of this VmClusterDetails. + :rtype: int + """ + return self._total_e_cpu_count + + @total_e_cpu_count.setter + def total_e_cpu_count(self, total_e_cpu_count): + """ + Sets the total_e_cpu_count of this VmClusterDetails. + The number of Total ECPUs for an Exadata VM cluster on Exascale Infrastructure. + + + :param total_e_cpu_count: The total_e_cpu_count of this VmClusterDetails. + :type: int + """ + self._total_e_cpu_count = total_e_cpu_count + + @property + def vm_file_system_storage_size(self): + """ + Gets the vm_file_system_storage_size of this VmClusterDetails. + File System Storage Size in GBs for Exadata VM cluster. + + + :return: The vm_file_system_storage_size of this VmClusterDetails. + :rtype: int + """ + return self._vm_file_system_storage_size + + @vm_file_system_storage_size.setter + def vm_file_system_storage_size(self, vm_file_system_storage_size): + """ + Sets the vm_file_system_storage_size of this VmClusterDetails. + File System Storage Size in GBs for Exadata VM cluster. + + + :param vm_file_system_storage_size: The vm_file_system_storage_size of this VmClusterDetails. + :type: int + """ + self._vm_file_system_storage_size = vm_file_system_storage_size + + @property + def ssh_public_keys(self): + """ + **[Required]** Gets the ssh_public_keys of this VmClusterDetails. + The public key portion of one or more key pairs used for SSH access to the Exadata VM cluster on Exascale Infrastructure. + + + :return: The ssh_public_keys of this VmClusterDetails. + :rtype: list[str] + """ + return self._ssh_public_keys + + @ssh_public_keys.setter + def ssh_public_keys(self, ssh_public_keys): + """ + Sets the ssh_public_keys of this VmClusterDetails. + The public key portion of one or more key pairs used for SSH access to the Exadata VM cluster on Exascale Infrastructure. + + + :param ssh_public_keys: The ssh_public_keys of this VmClusterDetails. + :type: list[str] + """ + self._ssh_public_keys = ssh_public_keys + + @property + def license_model(self): + """ + Gets the license_model of this VmClusterDetails. + The Oracle license model that applies to the Exadata VM cluster on Exascale Infrastructure. The default is BRING_YOUR_OWN_LICENSE. + + Allowed values for this property are: "LICENSE_INCLUDED", "BRING_YOUR_OWN_LICENSE" + + + :return: The license_model of this VmClusterDetails. + :rtype: str + """ + return self._license_model + + @license_model.setter + def license_model(self, license_model): + """ + Sets the license_model of this VmClusterDetails. + The Oracle license model that applies to the Exadata VM cluster on Exascale Infrastructure. The default is BRING_YOUR_OWN_LICENSE. + + + :param license_model: The license_model of this VmClusterDetails. + :type: str + """ + allowed_values = ["LICENSE_INCLUDED", "BRING_YOUR_OWN_LICENSE"] + if not value_allowed_none_or_none_sentinel(license_model, allowed_values): + raise ValueError( + f"Invalid value for `license_model`, must be None or one of {allowed_values}" + ) + self._license_model = license_model + + @property + def domain(self): + """ + Gets the domain of this VmClusterDetails. + A domain name used for the Exadata VM cluster on Exascale Infrastructure. + If the Oracle-provided internet and VCN resolver is enabled for the specified subnet, then the domain name for the subnet is used + (do not provide one). Otherwise, provide a valid DNS domain name. + Hyphens (-) are not permitted. Applies to Exadata Database Service on Exascale Infrastructure only. + + + :return: The domain of this VmClusterDetails. + :rtype: str + """ + return self._domain + + @domain.setter + def domain(self, domain): + """ + Sets the domain of this VmClusterDetails. + A domain name used for the Exadata VM cluster on Exascale Infrastructure. + If the Oracle-provided internet and VCN resolver is enabled for the specified subnet, then the domain name for the subnet is used + (do not provide one). Otherwise, provide a valid DNS domain name. + Hyphens (-) are not permitted. Applies to Exadata Database Service on Exascale Infrastructure only. + + + :param domain: The domain of this VmClusterDetails. + :type: str + """ + self._domain = domain + + @property + def private_zone_id(self): + """ + Gets the private_zone_id of this VmClusterDetails. + The private zone ID in which you want DNS records to be created. + + + :return: The private_zone_id of this VmClusterDetails. + :rtype: str + """ + return self._private_zone_id + + @private_zone_id.setter + def private_zone_id(self, private_zone_id): + """ + Sets the private_zone_id of this VmClusterDetails. + The private zone ID in which you want DNS records to be created. + + + :param private_zone_id: The private_zone_id of this VmClusterDetails. + :type: str + """ + self._private_zone_id = private_zone_id + + @property + def is_diagnostics_events_enabled(self): + """ + Gets the is_diagnostics_events_enabled of this VmClusterDetails. + Indicates whether diagnostic collection is enabled for the VM cluster. + Enabling diagnostic collection allows you to receive Events service notifications for guest VM issues. + Diagnostic collection also allows Oracle to provide enhanced service and proactive support for your Exadata system. + You can enable diagnostic collection during VM cluster provisioning. You can also disable or enable it at any time using the `UpdateVmCluster` API. + + + :return: The is_diagnostics_events_enabled of this VmClusterDetails. + :rtype: bool + """ + return self._is_diagnostics_events_enabled + + @is_diagnostics_events_enabled.setter + def is_diagnostics_events_enabled(self, is_diagnostics_events_enabled): + """ + Sets the is_diagnostics_events_enabled of this VmClusterDetails. + Indicates whether diagnostic collection is enabled for the VM cluster. + Enabling diagnostic collection allows you to receive Events service notifications for guest VM issues. + Diagnostic collection also allows Oracle to provide enhanced service and proactive support for your Exadata system. + You can enable diagnostic collection during VM cluster provisioning. You can also disable or enable it at any time using the `UpdateVmCluster` API. + + + :param is_diagnostics_events_enabled: The is_diagnostics_events_enabled of this VmClusterDetails. + :type: bool + """ + self._is_diagnostics_events_enabled = is_diagnostics_events_enabled + + @property + def is_health_monitoring_enabled(self): + """ + Gets the is_health_monitoring_enabled of this VmClusterDetails. + Indicates whether health monitoring is enabled for the VM cluster. + Enabling health monitoring allows Oracle to collect diagnostic data and share it with its operations and support personnel. + You may also receive notifications for some events. Collecting health diagnostics enables Oracle to provide proactive support and enhanced service for your system. + Optionally enable health monitoring while provisioning a system. You can also disable or enable health monitoring anytime using the `UpdateVmCluster` API. + + + :return: The is_health_monitoring_enabled of this VmClusterDetails. + :rtype: bool + """ + return self._is_health_monitoring_enabled + + @is_health_monitoring_enabled.setter + def is_health_monitoring_enabled(self, is_health_monitoring_enabled): + """ + Sets the is_health_monitoring_enabled of this VmClusterDetails. + Indicates whether health monitoring is enabled for the VM cluster. + Enabling health monitoring allows Oracle to collect diagnostic data and share it with its operations and support personnel. + You may also receive notifications for some events. Collecting health diagnostics enables Oracle to provide proactive support and enhanced service for your system. + Optionally enable health monitoring while provisioning a system. You can also disable or enable health monitoring anytime using the `UpdateVmCluster` API. + + + :param is_health_monitoring_enabled: The is_health_monitoring_enabled of this VmClusterDetails. + :type: bool + """ + self._is_health_monitoring_enabled = is_health_monitoring_enabled + + @property + def is_incident_logs_enabled(self): + """ + Gets the is_incident_logs_enabled of this VmClusterDetails. + Indicates whether incident logs and trace collection are enabled for the VM cluster. + Enabling incident logs collection allows Oracle to receive Events service notifications for guest VM issues, collect incident logs and traces, and use them to diagnose issues and resolve them. + Optionally enable incident logs collection while provisioning a system. You can also disable or enable incident logs collection anytime using the `UpdateVmCluster` API. + + + :return: The is_incident_logs_enabled of this VmClusterDetails. + :rtype: bool + """ + return self._is_incident_logs_enabled + + @is_incident_logs_enabled.setter + def is_incident_logs_enabled(self, is_incident_logs_enabled): + """ + Sets the is_incident_logs_enabled of this VmClusterDetails. + Indicates whether incident logs and trace collection are enabled for the VM cluster. + Enabling incident logs collection allows Oracle to receive Events service notifications for guest VM issues, collect incident logs and traces, and use them to diagnose issues and resolve them. + Optionally enable incident logs collection while provisioning a system. You can also disable or enable incident logs collection anytime using the `UpdateVmCluster` API. + + + :param is_incident_logs_enabled: The is_incident_logs_enabled of this VmClusterDetails. + :type: bool + """ + self._is_incident_logs_enabled = is_incident_logs_enabled + + @property + def nsg_ids(self): + """ + Gets the nsg_ids of this VmClusterDetails. + 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`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/Network/Concepts/securityrules.htm + + + :return: The nsg_ids of this VmClusterDetails. + :rtype: list[str] + """ + return self._nsg_ids + + @nsg_ids.setter + def nsg_ids(self, nsg_ids): + """ + Sets the nsg_ids of this VmClusterDetails. + 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`__. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/Network/Concepts/securityrules.htm + + + :param nsg_ids: The nsg_ids of this VmClusterDetails. + :type: list[str] + """ + self._nsg_ids = nsg_ids + + @property + def backup_network_nsg_ids(self): + """ + Gets the backup_network_nsg_ids of this VmClusterDetails. + A list of the `OCIDs`__ of the network security groups (NSGs) that the backup network of this DB system belongs to. + Setting this to an empty array after the list is created removes the resource from all NSGs. + For more information about NSGs, see `Security Rules`__. Applicable only to Exadata systems. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/Network/Concepts/securityrules.htm + + + :return: The backup_network_nsg_ids of this VmClusterDetails. + :rtype: list[str] + """ + return self._backup_network_nsg_ids + + @backup_network_nsg_ids.setter + def backup_network_nsg_ids(self, backup_network_nsg_ids): + """ + Sets the backup_network_nsg_ids of this VmClusterDetails. + A list of the `OCIDs`__ of the network security groups (NSGs) that the backup network of this DB system belongs to. + Setting this to an empty array after the list is created removes the resource from all NSGs. + For more information about NSGs, see `Security Rules`__. Applicable only to Exadata systems. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + __ https://docs.oracle.com/iaas/Content/Network/Concepts/securityrules.htm + + + :param backup_network_nsg_ids: The backup_network_nsg_ids of this VmClusterDetails. + :type: list[str] + """ + self._backup_network_nsg_ids = backup_network_nsg_ids + + @property + def subscription_id(self): + """ + Gets the subscription_id of this VmClusterDetails. + The `OCID`__ of the subscription with which resource needs to be associated with. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The subscription_id of this VmClusterDetails. + :rtype: str + """ + return self._subscription_id + + @subscription_id.setter + def subscription_id(self, subscription_id): + """ + Sets the subscription_id of this VmClusterDetails. + The `OCID`__ of the subscription with which resource needs to be associated with. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param subscription_id: The subscription_id of this VmClusterDetails. + :type: str + """ + self._subscription_id = subscription_id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/work_request.py b/src/oci/distributed_database_v26/models/work_request.py new file mode 100644 index 0000000000..1d2b7432e9 --- /dev/null +++ b/src/oci/distributed_database_v26/models/work_request.py @@ -0,0 +1,540 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class WorkRequest(object): + """ + A description of workrequest status + """ + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "CREATE_DISTRIBUTED_DB" + OPERATION_TYPE_CREATE_DISTRIBUTED_DB = "CREATE_DISTRIBUTED_DB" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "PATCH_DISTRIBUTED_DB_INSERT_SHARDS" + OPERATION_TYPE_PATCH_DISTRIBUTED_DB_INSERT_SHARDS = "PATCH_DISTRIBUTED_DB_INSERT_SHARDS" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "PATCH_DISTRIBUTED_DB_REMOVE_SHARDS" + OPERATION_TYPE_PATCH_DISTRIBUTED_DB_REMOVE_SHARDS = "PATCH_DISTRIBUTED_DB_REMOVE_SHARDS" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "PATCH_DISTRIBUTED_DB_MERGE_CATALOG_SHARDS" + OPERATION_TYPE_PATCH_DISTRIBUTED_DB_MERGE_CATALOG_SHARDS = "PATCH_DISTRIBUTED_DB_MERGE_CATALOG_SHARDS" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "DELETE_DISTRIBUTED_DB" + OPERATION_TYPE_DELETE_DISTRIBUTED_DB = "DELETE_DISTRIBUTED_DB" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "CHANGE_DISTRIBUTED_DB_COMPARTMENT" + OPERATION_TYPE_CHANGE_DISTRIBUTED_DB_COMPARTMENT = "CHANGE_DISTRIBUTED_DB_COMPARTMENT" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "CONFIGURE_DISTRIBUTED_DB_GSMS" + OPERATION_TYPE_CONFIGURE_DISTRIBUTED_DB_GSMS = "CONFIGURE_DISTRIBUTED_DB_GSMS" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "CONFIGURE_DISTRIBUTED_DB_SHARDING" + OPERATION_TYPE_CONFIGURE_DISTRIBUTED_DB_SHARDING = "CONFIGURE_DISTRIBUTED_DB_SHARDING" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "ROTATE_DISTRIBUTED_DB_PASSWORDS" + OPERATION_TYPE_ROTATE_DISTRIBUTED_DB_PASSWORDS = "ROTATE_DISTRIBUTED_DB_PASSWORDS" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "START_DISTRIBUTED_DB" + OPERATION_TYPE_START_DISTRIBUTED_DB = "START_DISTRIBUTED_DB" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "STOP_DISTRIBUTED_DB" + OPERATION_TYPE_STOP_DISTRIBUTED_DB = "STOP_DISTRIBUTED_DB" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "START_DISTRIBUTED_DB_SHARD" + OPERATION_TYPE_START_DISTRIBUTED_DB_SHARD = "START_DISTRIBUTED_DB_SHARD" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "START_DISTRIBUTED_DB_CATALOG" + OPERATION_TYPE_START_DISTRIBUTED_DB_CATALOG = "START_DISTRIBUTED_DB_CATALOG" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "STOP_DISTRIBUTED_DB_SHARD" + OPERATION_TYPE_STOP_DISTRIBUTED_DB_SHARD = "STOP_DISTRIBUTED_DB_SHARD" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "STOP_DISTRIBUTED_DB_CATALOG" + OPERATION_TYPE_STOP_DISTRIBUTED_DB_CATALOG = "STOP_DISTRIBUTED_DB_CATALOG" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "CREATE_DISTRIBUTED_DB_SHARD" + OPERATION_TYPE_CREATE_DISTRIBUTED_DB_SHARD = "CREATE_DISTRIBUTED_DB_SHARD" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "CREATE_DISTRIBUTED_DB_CATALOG" + OPERATION_TYPE_CREATE_DISTRIBUTED_DB_CATALOG = "CREATE_DISTRIBUTED_DB_CATALOG" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "CREATE_DISTRIBUTED_DB_GSM" + OPERATION_TYPE_CREATE_DISTRIBUTED_DB_GSM = "CREATE_DISTRIBUTED_DB_GSM" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "UPDATE_DISTRIBUTED_DB_CATALOG_SHARDS" + OPERATION_TYPE_UPDATE_DISTRIBUTED_DB_CATALOG_SHARDS = "UPDATE_DISTRIBUTED_DB_CATALOG_SHARDS" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "VALIDATE_NETWORK" + OPERATION_TYPE_VALIDATE_NETWORK = "VALIDATE_NETWORK" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "EXECUTE_VALIDATE_NETWORK_TESTS" + OPERATION_TYPE_EXECUTE_VALIDATE_NETWORK_TESTS = "EXECUTE_VALIDATE_NETWORK_TESTS" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "CREATE_PRIVATE_ENDPOINT" + OPERATION_TYPE_CREATE_PRIVATE_ENDPOINT = "CREATE_PRIVATE_ENDPOINT" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "DELETE_PRIVATE_ENDPOINT" + OPERATION_TYPE_DELETE_PRIVATE_ENDPOINT = "DELETE_PRIVATE_ENDPOINT" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "CHANGE_PRIVATE_ENDPOINT_COMPARTMENT" + OPERATION_TYPE_CHANGE_PRIVATE_ENDPOINT_COMPARTMENT = "CHANGE_PRIVATE_ENDPOINT_COMPARTMENT" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "REINSTATE_PROXY_INSTANCE" + OPERATION_TYPE_REINSTATE_PROXY_INSTANCE = "REINSTATE_PROXY_INSTANCE" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "DELETE_DISTRIBUTED_DB_SHARD" + OPERATION_TYPE_DELETE_DISTRIBUTED_DB_SHARD = "DELETE_DISTRIBUTED_DB_SHARD" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "DELETE_DISTRIBUTED_DB_CATALOG" + OPERATION_TYPE_DELETE_DISTRIBUTED_DB_CATALOG = "DELETE_DISTRIBUTED_DB_CATALOG" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "DELETE_DISTRIBUTED_DB_GSM" + OPERATION_TYPE_DELETE_DISTRIBUTED_DB_GSM = "DELETE_DISTRIBUTED_DB_GSM" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "ADD_GDSCONTROL_NODE" + OPERATION_TYPE_ADD_GDSCONTROL_NODE = "ADD_GDSCONTROL_NODE" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "CHANGE_DISTRIBUTED_DB_BACKUP_CONFIG" + OPERATION_TYPE_CHANGE_DISTRIBUTED_DB_BACKUP_CONFIG = "CHANGE_DISTRIBUTED_DB_BACKUP_CONFIG" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "ADD_DISTRIBUTED_DB_DG_EXADB" + OPERATION_TYPE_ADD_DISTRIBUTED_DB_DG_EXADB = "ADD_DISTRIBUTED_DB_DG_EXADB" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "ADD_DISTRIBUTED_DB_DG_ADB" + OPERATION_TYPE_ADD_DISTRIBUTED_DB_DG_ADB = "ADD_DISTRIBUTED_DB_DG_ADB" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "REMOVE_DISTRIBUTED_DB_DG_ADB" + OPERATION_TYPE_REMOVE_DISTRIBUTED_DB_DG_ADB = "REMOVE_DISTRIBUTED_DB_DG_ADB" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "REMOVE_DISTRIBUTED_DB_DG_EXADB" + OPERATION_TYPE_REMOVE_DISTRIBUTED_DB_DG_EXADB = "REMOVE_DISTRIBUTED_DB_DG_EXADB" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "CONFIGURE_DISTRIBUTED_DB_GSMS_WALLET" + OPERATION_TYPE_CONFIGURE_DISTRIBUTED_DB_GSMS_WALLET = "CONFIGURE_DISTRIBUTED_DB_GSMS_WALLET" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "VALIDATE_CA_BUNDLE" + OPERATION_TYPE_VALIDATE_CA_BUNDLE = "VALIDATE_CA_BUNDLE" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "RECREATE_FAILED_RESOURCE" + OPERATION_TYPE_RECREATE_FAILED_RESOURCE = "RECREATE_FAILED_RESOURCE" + + #: A constant which can be used with the operation_type property of a WorkRequest. + #: This constant has a value of "MOVE_REPLICATION_UNITS" + OPERATION_TYPE_MOVE_REPLICATION_UNITS = "MOVE_REPLICATION_UNITS" + + #: A constant which can be used with the status property of a WorkRequest. + #: This constant has a value of "ACCEPTED" + STATUS_ACCEPTED = "ACCEPTED" + + #: A constant which can be used with the status property of a WorkRequest. + #: This constant has a value of "IN_PROGRESS" + STATUS_IN_PROGRESS = "IN_PROGRESS" + + #: A constant which can be used with the status property of a WorkRequest. + #: This constant has a value of "WAITING" + STATUS_WAITING = "WAITING" + + #: A constant which can be used with the status property of a WorkRequest. + #: This constant has a value of "FAILED" + STATUS_FAILED = "FAILED" + + #: A constant which can be used with the status property of a WorkRequest. + #: This constant has a value of "SUCCEEDED" + STATUS_SUCCEEDED = "SUCCEEDED" + + #: A constant which can be used with the status property of a WorkRequest. + #: This constant has a value of "CANCELING" + STATUS_CANCELING = "CANCELING" + + #: A constant which can be used with the status property of a WorkRequest. + #: This constant has a value of "CANCELED" + STATUS_CANCELED = "CANCELED" + + #: A constant which can be used with the status property of a WorkRequest. + #: This constant has a value of "NEEDS_ATTENTION" + STATUS_NEEDS_ATTENTION = "NEEDS_ATTENTION" + + def __init__(self, **kwargs): + """ + Initializes a new WorkRequest object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param operation_type: + The value to assign to the operation_type property of this WorkRequest. + Allowed values for this property are: "CREATE_DISTRIBUTED_DB", "PATCH_DISTRIBUTED_DB_INSERT_SHARDS", "PATCH_DISTRIBUTED_DB_REMOVE_SHARDS", "PATCH_DISTRIBUTED_DB_MERGE_CATALOG_SHARDS", "DELETE_DISTRIBUTED_DB", "CHANGE_DISTRIBUTED_DB_COMPARTMENT", "CONFIGURE_DISTRIBUTED_DB_GSMS", "CONFIGURE_DISTRIBUTED_DB_SHARDING", "ROTATE_DISTRIBUTED_DB_PASSWORDS", "START_DISTRIBUTED_DB", "STOP_DISTRIBUTED_DB", "START_DISTRIBUTED_DB_SHARD", "START_DISTRIBUTED_DB_CATALOG", "STOP_DISTRIBUTED_DB_SHARD", "STOP_DISTRIBUTED_DB_CATALOG", "CREATE_DISTRIBUTED_DB_SHARD", "CREATE_DISTRIBUTED_DB_CATALOG", "CREATE_DISTRIBUTED_DB_GSM", "UPDATE_DISTRIBUTED_DB_CATALOG_SHARDS", "VALIDATE_NETWORK", "EXECUTE_VALIDATE_NETWORK_TESTS", "CREATE_PRIVATE_ENDPOINT", "DELETE_PRIVATE_ENDPOINT", "CHANGE_PRIVATE_ENDPOINT_COMPARTMENT", "REINSTATE_PROXY_INSTANCE", "DELETE_DISTRIBUTED_DB_SHARD", "DELETE_DISTRIBUTED_DB_CATALOG", "DELETE_DISTRIBUTED_DB_GSM", "ADD_GDSCONTROL_NODE", "CHANGE_DISTRIBUTED_DB_BACKUP_CONFIG", "ADD_DISTRIBUTED_DB_DG_EXADB", "ADD_DISTRIBUTED_DB_DG_ADB", "REMOVE_DISTRIBUTED_DB_DG_ADB", "REMOVE_DISTRIBUTED_DB_DG_EXADB", "CONFIGURE_DISTRIBUTED_DB_GSMS_WALLET", "VALIDATE_CA_BUNDLE", "RECREATE_FAILED_RESOURCE", "MOVE_REPLICATION_UNITS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type operation_type: str + + :param status: + The value to assign to the status property of this WorkRequest. + Allowed values for this property are: "ACCEPTED", "IN_PROGRESS", "WAITING", "FAILED", "SUCCEEDED", "CANCELING", "CANCELED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type status: str + + :param id: + The value to assign to the id property of this WorkRequest. + :type id: str + + :param compartment_id: + The value to assign to the compartment_id property of this WorkRequest. + :type compartment_id: str + + :param resources: + The value to assign to the resources property of this WorkRequest. + :type resources: list[oci.distributed_database_v26.models.WorkRequestResource] + + :param percent_complete: + The value to assign to the percent_complete property of this WorkRequest. + :type percent_complete: float + + :param time_accepted: + The value to assign to the time_accepted property of this WorkRequest. + :type time_accepted: datetime + + :param time_started: + The value to assign to the time_started property of this WorkRequest. + :type time_started: datetime + + :param time_finished: + The value to assign to the time_finished property of this WorkRequest. + :type time_finished: datetime + + """ + self.swagger_types = { + 'operation_type': 'str', + 'status': 'str', + 'id': 'str', + 'compartment_id': 'str', + 'resources': 'list[WorkRequestResource]', + 'percent_complete': 'float', + 'time_accepted': 'datetime', + 'time_started': 'datetime', + 'time_finished': 'datetime' + } + self.attribute_map = { + 'operation_type': 'operationType', + 'status': 'status', + 'id': 'id', + 'compartment_id': 'compartmentId', + 'resources': 'resources', + 'percent_complete': 'percentComplete', + 'time_accepted': 'timeAccepted', + 'time_started': 'timeStarted', + 'time_finished': 'timeFinished' + } + self._operation_type = None + self._status = None + self._id = None + self._compartment_id = None + self._resources = None + self._percent_complete = None + self._time_accepted = None + self._time_started = None + self._time_finished = None + + @property + def operation_type(self): + """ + **[Required]** Gets the operation_type of this WorkRequest. + Type of the work request + + Allowed values for this property are: "CREATE_DISTRIBUTED_DB", "PATCH_DISTRIBUTED_DB_INSERT_SHARDS", "PATCH_DISTRIBUTED_DB_REMOVE_SHARDS", "PATCH_DISTRIBUTED_DB_MERGE_CATALOG_SHARDS", "DELETE_DISTRIBUTED_DB", "CHANGE_DISTRIBUTED_DB_COMPARTMENT", "CONFIGURE_DISTRIBUTED_DB_GSMS", "CONFIGURE_DISTRIBUTED_DB_SHARDING", "ROTATE_DISTRIBUTED_DB_PASSWORDS", "START_DISTRIBUTED_DB", "STOP_DISTRIBUTED_DB", "START_DISTRIBUTED_DB_SHARD", "START_DISTRIBUTED_DB_CATALOG", "STOP_DISTRIBUTED_DB_SHARD", "STOP_DISTRIBUTED_DB_CATALOG", "CREATE_DISTRIBUTED_DB_SHARD", "CREATE_DISTRIBUTED_DB_CATALOG", "CREATE_DISTRIBUTED_DB_GSM", "UPDATE_DISTRIBUTED_DB_CATALOG_SHARDS", "VALIDATE_NETWORK", "EXECUTE_VALIDATE_NETWORK_TESTS", "CREATE_PRIVATE_ENDPOINT", "DELETE_PRIVATE_ENDPOINT", "CHANGE_PRIVATE_ENDPOINT_COMPARTMENT", "REINSTATE_PROXY_INSTANCE", "DELETE_DISTRIBUTED_DB_SHARD", "DELETE_DISTRIBUTED_DB_CATALOG", "DELETE_DISTRIBUTED_DB_GSM", "ADD_GDSCONTROL_NODE", "CHANGE_DISTRIBUTED_DB_BACKUP_CONFIG", "ADD_DISTRIBUTED_DB_DG_EXADB", "ADD_DISTRIBUTED_DB_DG_ADB", "REMOVE_DISTRIBUTED_DB_DG_ADB", "REMOVE_DISTRIBUTED_DB_DG_EXADB", "CONFIGURE_DISTRIBUTED_DB_GSMS_WALLET", "VALIDATE_CA_BUNDLE", "RECREATE_FAILED_RESOURCE", "MOVE_REPLICATION_UNITS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The operation_type of this WorkRequest. + :rtype: str + """ + return self._operation_type + + @operation_type.setter + def operation_type(self, operation_type): + """ + Sets the operation_type of this WorkRequest. + Type of the work request + + + :param operation_type: The operation_type of this WorkRequest. + :type: str + """ + allowed_values = ["CREATE_DISTRIBUTED_DB", "PATCH_DISTRIBUTED_DB_INSERT_SHARDS", "PATCH_DISTRIBUTED_DB_REMOVE_SHARDS", "PATCH_DISTRIBUTED_DB_MERGE_CATALOG_SHARDS", "DELETE_DISTRIBUTED_DB", "CHANGE_DISTRIBUTED_DB_COMPARTMENT", "CONFIGURE_DISTRIBUTED_DB_GSMS", "CONFIGURE_DISTRIBUTED_DB_SHARDING", "ROTATE_DISTRIBUTED_DB_PASSWORDS", "START_DISTRIBUTED_DB", "STOP_DISTRIBUTED_DB", "START_DISTRIBUTED_DB_SHARD", "START_DISTRIBUTED_DB_CATALOG", "STOP_DISTRIBUTED_DB_SHARD", "STOP_DISTRIBUTED_DB_CATALOG", "CREATE_DISTRIBUTED_DB_SHARD", "CREATE_DISTRIBUTED_DB_CATALOG", "CREATE_DISTRIBUTED_DB_GSM", "UPDATE_DISTRIBUTED_DB_CATALOG_SHARDS", "VALIDATE_NETWORK", "EXECUTE_VALIDATE_NETWORK_TESTS", "CREATE_PRIVATE_ENDPOINT", "DELETE_PRIVATE_ENDPOINT", "CHANGE_PRIVATE_ENDPOINT_COMPARTMENT", "REINSTATE_PROXY_INSTANCE", "DELETE_DISTRIBUTED_DB_SHARD", "DELETE_DISTRIBUTED_DB_CATALOG", "DELETE_DISTRIBUTED_DB_GSM", "ADD_GDSCONTROL_NODE", "CHANGE_DISTRIBUTED_DB_BACKUP_CONFIG", "ADD_DISTRIBUTED_DB_DG_EXADB", "ADD_DISTRIBUTED_DB_DG_ADB", "REMOVE_DISTRIBUTED_DB_DG_ADB", "REMOVE_DISTRIBUTED_DB_DG_EXADB", "CONFIGURE_DISTRIBUTED_DB_GSMS_WALLET", "VALIDATE_CA_BUNDLE", "RECREATE_FAILED_RESOURCE", "MOVE_REPLICATION_UNITS"] + if not value_allowed_none_or_none_sentinel(operation_type, allowed_values): + operation_type = 'UNKNOWN_ENUM_VALUE' + self._operation_type = operation_type + + @property + def status(self): + """ + **[Required]** Gets the status of this WorkRequest. + Status of current work request. + + Allowed values for this property are: "ACCEPTED", "IN_PROGRESS", "WAITING", "FAILED", "SUCCEEDED", "CANCELING", "CANCELED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The status of this WorkRequest. + :rtype: str + """ + return self._status + + @status.setter + def status(self, status): + """ + Sets the status of this WorkRequest. + Status of current work request. + + + :param status: The status of this WorkRequest. + :type: str + """ + allowed_values = ["ACCEPTED", "IN_PROGRESS", "WAITING", "FAILED", "SUCCEEDED", "CANCELING", "CANCELED", "NEEDS_ATTENTION"] + if not value_allowed_none_or_none_sentinel(status, allowed_values): + status = 'UNKNOWN_ENUM_VALUE' + self._status = status + + @property + def id(self): + """ + **[Required]** Gets the id of this WorkRequest. + The id of the work request. + + + :return: The id of this WorkRequest. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this WorkRequest. + The id of the work request. + + + :param id: The id of this WorkRequest. + :type: str + """ + self._id = id + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this WorkRequest. + The ocid of the compartment that contains the work request. Work requests should be scoped to + the same compartment as the resource the work request affects. If the work request affects multiple resources, + and those resources are not in the same compartment, it is up to the service team to pick the primary + resource whose compartment should be used + + + :return: The compartment_id of this WorkRequest. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this WorkRequest. + The ocid of the compartment that contains the work request. Work requests should be scoped to + the same compartment as the resource the work request affects. If the work request affects multiple resources, + and those resources are not in the same compartment, it is up to the service team to pick the primary + resource whose compartment should be used + + + :param compartment_id: The compartment_id of this WorkRequest. + :type: str + """ + self._compartment_id = compartment_id + + @property + def resources(self): + """ + **[Required]** Gets the resources of this WorkRequest. + The resources affected by this work request. + + + :return: The resources of this WorkRequest. + :rtype: list[oci.distributed_database_v26.models.WorkRequestResource] + """ + return self._resources + + @resources.setter + def resources(self, resources): + """ + Sets the resources of this WorkRequest. + The resources affected by this work request. + + + :param resources: The resources of this WorkRequest. + :type: list[oci.distributed_database_v26.models.WorkRequestResource] + """ + self._resources = resources + + @property + def percent_complete(self): + """ + **[Required]** Gets the percent_complete of this WorkRequest. + Percentage of the request completed. + + + :return: The percent_complete of this WorkRequest. + :rtype: float + """ + return self._percent_complete + + @percent_complete.setter + def percent_complete(self, percent_complete): + """ + Sets the percent_complete of this WorkRequest. + Percentage of the request completed. + + + :param percent_complete: The percent_complete of this WorkRequest. + :type: float + """ + self._percent_complete = percent_complete + + @property + def time_accepted(self): + """ + **[Required]** Gets the time_accepted of this WorkRequest. + The date and time the request was created, as described in + `RFC 3339`__, section 14.29. + + __ https://tools.ietf.org/rfc/rfc3339 + + + :return: The time_accepted of this WorkRequest. + :rtype: datetime + """ + return self._time_accepted + + @time_accepted.setter + def time_accepted(self, time_accepted): + """ + Sets the time_accepted of this WorkRequest. + The date and time the request was created, as described in + `RFC 3339`__, section 14.29. + + __ https://tools.ietf.org/rfc/rfc3339 + + + :param time_accepted: The time_accepted of this WorkRequest. + :type: datetime + """ + self._time_accepted = time_accepted + + @property + def time_started(self): + """ + Gets the time_started of this WorkRequest. + The date and time the request was started, as described in `RFC 3339`__, + section 14.29. + + __ https://tools.ietf.org/rfc/rfc3339 + + + :return: The time_started of this WorkRequest. + :rtype: datetime + """ + return self._time_started + + @time_started.setter + def time_started(self, time_started): + """ + Sets the time_started of this WorkRequest. + The date and time the request was started, as described in `RFC 3339`__, + section 14.29. + + __ https://tools.ietf.org/rfc/rfc3339 + + + :param time_started: The time_started of this WorkRequest. + :type: datetime + """ + self._time_started = time_started + + @property + def time_finished(self): + """ + Gets the time_finished of this WorkRequest. + The date and time the object was finished, as described in `RFC 3339`__. + + __ https://tools.ietf.org/rfc/rfc3339 + + + :return: The time_finished of this WorkRequest. + :rtype: datetime + """ + return self._time_finished + + @time_finished.setter + def time_finished(self, time_finished): + """ + Sets the time_finished of this WorkRequest. + The date and time the object was finished, as described in `RFC 3339`__. + + __ https://tools.ietf.org/rfc/rfc3339 + + + :param time_finished: The time_finished of this WorkRequest. + :type: datetime + """ + self._time_finished = time_finished + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/work_request_error.py b/src/oci/distributed_database_v26/models/work_request_error.py new file mode 100644 index 0000000000..8c0672197c --- /dev/null +++ b/src/oci/distributed_database_v26/models/work_request_error.py @@ -0,0 +1,134 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class WorkRequestError(object): + """ + An error encountered while executing a work request. + """ + + def __init__(self, **kwargs): + """ + Initializes a new WorkRequestError object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param code: + The value to assign to the code property of this WorkRequestError. + :type code: str + + :param message: + The value to assign to the message property of this WorkRequestError. + :type message: str + + :param timestamp: + The value to assign to the timestamp property of this WorkRequestError. + :type timestamp: datetime + + """ + self.swagger_types = { + 'code': 'str', + 'message': 'str', + 'timestamp': 'datetime' + } + self.attribute_map = { + 'code': 'code', + 'message': 'message', + 'timestamp': 'timestamp' + } + self._code = None + self._message = None + self._timestamp = None + + @property + def code(self): + """ + **[Required]** Gets the code of this WorkRequestError. + A machine-usable code for the error that occured. Error codes are listed on + (https://docs.oracle.com/iaas/Content/API/References/apierrors.htm) + + + :return: The code of this WorkRequestError. + :rtype: str + """ + return self._code + + @code.setter + def code(self, code): + """ + Sets the code of this WorkRequestError. + A machine-usable code for the error that occured. Error codes are listed on + (https://docs.oracle.com/iaas/Content/API/References/apierrors.htm) + + + :param code: The code of this WorkRequestError. + :type: str + """ + self._code = code + + @property + def message(self): + """ + **[Required]** Gets the message of this WorkRequestError. + A human readable description of the issue encountered. + + + :return: The message of this WorkRequestError. + :rtype: str + """ + return self._message + + @message.setter + def message(self, message): + """ + Sets the message of this WorkRequestError. + A human readable description of the issue encountered. + + + :param message: The message of this WorkRequestError. + :type: str + """ + self._message = message + + @property + def timestamp(self): + """ + **[Required]** Gets the timestamp of this WorkRequestError. + The time the error occured. An RFC3339 formatted datetime string. + + + :return: The timestamp of this WorkRequestError. + :rtype: datetime + """ + return self._timestamp + + @timestamp.setter + def timestamp(self, timestamp): + """ + Sets the timestamp of this WorkRequestError. + The time the error occured. An RFC3339 formatted datetime string. + + + :param timestamp: The timestamp of this WorkRequestError. + :type: datetime + """ + self._timestamp = timestamp + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/work_request_error_collection.py b/src/oci/distributed_database_v26/models/work_request_error_collection.py new file mode 100644 index 0000000000..6d37b130c1 --- /dev/null +++ b/src/oci/distributed_database_v26/models/work_request_error_collection.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class WorkRequestErrorCollection(object): + """ + Results of a workRequestError search. Contains both WorkRequestError items and other information, such as metadata. + """ + + def __init__(self, **kwargs): + """ + Initializes a new WorkRequestErrorCollection object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this WorkRequestErrorCollection. + :type items: list[oci.distributed_database_v26.models.WorkRequestError] + + """ + self.swagger_types = { + 'items': 'list[WorkRequestError]' + } + self.attribute_map = { + 'items': 'items' + } + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this WorkRequestErrorCollection. + List of workRequestError objects. + + + :return: The items of this WorkRequestErrorCollection. + :rtype: list[oci.distributed_database_v26.models.WorkRequestError] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this WorkRequestErrorCollection. + List of workRequestError objects. + + + :param items: The items of this WorkRequestErrorCollection. + :type: list[oci.distributed_database_v26.models.WorkRequestError] + """ + self._items = items + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/work_request_log_entry.py b/src/oci/distributed_database_v26/models/work_request_log_entry.py new file mode 100644 index 0000000000..526549e86e --- /dev/null +++ b/src/oci/distributed_database_v26/models/work_request_log_entry.py @@ -0,0 +1,101 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class WorkRequestLogEntry(object): + """ + A log message from the execution of a work request. + """ + + def __init__(self, **kwargs): + """ + Initializes a new WorkRequestLogEntry object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param message: + The value to assign to the message property of this WorkRequestLogEntry. + :type message: str + + :param timestamp: + The value to assign to the timestamp property of this WorkRequestLogEntry. + :type timestamp: datetime + + """ + self.swagger_types = { + 'message': 'str', + 'timestamp': 'datetime' + } + self.attribute_map = { + 'message': 'message', + 'timestamp': 'timestamp' + } + self._message = None + self._timestamp = None + + @property + def message(self): + """ + **[Required]** Gets the message of this WorkRequestLogEntry. + Human-readable log message. + + + :return: The message of this WorkRequestLogEntry. + :rtype: str + """ + return self._message + + @message.setter + def message(self, message): + """ + Sets the message of this WorkRequestLogEntry. + Human-readable log message. + + + :param message: The message of this WorkRequestLogEntry. + :type: str + """ + self._message = message + + @property + def timestamp(self): + """ + **[Required]** Gets the timestamp of this WorkRequestLogEntry. + The time the log message was written. An RFC3339 formatted datetime string + + + :return: The timestamp of this WorkRequestLogEntry. + :rtype: datetime + """ + return self._timestamp + + @timestamp.setter + def timestamp(self, timestamp): + """ + Sets the timestamp of this WorkRequestLogEntry. + The time the log message was written. An RFC3339 formatted datetime string + + + :param timestamp: The timestamp of this WorkRequestLogEntry. + :type: datetime + """ + self._timestamp = timestamp + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/work_request_log_entry_collection.py b/src/oci/distributed_database_v26/models/work_request_log_entry_collection.py new file mode 100644 index 0000000000..0975c9705d --- /dev/null +++ b/src/oci/distributed_database_v26/models/work_request_log_entry_collection.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class WorkRequestLogEntryCollection(object): + """ + Results of a workRequestLog search. Contains both workRequestLog items and other information, such as metadata. + """ + + def __init__(self, **kwargs): + """ + Initializes a new WorkRequestLogEntryCollection object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this WorkRequestLogEntryCollection. + :type items: list[oci.distributed_database_v26.models.WorkRequestLogEntry] + + """ + self.swagger_types = { + 'items': 'list[WorkRequestLogEntry]' + } + self.attribute_map = { + 'items': 'items' + } + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this WorkRequestLogEntryCollection. + List of workRequestLogEntries. + + + :return: The items of this WorkRequestLogEntryCollection. + :rtype: list[oci.distributed_database_v26.models.WorkRequestLogEntry] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this WorkRequestLogEntryCollection. + List of workRequestLogEntries. + + + :param items: The items of this WorkRequestLogEntryCollection. + :type: list[oci.distributed_database_v26.models.WorkRequestLogEntry] + """ + self._items = items + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/work_request_resource.py b/src/oci/distributed_database_v26/models/work_request_resource.py new file mode 100644 index 0000000000..9a89d122d0 --- /dev/null +++ b/src/oci/distributed_database_v26/models/work_request_resource.py @@ -0,0 +1,232 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class WorkRequestResource(object): + """ + A resource created or operated on by a work request. + """ + + #: A constant which can be used with the action_type property of a WorkRequestResource. + #: This constant has a value of "CREATED" + ACTION_TYPE_CREATED = "CREATED" + + #: A constant which can be used with the action_type property of a WorkRequestResource. + #: This constant has a value of "UPDATED" + ACTION_TYPE_UPDATED = "UPDATED" + + #: A constant which can be used with the action_type property of a WorkRequestResource. + #: This constant has a value of "DELETED" + ACTION_TYPE_DELETED = "DELETED" + + #: A constant which can be used with the action_type property of a WorkRequestResource. + #: This constant has a value of "IN_PROGRESS" + ACTION_TYPE_IN_PROGRESS = "IN_PROGRESS" + + #: A constant which can be used with the action_type property of a WorkRequestResource. + #: This constant has a value of "RELATED" + ACTION_TYPE_RELATED = "RELATED" + + #: A constant which can be used with the action_type property of a WorkRequestResource. + #: This constant has a value of "FAILED" + ACTION_TYPE_FAILED = "FAILED" + + def __init__(self, **kwargs): + """ + Initializes a new WorkRequestResource object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param entity_type: + The value to assign to the entity_type property of this WorkRequestResource. + :type entity_type: str + + :param action_type: + The value to assign to the action_type property of this WorkRequestResource. + Allowed values for this property are: "CREATED", "UPDATED", "DELETED", "IN_PROGRESS", "RELATED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type action_type: str + + :param identifier: + The value to assign to the identifier property of this WorkRequestResource. + :type identifier: str + + :param entity_uri: + The value to assign to the entity_uri property of this WorkRequestResource. + :type entity_uri: str + + :param metadata: + The value to assign to the metadata property of this WorkRequestResource. + :type metadata: dict(str, str) + + """ + self.swagger_types = { + 'entity_type': 'str', + 'action_type': 'str', + 'identifier': 'str', + 'entity_uri': 'str', + 'metadata': 'dict(str, str)' + } + self.attribute_map = { + 'entity_type': 'entityType', + 'action_type': 'actionType', + 'identifier': 'identifier', + 'entity_uri': 'entityUri', + 'metadata': 'metadata' + } + self._entity_type = None + self._action_type = None + self._identifier = None + self._entity_uri = None + self._metadata = None + + @property + def entity_type(self): + """ + **[Required]** Gets the entity_type of this WorkRequestResource. + The resource type the work request affects. + + + :return: The entity_type of this WorkRequestResource. + :rtype: str + """ + return self._entity_type + + @entity_type.setter + def entity_type(self, entity_type): + """ + Sets the entity_type of this WorkRequestResource. + The resource type the work request affects. + + + :param entity_type: The entity_type of this WorkRequestResource. + :type: str + """ + self._entity_type = entity_type + + @property + def action_type(self): + """ + **[Required]** Gets the action_type of this WorkRequestResource. + The way in which this resource is affected by the work tracked in the work request. + A resource being created, updated, or deleted will remain in the IN_PROGRESS state until + work is complete for that resource at which point it will transition to CREATED, UPDATED, + or DELETED, respectively. + + Allowed values for this property are: "CREATED", "UPDATED", "DELETED", "IN_PROGRESS", "RELATED", "FAILED", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The action_type of this WorkRequestResource. + :rtype: str + """ + return self._action_type + + @action_type.setter + def action_type(self, action_type): + """ + Sets the action_type of this WorkRequestResource. + The way in which this resource is affected by the work tracked in the work request. + A resource being created, updated, or deleted will remain in the IN_PROGRESS state until + work is complete for that resource at which point it will transition to CREATED, UPDATED, + or DELETED, respectively. + + + :param action_type: The action_type of this WorkRequestResource. + :type: str + """ + allowed_values = ["CREATED", "UPDATED", "DELETED", "IN_PROGRESS", "RELATED", "FAILED"] + if not value_allowed_none_or_none_sentinel(action_type, allowed_values): + action_type = 'UNKNOWN_ENUM_VALUE' + self._action_type = action_type + + @property + def identifier(self): + """ + **[Required]** Gets the identifier of this WorkRequestResource. + The identifier of the resource the work request affects. + + + :return: The identifier of this WorkRequestResource. + :rtype: str + """ + return self._identifier + + @identifier.setter + def identifier(self, identifier): + """ + Sets the identifier of this WorkRequestResource. + The identifier of the resource the work request affects. + + + :param identifier: The identifier of this WorkRequestResource. + :type: str + """ + self._identifier = identifier + + @property + def entity_uri(self): + """ + Gets the entity_uri of this WorkRequestResource. + The URI path that the user can do a GET on to access the resource metadata + + + :return: The entity_uri of this WorkRequestResource. + :rtype: str + """ + return self._entity_uri + + @entity_uri.setter + def entity_uri(self, entity_uri): + """ + Sets the entity_uri of this WorkRequestResource. + The URI path that the user can do a GET on to access the resource metadata + + + :param entity_uri: The entity_uri of this WorkRequestResource. + :type: str + """ + self._entity_uri = entity_uri + + @property + def metadata(self): + """ + Gets the metadata of this WorkRequestResource. + Additional information that helps to explain the resource. + + + :return: The metadata of this WorkRequestResource. + :rtype: dict(str, str) + """ + return self._metadata + + @metadata.setter + def metadata(self, metadata): + """ + Sets the metadata of this WorkRequestResource. + Additional information that helps to explain the resource. + + + :param metadata: The metadata of this WorkRequestResource. + :type: dict(str, str) + """ + self._metadata = metadata + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/work_request_summary.py b/src/oci/distributed_database_v26/models/work_request_summary.py new file mode 100644 index 0000000000..35061935ac --- /dev/null +++ b/src/oci/distributed_database_v26/models/work_request_summary.py @@ -0,0 +1,540 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class WorkRequestSummary(object): + """ + A summary of the status of a work request. + """ + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "CREATE_DISTRIBUTED_DB" + OPERATION_TYPE_CREATE_DISTRIBUTED_DB = "CREATE_DISTRIBUTED_DB" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "PATCH_DISTRIBUTED_DB_INSERT_SHARDS" + OPERATION_TYPE_PATCH_DISTRIBUTED_DB_INSERT_SHARDS = "PATCH_DISTRIBUTED_DB_INSERT_SHARDS" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "PATCH_DISTRIBUTED_DB_REMOVE_SHARDS" + OPERATION_TYPE_PATCH_DISTRIBUTED_DB_REMOVE_SHARDS = "PATCH_DISTRIBUTED_DB_REMOVE_SHARDS" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "PATCH_DISTRIBUTED_DB_MERGE_CATALOG_SHARDS" + OPERATION_TYPE_PATCH_DISTRIBUTED_DB_MERGE_CATALOG_SHARDS = "PATCH_DISTRIBUTED_DB_MERGE_CATALOG_SHARDS" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "DELETE_DISTRIBUTED_DB" + OPERATION_TYPE_DELETE_DISTRIBUTED_DB = "DELETE_DISTRIBUTED_DB" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "CHANGE_DISTRIBUTED_DB_COMPARTMENT" + OPERATION_TYPE_CHANGE_DISTRIBUTED_DB_COMPARTMENT = "CHANGE_DISTRIBUTED_DB_COMPARTMENT" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "CONFIGURE_DISTRIBUTED_DB_GSMS" + OPERATION_TYPE_CONFIGURE_DISTRIBUTED_DB_GSMS = "CONFIGURE_DISTRIBUTED_DB_GSMS" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "CONFIGURE_DISTRIBUTED_DB_SHARDING" + OPERATION_TYPE_CONFIGURE_DISTRIBUTED_DB_SHARDING = "CONFIGURE_DISTRIBUTED_DB_SHARDING" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "ROTATE_DISTRIBUTED_DB_PASSWORDS" + OPERATION_TYPE_ROTATE_DISTRIBUTED_DB_PASSWORDS = "ROTATE_DISTRIBUTED_DB_PASSWORDS" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "START_DISTRIBUTED_DB" + OPERATION_TYPE_START_DISTRIBUTED_DB = "START_DISTRIBUTED_DB" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "STOP_DISTRIBUTED_DB" + OPERATION_TYPE_STOP_DISTRIBUTED_DB = "STOP_DISTRIBUTED_DB" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "START_DISTRIBUTED_DB_SHARD" + OPERATION_TYPE_START_DISTRIBUTED_DB_SHARD = "START_DISTRIBUTED_DB_SHARD" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "START_DISTRIBUTED_DB_CATALOG" + OPERATION_TYPE_START_DISTRIBUTED_DB_CATALOG = "START_DISTRIBUTED_DB_CATALOG" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "STOP_DISTRIBUTED_DB_SHARD" + OPERATION_TYPE_STOP_DISTRIBUTED_DB_SHARD = "STOP_DISTRIBUTED_DB_SHARD" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "STOP_DISTRIBUTED_DB_CATALOG" + OPERATION_TYPE_STOP_DISTRIBUTED_DB_CATALOG = "STOP_DISTRIBUTED_DB_CATALOG" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "CREATE_DISTRIBUTED_DB_SHARD" + OPERATION_TYPE_CREATE_DISTRIBUTED_DB_SHARD = "CREATE_DISTRIBUTED_DB_SHARD" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "CREATE_DISTRIBUTED_DB_CATALOG" + OPERATION_TYPE_CREATE_DISTRIBUTED_DB_CATALOG = "CREATE_DISTRIBUTED_DB_CATALOG" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "CREATE_DISTRIBUTED_DB_GSM" + OPERATION_TYPE_CREATE_DISTRIBUTED_DB_GSM = "CREATE_DISTRIBUTED_DB_GSM" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "UPDATE_DISTRIBUTED_DB_CATALOG_SHARDS" + OPERATION_TYPE_UPDATE_DISTRIBUTED_DB_CATALOG_SHARDS = "UPDATE_DISTRIBUTED_DB_CATALOG_SHARDS" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "VALIDATE_NETWORK" + OPERATION_TYPE_VALIDATE_NETWORK = "VALIDATE_NETWORK" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "EXECUTE_VALIDATE_NETWORK_TESTS" + OPERATION_TYPE_EXECUTE_VALIDATE_NETWORK_TESTS = "EXECUTE_VALIDATE_NETWORK_TESTS" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "CREATE_PRIVATE_ENDPOINT" + OPERATION_TYPE_CREATE_PRIVATE_ENDPOINT = "CREATE_PRIVATE_ENDPOINT" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "DELETE_PRIVATE_ENDPOINT" + OPERATION_TYPE_DELETE_PRIVATE_ENDPOINT = "DELETE_PRIVATE_ENDPOINT" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "CHANGE_PRIVATE_ENDPOINT_COMPARTMENT" + OPERATION_TYPE_CHANGE_PRIVATE_ENDPOINT_COMPARTMENT = "CHANGE_PRIVATE_ENDPOINT_COMPARTMENT" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "REINSTATE_PROXY_INSTANCE" + OPERATION_TYPE_REINSTATE_PROXY_INSTANCE = "REINSTATE_PROXY_INSTANCE" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "DELETE_DISTRIBUTED_DB_SHARD" + OPERATION_TYPE_DELETE_DISTRIBUTED_DB_SHARD = "DELETE_DISTRIBUTED_DB_SHARD" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "DELETE_DISTRIBUTED_DB_CATALOG" + OPERATION_TYPE_DELETE_DISTRIBUTED_DB_CATALOG = "DELETE_DISTRIBUTED_DB_CATALOG" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "DELETE_DISTRIBUTED_DB_GSM" + OPERATION_TYPE_DELETE_DISTRIBUTED_DB_GSM = "DELETE_DISTRIBUTED_DB_GSM" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "ADD_GDSCONTROL_NODE" + OPERATION_TYPE_ADD_GDSCONTROL_NODE = "ADD_GDSCONTROL_NODE" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "CHANGE_DISTRIBUTED_DB_BACKUP_CONFIG" + OPERATION_TYPE_CHANGE_DISTRIBUTED_DB_BACKUP_CONFIG = "CHANGE_DISTRIBUTED_DB_BACKUP_CONFIG" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "ADD_DISTRIBUTED_DB_DG_EXADB" + OPERATION_TYPE_ADD_DISTRIBUTED_DB_DG_EXADB = "ADD_DISTRIBUTED_DB_DG_EXADB" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "ADD_DISTRIBUTED_DB_DG_ADB" + OPERATION_TYPE_ADD_DISTRIBUTED_DB_DG_ADB = "ADD_DISTRIBUTED_DB_DG_ADB" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "REMOVE_DISTRIBUTED_DB_DG_ADB" + OPERATION_TYPE_REMOVE_DISTRIBUTED_DB_DG_ADB = "REMOVE_DISTRIBUTED_DB_DG_ADB" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "REMOVE_DISTRIBUTED_DB_DG_EXADB" + OPERATION_TYPE_REMOVE_DISTRIBUTED_DB_DG_EXADB = "REMOVE_DISTRIBUTED_DB_DG_EXADB" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "CONFIGURE_DISTRIBUTED_DB_GSMS_WALLET" + OPERATION_TYPE_CONFIGURE_DISTRIBUTED_DB_GSMS_WALLET = "CONFIGURE_DISTRIBUTED_DB_GSMS_WALLET" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "VALIDATE_CA_BUNDLE" + OPERATION_TYPE_VALIDATE_CA_BUNDLE = "VALIDATE_CA_BUNDLE" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "RECREATE_FAILED_RESOURCE" + OPERATION_TYPE_RECREATE_FAILED_RESOURCE = "RECREATE_FAILED_RESOURCE" + + #: A constant which can be used with the operation_type property of a WorkRequestSummary. + #: This constant has a value of "MOVE_REPLICATION_UNITS" + OPERATION_TYPE_MOVE_REPLICATION_UNITS = "MOVE_REPLICATION_UNITS" + + #: A constant which can be used with the status property of a WorkRequestSummary. + #: This constant has a value of "ACCEPTED" + STATUS_ACCEPTED = "ACCEPTED" + + #: A constant which can be used with the status property of a WorkRequestSummary. + #: This constant has a value of "IN_PROGRESS" + STATUS_IN_PROGRESS = "IN_PROGRESS" + + #: A constant which can be used with the status property of a WorkRequestSummary. + #: This constant has a value of "WAITING" + STATUS_WAITING = "WAITING" + + #: A constant which can be used with the status property of a WorkRequestSummary. + #: This constant has a value of "FAILED" + STATUS_FAILED = "FAILED" + + #: A constant which can be used with the status property of a WorkRequestSummary. + #: This constant has a value of "SUCCEEDED" + STATUS_SUCCEEDED = "SUCCEEDED" + + #: A constant which can be used with the status property of a WorkRequestSummary. + #: This constant has a value of "CANCELING" + STATUS_CANCELING = "CANCELING" + + #: A constant which can be used with the status property of a WorkRequestSummary. + #: This constant has a value of "CANCELED" + STATUS_CANCELED = "CANCELED" + + #: A constant which can be used with the status property of a WorkRequestSummary. + #: This constant has a value of "NEEDS_ATTENTION" + STATUS_NEEDS_ATTENTION = "NEEDS_ATTENTION" + + def __init__(self, **kwargs): + """ + Initializes a new WorkRequestSummary object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param operation_type: + The value to assign to the operation_type property of this WorkRequestSummary. + Allowed values for this property are: "CREATE_DISTRIBUTED_DB", "PATCH_DISTRIBUTED_DB_INSERT_SHARDS", "PATCH_DISTRIBUTED_DB_REMOVE_SHARDS", "PATCH_DISTRIBUTED_DB_MERGE_CATALOG_SHARDS", "DELETE_DISTRIBUTED_DB", "CHANGE_DISTRIBUTED_DB_COMPARTMENT", "CONFIGURE_DISTRIBUTED_DB_GSMS", "CONFIGURE_DISTRIBUTED_DB_SHARDING", "ROTATE_DISTRIBUTED_DB_PASSWORDS", "START_DISTRIBUTED_DB", "STOP_DISTRIBUTED_DB", "START_DISTRIBUTED_DB_SHARD", "START_DISTRIBUTED_DB_CATALOG", "STOP_DISTRIBUTED_DB_SHARD", "STOP_DISTRIBUTED_DB_CATALOG", "CREATE_DISTRIBUTED_DB_SHARD", "CREATE_DISTRIBUTED_DB_CATALOG", "CREATE_DISTRIBUTED_DB_GSM", "UPDATE_DISTRIBUTED_DB_CATALOG_SHARDS", "VALIDATE_NETWORK", "EXECUTE_VALIDATE_NETWORK_TESTS", "CREATE_PRIVATE_ENDPOINT", "DELETE_PRIVATE_ENDPOINT", "CHANGE_PRIVATE_ENDPOINT_COMPARTMENT", "REINSTATE_PROXY_INSTANCE", "DELETE_DISTRIBUTED_DB_SHARD", "DELETE_DISTRIBUTED_DB_CATALOG", "DELETE_DISTRIBUTED_DB_GSM", "ADD_GDSCONTROL_NODE", "CHANGE_DISTRIBUTED_DB_BACKUP_CONFIG", "ADD_DISTRIBUTED_DB_DG_EXADB", "ADD_DISTRIBUTED_DB_DG_ADB", "REMOVE_DISTRIBUTED_DB_DG_ADB", "REMOVE_DISTRIBUTED_DB_DG_EXADB", "CONFIGURE_DISTRIBUTED_DB_GSMS_WALLET", "VALIDATE_CA_BUNDLE", "RECREATE_FAILED_RESOURCE", "MOVE_REPLICATION_UNITS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type operation_type: str + + :param status: + The value to assign to the status property of this WorkRequestSummary. + Allowed values for this property are: "ACCEPTED", "IN_PROGRESS", "WAITING", "FAILED", "SUCCEEDED", "CANCELING", "CANCELED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type status: str + + :param id: + The value to assign to the id property of this WorkRequestSummary. + :type id: str + + :param compartment_id: + The value to assign to the compartment_id property of this WorkRequestSummary. + :type compartment_id: str + + :param resources: + The value to assign to the resources property of this WorkRequestSummary. + :type resources: list[oci.distributed_database_v26.models.WorkRequestResource] + + :param percent_complete: + The value to assign to the percent_complete property of this WorkRequestSummary. + :type percent_complete: float + + :param time_accepted: + The value to assign to the time_accepted property of this WorkRequestSummary. + :type time_accepted: datetime + + :param time_started: + The value to assign to the time_started property of this WorkRequestSummary. + :type time_started: datetime + + :param time_finished: + The value to assign to the time_finished property of this WorkRequestSummary. + :type time_finished: datetime + + """ + self.swagger_types = { + 'operation_type': 'str', + 'status': 'str', + 'id': 'str', + 'compartment_id': 'str', + 'resources': 'list[WorkRequestResource]', + 'percent_complete': 'float', + 'time_accepted': 'datetime', + 'time_started': 'datetime', + 'time_finished': 'datetime' + } + self.attribute_map = { + 'operation_type': 'operationType', + 'status': 'status', + 'id': 'id', + 'compartment_id': 'compartmentId', + 'resources': 'resources', + 'percent_complete': 'percentComplete', + 'time_accepted': 'timeAccepted', + 'time_started': 'timeStarted', + 'time_finished': 'timeFinished' + } + self._operation_type = None + self._status = None + self._id = None + self._compartment_id = None + self._resources = None + self._percent_complete = None + self._time_accepted = None + self._time_started = None + self._time_finished = None + + @property + def operation_type(self): + """ + **[Required]** Gets the operation_type of this WorkRequestSummary. + Type of the work request + + Allowed values for this property are: "CREATE_DISTRIBUTED_DB", "PATCH_DISTRIBUTED_DB_INSERT_SHARDS", "PATCH_DISTRIBUTED_DB_REMOVE_SHARDS", "PATCH_DISTRIBUTED_DB_MERGE_CATALOG_SHARDS", "DELETE_DISTRIBUTED_DB", "CHANGE_DISTRIBUTED_DB_COMPARTMENT", "CONFIGURE_DISTRIBUTED_DB_GSMS", "CONFIGURE_DISTRIBUTED_DB_SHARDING", "ROTATE_DISTRIBUTED_DB_PASSWORDS", "START_DISTRIBUTED_DB", "STOP_DISTRIBUTED_DB", "START_DISTRIBUTED_DB_SHARD", "START_DISTRIBUTED_DB_CATALOG", "STOP_DISTRIBUTED_DB_SHARD", "STOP_DISTRIBUTED_DB_CATALOG", "CREATE_DISTRIBUTED_DB_SHARD", "CREATE_DISTRIBUTED_DB_CATALOG", "CREATE_DISTRIBUTED_DB_GSM", "UPDATE_DISTRIBUTED_DB_CATALOG_SHARDS", "VALIDATE_NETWORK", "EXECUTE_VALIDATE_NETWORK_TESTS", "CREATE_PRIVATE_ENDPOINT", "DELETE_PRIVATE_ENDPOINT", "CHANGE_PRIVATE_ENDPOINT_COMPARTMENT", "REINSTATE_PROXY_INSTANCE", "DELETE_DISTRIBUTED_DB_SHARD", "DELETE_DISTRIBUTED_DB_CATALOG", "DELETE_DISTRIBUTED_DB_GSM", "ADD_GDSCONTROL_NODE", "CHANGE_DISTRIBUTED_DB_BACKUP_CONFIG", "ADD_DISTRIBUTED_DB_DG_EXADB", "ADD_DISTRIBUTED_DB_DG_ADB", "REMOVE_DISTRIBUTED_DB_DG_ADB", "REMOVE_DISTRIBUTED_DB_DG_EXADB", "CONFIGURE_DISTRIBUTED_DB_GSMS_WALLET", "VALIDATE_CA_BUNDLE", "RECREATE_FAILED_RESOURCE", "MOVE_REPLICATION_UNITS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The operation_type of this WorkRequestSummary. + :rtype: str + """ + return self._operation_type + + @operation_type.setter + def operation_type(self, operation_type): + """ + Sets the operation_type of this WorkRequestSummary. + Type of the work request + + + :param operation_type: The operation_type of this WorkRequestSummary. + :type: str + """ + allowed_values = ["CREATE_DISTRIBUTED_DB", "PATCH_DISTRIBUTED_DB_INSERT_SHARDS", "PATCH_DISTRIBUTED_DB_REMOVE_SHARDS", "PATCH_DISTRIBUTED_DB_MERGE_CATALOG_SHARDS", "DELETE_DISTRIBUTED_DB", "CHANGE_DISTRIBUTED_DB_COMPARTMENT", "CONFIGURE_DISTRIBUTED_DB_GSMS", "CONFIGURE_DISTRIBUTED_DB_SHARDING", "ROTATE_DISTRIBUTED_DB_PASSWORDS", "START_DISTRIBUTED_DB", "STOP_DISTRIBUTED_DB", "START_DISTRIBUTED_DB_SHARD", "START_DISTRIBUTED_DB_CATALOG", "STOP_DISTRIBUTED_DB_SHARD", "STOP_DISTRIBUTED_DB_CATALOG", "CREATE_DISTRIBUTED_DB_SHARD", "CREATE_DISTRIBUTED_DB_CATALOG", "CREATE_DISTRIBUTED_DB_GSM", "UPDATE_DISTRIBUTED_DB_CATALOG_SHARDS", "VALIDATE_NETWORK", "EXECUTE_VALIDATE_NETWORK_TESTS", "CREATE_PRIVATE_ENDPOINT", "DELETE_PRIVATE_ENDPOINT", "CHANGE_PRIVATE_ENDPOINT_COMPARTMENT", "REINSTATE_PROXY_INSTANCE", "DELETE_DISTRIBUTED_DB_SHARD", "DELETE_DISTRIBUTED_DB_CATALOG", "DELETE_DISTRIBUTED_DB_GSM", "ADD_GDSCONTROL_NODE", "CHANGE_DISTRIBUTED_DB_BACKUP_CONFIG", "ADD_DISTRIBUTED_DB_DG_EXADB", "ADD_DISTRIBUTED_DB_DG_ADB", "REMOVE_DISTRIBUTED_DB_DG_ADB", "REMOVE_DISTRIBUTED_DB_DG_EXADB", "CONFIGURE_DISTRIBUTED_DB_GSMS_WALLET", "VALIDATE_CA_BUNDLE", "RECREATE_FAILED_RESOURCE", "MOVE_REPLICATION_UNITS"] + if not value_allowed_none_or_none_sentinel(operation_type, allowed_values): + operation_type = 'UNKNOWN_ENUM_VALUE' + self._operation_type = operation_type + + @property + def status(self): + """ + **[Required]** Gets the status of this WorkRequestSummary. + Status of current work request. + + Allowed values for this property are: "ACCEPTED", "IN_PROGRESS", "WAITING", "FAILED", "SUCCEEDED", "CANCELING", "CANCELED", "NEEDS_ATTENTION", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The status of this WorkRequestSummary. + :rtype: str + """ + return self._status + + @status.setter + def status(self, status): + """ + Sets the status of this WorkRequestSummary. + Status of current work request. + + + :param status: The status of this WorkRequestSummary. + :type: str + """ + allowed_values = ["ACCEPTED", "IN_PROGRESS", "WAITING", "FAILED", "SUCCEEDED", "CANCELING", "CANCELED", "NEEDS_ATTENTION"] + if not value_allowed_none_or_none_sentinel(status, allowed_values): + status = 'UNKNOWN_ENUM_VALUE' + self._status = status + + @property + def id(self): + """ + **[Required]** Gets the id of this WorkRequestSummary. + The id of the work request. + + + :return: The id of this WorkRequestSummary. + :rtype: str + """ + return self._id + + @id.setter + def id(self, id): + """ + Sets the id of this WorkRequestSummary. + The id of the work request. + + + :param id: The id of this WorkRequestSummary. + :type: str + """ + self._id = id + + @property + def compartment_id(self): + """ + **[Required]** Gets the compartment_id of this WorkRequestSummary. + The ocid of the compartment that contains the work request. Work requests should be scoped to + the same compartment as the resource the work request affects. If the work request affects multiple resources, + and those resources are not in the same compartment, it is up to the service team to pick the primary + resource whose compartment should be used + + + :return: The compartment_id of this WorkRequestSummary. + :rtype: str + """ + return self._compartment_id + + @compartment_id.setter + def compartment_id(self, compartment_id): + """ + Sets the compartment_id of this WorkRequestSummary. + The ocid of the compartment that contains the work request. Work requests should be scoped to + the same compartment as the resource the work request affects. If the work request affects multiple resources, + and those resources are not in the same compartment, it is up to the service team to pick the primary + resource whose compartment should be used + + + :param compartment_id: The compartment_id of this WorkRequestSummary. + :type: str + """ + self._compartment_id = compartment_id + + @property + def resources(self): + """ + **[Required]** Gets the resources of this WorkRequestSummary. + The resources affected by this work request. + + + :return: The resources of this WorkRequestSummary. + :rtype: list[oci.distributed_database_v26.models.WorkRequestResource] + """ + return self._resources + + @resources.setter + def resources(self, resources): + """ + Sets the resources of this WorkRequestSummary. + The resources affected by this work request. + + + :param resources: The resources of this WorkRequestSummary. + :type: list[oci.distributed_database_v26.models.WorkRequestResource] + """ + self._resources = resources + + @property + def percent_complete(self): + """ + **[Required]** Gets the percent_complete of this WorkRequestSummary. + Percentage of the request completed. + + + :return: The percent_complete of this WorkRequestSummary. + :rtype: float + """ + return self._percent_complete + + @percent_complete.setter + def percent_complete(self, percent_complete): + """ + Sets the percent_complete of this WorkRequestSummary. + Percentage of the request completed. + + + :param percent_complete: The percent_complete of this WorkRequestSummary. + :type: float + """ + self._percent_complete = percent_complete + + @property + def time_accepted(self): + """ + **[Required]** Gets the time_accepted of this WorkRequestSummary. + The date and time the request was created, as described in + `RFC 3339`__, section 14.29. + + __ https://tools.ietf.org/rfc/rfc3339 + + + :return: The time_accepted of this WorkRequestSummary. + :rtype: datetime + """ + return self._time_accepted + + @time_accepted.setter + def time_accepted(self, time_accepted): + """ + Sets the time_accepted of this WorkRequestSummary. + The date and time the request was created, as described in + `RFC 3339`__, section 14.29. + + __ https://tools.ietf.org/rfc/rfc3339 + + + :param time_accepted: The time_accepted of this WorkRequestSummary. + :type: datetime + """ + self._time_accepted = time_accepted + + @property + def time_started(self): + """ + Gets the time_started of this WorkRequestSummary. + The date and time the request was started, as described in `RFC 3339`__, + section 14.29. + + __ https://tools.ietf.org/rfc/rfc3339 + + + :return: The time_started of this WorkRequestSummary. + :rtype: datetime + """ + return self._time_started + + @time_started.setter + def time_started(self, time_started): + """ + Sets the time_started of this WorkRequestSummary. + The date and time the request was started, as described in `RFC 3339`__, + section 14.29. + + __ https://tools.ietf.org/rfc/rfc3339 + + + :param time_started: The time_started of this WorkRequestSummary. + :type: datetime + """ + self._time_started = time_started + + @property + def time_finished(self): + """ + Gets the time_finished of this WorkRequestSummary. + The date and time the object was finished, as described in `RFC 3339`__. + + __ https://tools.ietf.org/rfc/rfc3339 + + + :return: The time_finished of this WorkRequestSummary. + :rtype: datetime + """ + return self._time_finished + + @time_finished.setter + def time_finished(self, time_finished): + """ + Sets the time_finished of this WorkRequestSummary. + The date and time the object was finished, as described in `RFC 3339`__. + + __ https://tools.ietf.org/rfc/rfc3339 + + + :param time_finished: The time_finished of this WorkRequestSummary. + :type: datetime + """ + self._time_finished = time_finished + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/distributed_database_v26/models/work_request_summary_collection.py b/src/oci/distributed_database_v26/models/work_request_summary_collection.py new file mode 100644 index 0000000000..8e7c930f79 --- /dev/null +++ b/src/oci/distributed_database_v26/models/work_request_summary_collection.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20260101 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class WorkRequestSummaryCollection(object): + """ + Results of a workRequest search. Contains both WorkRequest items and other information, such as metadata. + """ + + def __init__(self, **kwargs): + """ + Initializes a new WorkRequestSummaryCollection object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this WorkRequestSummaryCollection. + :type items: list[oci.distributed_database_v26.models.WorkRequestSummary] + + """ + self.swagger_types = { + 'items': 'list[WorkRequestSummary]' + } + self.attribute_map = { + 'items': 'items' + } + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this WorkRequestSummaryCollection. + List of workRequestSummary objects. + + + :return: The items of this WorkRequestSummaryCollection. + :rtype: list[oci.distributed_database_v26.models.WorkRequestSummary] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this WorkRequestSummaryCollection. + List of workRequestSummary objects. + + + :param items: The items of this WorkRequestSummaryCollection. + :type: list[oci.distributed_database_v26.models.WorkRequestSummary] + """ + self._items = items + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/generative_ai/models/create_dedicated_ai_cluster_details.py b/src/oci/generative_ai/models/create_dedicated_ai_cluster_details.py index 2c89f4c0b3..19c91a0d7e 100644 --- a/src/oci/generative_ai/models/create_dedicated_ai_cluster_details.py +++ b/src/oci/generative_ai/models/create_dedicated_ai_cluster_details.py @@ -281,6 +281,9 @@ def unit_shape(self): - OAI_B200_X4 - OAI_B200_X8 - SB_B200_X1 + - COHERE_B300_X1 + - META_B300_X1 + - OAI_B300_X1 :return: The unit_shape of this CreateDedicatedAiClusterDetails. @@ -359,6 +362,9 @@ def unit_shape(self, unit_shape): - OAI_B200_X4 - OAI_B200_X8 - SB_B200_X1 + - COHERE_B300_X1 + - META_B300_X1 + - OAI_B300_X1 :param unit_shape: The unit_shape of this CreateDedicatedAiClusterDetails. diff --git a/src/oci/generative_ai/models/dedicated_ai_cluster.py b/src/oci/generative_ai/models/dedicated_ai_cluster.py index eb7140cd03..0d4c4bd85c 100644 --- a/src/oci/generative_ai/models/dedicated_ai_cluster.py +++ b/src/oci/generative_ai/models/dedicated_ai_cluster.py @@ -285,6 +285,18 @@ class DedicatedAiCluster(object): #: This constant has a value of "META_B200_X8" UNIT_SHAPE_META_B200_X8 = "META_B200_X8" + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "COHERE_B300_X1" + UNIT_SHAPE_COHERE_B300_X1 = "COHERE_B300_X1" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "META_B300_X1" + UNIT_SHAPE_META_B300_X1 = "META_B300_X1" + + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. + #: This constant has a value of "OAI_B300_X1" + UNIT_SHAPE_OAI_B300_X1 = "OAI_B300_X1" + #: A constant which can be used with the unit_shape property of a DedicatedAiCluster. #: This constant has a value of "LARGE_COHERE_V3" UNIT_SHAPE_LARGE_COHERE_V3 = "LARGE_COHERE_V3" @@ -508,7 +520,7 @@ def __init__(self, **kwargs): :param unit_shape: The value to assign to the unit_shape property of this DedicatedAiCluster. - Allowed values for this property are: "LARGE_COHERE", "LARGE_COHERE_V2", "SMALL_COHERE", "SMALL_COHERE_V2", "SMALL_COHERE_4", "EMBED_COHERE", "LLAMA2_70", "LARGE_GENERIC", "LARGE_COHERE_V2_2", "LARGE_GENERIC_4", "SMALL_GENERIC_V2", "LARGE_GENERIC_2", "LARGE_GENERIC_V2", "LARGE_GENERIC_V3", "LARGE_GENERIC_V4", "LARGE_GENERIC_V5", "COHERE_H100_X1", "COHERE_A100_80G_X1", "COHERE_A100_40G_X1", "COHERE_A10_X1", "COHERE_A100_40G_X2", "COHERE_A100_40G_X4", "COHERE_A100_40G_X8", "COHERE_A100_80G_X2", "COHERE_A100_80G_X4", "COHERE_A100_80G_X8", "COHERE_H100_X2", "COHERE_H100_X4", "COHERE_H100_X8", "COHERE_H200_X1", "COHERE_H200_X2", "COHERE_H200_X4", "COHERE_H200_X8", "COHERE_B200_X1", "COHERE_B200_X2", "COHERE_B200_X4", "COHERE_B200_X8", "META_A100_40G_X1", "META_A100_40G_X2", "META_A100_40G_X4", "META_A100_40G_X8", "META_A100_80G_X1", "META_A100_80G_X2", "META_A100_80G_X4", "META_A100_80G_X8", "META_H100_X1", "META_H100_X2", "META_H100_X4", "META_H100_X8", "META_H200_X1", "META_H200_X2", "META_H200_X4", "META_H200_X8", "META_B200_X1", "META_B200_X2", "META_B200_X4", "META_B200_X8", "LARGE_COHERE_V3", "RERANK_COHERE", "SMALL_GENERIC_V1", "MEDIUM_GENERIC_V1", "LARGE_GENERIC_V1", "A10_X1", "A10_X2", "A10_X4", "A100_40G_X1", "A100_40G_X2", "A100_40G_X4", "A100_40G_X8", "A100_80G_X1", "A100_80G_X2", "A100_80G_X4", "A100_80G_X8", "H100_X1", "H100_X2", "H100_X4", "H100_X8", "H100_X16", "H100_X32", "H200_X1", "H200_X2", "H200_X4", "H200_X8", "OAI_A10_X2", "OAI_H100_X1", "OAI_H100_X2", "OAI_H200_X1", "OAI_A100_80G_X1", "OAI_A100_80G_X2", "OAI_A100_40G_X1", "OAI_A100_40G_X4", "B200_X1", "B200_X2", "B200_X4", "B200_X8", "OAI_B200_X1", "OAI_B200_X2", "OAI_B200_X4", "OAI_B200_X8", "SB_B200_X1", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "LARGE_COHERE", "LARGE_COHERE_V2", "SMALL_COHERE", "SMALL_COHERE_V2", "SMALL_COHERE_4", "EMBED_COHERE", "LLAMA2_70", "LARGE_GENERIC", "LARGE_COHERE_V2_2", "LARGE_GENERIC_4", "SMALL_GENERIC_V2", "LARGE_GENERIC_2", "LARGE_GENERIC_V2", "LARGE_GENERIC_V3", "LARGE_GENERIC_V4", "LARGE_GENERIC_V5", "COHERE_H100_X1", "COHERE_A100_80G_X1", "COHERE_A100_40G_X1", "COHERE_A10_X1", "COHERE_A100_40G_X2", "COHERE_A100_40G_X4", "COHERE_A100_40G_X8", "COHERE_A100_80G_X2", "COHERE_A100_80G_X4", "COHERE_A100_80G_X8", "COHERE_H100_X2", "COHERE_H100_X4", "COHERE_H100_X8", "COHERE_H200_X1", "COHERE_H200_X2", "COHERE_H200_X4", "COHERE_H200_X8", "COHERE_B200_X1", "COHERE_B200_X2", "COHERE_B200_X4", "COHERE_B200_X8", "META_A100_40G_X1", "META_A100_40G_X2", "META_A100_40G_X4", "META_A100_40G_X8", "META_A100_80G_X1", "META_A100_80G_X2", "META_A100_80G_X4", "META_A100_80G_X8", "META_H100_X1", "META_H100_X2", "META_H100_X4", "META_H100_X8", "META_H200_X1", "META_H200_X2", "META_H200_X4", "META_H200_X8", "META_B200_X1", "META_B200_X2", "META_B200_X4", "META_B200_X8", "COHERE_B300_X1", "META_B300_X1", "OAI_B300_X1", "LARGE_COHERE_V3", "RERANK_COHERE", "SMALL_GENERIC_V1", "MEDIUM_GENERIC_V1", "LARGE_GENERIC_V1", "A10_X1", "A10_X2", "A10_X4", "A100_40G_X1", "A100_40G_X2", "A100_40G_X4", "A100_40G_X8", "A100_80G_X1", "A100_80G_X2", "A100_80G_X4", "A100_80G_X8", "H100_X1", "H100_X2", "H100_X4", "H100_X8", "H100_X16", "H100_X32", "H200_X1", "H200_X2", "H200_X4", "H200_X8", "OAI_A10_X2", "OAI_H100_X1", "OAI_H100_X2", "OAI_H200_X1", "OAI_A100_80G_X1", "OAI_A100_80G_X2", "OAI_A100_40G_X1", "OAI_A100_40G_X4", "B200_X1", "B200_X2", "B200_X4", "B200_X8", "OAI_B200_X1", "OAI_B200_X2", "OAI_B200_X4", "OAI_B200_X8", "SB_B200_X1", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type unit_shape: str @@ -848,7 +860,7 @@ def unit_shape(self): **[Required]** Gets the unit_shape of this DedicatedAiCluster. The shape of dedicated unit in this AI cluster. The underlying hardware configuration is hidden from customers. - Allowed values for this property are: "LARGE_COHERE", "LARGE_COHERE_V2", "SMALL_COHERE", "SMALL_COHERE_V2", "SMALL_COHERE_4", "EMBED_COHERE", "LLAMA2_70", "LARGE_GENERIC", "LARGE_COHERE_V2_2", "LARGE_GENERIC_4", "SMALL_GENERIC_V2", "LARGE_GENERIC_2", "LARGE_GENERIC_V2", "LARGE_GENERIC_V3", "LARGE_GENERIC_V4", "LARGE_GENERIC_V5", "COHERE_H100_X1", "COHERE_A100_80G_X1", "COHERE_A100_40G_X1", "COHERE_A10_X1", "COHERE_A100_40G_X2", "COHERE_A100_40G_X4", "COHERE_A100_40G_X8", "COHERE_A100_80G_X2", "COHERE_A100_80G_X4", "COHERE_A100_80G_X8", "COHERE_H100_X2", "COHERE_H100_X4", "COHERE_H100_X8", "COHERE_H200_X1", "COHERE_H200_X2", "COHERE_H200_X4", "COHERE_H200_X8", "COHERE_B200_X1", "COHERE_B200_X2", "COHERE_B200_X4", "COHERE_B200_X8", "META_A100_40G_X1", "META_A100_40G_X2", "META_A100_40G_X4", "META_A100_40G_X8", "META_A100_80G_X1", "META_A100_80G_X2", "META_A100_80G_X4", "META_A100_80G_X8", "META_H100_X1", "META_H100_X2", "META_H100_X4", "META_H100_X8", "META_H200_X1", "META_H200_X2", "META_H200_X4", "META_H200_X8", "META_B200_X1", "META_B200_X2", "META_B200_X4", "META_B200_X8", "LARGE_COHERE_V3", "RERANK_COHERE", "SMALL_GENERIC_V1", "MEDIUM_GENERIC_V1", "LARGE_GENERIC_V1", "A10_X1", "A10_X2", "A10_X4", "A100_40G_X1", "A100_40G_X2", "A100_40G_X4", "A100_40G_X8", "A100_80G_X1", "A100_80G_X2", "A100_80G_X4", "A100_80G_X8", "H100_X1", "H100_X2", "H100_X4", "H100_X8", "H100_X16", "H100_X32", "H200_X1", "H200_X2", "H200_X4", "H200_X8", "OAI_A10_X2", "OAI_H100_X1", "OAI_H100_X2", "OAI_H200_X1", "OAI_A100_80G_X1", "OAI_A100_80G_X2", "OAI_A100_40G_X1", "OAI_A100_40G_X4", "B200_X1", "B200_X2", "B200_X4", "B200_X8", "OAI_B200_X1", "OAI_B200_X2", "OAI_B200_X4", "OAI_B200_X8", "SB_B200_X1", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "LARGE_COHERE", "LARGE_COHERE_V2", "SMALL_COHERE", "SMALL_COHERE_V2", "SMALL_COHERE_4", "EMBED_COHERE", "LLAMA2_70", "LARGE_GENERIC", "LARGE_COHERE_V2_2", "LARGE_GENERIC_4", "SMALL_GENERIC_V2", "LARGE_GENERIC_2", "LARGE_GENERIC_V2", "LARGE_GENERIC_V3", "LARGE_GENERIC_V4", "LARGE_GENERIC_V5", "COHERE_H100_X1", "COHERE_A100_80G_X1", "COHERE_A100_40G_X1", "COHERE_A10_X1", "COHERE_A100_40G_X2", "COHERE_A100_40G_X4", "COHERE_A100_40G_X8", "COHERE_A100_80G_X2", "COHERE_A100_80G_X4", "COHERE_A100_80G_X8", "COHERE_H100_X2", "COHERE_H100_X4", "COHERE_H100_X8", "COHERE_H200_X1", "COHERE_H200_X2", "COHERE_H200_X4", "COHERE_H200_X8", "COHERE_B200_X1", "COHERE_B200_X2", "COHERE_B200_X4", "COHERE_B200_X8", "META_A100_40G_X1", "META_A100_40G_X2", "META_A100_40G_X4", "META_A100_40G_X8", "META_A100_80G_X1", "META_A100_80G_X2", "META_A100_80G_X4", "META_A100_80G_X8", "META_H100_X1", "META_H100_X2", "META_H100_X4", "META_H100_X8", "META_H200_X1", "META_H200_X2", "META_H200_X4", "META_H200_X8", "META_B200_X1", "META_B200_X2", "META_B200_X4", "META_B200_X8", "COHERE_B300_X1", "META_B300_X1", "OAI_B300_X1", "LARGE_COHERE_V3", "RERANK_COHERE", "SMALL_GENERIC_V1", "MEDIUM_GENERIC_V1", "LARGE_GENERIC_V1", "A10_X1", "A10_X2", "A10_X4", "A100_40G_X1", "A100_40G_X2", "A100_40G_X4", "A100_40G_X8", "A100_80G_X1", "A100_80G_X2", "A100_80G_X4", "A100_80G_X8", "H100_X1", "H100_X2", "H100_X4", "H100_X8", "H100_X16", "H100_X32", "H200_X1", "H200_X2", "H200_X4", "H200_X8", "OAI_A10_X2", "OAI_H100_X1", "OAI_H100_X2", "OAI_H200_X1", "OAI_A100_80G_X1", "OAI_A100_80G_X2", "OAI_A100_40G_X1", "OAI_A100_40G_X4", "B200_X1", "B200_X2", "B200_X4", "B200_X8", "OAI_B200_X1", "OAI_B200_X2", "OAI_B200_X4", "OAI_B200_X8", "SB_B200_X1", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -867,7 +879,7 @@ def unit_shape(self, unit_shape): :param unit_shape: The unit_shape of this DedicatedAiCluster. :type: str """ - allowed_values = ["LARGE_COHERE", "LARGE_COHERE_V2", "SMALL_COHERE", "SMALL_COHERE_V2", "SMALL_COHERE_4", "EMBED_COHERE", "LLAMA2_70", "LARGE_GENERIC", "LARGE_COHERE_V2_2", "LARGE_GENERIC_4", "SMALL_GENERIC_V2", "LARGE_GENERIC_2", "LARGE_GENERIC_V2", "LARGE_GENERIC_V3", "LARGE_GENERIC_V4", "LARGE_GENERIC_V5", "COHERE_H100_X1", "COHERE_A100_80G_X1", "COHERE_A100_40G_X1", "COHERE_A10_X1", "COHERE_A100_40G_X2", "COHERE_A100_40G_X4", "COHERE_A100_40G_X8", "COHERE_A100_80G_X2", "COHERE_A100_80G_X4", "COHERE_A100_80G_X8", "COHERE_H100_X2", "COHERE_H100_X4", "COHERE_H100_X8", "COHERE_H200_X1", "COHERE_H200_X2", "COHERE_H200_X4", "COHERE_H200_X8", "COHERE_B200_X1", "COHERE_B200_X2", "COHERE_B200_X4", "COHERE_B200_X8", "META_A100_40G_X1", "META_A100_40G_X2", "META_A100_40G_X4", "META_A100_40G_X8", "META_A100_80G_X1", "META_A100_80G_X2", "META_A100_80G_X4", "META_A100_80G_X8", "META_H100_X1", "META_H100_X2", "META_H100_X4", "META_H100_X8", "META_H200_X1", "META_H200_X2", "META_H200_X4", "META_H200_X8", "META_B200_X1", "META_B200_X2", "META_B200_X4", "META_B200_X8", "LARGE_COHERE_V3", "RERANK_COHERE", "SMALL_GENERIC_V1", "MEDIUM_GENERIC_V1", "LARGE_GENERIC_V1", "A10_X1", "A10_X2", "A10_X4", "A100_40G_X1", "A100_40G_X2", "A100_40G_X4", "A100_40G_X8", "A100_80G_X1", "A100_80G_X2", "A100_80G_X4", "A100_80G_X8", "H100_X1", "H100_X2", "H100_X4", "H100_X8", "H100_X16", "H100_X32", "H200_X1", "H200_X2", "H200_X4", "H200_X8", "OAI_A10_X2", "OAI_H100_X1", "OAI_H100_X2", "OAI_H200_X1", "OAI_A100_80G_X1", "OAI_A100_80G_X2", "OAI_A100_40G_X1", "OAI_A100_40G_X4", "B200_X1", "B200_X2", "B200_X4", "B200_X8", "OAI_B200_X1", "OAI_B200_X2", "OAI_B200_X4", "OAI_B200_X8", "SB_B200_X1"] + allowed_values = ["LARGE_COHERE", "LARGE_COHERE_V2", "SMALL_COHERE", "SMALL_COHERE_V2", "SMALL_COHERE_4", "EMBED_COHERE", "LLAMA2_70", "LARGE_GENERIC", "LARGE_COHERE_V2_2", "LARGE_GENERIC_4", "SMALL_GENERIC_V2", "LARGE_GENERIC_2", "LARGE_GENERIC_V2", "LARGE_GENERIC_V3", "LARGE_GENERIC_V4", "LARGE_GENERIC_V5", "COHERE_H100_X1", "COHERE_A100_80G_X1", "COHERE_A100_40G_X1", "COHERE_A10_X1", "COHERE_A100_40G_X2", "COHERE_A100_40G_X4", "COHERE_A100_40G_X8", "COHERE_A100_80G_X2", "COHERE_A100_80G_X4", "COHERE_A100_80G_X8", "COHERE_H100_X2", "COHERE_H100_X4", "COHERE_H100_X8", "COHERE_H200_X1", "COHERE_H200_X2", "COHERE_H200_X4", "COHERE_H200_X8", "COHERE_B200_X1", "COHERE_B200_X2", "COHERE_B200_X4", "COHERE_B200_X8", "META_A100_40G_X1", "META_A100_40G_X2", "META_A100_40G_X4", "META_A100_40G_X8", "META_A100_80G_X1", "META_A100_80G_X2", "META_A100_80G_X4", "META_A100_80G_X8", "META_H100_X1", "META_H100_X2", "META_H100_X4", "META_H100_X8", "META_H200_X1", "META_H200_X2", "META_H200_X4", "META_H200_X8", "META_B200_X1", "META_B200_X2", "META_B200_X4", "META_B200_X8", "COHERE_B300_X1", "META_B300_X1", "OAI_B300_X1", "LARGE_COHERE_V3", "RERANK_COHERE", "SMALL_GENERIC_V1", "MEDIUM_GENERIC_V1", "LARGE_GENERIC_V1", "A10_X1", "A10_X2", "A10_X4", "A100_40G_X1", "A100_40G_X2", "A100_40G_X4", "A100_40G_X8", "A100_80G_X1", "A100_80G_X2", "A100_80G_X4", "A100_80G_X8", "H100_X1", "H100_X2", "H100_X4", "H100_X8", "H100_X16", "H100_X32", "H200_X1", "H200_X2", "H200_X4", "H200_X8", "OAI_A10_X2", "OAI_H100_X1", "OAI_H100_X2", "OAI_H200_X1", "OAI_A100_80G_X1", "OAI_A100_80G_X2", "OAI_A100_40G_X1", "OAI_A100_40G_X4", "B200_X1", "B200_X2", "B200_X4", "B200_X8", "OAI_B200_X1", "OAI_B200_X2", "OAI_B200_X4", "OAI_B200_X8", "SB_B200_X1"] if not value_allowed_none_or_none_sentinel(unit_shape, allowed_values): unit_shape = 'UNKNOWN_ENUM_VALUE' self._unit_shape = unit_shape diff --git a/src/oci/object_storage/models/bucket.py b/src/oci/object_storage/models/bucket.py index 3b0e95381a..11a069654e 100644 --- a/src/oci/object_storage/models/bucket.py +++ b/src/oci/object_storage/models/bucket.py @@ -886,11 +886,11 @@ def auto_tiering(self, auto_tiering): def bucket_scope(self): """ Gets the bucket_scope of this Bucket. - Scope in which the bucket is unique. Default value is NAMESPACE. - Bucket scope as NAMESPACE means that the bucket is unique only in the owning namespace/tenancy. Other - tenancies can have a bucket with same name in their namespace. - Bucket scope as REGION means that the bucket is regionally unique. No other tenancy can have a bucket with - same name and scope REGION. + The bucket scope determines weather the bucket name must be unique within the tenancy and region (essentially the namespace) or across all tenancies in the region. The bucket scope also determines if the bucket supports S3 virtual-hosted style URL's or not. + + Allowed values: + NAMESPACE: Only supports path-style bucket access, bucket name only needs to be unique within the tenancy and region. + REGION: Supports both path-style and virtual-hosted URL style access, bucket name needs to be unique across all tenancies in the region. Allowed values for this property are: "NAMESPACE", "REGION", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -905,11 +905,11 @@ def bucket_scope(self): def bucket_scope(self, bucket_scope): """ Sets the bucket_scope of this Bucket. - Scope in which the bucket is unique. Default value is NAMESPACE. - Bucket scope as NAMESPACE means that the bucket is unique only in the owning namespace/tenancy. Other - tenancies can have a bucket with same name in their namespace. - Bucket scope as REGION means that the bucket is regionally unique. No other tenancy can have a bucket with - same name and scope REGION. + The bucket scope determines weather the bucket name must be unique within the tenancy and region (essentially the namespace) or across all tenancies in the region. The bucket scope also determines if the bucket supports S3 virtual-hosted style URL's or not. + + Allowed values: + NAMESPACE: Only supports path-style bucket access, bucket name only needs to be unique within the tenancy and region. + REGION: Supports both path-style and virtual-hosted URL style access, bucket name needs to be unique across all tenancies in the region. :param bucket_scope: The bucket_scope of this Bucket. diff --git a/src/oci/object_storage/models/bucket_summary.py b/src/oci/object_storage/models/bucket_summary.py index 85198b0974..5f0126f71b 100644 --- a/src/oci/object_storage/models/bucket_summary.py +++ b/src/oci/object_storage/models/bucket_summary.py @@ -315,11 +315,11 @@ def defined_tags(self, defined_tags): def bucket_scope(self): """ Gets the bucket_scope of this BucketSummary. - Scope in which the bucket is unique. Default value is NAMESPACE. - Bucket scope as NAMESPACE means that the bucket is unique only in the owning namespace/tenancy. Other - tenancies can have a bucket with same name in their namespace. - Bucket scope as REGION means that the bucket is regionally unique. No other tenancy can have a bucket with - same name and scope REGION. + The bucket scope determines weather the bucket name must be unique within the tenancy and region (essentially the namespace) or across all tenancies in the region. The bucket scope also determines if the bucket supports S3 virtual-hosted style URL's or not. + + Allowed values: + NAMESPACE: Only supports path-style bucket access, bucket name only needs to be unique within the tenancy and region. + REGION: Supports both path-style and virtual-hosted URL style access, bucket name needs to be unique across all tenancies in the region. :return: The bucket_scope of this BucketSummary. @@ -331,11 +331,11 @@ def bucket_scope(self): def bucket_scope(self, bucket_scope): """ Sets the bucket_scope of this BucketSummary. - Scope in which the bucket is unique. Default value is NAMESPACE. - Bucket scope as NAMESPACE means that the bucket is unique only in the owning namespace/tenancy. Other - tenancies can have a bucket with same name in their namespace. - Bucket scope as REGION means that the bucket is regionally unique. No other tenancy can have a bucket with - same name and scope REGION. + The bucket scope determines weather the bucket name must be unique within the tenancy and region (essentially the namespace) or across all tenancies in the region. The bucket scope also determines if the bucket supports S3 virtual-hosted style URL's or not. + + Allowed values: + NAMESPACE: Only supports path-style bucket access, bucket name only needs to be unique within the tenancy and region. + REGION: Supports both path-style and virtual-hosted URL style access, bucket name needs to be unique across all tenancies in the region. :param bucket_scope: The bucket_scope of this BucketSummary. diff --git a/src/oci/object_storage/models/create_bucket_details.py b/src/oci/object_storage/models/create_bucket_details.py index 4eab3f0fa0..36dfa83f50 100644 --- a/src/oci/object_storage/models/create_bucket_details.py +++ b/src/oci/object_storage/models/create_bucket_details.py @@ -523,11 +523,11 @@ def auto_tiering(self, auto_tiering): def bucket_scope(self): """ Gets the bucket_scope of this CreateBucketDetails. - Scope in which the bucket is unique. Default value is NAMESPACE. - Bucket scope as NAMESPACE means that the bucket is unique only in the owning namespace/tenancy. Other - tenancies can have a bucket with same name in their namespace. - Bucket scope as REGION means that the bucket is regionally unique. No other tenancy can have a bucket with - same name and scope REGION. + The bucket scope determines weather the bucket name must be unique within the tenancy and region (essentially the namespace) or across all tenancies in the region. The bucket scope also determines if the bucket supports S3 virtual-hosted style URL's or not. + + Allowed values: + NAMESPACE: Only supports path-style bucket access, bucket name only needs to be unique within the tenancy and region. + REGION: Supports both path-style and virtual-hosted URL style access, bucket name needs to be unique across all tenancies in the region. :return: The bucket_scope of this CreateBucketDetails. @@ -539,11 +539,11 @@ def bucket_scope(self): def bucket_scope(self, bucket_scope): """ Sets the bucket_scope of this CreateBucketDetails. - Scope in which the bucket is unique. Default value is NAMESPACE. - Bucket scope as NAMESPACE means that the bucket is unique only in the owning namespace/tenancy. Other - tenancies can have a bucket with same name in their namespace. - Bucket scope as REGION means that the bucket is regionally unique. No other tenancy can have a bucket with - same name and scope REGION. + The bucket scope determines weather the bucket name must be unique within the tenancy and region (essentially the namespace) or across all tenancies in the region. The bucket scope also determines if the bucket supports S3 virtual-hosted style URL's or not. + + Allowed values: + NAMESPACE: Only supports path-style bucket access, bucket name only needs to be unique within the tenancy and region. + REGION: Supports both path-style and virtual-hosted URL style access, bucket name needs to be unique across all tenancies in the region. :param bucket_scope: The bucket_scope of this CreateBucketDetails. diff --git a/src/oci/object_storage/models/update_bucket_details.py b/src/oci/object_storage/models/update_bucket_details.py index 5b4f68aa68..060a650272 100644 --- a/src/oci/object_storage/models/update_bucket_details.py +++ b/src/oci/object_storage/models/update_bucket_details.py @@ -505,11 +505,12 @@ def auto_tiering(self, auto_tiering): def bucket_scope(self): """ Gets the bucket_scope of this UpdateBucketDetails. - Scope in which the bucket is unique. Default value is NAMESPACE. - Bucket scope as NAMESPACE means that the bucket is unique only in the owning namespace/tenancy. Other - tenancies can have a bucket with same name in their namespace. - Bucket scope as REGION means that the bucket is regionally unique. No other tenancy can have a bucket with - same name and scope REGION. + The bucket scope determines weather the bucket name must be unique within the tenancy and region (essentially the namespace) or across all tenancies in the region. The bucket scope also determines if the bucket supports S3 virtual-hosted style URL's or not. + + Allowed values: + NAMESPACE: Only supports path-style bucket access, bucket name only needs to be unique within the tenancy and region. + REGION: Supports both path-style and virtual-hosted URL style access, bucket name needs to be unique across all tenancies in the region. + BucketScope can only be updated from NAMESPACE to REGION, it cannot be updated from REGION to NAMESPACE. Updating bucket scope is possible only if the bucket name is valid and there is no existing regionally unique bucket with the same name. @@ -524,11 +525,12 @@ def bucket_scope(self): def bucket_scope(self, bucket_scope): """ Sets the bucket_scope of this UpdateBucketDetails. - Scope in which the bucket is unique. Default value is NAMESPACE. - Bucket scope as NAMESPACE means that the bucket is unique only in the owning namespace/tenancy. Other - tenancies can have a bucket with same name in their namespace. - Bucket scope as REGION means that the bucket is regionally unique. No other tenancy can have a bucket with - same name and scope REGION. + The bucket scope determines weather the bucket name must be unique within the tenancy and region (essentially the namespace) or across all tenancies in the region. The bucket scope also determines if the bucket supports S3 virtual-hosted style URL's or not. + + Allowed values: + NAMESPACE: Only supports path-style bucket access, bucket name only needs to be unique within the tenancy and region. + REGION: Supports both path-style and virtual-hosted URL style access, bucket name needs to be unique across all tenancies in the region. + BucketScope can only be updated from NAMESPACE to REGION, it cannot be updated from REGION to NAMESPACE. Updating bucket scope is possible only if the bucket name is valid and there is no existing regionally unique bucket with the same name. diff --git a/src/oci/object_storage/object_storage_client.py b/src/oci/object_storage/object_storage_client.py index 0a71e92c76..a6f88dfa78 100644 --- a/src/oci/object_storage/object_storage_client.py +++ b/src/oci/object_storage/object_storage_client.py @@ -107,9 +107,9 @@ def __init__(self, config, **kwargs): 'regional_client': True, 'service_endpoint': kwargs.get('service_endpoint'), 'base_path': '/', - 'service_endpoint_template': 'https://objectstorage.{region}.{secondLevelDomain}', + 'service_endpoint_template': 'https://objectstorage.{region}.{dualStack?ds.oci.:}{secondLevelDomain}', 'endpoint_service_name': 'objectstorage', - 'service_endpoint_template_per_realm': { 'oc1': 'https://{namespaceName+Dot}objectstorage.{region}.oci.customer-oci.com' }, # noqa: E201 E202 + 'service_endpoint_template_per_realm': { 'oc1': 'https://{namespaceName+Dot}objectstorage.{region}.{dualStack?ds.:}oci.customer-oci.com' }, # noqa: E201 E202 'service_uses_dualstack_endpoints_by_default': False, 'skip_deserialization': kwargs.get('skip_deserialization', False), 'circuit_breaker_strategy': kwargs.get('circuit_breaker_strategy', circuit_breaker.GLOBAL_CIRCUIT_BREAKER_STRATEGY), @@ -5964,9 +5964,10 @@ def put_object(self, namespace_name, bucket_name, object_name, put_object_body, :param str content_type: (optional) The optional Content-Type header that defines the standard MIME type format of the object. Content type defaults to - 'application/octet-stream' if not specified in the PutObject call. Specifying values for this header has no effect - on Object Storage behavior. Programs that read the object determine what to do based on the value provided. For example, - you could use this header to identify and perform special operations on text only objects. + 'application/octet-stream' if not specified in the PutObject call. In the OCI CLI, you can set this value to 'auto' + to have the CLI infer the content type from the file name. Specifying values for this header has no effect on Object + Storage behavior. Programs that read the object determine what to do based on the value provided. For example, you + could use this header to identify and perform special operations on text only objects. :param str content_language: (optional) The optional Content-Language header that defines the content language of the object to upload. Specifying diff --git a/src/oci/object_storage/transfer/upload_manager.py b/src/oci/object_storage/transfer/upload_manager.py index 0e4819ed0c..11a5bd7e9f 100644 --- a/src/oci/object_storage/transfer/upload_manager.py +++ b/src/oci/object_storage/transfer/upload_manager.py @@ -471,10 +471,9 @@ def _create_adapter_for_pool_size(current_adapter, target_pool_size): pool_block = getattr(current_adapter, '_pool_block', requests.adapters.DEFAULT_POOLBLOCK) max_retries = getattr(current_adapter, 'max_retries', requests.adapters.DEFAULT_RETRIES) - # OCIHTTPAdapter sets this marker so resizing preserves OCI's scoped - # Expect-header transport behavior instead of replacing it with a plain - # HTTPAdapter. - if getattr(current_adapter, 'uses_oci_connection_pool', False): + # OCIHTTPAdapter sets this marker so resizing preserves OCI transport + # adapter behavior instead of replacing it with a plain HTTPAdapter. + if getattr(current_adapter, 'preserves_oci_https_adapter_behavior', False): return current_adapter.__class__( pool_connections=pool_connections, pool_maxsize=target_pool_size, diff --git a/src/oci/resource_manager/models/__init__.py b/src/oci/resource_manager/models/__init__.py index c414dbb54f..4bf6bbd97a 100644 --- a/src/oci/resource_manager/models/__init__.py +++ b/src/oci/resource_manager/models/__init__.py @@ -81,6 +81,7 @@ from .job_outputs_collection import JobOutputsCollection from .job_summary import JobSummary from .log_entry import LogEntry +from .log_entry_collection import LogEntryCollection from .object_storage_config_source import ObjectStorageConfigSource from .object_storage_config_source_record import ObjectStorageConfigSourceRecord from .plan_job_operation_details import PlanJobOperationDetails @@ -211,6 +212,7 @@ "JobOutputsCollection": JobOutputsCollection, "JobSummary": JobSummary, "LogEntry": LogEntry, + "LogEntryCollection": LogEntryCollection, "ObjectStorageConfigSource": ObjectStorageConfigSource, "ObjectStorageConfigSourceRecord": ObjectStorageConfigSourceRecord, "PlanJobOperationDetails": PlanJobOperationDetails, diff --git a/src/oci/resource_manager/models/log_entry_collection.py b/src/oci/resource_manager/models/log_entry_collection.py new file mode 100644 index 0000000000..40f93c7f93 --- /dev/null +++ b/src/oci/resource_manager/models/log_entry_collection.py @@ -0,0 +1,70 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20180917 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class LogEntryCollection(object): + """ + Collection of log entries. + """ + + def __init__(self, **kwargs): + """ + Initializes a new LogEntryCollection object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param items: + The value to assign to the items property of this LogEntryCollection. + :type items: list[oci.resource_manager.models.LogEntry] + + """ + self.swagger_types = { + 'items': 'list[LogEntry]' + } + self.attribute_map = { + 'items': 'items' + } + self._items = None + + @property + def items(self): + """ + **[Required]** Gets the items of this LogEntryCollection. + Collection of log entries. + + + :return: The items of this LogEntryCollection. + :rtype: list[oci.resource_manager.models.LogEntry] + """ + return self._items + + @items.setter + def items(self, items): + """ + Sets the items of this LogEntryCollection. + Collection of log entries. + + + :param items: The items of this LogEntryCollection. + :type: list[oci.resource_manager.models.LogEntry] + """ + self._items = items + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/resource_manager/resource_manager_client.py b/src/oci/resource_manager/resource_manager_client.py index 4ecedc7726..d10761465a 100644 --- a/src/oci/resource_manager/resource_manager_client.py +++ b/src/oci/resource_manager/resource_manager_client.py @@ -3966,6 +3966,292 @@ def get_work_request(self, work_request_id, **kwargs): api_reference_link=api_reference_link, required_arguments=required_arguments) + def get_work_request_log_entries(self, work_request_id, **kwargs): + """ + Returns console log entries for the specified work request in JSON format. + + + :param str work_request_id: (required) + The `OCID`__ of the work request. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + particular request, please provide the request ID. + + :param list[LogEntryType] type: (optional) + A filter that returns only logs of a specified type. + + :param str level_greater_than_or_equal_to: (optional) + A filter that returns only log entries that match a given severity level or greater. + + Allowed values are: "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "FATAL" + + :param str sort_order: (optional) + The sort order to use when sorting returned resources. Ascending (`ASC`) or descending (`DESC`). + + Allowed values are: "ASC", "DESC" + + :param int limit: (optional) + The number of items returned in a paginated `List` call. For information about pagination, see + `List Pagination`__. + + __ https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param str page: (optional) + The value of the `opc-next-page` response header from the preceding `List` call. + For information about pagination, see `List Pagination`__. + + __ https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine + + :param datetime timestamp_greater_than_or_equal_to: (optional) + Time stamp specifying the lower time limit for which logs are returned in a query. + Format is defined by RFC3339. + Example: `2020-01-01T12:00:00.000Z` + + :param datetime timestamp_less_than_or_equal_to: (optional) + Time stamp specifying the upper time limit for which logs are returned in a query. + Format is defined by RFC3339. + Example: `2020-02-01T12:00:00.000Z` + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.resource_manager.models.LogEntryCollection` + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_work_request_log_entries API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['workRequestId'] + resource_path = "/workRequests/{workRequestId}/logEntries" + method = "GET" + operation_name = "get_work_request_log_entries" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/resourcemanager/20180917/WorkRequest/GetWorkRequestLogEntries" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id", + "type", + "level_greater_than_or_equal_to", + "sort_order", + "limit", + "page", + "timestamp_greater_than_or_equal_to", + "timestamp_less_than_or_equal_to" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"get_work_request_log_entries got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "workRequestId": work_request_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + if 'level_greater_than_or_equal_to' in kwargs: + level_greater_than_or_equal_to_allowed_values = ["TRACE", "DEBUG", "INFO", "WARN", "ERROR", "FATAL"] + if kwargs['level_greater_than_or_equal_to'] not in level_greater_than_or_equal_to_allowed_values: + raise ValueError( + f"Invalid value for `level_greater_than_or_equal_to`, must be one of { level_greater_than_or_equal_to_allowed_values }" + ) + + if 'sort_order' in kwargs: + sort_order_allowed_values = ["ASC", "DESC"] + if kwargs['sort_order'] not in sort_order_allowed_values: + raise ValueError( + f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }" + ) + + query_params = { + "type": self.base_client.generate_collection_format_param(kwargs.get("type", missing), 'multi'), + "levelGreaterThanOrEqualTo": kwargs.get("level_greater_than_or_equal_to", missing), + "sortOrder": kwargs.get("sort_order", missing), + "limit": kwargs.get("limit", missing), + "page": kwargs.get("page", missing), + "timestampGreaterThanOrEqualTo": kwargs.get("timestamp_greater_than_or_equal_to", missing), + "timestampLessThanOrEqualTo": kwargs.get("timestamp_less_than_or_equal_to", missing) + } + query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None} + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="LogEntryCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + query_params=query_params, + header_params=header_params, + response_type="LogEntryCollection", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + + def get_work_request_log_entries_content(self, work_request_id, **kwargs): + """ + Returns the raw log file for the specified work request in text format. + The file includes a maximum of 100,000 log entries. + + + :param str work_request_id: (required) + The `OCID`__ of the work request. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + :param str opc_request_id: (optional) + Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + particular request, please provide the request ID. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided. + The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :param bool allow_control_chars: (optional) + allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object. + By default, the response will not allow control characters in strings + + :param bool enable_strict_url_encoding: (optional) + enable_strict_url_encoding is a boolean to indicate whether or not this request should enable strict url encoding for path params. + By default, strict url encoding for path params is disabled + + :return: A :class:`~oci.response.Response` object with data of type str + :rtype: :class:`~oci.response.Response` + + :example: + Click `here `__ to see an example of how to use get_work_request_log_entries_content API. + """ + # Required path and query arguments. These are in camelCase to replace values in service endpoints. + required_arguments = ['workRequestId'] + resource_path = "/workRequests/{workRequestId}/logEntries/content" + method = "GET" + operation_name = "get_work_request_log_entries_content" + api_reference_link = "https://docs.oracle.com/iaas/api/#/en/resourcemanager/20180917/WorkRequest/GetWorkRequestLogEntriesContent" + + # Don't accept unknown kwargs + expected_kwargs = [ + "allow_control_chars", + "enable_strict_url_encoding", + "retry_strategy", + "opc_request_id" + ] + extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + f"get_work_request_log_entries_content got unknown kwargs: {extra_kwargs!r}") + + path_params = { + "workRequestId": work_request_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string') + + header_params = { + "accept": "text/plain; charset=utf-8", + "content-type": "application/json", + "opc-request-id": kwargs.get("opc_request_id", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.base_client.get_preferred_retry_strategy( + operation_retry_strategy=kwargs.get('retry_strategy'), + client_retry_strategy=self.retry_strategy + ) + if retry_strategy is None: + retry_strategy = retry.DEFAULT_RETRY_STRATEGY + + if retry_strategy: + if not isinstance(retry_strategy, retry.NoneRetryStrategy): + self.base_client.add_opc_client_retries_header(header_params) + retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback) + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="str", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + response_type="str", + allow_control_chars=kwargs.get('allow_control_chars'), + enable_strict_url_encoding=kwargs.get('enable_strict_url_encoding'), + operation_name=operation_name, + api_reference_link=api_reference_link, + required_arguments=required_arguments) + def list_configuration_source_providers(self, **kwargs): """ Lists configuration source providers according to the specified filter. diff --git a/src/oci/resource_scheduler/models/create_schedule_details.py b/src/oci/resource_scheduler/models/create_schedule_details.py index 092ed6b3c1..8a3630c789 100644 --- a/src/oci/resource_scheduler/models/create_schedule_details.py +++ b/src/oci/resource_scheduler/models/create_schedule_details.py @@ -82,6 +82,10 @@ def __init__(self, **kwargs): The value to assign to the time_ends property of this CreateScheduleDetails. :type time_ends: datetime + :param local_time_zone: + The value to assign to the local_time_zone property of this CreateScheduleDetails. + :type local_time_zone: str + :param freeform_tags: The value to assign to the freeform_tags property of this CreateScheduleDetails. :type freeform_tags: dict(str, str) @@ -102,6 +106,7 @@ def __init__(self, **kwargs): 'resources': 'list[Resource]', 'time_starts': 'datetime', 'time_ends': 'datetime', + 'local_time_zone': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))' } @@ -116,6 +121,7 @@ def __init__(self, **kwargs): 'resources': 'resources', 'time_starts': 'timeStarts', 'time_ends': 'timeEnds', + 'local_time_zone': 'localTimeZone', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags' } @@ -129,6 +135,7 @@ def __init__(self, **kwargs): self._resources = None self._time_starts = None self._time_ends = None + self._local_time_zone = None self._freeform_tags = None self._defined_tags = None @@ -408,6 +415,32 @@ def time_ends(self, time_ends): """ self._time_ends = time_ends + @property + def local_time_zone(self): + """ + Gets the local_time_zone of this CreateScheduleDetails. + IANA timezone identifier (e.g., 'America/New_York', 'UTC', 'Europe/London'). + This determines the timezone context for evaluating the recurrence expression. + + + :return: The local_time_zone of this CreateScheduleDetails. + :rtype: str + """ + return self._local_time_zone + + @local_time_zone.setter + def local_time_zone(self, local_time_zone): + """ + Sets the local_time_zone of this CreateScheduleDetails. + IANA timezone identifier (e.g., 'America/New_York', 'UTC', 'Europe/London'). + This determines the timezone context for evaluating the recurrence expression. + + + :param local_time_zone: The local_time_zone of this CreateScheduleDetails. + :type: str + """ + self._local_time_zone = local_time_zone + @property def freeform_tags(self): """ diff --git a/src/oci/resource_scheduler/models/schedule.py b/src/oci/resource_scheduler/models/schedule.py index 837588a785..6688c658cc 100644 --- a/src/oci/resource_scheduler/models/schedule.py +++ b/src/oci/resource_scheduler/models/schedule.py @@ -155,6 +155,10 @@ def __init__(self, **kwargs): The value to assign to the time_ends property of this Schedule. :type time_ends: datetime + :param local_time_zone: + The value to assign to the local_time_zone property of this Schedule. + :type local_time_zone: str + :param time_created: The value to assign to the time_created property of this Schedule. :type time_created: datetime @@ -208,6 +212,7 @@ def __init__(self, **kwargs): 'resources': 'list[Resource]', 'time_starts': 'datetime', 'time_ends': 'datetime', + 'local_time_zone': 'str', 'time_created': 'datetime', 'time_updated': 'datetime', 'time_last_run': 'datetime', @@ -230,6 +235,7 @@ def __init__(self, **kwargs): 'resources': 'resources', 'time_starts': 'timeStarts', 'time_ends': 'timeEnds', + 'local_time_zone': 'localTimeZone', 'time_created': 'timeCreated', 'time_updated': 'timeUpdated', 'time_last_run': 'timeLastRun', @@ -251,6 +257,7 @@ def __init__(self, **kwargs): self._resources = None self._time_starts = None self._time_ends = None + self._local_time_zone = None self._time_created = None self._time_updated = None self._time_last_run = None @@ -563,6 +570,32 @@ def time_ends(self, time_ends): """ self._time_ends = time_ends + @property + def local_time_zone(self): + """ + Gets the local_time_zone of this Schedule. + IANA timezone identifier (e.g., 'America/New_York', 'UTC', 'Europe/London'). + This determines the timezone context for evaluating the recurrence expression. + + + :return: The local_time_zone of this Schedule. + :rtype: str + """ + return self._local_time_zone + + @local_time_zone.setter + def local_time_zone(self, local_time_zone): + """ + Sets the local_time_zone of this Schedule. + IANA timezone identifier (e.g., 'America/New_York', 'UTC', 'Europe/London'). + This determines the timezone context for evaluating the recurrence expression. + + + :param local_time_zone: The local_time_zone of this Schedule. + :type: str + """ + self._local_time_zone = local_time_zone + @property def time_created(self): """ diff --git a/src/oci/resource_scheduler/models/schedule_summary.py b/src/oci/resource_scheduler/models/schedule_summary.py index 98cea7d707..73ae9079df 100644 --- a/src/oci/resource_scheduler/models/schedule_summary.py +++ b/src/oci/resource_scheduler/models/schedule_summary.py @@ -120,6 +120,10 @@ def __init__(self, **kwargs): The value to assign to the time_ends property of this ScheduleSummary. :type time_ends: datetime + :param local_time_zone: + The value to assign to the local_time_zone property of this ScheduleSummary. + :type local_time_zone: str + :param time_created: The value to assign to the time_created property of this ScheduleSummary. :type time_created: datetime @@ -171,6 +175,7 @@ def __init__(self, **kwargs): 'resources': 'list[Resource]', 'time_starts': 'datetime', 'time_ends': 'datetime', + 'local_time_zone': 'str', 'time_created': 'datetime', 'time_updated': 'datetime', 'time_last_run': 'datetime', @@ -193,6 +198,7 @@ def __init__(self, **kwargs): 'resources': 'resources', 'time_starts': 'timeStarts', 'time_ends': 'timeEnds', + 'local_time_zone': 'localTimeZone', 'time_created': 'timeCreated', 'time_updated': 'timeUpdated', 'time_last_run': 'timeLastRun', @@ -214,6 +220,7 @@ def __init__(self, **kwargs): self._resources = None self._time_starts = None self._time_ends = None + self._local_time_zone = None self._time_created = None self._time_updated = None self._time_last_run = None @@ -526,6 +533,32 @@ def time_ends(self, time_ends): """ self._time_ends = time_ends + @property + def local_time_zone(self): + """ + Gets the local_time_zone of this ScheduleSummary. + IANA timezone identifier (e.g., 'America/New_York', 'UTC', 'Europe/London'). + This determines the timezone context for evaluating the recurrence expression. + + + :return: The local_time_zone of this ScheduleSummary. + :rtype: str + """ + return self._local_time_zone + + @local_time_zone.setter + def local_time_zone(self, local_time_zone): + """ + Sets the local_time_zone of this ScheduleSummary. + IANA timezone identifier (e.g., 'America/New_York', 'UTC', 'Europe/London'). + This determines the timezone context for evaluating the recurrence expression. + + + :param local_time_zone: The local_time_zone of this ScheduleSummary. + :type: str + """ + self._local_time_zone = local_time_zone + @property def time_created(self): """ diff --git a/src/oci/resource_scheduler/models/update_schedule_details.py b/src/oci/resource_scheduler/models/update_schedule_details.py index 3198785123..0181690235 100644 --- a/src/oci/resource_scheduler/models/update_schedule_details.py +++ b/src/oci/resource_scheduler/models/update_schedule_details.py @@ -78,6 +78,10 @@ def __init__(self, **kwargs): The value to assign to the time_ends property of this UpdateScheduleDetails. :type time_ends: datetime + :param local_time_zone: + The value to assign to the local_time_zone property of this UpdateScheduleDetails. + :type local_time_zone: str + :param freeform_tags: The value to assign to the freeform_tags property of this UpdateScheduleDetails. :type freeform_tags: dict(str, str) @@ -97,6 +101,7 @@ def __init__(self, **kwargs): 'resources': 'list[Resource]', 'time_starts': 'datetime', 'time_ends': 'datetime', + 'local_time_zone': 'str', 'freeform_tags': 'dict(str, str)', 'defined_tags': 'dict(str, dict(str, object))' } @@ -110,6 +115,7 @@ def __init__(self, **kwargs): 'resources': 'resources', 'time_starts': 'timeStarts', 'time_ends': 'timeEnds', + 'local_time_zone': 'localTimeZone', 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags' } @@ -122,6 +128,7 @@ def __init__(self, **kwargs): self._resources = None self._time_starts = None self._time_ends = None + self._local_time_zone = None self._freeform_tags = None self._defined_tags = None @@ -373,6 +380,32 @@ def time_ends(self, time_ends): """ self._time_ends = time_ends + @property + def local_time_zone(self): + """ + Gets the local_time_zone of this UpdateScheduleDetails. + IANA timezone identifier (e.g., 'America/New_York', 'UTC', 'Europe/London'). + This determines the timezone context for evaluating the recurrence expression. + + + :return: The local_time_zone of this UpdateScheduleDetails. + :rtype: str + """ + return self._local_time_zone + + @local_time_zone.setter + def local_time_zone(self, local_time_zone): + """ + Sets the local_time_zone of this UpdateScheduleDetails. + IANA timezone identifier (e.g., 'America/New_York', 'UTC', 'Europe/London'). + This determines the timezone context for evaluating the recurrence expression. + + + :param local_time_zone: The local_time_zone of this UpdateScheduleDetails. + :type: str + """ + self._local_time_zone = local_time_zone + @property def freeform_tags(self): """ diff --git a/src/oci/version.py b/src/oci/version.py index 504b3e8dd8..c245c0bb59 100644 --- a/src/oci/version.py +++ b/src/oci/version.py @@ -2,4 +2,4 @@ # Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. # This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. -__version__ = "2.184.0" +__version__ = "2.184.1" From f4b867df30cd0c85da63228ea0c1d9da59c0cf67 Mon Sep 17 00:00:00 2001 From: OCI DEX Release Bot Automation Date: Tue, 18 Aug 2026 04:08:37 +0000 Subject: [PATCH 11/11] Releasing version 2.184.2 Co-authored-by: Harsh Kumar --- CHANGELOG.rst | 9 ++ README.rst | 3 + docs/api/database.rst | 1 + ...base.models.TdeWalletBackupDestination.rst | 11 ++ .../compute_instance_agent_client.py | 2 +- .../compute_instance_agent/plugin_client.py | 2 +- .../pluginconfig_client.py | 2 +- src/oci/database/models/__init__.py | 2 + src/oci/database/models/backup.py | 14 +- ...ackup_destination_configuration_summary.py | 31 ++++- .../models/backup_destination_details.py | 31 ++++- .../backup_destination_details_summary.py | 31 ++++- src/oci/database/models/backup_summary.py | 14 +- ..._database_from_another_database_details.py | 44 ++++++- .../models/create_database_from_backup.py | 9 +- .../create_database_from_backup_details.py | 44 ++++++- .../models/create_database_from_database.py | 9 +- .../create_db_home_from_backup_details.py | 9 +- .../create_db_home_from_database_details.py | 9 +- ...e_with_db_system_id_from_backup_details.py | 9 +- ...with_db_system_id_from_database_details.py | 9 +- ..._with_vm_cluster_id_from_backup_details.py | 9 +- ...ith_vm_cluster_id_from_database_details.py | 9 +- .../launch_db_system_from_backup_details.py | 9 +- .../launch_db_system_from_database_details.py | 9 +- .../models/tde_wallet_backup_destination.py | 121 ++++++++++++++++++ src/oci/version.py | 2 +- 27 files changed, 410 insertions(+), 44 deletions(-) create mode 100644 docs/api/database/models/oci.database.models.TdeWalletBackupDestination.rst create mode 100644 src/oci/database/models/tde_wallet_backup_destination.py diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 94740c453e..f3435d2f10 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -4,6 +4,15 @@ All notable changes to this project will be documented in this file. The format is based on `Keep a Changelog `_. +==================== +2.184.2 - 2026-08-18 +==================== + +Added +----- +* Support for creating databases from another database with additional input fields and source encryption-key location details in the Database service +* Support for IPv6 dual-stack endpoints in the Compute Instance Agent service + ==================== 2.184.1 - 2026-08-11 ==================== diff --git a/README.rst b/README.rst index 16bf2d1e5f..e58f1ff522 100644 --- a/README.rst +++ b/README.rst @@ -64,6 +64,9 @@ See the `development readme`__ for information on how to make changes, run tests __ https://github.com/oracle/oci-python-sdk/blob/master/README-development.rst +Per-service codegen conditionals belong in +``enabledGroups`` beside the service module POM under ``poms//``. + ======== Examples ======== diff --git a/docs/api/database.rst b/docs/api/database.rst index 028a800bed..3f48c30dab 100644 --- a/docs/api/database.rst +++ b/docs/api/database.rst @@ -523,6 +523,7 @@ Database oci.database.models.SystemVersionMinorVersionCollection oci.database.models.SystemVersionMinorVersionSummary oci.database.models.SystemVersionSummary + oci.database.models.TdeWalletBackupDestination oci.database.models.UndeleteAutonomousDatabaseDetails oci.database.models.UnmountDbnodeSnapshotDetails oci.database.models.UnregisterCloudAutonomousVmClusterPkcsDetails diff --git a/docs/api/database/models/oci.database.models.TdeWalletBackupDestination.rst b/docs/api/database/models/oci.database.models.TdeWalletBackupDestination.rst new file mode 100644 index 0000000000..fa1b52c478 --- /dev/null +++ b/docs/api/database/models/oci.database.models.TdeWalletBackupDestination.rst @@ -0,0 +1,11 @@ +TdeWalletBackupDestination +========================== + +.. currentmodule:: oci.database.models + +.. autoclass:: TdeWalletBackupDestination + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/src/oci/compute_instance_agent/compute_instance_agent_client.py b/src/oci/compute_instance_agent/compute_instance_agent_client.py index 6706643fb0..d3ffcc98ad 100644 --- a/src/oci/compute_instance_agent/compute_instance_agent_client.py +++ b/src/oci/compute_instance_agent/compute_instance_agent_client.py @@ -105,7 +105,7 @@ def __init__(self, config, **kwargs): 'regional_client': True, 'service_endpoint': kwargs.get('service_endpoint'), 'base_path': '/20180530', - 'service_endpoint_template': 'https://iaas.{region}.{secondLevelDomain}', + 'service_endpoint_template': 'https://iaas.{region}.{dualStack?ds.:}oci.{secondLevelDomain}', 'service_endpoint_template_per_realm': { }, # noqa: E201 E202 'service_uses_dualstack_endpoints_by_default': False, 'skip_deserialization': kwargs.get('skip_deserialization', False), diff --git a/src/oci/compute_instance_agent/plugin_client.py b/src/oci/compute_instance_agent/plugin_client.py index 233a7ec921..97bd3f7390 100644 --- a/src/oci/compute_instance_agent/plugin_client.py +++ b/src/oci/compute_instance_agent/plugin_client.py @@ -105,7 +105,7 @@ def __init__(self, config, **kwargs): 'regional_client': True, 'service_endpoint': kwargs.get('service_endpoint'), 'base_path': '/20180530', - 'service_endpoint_template': 'https://iaas.{region}.{secondLevelDomain}', + 'service_endpoint_template': 'https://iaas.{region}.{dualStack?ds.:}oci.{secondLevelDomain}', 'service_endpoint_template_per_realm': { }, # noqa: E201 E202 'service_uses_dualstack_endpoints_by_default': False, 'skip_deserialization': kwargs.get('skip_deserialization', False), diff --git a/src/oci/compute_instance_agent/pluginconfig_client.py b/src/oci/compute_instance_agent/pluginconfig_client.py index 7ee880c597..604b7fecc9 100644 --- a/src/oci/compute_instance_agent/pluginconfig_client.py +++ b/src/oci/compute_instance_agent/pluginconfig_client.py @@ -105,7 +105,7 @@ def __init__(self, config, **kwargs): 'regional_client': True, 'service_endpoint': kwargs.get('service_endpoint'), 'base_path': '/20180530', - 'service_endpoint_template': 'https://iaas.{region}.{secondLevelDomain}', + 'service_endpoint_template': 'https://iaas.{region}.{dualStack?ds.:}oci.{secondLevelDomain}', 'service_endpoint_template_per_realm': { }, # noqa: E201 E202 'service_uses_dualstack_endpoints_by_default': False, 'skip_deserialization': kwargs.get('skip_deserialization', False), diff --git a/src/oci/database/models/__init__.py b/src/oci/database/models/__init__.py index a01cee839c..7682cc3242 100644 --- a/src/oci/database/models/__init__.py +++ b/src/oci/database/models/__init__.py @@ -511,6 +511,7 @@ from .system_version_minor_version_collection import SystemVersionMinorVersionCollection from .system_version_minor_version_summary import SystemVersionMinorVersionSummary from .system_version_summary import SystemVersionSummary +from .tde_wallet_backup_destination import TdeWalletBackupDestination from .undelete_autonomous_database_details import UndeleteAutonomousDatabaseDetails from .unmount_dbnode_snapshot_details import UnmountDbnodeSnapshotDetails from .unregister_cloud_autonomous_vm_cluster_pkcs_details import UnregisterCloudAutonomousVmClusterPkcsDetails @@ -1094,6 +1095,7 @@ "SystemVersionMinorVersionCollection": SystemVersionMinorVersionCollection, "SystemVersionMinorVersionSummary": SystemVersionMinorVersionSummary, "SystemVersionSummary": SystemVersionSummary, + "TdeWalletBackupDestination": TdeWalletBackupDestination, "UndeleteAutonomousDatabaseDetails": UndeleteAutonomousDatabaseDetails, "UnmountDbnodeSnapshotDetails": UnmountDbnodeSnapshotDetails, "UnregisterCloudAutonomousVmClusterPkcsDetails": UnregisterCloudAutonomousVmClusterPkcsDetails, diff --git a/src/oci/database/models/backup.py b/src/oci/database/models/backup.py index 1b174ecea0..1890e6489f 100644 --- a/src/oci/database/models/backup.py +++ b/src/oci/database/models/backup.py @@ -95,6 +95,14 @@ class Backup(object): #: This constant has a value of "AWS_S3" BACKUP_DESTINATION_TYPE_AWS_S3 = "AWS_S3" + #: A constant which can be used with the backup_destination_type property of a Backup. + #: This constant has a value of "NFS" + BACKUP_DESTINATION_TYPE_NFS = "NFS" + + #: A constant which can be used with the backup_destination_type property of a Backup. + #: This constant has a value of "RECOVERY_APPLIANCE" + BACKUP_DESTINATION_TYPE_RECOVERY_APPLIANCE = "RECOVERY_APPLIANCE" + def __init__(self, **kwargs): """ Initializes a new Backup object with values from keyword arguments. @@ -204,7 +212,7 @@ def __init__(self, **kwargs): :param backup_destination_type: The value to assign to the backup_destination_type property of this Backup. - Allowed values for this property are: "OBJECT_STORE", "DBRS", "AWS_S3", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "OBJECT_STORE", "DBRS", "AWS_S3", "NFS", "RECOVERY_APPLIANCE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type backup_destination_type: str @@ -920,7 +928,7 @@ def backup_destination_type(self): Gets the backup_destination_type of this Backup. Type of the backup destination. - Allowed values for this property are: "OBJECT_STORE", "DBRS", "AWS_S3", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "OBJECT_STORE", "DBRS", "AWS_S3", "NFS", "RECOVERY_APPLIANCE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -939,7 +947,7 @@ def backup_destination_type(self, backup_destination_type): :param backup_destination_type: The backup_destination_type of this Backup. :type: str """ - allowed_values = ["OBJECT_STORE", "DBRS", "AWS_S3"] + allowed_values = ["OBJECT_STORE", "DBRS", "AWS_S3", "NFS", "RECOVERY_APPLIANCE"] if not value_allowed_none_or_none_sentinel(backup_destination_type, allowed_values): backup_destination_type = 'UNKNOWN_ENUM_VALUE' self._backup_destination_type = backup_destination_type diff --git a/src/oci/database/models/backup_destination_configuration_summary.py b/src/oci/database/models/backup_destination_configuration_summary.py index aee8a04827..b594a8ed07 100644 --- a/src/oci/database/models/backup_destination_configuration_summary.py +++ b/src/oci/database/models/backup_destination_configuration_summary.py @@ -116,6 +116,10 @@ def __init__(self, **kwargs): The value to assign to the remote_region property of this BackupDestinationConfigurationSummary. :type remote_region: str + :param tde_wallet_backup_destination: + The value to assign to the tde_wallet_backup_destination property of this BackupDestinationConfigurationSummary. + :type tde_wallet_backup_destination: oci.database.models.TdeWalletBackupDestination + """ self.swagger_types = { 'recovery_window_in_days': 'int', @@ -132,7 +136,8 @@ def __init__(self, **kwargs): 'is_retention_lock_enabled': 'bool', 'backup_retention_policy_on_terminate': 'str', 'is_remote': 'bool', - 'remote_region': 'str' + 'remote_region': 'str', + 'tde_wallet_backup_destination': 'TdeWalletBackupDestination' } self.attribute_map = { 'recovery_window_in_days': 'recoveryWindowInDays', @@ -149,7 +154,8 @@ def __init__(self, **kwargs): 'is_retention_lock_enabled': 'isRetentionLockEnabled', 'backup_retention_policy_on_terminate': 'backupRetentionPolicyOnTerminate', 'is_remote': 'isRemote', - 'remote_region': 'remoteRegion' + 'remote_region': 'remoteRegion', + 'tde_wallet_backup_destination': 'tdeWalletBackupDestination' } self._recovery_window_in_days = None self._backup_destination_attach_history = None @@ -166,6 +172,7 @@ def __init__(self, **kwargs): self._backup_retention_policy_on_terminate = None self._is_remote = None self._remote_region = None + self._tde_wallet_backup_destination = None @property def recovery_window_in_days(self): @@ -565,6 +572,26 @@ def remote_region(self, remote_region): """ self._remote_region = remote_region + @property + def tde_wallet_backup_destination(self): + """ + Gets the tde_wallet_backup_destination of this BackupDestinationConfigurationSummary. + + :return: The tde_wallet_backup_destination of this BackupDestinationConfigurationSummary. + :rtype: oci.database.models.TdeWalletBackupDestination + """ + return self._tde_wallet_backup_destination + + @tde_wallet_backup_destination.setter + def tde_wallet_backup_destination(self, tde_wallet_backup_destination): + """ + Sets the tde_wallet_backup_destination of this BackupDestinationConfigurationSummary. + + :param tde_wallet_backup_destination: The tde_wallet_backup_destination of this BackupDestinationConfigurationSummary. + :type: oci.database.models.TdeWalletBackupDestination + """ + self._tde_wallet_backup_destination = tde_wallet_backup_destination + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/database/models/backup_destination_details.py b/src/oci/database/models/backup_destination_details.py index 1c618ea55c..5c8151e131 100644 --- a/src/oci/database/models/backup_destination_details.py +++ b/src/oci/database/models/backup_destination_details.py @@ -100,6 +100,10 @@ def __init__(self, **kwargs): The value to assign to the remote_region property of this BackupDestinationDetails. :type remote_region: str + :param tde_wallet_backup_destination: + The value to assign to the tde_wallet_backup_destination property of this BackupDestinationDetails. + :type tde_wallet_backup_destination: oci.database.models.TdeWalletBackupDestination + """ self.swagger_types = { 'type': 'str', @@ -112,7 +116,8 @@ def __init__(self, **kwargs): 'is_retention_lock_enabled': 'bool', 'backup_retention_policy_on_terminate': 'str', 'is_remote': 'bool', - 'remote_region': 'str' + 'remote_region': 'str', + 'tde_wallet_backup_destination': 'TdeWalletBackupDestination' } self.attribute_map = { 'type': 'type', @@ -125,7 +130,8 @@ def __init__(self, **kwargs): 'is_retention_lock_enabled': 'isRetentionLockEnabled', 'backup_retention_policy_on_terminate': 'backupRetentionPolicyOnTerminate', 'is_remote': 'isRemote', - 'remote_region': 'remoteRegion' + 'remote_region': 'remoteRegion', + 'tde_wallet_backup_destination': 'tdeWalletBackupDestination' } self._type = None self._id = None @@ -138,6 +144,7 @@ def __init__(self, **kwargs): self._backup_retention_policy_on_terminate = None self._is_remote = None self._remote_region = None + self._tde_wallet_backup_destination = None @property def type(self): @@ -441,6 +448,26 @@ def remote_region(self, remote_region): """ self._remote_region = remote_region + @property + def tde_wallet_backup_destination(self): + """ + Gets the tde_wallet_backup_destination of this BackupDestinationDetails. + + :return: The tde_wallet_backup_destination of this BackupDestinationDetails. + :rtype: oci.database.models.TdeWalletBackupDestination + """ + return self._tde_wallet_backup_destination + + @tde_wallet_backup_destination.setter + def tde_wallet_backup_destination(self, tde_wallet_backup_destination): + """ + Sets the tde_wallet_backup_destination of this BackupDestinationDetails. + + :param tde_wallet_backup_destination: The tde_wallet_backup_destination of this BackupDestinationDetails. + :type: oci.database.models.TdeWalletBackupDestination + """ + self._tde_wallet_backup_destination = tde_wallet_backup_destination + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/database/models/backup_destination_details_summary.py b/src/oci/database/models/backup_destination_details_summary.py index 468844d389..3dc20e04ec 100644 --- a/src/oci/database/models/backup_destination_details_summary.py +++ b/src/oci/database/models/backup_destination_details_summary.py @@ -112,6 +112,10 @@ def __init__(self, **kwargs): The value to assign to the remote_region property of this BackupDestinationDetailsSummary. :type remote_region: str + :param tde_wallet_backup_destination: + The value to assign to the tde_wallet_backup_destination property of this BackupDestinationDetailsSummary. + :type tde_wallet_backup_destination: oci.database.models.TdeWalletBackupDestination + """ self.swagger_types = { 'backup_destination_attach_history': 'list[datetime]', @@ -127,7 +131,8 @@ def __init__(self, **kwargs): 'is_retention_lock_enabled': 'bool', 'backup_retention_policy_on_terminate': 'str', 'is_remote': 'bool', - 'remote_region': 'str' + 'remote_region': 'str', + 'tde_wallet_backup_destination': 'TdeWalletBackupDestination' } self.attribute_map = { 'backup_destination_attach_history': 'backupDestinationAttachHistory', @@ -143,7 +148,8 @@ def __init__(self, **kwargs): 'is_retention_lock_enabled': 'isRetentionLockEnabled', 'backup_retention_policy_on_terminate': 'backupRetentionPolicyOnTerminate', 'is_remote': 'isRemote', - 'remote_region': 'remoteRegion' + 'remote_region': 'remoteRegion', + 'tde_wallet_backup_destination': 'tdeWalletBackupDestination' } self._backup_destination_attach_history = None self._space_utilized_in_gbs = None @@ -159,6 +165,7 @@ def __init__(self, **kwargs): self._backup_retention_policy_on_terminate = None self._is_remote = None self._remote_region = None + self._tde_wallet_backup_destination = None @property def backup_destination_attach_history(self): @@ -534,6 +541,26 @@ def remote_region(self, remote_region): """ self._remote_region = remote_region + @property + def tde_wallet_backup_destination(self): + """ + Gets the tde_wallet_backup_destination of this BackupDestinationDetailsSummary. + + :return: The tde_wallet_backup_destination of this BackupDestinationDetailsSummary. + :rtype: oci.database.models.TdeWalletBackupDestination + """ + return self._tde_wallet_backup_destination + + @tde_wallet_backup_destination.setter + def tde_wallet_backup_destination(self, tde_wallet_backup_destination): + """ + Sets the tde_wallet_backup_destination of this BackupDestinationDetailsSummary. + + :param tde_wallet_backup_destination: The tde_wallet_backup_destination of this BackupDestinationDetailsSummary. + :type: oci.database.models.TdeWalletBackupDestination + """ + self._tde_wallet_backup_destination = tde_wallet_backup_destination + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/database/models/backup_summary.py b/src/oci/database/models/backup_summary.py index 0978d8c0c7..fe60f01504 100644 --- a/src/oci/database/models/backup_summary.py +++ b/src/oci/database/models/backup_summary.py @@ -100,6 +100,14 @@ class BackupSummary(object): #: This constant has a value of "AWS_S3" BACKUP_DESTINATION_TYPE_AWS_S3 = "AWS_S3" + #: A constant which can be used with the backup_destination_type property of a BackupSummary. + #: This constant has a value of "NFS" + BACKUP_DESTINATION_TYPE_NFS = "NFS" + + #: A constant which can be used with the backup_destination_type property of a BackupSummary. + #: This constant has a value of "RECOVERY_APPLIANCE" + BACKUP_DESTINATION_TYPE_RECOVERY_APPLIANCE = "RECOVERY_APPLIANCE" + def __init__(self, **kwargs): """ Initializes a new BackupSummary object with values from keyword arguments. @@ -209,7 +217,7 @@ def __init__(self, **kwargs): :param backup_destination_type: The value to assign to the backup_destination_type property of this BackupSummary. - Allowed values for this property are: "OBJECT_STORE", "DBRS", "AWS_S3", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "OBJECT_STORE", "DBRS", "AWS_S3", "NFS", "RECOVERY_APPLIANCE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. :type backup_destination_type: str @@ -925,7 +933,7 @@ def backup_destination_type(self): Gets the backup_destination_type of this BackupSummary. Type of the backup destination. - Allowed values for this property are: "OBJECT_STORE", "DBRS", "AWS_S3", 'UNKNOWN_ENUM_VALUE'. + Allowed values for this property are: "OBJECT_STORE", "DBRS", "AWS_S3", "NFS", "RECOVERY_APPLIANCE", 'UNKNOWN_ENUM_VALUE'. Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. @@ -944,7 +952,7 @@ def backup_destination_type(self, backup_destination_type): :param backup_destination_type: The backup_destination_type of this BackupSummary. :type: str """ - allowed_values = ["OBJECT_STORE", "DBRS", "AWS_S3"] + allowed_values = ["OBJECT_STORE", "DBRS", "AWS_S3", "NFS", "RECOVERY_APPLIANCE"] if not value_allowed_none_or_none_sentinel(backup_destination_type, allowed_values): backup_destination_type = 'UNKNOWN_ENUM_VALUE' self._backup_destination_type = backup_destination_type diff --git a/src/oci/database/models/create_database_from_another_database_details.py b/src/oci/database/models/create_database_from_another_database_details.py index 42acdd7955..405ea17368 100644 --- a/src/oci/database/models/create_database_from_another_database_details.py +++ b/src/oci/database/models/create_database_from_another_database_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -76,6 +76,10 @@ def __init__(self, **kwargs): The value to assign to the vm_cluster_id property of this CreateDatabaseFromAnotherDatabaseDetails. :type vm_cluster_id: str + :param recovery_appliance_vpc_password: + The value to assign to the recovery_appliance_vpc_password property of this CreateDatabaseFromAnotherDatabaseDetails. + :type recovery_appliance_vpc_password: str + """ self.swagger_types = { 'database_id': 'str', @@ -91,7 +95,8 @@ def __init__(self, **kwargs): 'source_encryption_key_location_details': 'EncryptionKeyLocationDetails', 'storage_size_details': 'DatabaseStorageSizeDetails', 'managed_software_update_details': 'ManagedSoftwareUpdateInputDetails', - 'vm_cluster_id': 'str' + 'vm_cluster_id': 'str', + 'recovery_appliance_vpc_password': 'str' } self.attribute_map = { 'database_id': 'databaseId', @@ -107,8 +112,12 @@ def __init__(self, **kwargs): 'source_encryption_key_location_details': 'sourceEncryptionKeyLocationDetails', 'storage_size_details': 'storageSizeDetails', 'managed_software_update_details': 'managedSoftwareUpdateDetails', - 'vm_cluster_id': 'vmClusterId' + 'vm_cluster_id': 'vmClusterId', + 'recovery_appliance_vpc_password': 'recoveryApplianceVpcPassword' } + self._redacted_field_paths = [ + ['recovery_appliance_vpc_password'], + ] self._database_id = None self._backup_tde_password = None self._admin_password = None @@ -123,6 +132,7 @@ def __init__(self, **kwargs): self._storage_size_details = None self._managed_software_update_details = None self._vm_cluster_id = None + self._recovery_appliance_vpc_password = None @property def database_id(self): @@ -472,8 +482,34 @@ def vm_cluster_id(self, vm_cluster_id): """ self._vm_cluster_id = vm_cluster_id + @property + def recovery_appliance_vpc_password(self): + """ + Gets the recovery_appliance_vpc_password of this CreateDatabaseFromAnotherDatabaseDetails. + The password for the VPC user that is used to access the Recovery Appliance, if the given backup is from a backup destination of type RECOVERY_APPLIANCE. + + + :return: The recovery_appliance_vpc_password of this CreateDatabaseFromAnotherDatabaseDetails. + :rtype: str + """ + return self._recovery_appliance_vpc_password + + @recovery_appliance_vpc_password.setter + def recovery_appliance_vpc_password(self, recovery_appliance_vpc_password): + """ + Sets the recovery_appliance_vpc_password of this CreateDatabaseFromAnotherDatabaseDetails. + The password for the VPC user that is used to access the Recovery Appliance, if the given backup is from a backup destination of type RECOVERY_APPLIANCE. + + + :param recovery_appliance_vpc_password: The recovery_appliance_vpc_password of this CreateDatabaseFromAnotherDatabaseDetails. + :type: str + """ + self._recovery_appliance_vpc_password = recovery_appliance_vpc_password + def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['recovery_appliance_vpc_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/create_database_from_backup.py b/src/oci/database/models/create_database_from_backup.py index 42b2f045d9..8702e85222 100644 --- a/src/oci/database/models/create_database_from_backup.py +++ b/src/oci/database/models/create_database_from_backup.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 from .create_database_base import CreateDatabaseBase -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -65,6 +65,9 @@ def __init__(self, **kwargs): 'kms_key_version_id': 'kmsKeyVersionId', 'database': 'database' } + self._redacted_field_paths = [ + ['database', 'recovery_appliance_vpc_password'], + ] self._db_home_id = None self._db_version = None self._source = None @@ -94,7 +97,9 @@ def database(self, database): self._database = database def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['database', 'recovery_appliance_vpc_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/create_database_from_backup_details.py b/src/oci/database/models/create_database_from_backup_details.py index 3b1f36f967..1eef44bef4 100644 --- a/src/oci/database/models/create_database_from_backup_details.py +++ b/src/oci/database/models/create_database_from_backup_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -72,6 +72,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this CreateDatabaseFromBackupDetails. :type defined_tags: dict(str, dict(str, object)) + :param recovery_appliance_vpc_password: + The value to assign to the recovery_appliance_vpc_password property of this CreateDatabaseFromBackupDetails. + :type recovery_appliance_vpc_password: str + """ self.swagger_types = { 'backup_id': 'str', @@ -86,7 +90,8 @@ def __init__(self, **kwargs): 'managed_software_update_details': 'ManagedSoftwareUpdateInputDetails', 'vm_cluster_id': 'str', 'freeform_tags': 'dict(str, str)', - 'defined_tags': 'dict(str, dict(str, object))' + 'defined_tags': 'dict(str, dict(str, object))', + 'recovery_appliance_vpc_password': 'str' } self.attribute_map = { 'backup_id': 'backupId', @@ -101,8 +106,12 @@ def __init__(self, **kwargs): 'managed_software_update_details': 'managedSoftwareUpdateDetails', 'vm_cluster_id': 'vmClusterId', 'freeform_tags': 'freeformTags', - 'defined_tags': 'definedTags' + 'defined_tags': 'definedTags', + 'recovery_appliance_vpc_password': 'recoveryApplianceVpcPassword' } + self._redacted_field_paths = [ + ['recovery_appliance_vpc_password'], + ] self._backup_id = None self._backup_tde_password = None self._source_encryption_key_location_details = None @@ -116,6 +125,7 @@ def __init__(self, **kwargs): self._vm_cluster_id = None self._freeform_tags = None self._defined_tags = None + self._recovery_appliance_vpc_password = None @property def backup_id(self): @@ -441,8 +451,34 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def recovery_appliance_vpc_password(self): + """ + Gets the recovery_appliance_vpc_password of this CreateDatabaseFromBackupDetails. + The password for the VPC user that is used to access the Recovery Appliance, if the given backup is from a backup destination of type RECOVERY_APPLIANCE. + + + :return: The recovery_appliance_vpc_password of this CreateDatabaseFromBackupDetails. + :rtype: str + """ + return self._recovery_appliance_vpc_password + + @recovery_appliance_vpc_password.setter + def recovery_appliance_vpc_password(self, recovery_appliance_vpc_password): + """ + Sets the recovery_appliance_vpc_password of this CreateDatabaseFromBackupDetails. + The password for the VPC user that is used to access the Recovery Appliance, if the given backup is from a backup destination of type RECOVERY_APPLIANCE. + + + :param recovery_appliance_vpc_password: The recovery_appliance_vpc_password of this CreateDatabaseFromBackupDetails. + :type: str + """ + self._recovery_appliance_vpc_password = recovery_appliance_vpc_password + def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['recovery_appliance_vpc_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/create_database_from_database.py b/src/oci/database/models/create_database_from_database.py index 01438ec2c7..9bb7235b68 100644 --- a/src/oci/database/models/create_database_from_database.py +++ b/src/oci/database/models/create_database_from_database.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 from .create_database_base import CreateDatabaseBase -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -65,6 +65,9 @@ def __init__(self, **kwargs): 'kms_key_version_id': 'kmsKeyVersionId', 'database': 'database' } + self._redacted_field_paths = [ + ['database', 'recovery_appliance_vpc_password'], + ] self._db_home_id = None self._db_version = None self._source = None @@ -94,7 +97,9 @@ def database(self, database): self._database = database def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['database', 'recovery_appliance_vpc_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/create_db_home_from_backup_details.py b/src/oci/database/models/create_db_home_from_backup_details.py index 0dd1ab8aeb..f116e42c0b 100644 --- a/src/oci/database/models/create_db_home_from_backup_details.py +++ b/src/oci/database/models/create_db_home_from_backup_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -63,6 +63,9 @@ def __init__(self, **kwargs): 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags' } + self._redacted_field_paths = [ + ['database', 'recovery_appliance_vpc_password'], + ] self._display_name = None self._is_unified_auditing_enabled = None self._database_software_image_id = None @@ -231,7 +234,9 @@ def defined_tags(self, defined_tags): self._defined_tags = defined_tags def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['database', 'recovery_appliance_vpc_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/create_db_home_from_database_details.py b/src/oci/database/models/create_db_home_from_database_details.py index 648cc83086..011505e3d7 100644 --- a/src/oci/database/models/create_db_home_from_database_details.py +++ b/src/oci/database/models/create_db_home_from_database_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -57,6 +57,9 @@ def __init__(self, **kwargs): 'freeform_tags': 'freeformTags', 'defined_tags': 'definedTags' } + self._redacted_field_paths = [ + ['database', 'recovery_appliance_vpc_password'], + ] self._display_name = None self._database = None self._is_unified_auditing_enabled = None @@ -196,7 +199,9 @@ def defined_tags(self, defined_tags): self._defined_tags = defined_tags def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['database', 'recovery_appliance_vpc_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/create_db_home_with_db_system_id_from_backup_details.py b/src/oci/database/models/create_db_home_with_db_system_id_from_backup_details.py index c2500e0b65..7c1b0515d2 100644 --- a/src/oci/database/models/create_db_home_with_db_system_id_from_backup_details.py +++ b/src/oci/database/models/create_db_home_with_db_system_id_from_backup_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 from .create_db_home_base import CreateDbHomeBase -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -93,6 +93,9 @@ def __init__(self, **kwargs): 'db_system_id': 'dbSystemId', 'database': 'database' } + self._redacted_field_paths = [ + ['database', 'recovery_appliance_vpc_password'], + ] self._display_name = None self._kms_key_id = None self._kms_key_version_id = None @@ -155,7 +158,9 @@ def database(self, database): self._database = database def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['database', 'recovery_appliance_vpc_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/create_db_home_with_db_system_id_from_database_details.py b/src/oci/database/models/create_db_home_with_db_system_id_from_database_details.py index d6ff6dda1f..1c5d865722 100644 --- a/src/oci/database/models/create_db_home_with_db_system_id_from_database_details.py +++ b/src/oci/database/models/create_db_home_with_db_system_id_from_database_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 from .create_db_home_base import CreateDbHomeBase -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -93,6 +93,9 @@ def __init__(self, **kwargs): 'db_system_id': 'dbSystemId', 'database': 'database' } + self._redacted_field_paths = [ + ['database', 'recovery_appliance_vpc_password'], + ] self._display_name = None self._kms_key_id = None self._kms_key_version_id = None @@ -155,7 +158,9 @@ def database(self, database): self._database = database def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['database', 'recovery_appliance_vpc_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/create_db_home_with_vm_cluster_id_from_backup_details.py b/src/oci/database/models/create_db_home_with_vm_cluster_id_from_backup_details.py index b00b2b9009..a470d5f17b 100644 --- a/src/oci/database/models/create_db_home_with_vm_cluster_id_from_backup_details.py +++ b/src/oci/database/models/create_db_home_with_vm_cluster_id_from_backup_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 from .create_db_home_base import CreateDbHomeBase -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -93,6 +93,9 @@ def __init__(self, **kwargs): 'vm_cluster_id': 'vmClusterId', 'database': 'database' } + self._redacted_field_paths = [ + ['database', 'recovery_appliance_vpc_password'], + ] self._display_name = None self._kms_key_id = None self._kms_key_version_id = None @@ -155,7 +158,9 @@ def database(self, database): self._database = database def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['database', 'recovery_appliance_vpc_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/create_db_home_with_vm_cluster_id_from_database_details.py b/src/oci/database/models/create_db_home_with_vm_cluster_id_from_database_details.py index 560629f431..a177d50e8a 100644 --- a/src/oci/database/models/create_db_home_with_vm_cluster_id_from_database_details.py +++ b/src/oci/database/models/create_db_home_with_vm_cluster_id_from_database_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 from .create_db_home_base import CreateDbHomeBase -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -93,6 +93,9 @@ def __init__(self, **kwargs): 'vm_cluster_id': 'vmClusterId', 'database': 'database' } + self._redacted_field_paths = [ + ['database', 'recovery_appliance_vpc_password'], + ] self._display_name = None self._kms_key_id = None self._kms_key_version_id = None @@ -155,7 +158,9 @@ def database(self, database): self._database = database def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['database', 'recovery_appliance_vpc_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/launch_db_system_from_backup_details.py b/src/oci/database/models/launch_db_system_from_backup_details.py index d4d5de3899..9cfd343bff 100644 --- a/src/oci/database/models/launch_db_system_from_backup_details.py +++ b/src/oci/database/models/launch_db_system_from_backup_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 from .launch_db_system_base import LaunchDbSystemBase -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -296,6 +296,9 @@ def __init__(self, **kwargs): 'disk_redundancy': 'diskRedundancy', 'license_model': 'licenseModel' } + self._redacted_field_paths = [ + ['db_home', 'database', 'recovery_appliance_vpc_password'], + ] self._compartment_id = None self._fault_domains = None self._display_name = None @@ -456,7 +459,9 @@ def license_model(self, license_model): self._license_model = license_model def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['db_home', 'database', 'recovery_appliance_vpc_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/launch_db_system_from_database_details.py b/src/oci/database/models/launch_db_system_from_database_details.py index a4d53a5f27..7233f7f741 100644 --- a/src/oci/database/models/launch_db_system_from_database_details.py +++ b/src/oci/database/models/launch_db_system_from_database_details.py @@ -5,7 +5,7 @@ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 from .launch_db_system_base import LaunchDbSystemBase -from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel, to_dict, redact_password_field # noqa: F401 from oci.decorators import init_model_state_from_kwargs @@ -296,6 +296,9 @@ def __init__(self, **kwargs): 'disk_redundancy': 'diskRedundancy', 'license_model': 'licenseModel' } + self._redacted_field_paths = [ + ['db_home', 'database', 'recovery_appliance_vpc_password'], + ] self._compartment_id = None self._fault_domains = None self._display_name = None @@ -456,7 +459,9 @@ def license_model(self, license_model): self._license_model = license_model def __repr__(self): - return formatted_flat_dict(self) + as_dict = to_dict(self) + redact_password_field(as_dict, ['db_home', 'database', 'recovery_appliance_vpc_password']) + return formatted_flat_dict(as_dict) def __eq__(self, other): if other is None: diff --git a/src/oci/database/models/tde_wallet_backup_destination.py b/src/oci/database/models/tde_wallet_backup_destination.py new file mode 100644 index 0000000000..9e0e6376b8 --- /dev/null +++ b/src/oci/database/models/tde_wallet_backup_destination.py @@ -0,0 +1,121 @@ +# coding: utf-8 +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + +# NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20160918 + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class TdeWalletBackupDestination(object): + """ + Backup destination for the TDE wallet backups. + """ + + #: A constant which can be used with the backup_destination_type property of a TdeWalletBackupDestination. + #: This constant has a value of "OSS" + BACKUP_DESTINATION_TYPE_OSS = "OSS" + + #: A constant which can be used with the backup_destination_type property of a TdeWalletBackupDestination. + #: This constant has a value of "NFS" + BACKUP_DESTINATION_TYPE_NFS = "NFS" + + def __init__(self, **kwargs): + """ + Initializes a new TdeWalletBackupDestination object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param backup_destination_type: + The value to assign to the backup_destination_type property of this TdeWalletBackupDestination. + Allowed values for this property are: "OSS", "NFS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + :type backup_destination_type: str + + :param backup_destination_id: + The value to assign to the backup_destination_id property of this TdeWalletBackupDestination. + :type backup_destination_id: str + + """ + self.swagger_types = { + 'backup_destination_type': 'str', + 'backup_destination_id': 'str' + } + self.attribute_map = { + 'backup_destination_type': 'backupDestinationType', + 'backup_destination_id': 'backupDestinationId' + } + self._backup_destination_type = None + self._backup_destination_id = None + + @property + def backup_destination_type(self): + """ + **[Required]** Gets the backup_destination_type of this TdeWalletBackupDestination. + Destination where TDE Wallet backups are to be placed. + + Allowed values for this property are: "OSS", "NFS", 'UNKNOWN_ENUM_VALUE'. + Any unrecognized values returned by a service will be mapped to 'UNKNOWN_ENUM_VALUE'. + + + :return: The backup_destination_type of this TdeWalletBackupDestination. + :rtype: str + """ + return self._backup_destination_type + + @backup_destination_type.setter + def backup_destination_type(self, backup_destination_type): + """ + Sets the backup_destination_type of this TdeWalletBackupDestination. + Destination where TDE Wallet backups are to be placed. + + + :param backup_destination_type: The backup_destination_type of this TdeWalletBackupDestination. + :type: str + """ + allowed_values = ["OSS", "NFS"] + if not value_allowed_none_or_none_sentinel(backup_destination_type, allowed_values): + backup_destination_type = 'UNKNOWN_ENUM_VALUE' + self._backup_destination_type = backup_destination_type + + @property + def backup_destination_id(self): + """ + Gets the backup_destination_id of this TdeWalletBackupDestination. + The `OCID`__ of the backup destination. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :return: The backup_destination_id of this TdeWalletBackupDestination. + :rtype: str + """ + return self._backup_destination_id + + @backup_destination_id.setter + def backup_destination_id(self, backup_destination_id): + """ + Sets the backup_destination_id of this TdeWalletBackupDestination. + The `OCID`__ of the backup destination. + + __ https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm + + + :param backup_destination_id: The backup_destination_id of this TdeWalletBackupDestination. + :type: str + """ + self._backup_destination_id = backup_destination_id + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/version.py b/src/oci/version.py index c245c0bb59..6fe196bbdd 100644 --- a/src/oci/version.py +++ b/src/oci/version.py @@ -2,4 +2,4 @@ # Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. # This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. -__version__ = "2.184.1" +__version__ = "2.184.2"